Friday, February 15, 2013

Several issues on extending the development of BanglaOCR


As a developer of BanglaOCR, it is my pleasure to see the interest of an OCR for recognizing Bangla script. At the same time, I am quite upset when I notice that there is no progress on open source Bangla OCR research and development in the last four years since I left the development of BanglaOCR. The OCR was released open source with the aim to exploit existing work to produce better OCR. Unfortunately it did not happen, although I have already guided many individuals in their personal and academic research/thesis work. However, I am always hopeful that it will see the light of improvement soon.

I am not completely aware about the progress of OCR development in the last 4 years. Please do not hesitate to correct me if I am wrong in my statements. However, considering BanglaOCR as the state of the art development, I would like provide several information about OCR development and possible extensions of existing work.

1. Before starting the plan for developing an OCR for Bangla script, one should always aware about the state of the art on OCR development. If there is any existing work/software which is not too old then they should think about possible extension and improvement of that work. Starting from scratch is not a very good idea for this work unless you have a long term goal.

2. BanglaOCR was a product of research and development of almost 3 years. I have seen many other research work on OCR for Bangla script (including our previously developed Bangla OCR). However, most of them were not complete and limited only in the academic domain. BanglaOCR provides a complete framework which includes several appropriate algorithms for performing document image analysis task. There are several benefits of using the source code of any open source product like Bangla OCR.

- Modify/remove any particular function/algorithm from the code and include your own algorithm. For example: Modify the segmentation algorithm of BanglaOCR, and use a better one. Surely, it will improve the performance.

- Change/Replace the training data. Why not replacing tesseract-2 training data with tesseract-3 and see the improved performance!!!