AI / ML2026completed

Sinhala Character Recognition

A focused machine-learning project for handwritten Sinhala character recognition. Images are preprocessed with OpenCV, classified with a scikit-learn K-Nearest Neighbors model, and tested through a lightweight Tkinter UI for draw-or-upload prediction — exploring classical ML for script-specific recognition without deep learning.

PythonKNNOpenCVscikit-learn
2018

Year

0

Features

0

Technologies

Problem
  • Limited labeled Sinhala handwriting data
  • Visually similar characters and diacritics confusing nearest neighbors
Solution
  • Collected and labeled a custom character set for training
  • Tuned preprocessing and KNN hyperparameters on held-out samples

Key Features

KNN classification over Sinhala character classes

Draw or upload handwritten input

OpenCV preprocessing before inference

Tkinter GUI for interactive testing

Technologies

Pythonscikit-learnOpenCVNumPyTkinter

Learnings

  • Applied KNN to image-based character recognition with tuned k and distance metrics

  • Built a small preprocessing pipeline suited to handwritten Sinhala glyphs

  • Wrapped the model in a GUI so non-technical users can try live predictions

Highlights

KNN Classifier

Handwritten Sinhala

Tkinter GUI

Next Project

PDF RAG Assistant

Production-style RAG stack: PDF ingest, hybrid vector+BM25 retrieval, cross-encoder rerank, and grounded answers over FastAPI + Streamlit.