All Projects → Th1nkK1D → Gocr

Th1nkK1D / Gocr

OCR implementation with Golang

Programming Languages

go
31211 projects - #10 most used programming language
golang
3204 projects

Labels

Projects that are alternatives of or similar to Gocr

Dmsmsgrcg
A photo OCR project aims to output DMS messages contained in sign structure images.
Stars: ✭ 18 (-43.75%)
Mutual labels:  ocr
Javascript Bcr Library
Offline business card reader
Stars: ✭ 24 (-25%)
Mutual labels:  ocr
En Data mining
Data Mining Historical Newspaper Metadata (METS/ALTO formats)
Stars: ✭ 14 (-56.25%)
Mutual labels:  ocr
Tesseract
A PHP wrapper for the Tesseract OCR engine
Stars: ✭ 19 (-40.62%)
Mutual labels:  ocr
Pyocr
A Python wrapper for Tesseract and Cuneiform -- Moved to Gnome's Gitlab
Stars: ✭ 932 (+2812.5%)
Mutual labels:  ocr
Cogstack Pipeline
Distributed, fault tolerant batch processing for Natural Language Applications and Search, using remote partitioning
Stars: ✭ 26 (-18.75%)
Mutual labels:  ocr
Docs
Lightweight document management system packed with all the features you can expect from big expensive solutions
Stars: ✭ 827 (+2484.38%)
Mutual labels:  ocr
Mspaintide
Programming in MS Paint
Stars: ✭ 909 (+2740.63%)
Mutual labels:  ocr
Text renderer
Generate text images for training deep learning ocr model
Stars: ✭ 931 (+2809.38%)
Mutual labels:  ocr
Img2latex Mathpix
An image to LaTeX tool by MathpixOCR API and JavaFX
Stars: ✭ 872 (+2625%)
Mutual labels:  ocr
Fakemenot
Application to check authenticity of Twitter screenshots. Written in Python 🐍
Stars: ✭ 22 (-31.25%)
Mutual labels:  ocr
Pytesseractid
使用 pytesseract ocr 识别 18 位身份证号
Stars: ✭ 23 (-28.12%)
Mutual labels:  ocr
Attention Ocr
A Tensorflow model for text recognition (CNN + seq2seq with visual attention) available as a Python package and compatible with Google Cloud ML Engine.
Stars: ✭ 844 (+2537.5%)
Mutual labels:  ocr
Prlib
Pre-Recognition Library - library with algorithms for improving OCR quality.
Stars: ✭ 18 (-43.75%)
Mutual labels:  ocr
Textboxes plusplus
TextBoxes++: A Single-Shot Oriented Scene Text Detector
Stars: ✭ 883 (+2659.38%)
Mutual labels:  ocr
Build Ocr
Build an OCR for iOS apps
Stars: ✭ 17 (-46.87%)
Mutual labels:  ocr
Didicallcar
这是我自己做的一个类似滴滴打车的Android出行项目,主要针对滴滴等出行平台一直饱受质疑的“人车不符”问题,以及当前越发火热的或计划和出海战略,给出行项目增加了下面几个功能: 1. RFID识别验证功能:在司机证件或者车内识别硬件嵌入RFID识别芯片,乘客使用手机读取到芯片信息,并且通过网络发送到出行平台数据库进行验证(我用JNI加了一个C语言的MD5加密算法对识别到的信息进行了加密)。如果不是合规的“人”或“车”,则不能完成订单并向平台或监管单位汇报当前位置。(为了方便读者测试,可以使用手机读取任何一个加密或非加密RFID芯片,比如银行卡、公交卡等,我在代码中的验证前阶段把芯片信息都换成我自己的司机信息,确保读者测试时可以收到服务器的回复) 2. 海外版功能:点击切换当前语言。 3. 司机证件号码识别功能:读取司机证件上的证件号码,也可以用来与出行平台数据库的接单司机信息进行。I complete this whole project on my own . Including Android application programming,web server ( Apache + PHP + MySQL), and UI. 1.Map route planing。You can use mobile phone choose pick up & destination address,application provide address name hint and draw optimized route for user , then call car for you. 2.RFID authentication function:User can use application to scan driver license or other RFID hardware, then use NDK MD5 algorithm encrypt RFID number, and send it to Web Server Database, check with driver information and authenticate ID number , if ID number coherent with driver info , send back driver information to User and continue call car order . record user location and alert if ID not coherent. 3.Driver License Number Recognition : Application can recognize driver license digit number ,and also can send to web server for authentication & feed back result to user.
Stars: ✭ 935 (+2821.88%)
Mutual labels:  ocr
Pgstosrt
PGS to Srt converter
Stars: ✭ 21 (-34.37%)
Mutual labels:  ocr
Seq 2 Seq Ocr
Handwritten text recognition with Keras
Stars: ✭ 15 (-53.12%)
Mutual labels:  ocr
Neural Network Digit Ocr
Trains a Neural Network to read handwritten digits (OCR). Uses synaptic for Node.js, socket.io and MongoDB
Stars: ✭ 12 (-62.5%)
Mutual labels:  ocr

gOCR

OCR Implementation with Golang

This project was mainly focus on Thai language and tested with some Thai characters, English characters and Arabic digits

gOCR

Implemented functions

  • Template generator
  • Image adjustment (automatic thresholding and median filter)
  • Rows and characters segmentation (horizontal histrogram and blob coloring)
  • Character recognition (image resizing and template matching)

How to use

Generate the Templates

gocr --gentemp <charlist.txt> <fontfile.ttf>

Templates of character list in charlist.txt with fontfile.ttf fontface will be generated in /templates directory

OCR

gocr <charlist.txt> <inputImage>

The inputImage and charlist.txt (the same one that use to generate templates) will be use for OCR. The output text file and images of each process will be saved in /outputs directory.

Example

Input image

Median filter + automatic thresholding

Rows segmentation

Characters segmentation

Text output

234sohappy
sawasdeewansao
ลูกกิดมาล้าว
สุขใจหรรษา
อิอิzaa55บวก

NOTE: You can notice some incorrect character recognition here

Terminal output

Test cases

No. Font style Capture method Correctness
1 Same as template Screen capture 58/58
2 Same as template, double font size Screen capture 58/58
3 Same as template Phone camera 57/58
4 Different font Screen capture 32/58
5 Different font Phone camera 34/58

What should be improve

  • Support multi-object characters (ex. ะ, ญ)
  • Better similar character recognition ( Dictionary? Machine Learning? Character type consideration?)
  • A space in between word recognition
  • Order recognition for lower and upper alphabet
  • Handle system error (ex. can't open file)

Main Resources

  • Golang : an open source programming language
  • GoCV : allow Go to access OpenCV 3
  • OpenCV : a computer vision library

About the project

Created by Withee Poositasai

Simple Thai OCR Project, CPE489 Image Processing and Computer Vision, KMUTT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].