Skip to content

Repository files navigation

Handwriting-OCR

An Optical Character Recognition (OCR) model that is used for recognizing and extracting text from images containing characters in both Cyrillic and Latin alphabets. Built as a project for NANS subject on Faculty of Technical Sciences in Novi Sad.

Features

  • Dual-script support: Recognizes both Cyrillic and Latin characters
  • Designed algorithm: Row extraction algorithm
  • Flexible input: Supports various image formats
  • Preprocessing: Built-in image enhancement for better recognition

Getting Started

Prerequisites

  • Python 3.11.0 (recommended)

Installation

  1. Clone the repository:
git clone https://github.com/neshko31/Handwriting-OCR.git
cd Handwriting-OCR
  1. Install dependencies:

    Mac/Linux:

    python3.11  -m  venv  .venv
    source  .venv/bin/activate
    pip install -r requirements/requirements.txt

    Windows:

    py  -3.11  -m  venv  .venv
    .venv\Scripts\activate
    pip install -r requirements/requirements_win.txt
  2. Download dataset: Dataset used: OpenWrite Dataset - Version 2 After downloading the dataset, folder structure should be as following:

Handwriting-OCR
├───.venv
├───data
│   ├───comnist-train-data
│   ├───cyrillicmnist-train-data
│   ├───emnist-train-data
│   ├───test
│   ├───train_processed
│   ├───train_processed_comnist
│   ├───train_processed_cyrillicmnist
│   ├───train_processed_emnist
│   └───val
├───model
└───requirements

Supported Languages

  • Latin scripts: English
  • Cyrillic and Latin scripts: Serbian

License

This project is licensed under the MIT License - see the LICENSE file for details.

Team

Literature and used datasets

About

An Optical Character Recognition (OCR) model that is used for recognizing and extracting text from images containing characters in both Cyrillic and Latin alphabets. Built as a project for NANS subject on Faculty of Technical Sciences in Novi Sad.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages