Skip to content

Introducing OCRx, a brand new optical character recognition system.

Notifications You must be signed in to change notification settings

FocalStudio/OCRx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OCRx

A brand new optical character recognition system.

GitHub release Created C Standard

OCRx (for Optical Character Recognition eXperience) is a optical character recognition system developed as part of the EPITA 2nd Year Project. This system is powered by an artificial intelligence composed of a neural network system capable of learning millions of characters, such as the Unicode table.

This software extracts a text present in an image (photograph, digitized text, scanned document) via a segmentation of the image (separation of the different elements constituting the image) and the use of a neural network capable of matching the characters.

Important (november 2019) : If errors appear with the lastest version of GTK, please send a ticket with as subject [OCRx] <description of the problem> to contact@focalstudio.me

Installation

  • Download the archive from GitHub
  • Unzip the archive (using for example Winzip).
  • When you are in the /OCRx directory, open a Terminal and execute the following commands:
  • $ make ocrx
    $ ./ocrx
    This will launch the GUI and you will be able to choose an image to detect the characters.
  • You can also compile without the interface (using the directory /OCRx/process) by executing the following commands:
    $ make process
    $ ./process path_to_the_image

Requirements

OCRx requires the following C libraries to work:

How it works?

Conceptually, the OCR processing flow is as follows:

  • Loading image
  • Deleting colors (grayscale, then black and white)
  • Pretreatment
  • Detection of text blocks
  • Character detection
  • Recognition of detected characters
  • Reconstruction of the text

The division of the image into blocks then into characters (passing through a division of the blocks into lines) is necessary to send to the recognition pieces of images logically corresponding to characters.

Character recognition is the central part of OCR, it requires a learning phase during which the neural network will learn to recognize the different characters.

To launch the program, please refer to section Installation.

Credits

Made with love by Find3r, Le Roi Lapin, Triguneur and Tipchef.

OCRx was developed by the Focal Studio Project Group in collaboration with EPITA, School of Computer Engineers and member of IONIS Education Group. For any question, please contact us at contact@focalstudio.me