字元識別(OCR)相關工具/庫/教材/論文等資源整理
分享一些與OCR相關的軟體、庫和文章等資源,歡迎大家補充
文末附相關資源下載地址
目錄
· 軟體方面
OCR引擎
老的OCR引擎
OCR檔案格式
HOCR
ALTO XML
TEI
OCR CLI
OCR GUI
OCR預處理
OCR服務
OCR評估
OCR庫(按程式語言排序)
Go
Java
.Net
Javascript
PHP
Python
Ruby
OCR培訓工具
· 學術方面
OCR相關出版物和連結列表
部落格帖子和教程
OCR一些例項
學術文章
軟體方面
OCR引擎
··· tesseract - 最基礎的奠基性的OCR引擎Apache 2.0
··· ocropus - 基於LSTM的OCR引擎,Apache 2.0
··· ocropus 0.4 - 較老的v0.4版本的Ocropus,包含tesseract 2.04和iulib,C ++
··· Kraken - Ocropus交叉版
··· Ocrad - GNU OCR,GPL
··· Digit - OCR用於數字顯示,例如功率計,使用Caffe
··· ocular - 機器學習OCR用於歷史檔案
··· SwiftOCR - 快速簡單的OCR庫,用Swift編寫
··· Attention OCR - 使用視覺注意機制OCR引擎
··· RWTH-OCR - 亞琛大學光學字元識別系統
··· simple-ocr-opencv及其fork - 一個使用opencv和numpy的簡單的pythonic OCR引擎
比較老且可能被廢棄的OCR引擎
··· Clara OCR - C GPL中的開源OCR引擎
··· CuneiForm - CuneiForm OCR由Cognitive Technologies開發
··· Eye - 實驗性Java OCR(影象到文字)應用程式
··· kognition - 用於KDE的Omnifont OCR軟體
··· OCRchie - 模組化光學字元識別軟體
··· ocre - ocr易用版
··· xplab - 用於模式匹配的GTK 2工具
··· hebOCR - 希伯來文字元識別庫(以前命名為hocr,請參閱維基百科文章)GPL
OCR檔案格式
··· abby2hocr.xslt XSLT指令碼
··· OCR轉換指令碼
HOCR
··· horc-tools - 使用hOCR檔案格式,用於做各種有用事情的工具,Apache 2.0
··· hocr-spec -hOCR 1.1規範
··· ocr-transform - 用於在hOCR和ALTO之間轉換的CLI工具,MIT
··· hocr-parser - hOCR規範Python Parser
··· hOCRTools - hOCR到為ALTO轉換XSLT
ALTO XML
··· ALTO XML Schema - XML Schema和ALTO XML格式的開發
··· ALTO XML Documentation - ALTO的文件和用例
··· alto-tools - 使用ALTO檔案的各種工具,Python
··· AbbyyToAlto - 從Abbyy 6轉換來的ALTO XML的PHP指令碼
TEI
··· TEI-OCR -TEI,為OCR定製,用於生成的佈局和內容資訊
··· TEI SIGon Libraries - TEI庫的最佳實踐
··· GDZ - 基於METS / TEI的GDZ文件格式
OCR CLI
··· OCRmyPDF - OCRmyPDF將OCR文字層新增到經過掃描的PDF檔案中,允許搜尋
··· Ocrocis - Ocropy專案管理介面,另見外部專案主頁
OCR GUI
··· moz-hocr-editor - 用於編輯hOCR檔案的Firefox Addon 已停用
··· qt-box-editor - tesseract-ocr檔案的QT4編輯器。
··· ocr-gt-tools - 用於編輯OCR實況的客戶端 - 伺服器應用程式。
··· PaperWork - 使用掃描器和OCR輕鬆列印紙質文件(僅限於Linux)。
··· Paperless - 掃描,索引和歸檔所有紙張文件。
··· gImageReader - gImageReader是一個簡單的到tesseract-ocr的Gtk / Qt前端。
··· VietOCR - 用於Tesseract OCR引擎的一個Java / .NET GUI前端,包括jTessBoxEditor,一個圖形Tesseract 框資料編輯器
··· PoCoTo
··· OCRFeeder - GTK圖形使用者介面,允許使用者更正字元或邊框,支援ODT匯出等。
OCR預處理
··· NoiseRemove.java in MarhOCR - Java實現
··· binarize.c in ZBar - 基於Sauvola,由C語言實現two binarization algorithms,
··· typeface-corpus - 用於訓練Tesseract和OCRopus的自然歷史收藏和數字人文學科的一個庫。
··· binarizewolfjolion - 二值化演算法的比較。部落格帖子
··· crop_morphology.py in oldnyc - 將頁面裁剪成文字塊
··· Whiteboard Picture Cleaner - one-liner/script,用於清理和美化白板照片
··· Fred的ImageMagick指令碼textcleaner - 處理掃描文件,以清理文字背景
OCR服務
··· Open OCR - 在Docker容器中執行Tesseract
··· tesseract-web-service - 使用tornado實現的,用於tesseract-OCR的RESTful Web服務。
··· docker-ocropy - 用於執行ocropy OCR系統的Docker容器。
··· ABBYY Cloud OCR SDK程式碼示例 - 使用專有商業版權的ABBYY OCR API的程式碼示例。
··· nidaba - 可擴充套件的OCR pipeline
··· gamera - 用於構建文件處理應用程式的基本框架,例如OCR
··· ocr-tools - 為普通OCR引擎提供CLI和Web服務介面的專案
··· ocrad-docker - 在docker容器中執行ocrad OCR引擎
··· Kraken-docker - 在docker中執行kraken OCR引擎
··· ocr.space - 基於Tesseract ,免費線上OCR和OCR API (程式碼不開放)
OCR評估
··· ISRI OCR評估工具,以及1996年的使用者指南:!:
o isri-ocr-evaluation-tools - 由@eddieantonio(2015年,2016年)的進一步開發
o ancientgreekocr-evaluation-tools - 由@nickjwhite進一步開發(2013年,2014年)
··· ocrevalUAtion - 跨格式評估,CLI和GUI
··· ngram-ocr-eval - 使用ngram進行粗暴且簡單的OCR評估
··· quack - 質量保證工具 - 用於對應的ALTO檔案掃描
OCR庫(按程式語言排序)
Go
··· gosseract - Golang OCR庫,包裝Tesseract-ocr。
Java
··· Tess4J - Java本地訪問,繫結到Tesseract。
··· tess-two - 用於在Android和Java API上編譯Tesseract的工具。
.Net
··· tesseract for .net - Tesseract-ocr的.Net包裝器。
PHP
··· Tesseract OCR for PHP - Tesseract PHP
Python
··· pythesseract - 一個用於Google Tesseract的Python包裝器。
··· pyocr - Tesseract和Cuneiform的Python包裝。
··· ocrodjvu - 基於DjVu檔案格式,執行OCR的庫和獨立工具,包裝Cuneiform,gocr,ocrad,ocropus和tesseract
Javascript
··· ocracy - 基於ocropus的,純JavaScript lstm rnn實現
··· gocr.js - gocr的Javascript埠(emscripten)
··· ocrad.js - ocrad的 Javascript埠(emscripten)
··· tesseract.js - Tesseract的 Javascript埠(emscripten)
··· node-tesseract - Tesseract OCR包的簡單包裝器。
··· node-tesseract-native - C ++模組,使用tesseract和leptonica,用於node providing測OCR。
Ruby
··· rtesseract - 包含tesseract和imagemagick可執行檔案的Ruby庫。
··· ruby-tesseract - 用於Ruby MRI和JRuby的Native Tesseract Binding
··· ocr_space - API包裝器,用於免費的ocr服務ocr.space。包括CLI
OCR訓練工具
··· glyph-miner - 從早期print中提取glyphs的系統
學術方面
OCR-相關的著作或連結
··· IMPACT: Tools for text digitisation - 與OCR相關的一些軟體、工具
··· OCR-D - 與OCR相關的一些學術文章.
··· Mendeley Group "OCR - Optical Character Recognition" - 34篇與OCR相關的文章
··· eadh.org projects - 歐洲一些與人臉識別相關的文章, 其中一些與OCR相關
··· Wikipedia: Comparison of optical character recognition software
··· OCR [and Deep Learning] 由 @handong1587編寫
··· Ocropus Wiki: Publications
部落格文章或者入門指導
··· Tesseract Blends Old and New OCR Technology (2016) @theraysmith
[email protected], 添加了 "What You Always Wanted to Know" PPT
··· What You Always Wanted To Know About Tesseract (2014) @theraysmith
[email protected], 包含demos
··· Extracting text from an image using Ocropus (2015)
··· Training an Ocropus OCR model (2015) @danvk
··· Ocropus Wiki: Compute errors and confusions (2016) @zuphilip
··· Ocropus Wiki: Working with Ground Truth (2016) @zuphilip
··· OCRopus (2016) @jze
o ocropus
··· 10 Tips for making your OCR project succeed (2013) @cneud
-關於OCR projects一些需要考慮的東西
··· Overview of LEADTOOLS Image Cleanup and Pre-processing SDK Technology -
-用於商業影象預處理的列表;具有用於OCR預處理的步驟。
··· Extracting Text from PDFs; Doing OCR; all within R @shawngraham
-如何基於PDF檔案進行OCR, R programming environment
··· Tutorial: Command-line OCR on a Mac @bmschmidt
-在Mac OSX執行tesseract的指導教程
··· Practical Expercience with OCRopus Model Training (2016) @jze
··· Homemade Manuscript OCR (1): OCRopy (2017) @Jean-Baptiste-Camps
-如何將OCR用於處理醫療文件的指導教程
··· Optimizing Binarization for OCRopus (2017) @jze
··· Prototype demo for OCR postfix in Danish Newspapers (2016) @thomasegense
··· How Can I OCR My Dictionary? (2016) @JessedeDoes
··· "Needlessly complex" blog (2016) @mzucker. 基於Python的幾種圖片處理指導教程:
-Page dewarping (code)
-Compressing and enhancing hand-written notes (code)
-Unprojecting text with ellipses (code)
OCR 示例
··· abbyy-finereader-ocr-senate - 使用OCR解析掃描的參議院財務報表。
··· cvOCR - 用於識別簡歷或cv文字的OCR系統,基於tesseract,由Python和C實現
··· MathOCR - 列印的科學文件識別系統, pre-alpha
一些重要的學術論文
2011 and before
··· High performance document layout analysis (2003) Breuel
··· Adaptive degraded document image binarization (2006) Gatos, Pratikakis, Perantonis
··· [Internship Report] (2007) Gupta
··· OCRopus Addons (Internship Report) (2007) Dantrey
2012
··· Local Logistic Classifiers for Large Scale Learning (2012) Yousefi, Breuel
2013
··· High Performance OCR for Printed English and Fraktur using LSTM Networks (2013) Breuel, Ul-Hasan, Mayce Al Azawi. Shafait
··· Can we build language-independent OCR using LSTM networks? (2013) Ul-Hasan, Breuel
··· Offline Printed Urdu Nastaleeq Script Recognition with Bidirectional LSTM Networks (2013) Ul-Hasan, Ahmed, Rashid, Shafait, Breuel
2014
··· OCR of historical printings of Latin texts: Problems, Prospects, Progress. (2014) Springmann, Najock, Morgenroth, Schmid, Gotscharek, Fink
··· Correcting Noisy OCR: Context beats Confusion (2014) Evershed, Fitch
2015
··· TypeWright: An Experiment in Participatory Curation (2015) Bilansky
o On crowd-sourcing OCR postcorrection
··· Benchmarking of LSTM Networks (2015) Breuel
··· Recognition of Historical Greek Polytonic Scripts Using LSTM (2015) Simistira, Ul-Hassan, Papavassiliou, Basilis Gatos, Katsouros, Liwicki
··· A Segmentation-Free Approach for Printed Devanagari Script Recognition (2015) Karayil, Ul-Hasan, Breuel
··· A Sequence Learning Approach for Multiple Script Identification (2015) Ul-Hasan, Afzal, Shfait, Liwicki, Breuel
2016
··· Important New Developments in Arabographic Optical Character Recognition (OCR) (2016) Romanov, Miller, Savant, Kiessling
o on kraken
o using OpenArabic/OCR_GS_Data for ground truth data
··· OCR of historical printings with an application to building diachronic corpora: A case study using the RIDGES herbal corpus (2016) Springmann, Lüdeling
··· Automatic quality evaluation and (semi-) automatic improvement of mixed models for OCR on historical documents (2016) Springmann, Fink, Schulz
··· Generic Text Recognition using Long Short-Term Memory Networks (2016) Ul-Hasan -- Ph.D Thesis
··· OCRoRACT: A Sequence Learning OCR System Trained on Isolated Characters (2016) Andreas Dengel, Ul-Hasan, Bukhari
2017
··· Telugu OCR Framework using Deep Learning (2015/2017) Achanta, Hastie
o see also TeluguOCR, banti_telugu_ocr, chamanti_ocr, #49
文章資源下載地址:
密碼: p85r
往期內容推薦:
更多深度學習在NLP方面應用的經典論文、實踐經驗和最新訊息,歡迎關注微信公眾號“深度學習與NLP”或“DeepLearning_NLP”相關推薦
字元識別(OCR)相關工具/庫/教材/論文等資源整理
分享一些與OCR相關的軟體、庫和文章等資源,歡迎大家補充 文末附相關資源下載地址 目錄 · 軟體方面 OCR引擎 老的OCR引擎 OCR檔案格式 HOCR ALTO XML TEI OCR CLI OCR GUI OCR預處理 OCR服務 OC
字元識別OCR研究一(模板匹配&BP神經網路訓練)
摘 要 在MATLAB環境下利用USB攝像頭採集字元影象,讀取一幀儲存為影象,然後對讀取儲存的字元影象,灰度化,二值化,在此基礎上做傾斜矯正,對矯正的影象進行濾波平滑處理,然後對字元區域進行提取分割出單個字元,識別方法一是採用模板匹配的方法逐個對字元與預先製作好的字元模
6 個優秀的開源 OCR 光學字元識別工具
紙張在許多地方已日益失寵,無紙化辦公談論40多年,辦公環境正限制紙山的生成。而過去幾年,無紙化辦公的概念發生了顯著的轉變。在計算機軟體的幫助 下,包含大量重要管理資料和資訊的文件可以更方便的以電子形式儲存。掃描文件的好處不純粹是存檔理由。為了訪問基於紙張的資訊和將資訊整合進數
幾款常用光學字元識別(OCR)軟體比較
常見的OCR識別軟體包括ABBYY FineReader、LEADTOOLS、Dynamsoft OCR SDK、Tesseract、ExperVisionTypeReader。 只要有掃描器和光學字元識別(OCR)軟體,將掃描文件轉換成Word文件是相當容易的。掃描器將紙質文件轉換成掃描影象,
OpenCV+OCR 影象處理字元識別原理及程式碼
需配置好OpenCV和OCR環境下執行 1、OpenCV簡介 OpenCV的全稱是Open Source Computer Vision Library,是一個跨平臺的計算機視覺庫。 OpenCV用C++語言編寫,它的主要介面也是C++語言,但是依然保留了大量的C語言介
OCR光學字元識別
一、步驟 1. 建立訓練檔案,將文字影象與文字分類標識關聯,儲存到訓練檔案中,訓練檔案字尾名為trf,主要用到函式為append_ocr_trainf。 2. 訓練OCR分類器,Halcon支援BOX分類器、神經網路分類器(MLP)和支援向量機分類器(SVM),由於後兩者
ml課程:XGBoost和lightGBM工具庫學習及相關案例程式碼
以下是我的學習筆記,以及總結,如有錯誤之處請不吝賜教。 本文主要介紹kaggle大殺器xgboost和lightgbm兩個工具庫的簡單使用,以及相關案例程式碼。 首先回憶一下boosting原理,以及由boosting衍生出來的演算法:Adaboost和GBDT以及後面更強的xgboos
ml課程:Sklearn工具庫學習及相關案例程式碼
以下是我的學習筆記,以及總結,如有錯誤之處請不吝賜教。 本文主要介紹sklearn工具庫相關使用,以及部分內容解釋,最後有相關案例程式碼。 首先看一張圖,這張圖是構建機器學習系統的一般流程: 還記得之前的一篇文章中有一張sklearn機器學習模型選擇流程的一張圖與此類似:沒看過
Tesseract-OCR 字元識別---樣本訓練
Tesseract是一個開源的OCR(Optical Character Recognition,光學字元識別)引擎,可以識別多種格式的影象檔案並將其轉換成文字,目前已支援60多種語言(包括中文)。 Tesseract最初由HP公司開發,後來由Goo
應用OpenCV進行OCR字元識別
opencv自帶一個字元識別的例子,它的重點不是OCR字元識別,而主要是演示機器學習的應用。它應用的是UCI提供的字元資料(特徵資料)。 這些例子都只能用於學習OpenCV或熟悉OCR的簡單流程,因為它們與當前比較專業的OCR引擎的識別率相去甚遠。 這裡寫下OpenCV
一款免費線上文字識別(OCR)工具
你一定遇到過以下一些場景。 學習工作中需要處理一些紙質檔案、電子文件或圖片資料,想對這些文字進行編輯整理,但很多文字不能直接複製,苦於一個字一個字手動打出來。 發現一段不錯的文字想要做書摘筆記,但又懶得去打字或是手抄整理。 很多手機截圖上的文字資訊需要編輯成話
Tesseract-OCR 字元識別---樣本訓練 圖片識別訓練
Tesseract是一個開源的OCR(Optical Character Recognition,光學字元識別)引擎,可以識別多種格式的影象檔案並將其轉換成文字,目前已支援60多種語言(包括中文)。 Tesseract最初由HP公司開發,後來由Google維護,目前釋出在Googel Pr
吳恩達機器學習筆記 —— 19 應用舉例:照片OCR(光學字元識別)
本章講述的是一個複雜的機器學習系統,通過它可以看到機器學習的系統是如何組裝起來的;另外也說明了一個複雜的流水線系統如何定位瓶頸與分配資源。 OCR的問題就是根據圖片識別圖片中的文字: 這種OCR識別的問題可以理解成三個步驟: 文字檢測 字元切分 字元識別 文字檢測 文字的檢測可以用行人的檢測來做
tesseract-ocr字元識別,安裝/測試/訓練 問題/解決方案
2018.5.4更新 training tesseract由於Ubuntu下訓練tesseract 教程不足,還在繼續摸索。現在轉用Windows下的tesseract 3.05版本(tesseract 4.0在我的win10下總是出錯 還沒辦法解決)windows tess
SVM與ANN實現OCR字元識別
SVM -支援向量機原理與實踐之實踐篇 前言 最近太忙,這幾天還是抽空完成實踐篇,畢竟所有理論都是為實踐服務的,上一篇花了很大篇幅從小白的角度詳細的分析了SVM支援向量積的原理,當然還有很多內容沒有涉及到,例如支援向量迴歸,不敏感損失函式等內容,但是也不妨礙我們用支援向量
Java OCR 影象智慧字元識別技術[可識別中文]
http://www.open-open.com/lib/view/open1363156299203.html 國內最專業的OCR軟體只有2家,清華TH-OCR和漢王OCR,看了很多的OCR技術發現好多對英文與數字的支援都很好,可惜很多都不支援中文字元。 Aspri
java利用tesseract-OCR對影象進行字元識別
try { Process pro = Runtime.getRuntime() .exec(new String[]{"D:/Program Files (x86)/Tesseract-OCR/tesseract.exe",
【實戰】基於OpenCV的水錶字元識別(OCR)
[TOC] ![](https://img2020.cnblogs.com/blog/2039866/202006/2039866-20200613194435653-714003795.jpg) ## 1. USB攝像頭取圖 由於解析度越高,處理的畫素就越多,導致分析影象的時間變長,這裡,我們設
php與其他一些相關工具的安裝步驟分享
you 記錄 有道 工具 nbsp 寫博客 安裝php inux ref 現在很少花時間來專門寫博客,都是把平時看到用到的東西像隨筆一樣記錄在雲筆記上。 在這兒分享一些php相關的技術安裝過程: linux下編譯安裝php:php安裝 phpunit安裝過程:phpuni
Underscore.js工具庫
頁面 sco scrip com tcs 實用 函數式編程 nas 空白 Underscore 是一個 JavaScript 工具庫,它提供了一整套函數式編程的實用功能,但是沒有擴展任何 JavaScript 內置對象。 他解決了這個問題:“如果我面對一個空白的 HTML