JAVA OCR圖片識別

今天閒來無聊,嘗試了一下OCR識別,嘗試瞭如下三種方案:html

1.直接使用業界使用最普遍的Tesseract-OCR。java

Tesseract項目最初由惠普實驗室支持,1996年被移植到Windows上,1998年進行了C++化。在2005年Tesseract由惠普公司宣佈開源。2006年到如今,都由Google公司開發及維護。git

2.使用基於Tesseract-OCR封裝的Tess4jgithub

3.調用百度雲OCR服務實現(AT兩家太貴,百度雲文字識別服務提供每一個月15000次的免費調用)。maven

先說測試結果:測試

毫無心外的,百度識別率最高,若是要本身實現,原生tesseract-ocr比tess4j識別率高出不少。ui


具體實現:.net

1.百度雲OCR地址:https://cloud.baidu.com/product/ocr.htmlhtm

JAVA開發指南:https://cloud.baidu.com/doc/OCR/OCR-Java-SDK.htmlblog

 

2.直接使用Tesseract-OCR,還有一個好處就是能夠進行鍼對性的訓練,提升識別率,我沒有嘗試過。

參考:

Windows環境安裝tesseract-ocr 4.00並配置環境變量

注意:能夠去github下載最新語言包文件,語言包是放在 tessdata文件夾,文件比較大,下載比較慢。

java文字識別技術(親測,識別率很高)

java 圖片文字識別 ocr

備註:截止到筆者寫文時已發佈4.00版本。

 

3.使用Tess4j,(不建議使用,我在試用過程當中發現錯誤率極高)

不過目前網上能找到的比較多的資料都是Tess4j。

有如下可參考:

直接可運行的項目:https://gitee.com/zhaohuihbwj/Tess4JDemo

注意:該項目可直接運行測試。建議在maven中將tess4j升級到最新版本。

該項目直接包含了語言包,tess4j依賴包比較多,克隆過程會比較漫長。

若本地已有語言包chi_sim.traineddata,eng.traineddata,osd.traineddata

可克隆我fork的版本,https://gitee.com/huanghongbo/Tess4JDemo,將以上語言包放入/src/resources/tessdata目錄。

其餘參考資料:

1.官方參考:http://tess4j.sourceforge.net/

最新官方Tess4j包中已包含了對應dll文件,無需再單獨配置。

2.Java OCR tess4j 圖片識別技術(三)

3.驗證碼識別(Tess4J初體驗)

4.tess4j正確的使用 OCR

相關文章
相關標籤/搜索