日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Tika结合Tesseract-OCR 实现光学汉字识别(简体、宋体的识别率百分之百)—附Java源码实现及真实测试数据和训练集下载地址...

發布時間:2023/12/15 java 51 豆豆

?

?OCR(Optical character recognition) —— 光學文字識別,是圖像處理的一個重要分支,中文的識別具有一定挑戰性,特別是手寫體和草書的識別,是重要和熱門的科學研究方向。可惜國內的科研院所,基本沒有大量的高識別率的訓練集—筆者聯系過北京語言大學研究生一篇論文的作者,他們說有%90的正確識別率,結果只做了簡單的2000字。真的是為了論文而論文。

斯坦福大學有個工程項目,專門做中文漢字的識別——歐美發達國家的科研院所更有研究精神

?

提高識別率,訓練集是關鍵!

?提高識別率,訓練集是關鍵!!

?提高識別率,訓練集是關鍵!!!

?

下載訓練集—traineddata請移步:

https://github.com/tesseract-ocr/tessdata

中文請選如下4個:

chi_sim.traineddata (簡體— 對于宋體,像素>=?300dpi:識別率高達%100,同時對英文阿拉伯數字識別率高達百分之90以上)
chi_sim_vert.traineddata (簡體,豎排)
chi_tra.traineddata (繁體)
chi_tra_vert.traineddata(繁體,豎排)【CoderBaby】

?

經過測試得出如下結論:

  • 對于宋體,白色背景,非傾斜等,像素大于等于300dpi—識別率%100
  • 英文和數字,識別率超過90%
  • 特殊字符識別率不高
  • 像素太低,識別率急劇下降
  • 多種背景顏色變化,識別率極低
  • 字體換成草書等,識別率大幅降低
  • 電影屏幕字幕和網頁截圖識別率較低
  • 掃描件如果字體太淡,太小,完全識別不出來
  • 提高識別率,需要自己做訓練集,工作量巨大的體力活(簡體漢字最少6753個,混合一些復雜的,至少要10000個字符;不同字體要重新做,因為本質上是圖形幾何計算,國內科研院所和開源的做的不多—待確認)

?

  • Java源碼實現,tika結合Tesseract-OCR

1)源碼如下(支持多個圖片識別)

@Testpublic void testCode() throws IOException, SAXException, TikaException, InterruptedException {List<String> fileNames = new ArrayList<>();fileNames.add("chi_eng.png");fileNames.add("chi_eng01.png");fileNames.add("chi_old.png");fileNames.add("chi-scan-75dpi.jpg");fileNames.add("chi-scan-100dpi.jpg");fileNames.add("chi-scan-300dpi.jpg");fileNames.add("chi-smartphone.jpg");fileNames.add("chi-subtitle-v1.jpg");fileNames.add("english00.png");fileNames.add("pdf_shaomiao.png");fileNames.add("test.tiff");fileNames.add("weather.png");// 轉載請注明出處:https://www.cnblogs.com/NaughtyCat/p/how-to-install-tesseract-ocr-on-windows-and-centos.htmlTesseractOCRParser parser = new TesseractOCRParser();TesseractOCRConfig config = new TesseractOCRConfig();// 設置簡體中文訓練集config.setLanguage("chi_sim");// 設置Tesseract 安裝路徑config.setTesseractPath("C:/Program Files/Tesseract-OCR");// 設置train data 路徑config.setTessdataPath("C:/Program Files/Tesseract-OCR/tessdata");ParseContext context = new ParseContext();context.set(TesseractOCRConfig.class, config);context.set(TesseractOCRParser.class, parser);fileNames.forEach(filename -> {BodyContentHandler handler = new BodyContentHandler();File file = new File("E:/tika/testData" + File.separator + filename);if (file.exists()) {Metadata metadata = new Metadata();try (InputStream stream = new FileInputStream(file)) {parser.parse(stream, handler, metadata, context);} catch (Exception e) { }handler.toString();}});} }
  • 測試數據(圖片)說明及下載地址

具體說明及測試效果請參見:https://ocr.space/blog/2015/03/best-ocr-software-for-chinese.html

相關測試圖片請參見:https://github.com/A9T9/OCR-Benchmark

?

  • ?如何做自己的測試數據集

?

請參考官網:https://github.com/tesseract-ocr/tesseract/wiki/Training-Tesseract-3.00%E2%80%933.02?

?

(2)原始圖片及效果

圖1

?

轉換效果如下:

【結論】

300dpi,識別率:%100

?


?

圖2

轉換效果如下:

Brief history

Tesseractwes orginally developed at HewlettPackard Laboratones Bristol and
atHewettPackard Co Greeley Colorado beween 1985 and 1994 wthsome
more changes made in 1996 to portto Windows and some C++zing in1998
In2005 Tesseract was open sourced by HP Since 2006 itis developed by Goosgle

Thelatest (LSTM based]j stableversionis4.10, released on July 7.2019.Latest source codes avaable from
master branch on GlHub.Openissues can be foundin ssue racker and Planning iki

?

Thelatest35 version 5 3.05.02 released onjune 19,2018.Latestsource code for3.055 avaable from
305 branch on GlHHub.There sno development forthisversion,butitcan be used forspecial cases .
see Regression offeatures from 30x

?

See Release Notes and Change Log formore detas ofthe releases-
Installing Tesseract

You can ettherInstall Tesseractvia prepulltbinary package or pulld iLfrom sourcey
Supported Complersare:

* GCC48 and above
* ang34and above
* MSVC 2015.2017.2019

Othercompllersmightwork butare notofially supportedl
Running Tesseract
Basiccommand line usage:

tesseract inagenane outputbase [-1 ]ang】 [--osn ocrenginenode] [--psn pagesegnode
[configfiles...]

Formore information aboutthe various command line options use esseract --henp or man tesseract .

Examples can befoundin thewiki
For developers

Developers can use Tbtessaract Cor

【結論】
英文,特殊符號等會識別失敗。識別率:>%80


?

圖3.

?轉換效果如下:

E g 氣

?

Even as Tvanja praised 8e parties Envoyed i 功 i5 7el gzamt7 comgpi 地 08
Qchieveze1 Q 7W7Der- Ofsocial media lsers appeared crilical of er as-
Sesszet 0f 加 e Trip adiistration「5 role 加 功 i5 endeavou7
IBM 表 示 不 服 ,Google 不 care。 下 而 讓 我 們 逐 字 逐 句 來 看 他 們 的 論 文
吧 , 對 于 爭 論 的 事 情 , 自 己 下 功 夫 搞 清 楚 。

?

松 貴 瑩 坊 辦 少
忠 : https:/ww.cnblogs-com/NaughtyCatpytranslate-of-google-
Quantum-supremacy-article-published-on-nature.html

Quantum supremacy using
a programmable

?

superconducting
processor

基 于 可 編 程 的 超 導 處 理 器 實 現 的 量 子 霸

?

動 關 盤 源 ,https://doorg/10.1038/s41586-019-1666-5
煌 收 船 2019 樂 7 歷 20 歷
旋 準 8 船 2019 樂 9 歷 20 廠
坊 終 發 療 2019 知 10 月 23 廳

Abstract
引 言

?

量 子 計 算 機 吹 牛 遢 說 , 對 于 特 定 的 計 算 任 務 , 基 于 量 子 處 理 器 的 計 算
機 , 其 速 度 相 較 于 經 典 處 理 器 呈 指 數 級 增 長 。 根 本 的 挑 戰 在 于 構 建 一

?【結論】
宋體,加粗,黑色——識別率%100;傾斜,綠色等——識別率:%70

圖4(掃描件).

?

?

?

?轉換效果如下:

節 P a
為客戶服務是華為存在的睢一理由” 從 公 司 層 面
看 , 為客戶創造價值的主業務流只有一個!

Ipo - nisgniedProductDevelopment

B croeis PaFA 4 辜蒙扁)



?

Unc - LomdTocash
蕓 a npe waa8 2 菅墨

E Ig - ssueToResoliton 林
P L a 顫〉

?

n i t t

?

?

?

6 P: 01

IP0 主 業 務 流 包 括 : MW 流 程 、0R 流 程 、IPD 流 程

?

?

D
4 一


【結論】
pdf掃描件,只有比較大,比較粗的字能識別出來,顏色較淡的識別不出來
識別率:約%10


?圖5.

?

?

轉化效果如下:

大 行 佳 孔 當 自 弼 不 。

巧 者 勞 而 春 者 忱 , 無 能 者 無 所 必 , 作 食 而 邀
游 , 陸 若 不 系 之 舟 。

Chacgyuisdt.

124565.


12256 dogdogunnn

【結論】
漢字、英文、數字混合
識別率:%60~%70


?

圖6(天氣網頁截圖)

?

轉換效果如下:

L f

全 國 > 囚 川 > 尿 膳 > 坂 區
今 奪 偉 8-15 天

?

llc/4rc

?

?

?

?

?

208 238 028 058
人 [ [ 92
s
c E E
無 RR 無 RR 無 RR 無 RR

< < < <

【結論】
背景顏色(藍色,灰色,黑色、橙色);字體顏色(黑色、白色)。識別率:不到%10


?

圖7.

轉換效果如下:

機 器 人 餐 廳

cra arenzanmu nnanmes
seeu xraguagpt. ssepumes
人 吊 pahs ztpznaapsus anea
an sro an sessuassnet
e ssoangm crmazees aas
iusiaanorg.mmouz rpeae
snreenatesezur eeae t
+ngszensenapenecieme
礦 svapgzanohat


【結論】
75dpi,識別率:約為%5 【CoderBaby】

?


?

圖8(電影字幕截圖).

轉換效果如下:

?

E
1 30
E
55

【結論】

背景顏色(漸變灰),字體為白色——識別率:%0


?

圖9(古籍).

?

?

轉換效果如下:

?

茂 長 萬 灰 咆
恍 “ 望 瀧 “ 松 驅
明 匹 一 圖 撫 札 狐
東 非 “ 柳 一 吳
埕 躍 X“ 埋 煌 弟
儀 懷 坂 稱 鳥 場 “
下 泊 聰 遇 林固 “
| 靴 猶 “

?

【結論】

豎排,古籍版 (需要“chi_tra.traineddata及“chi_tra_vert.traineddata”)——識別率:%0

?


?

圖9(手機拍照圖片).

轉換效果如下:

?

?

?

?

在 中 國 , 餐 廳 里 的 菜 通 常 很 特 別 , 但 是 有 時 候 做 菜 和 服 務
的 人 也 很 特 別 : 不 久 前 昆 山 一 家 餐 廳 開 業 , 這 家 餐 廳 從 歡 迎 宰
人 、 點 菜 、 制 作 到 上 菜 , 大 部 分 工 作 都 由 機 器 人 完 成 。 餐 廳 經 理
宋 育 剛 對 他 的 “ 員 工 “ 很 滿 意 。 這 些 機 咤 人 能 理 解 40 句 日 常 生

?

?

?

?

活 用 語 , 因 此 可 以 與 顧 客 交 流 。 讓 宋 育 剛 最 滿 意 的 是 , 他 的 這 些
員 工 們 既 不 會 生 病 也 不 會 請 假 。 充 電 兩 個 小 時 后 , 它 們 就 又 能
投 入 使 用 了 , 因 此 它 們 要 比 普 通 員 工 優 秀 。 對 于 顧 客 來 說 , 技 術
水 平 有 沒 有 達 到 能 使 這 些 機 蹇 人 廚 師 很 好 地 調 味 還 不 得 而 知 。
不 過 , 機 器 人 廚 師 倒 是 非 常 令 人 期 待 。

【結論】
手機拍照圖片,還算清晰的——識別率:%100

?

轉載請注明出處:https://www.cnblogs.com/NaughtyCat/p/tika-support-Tesseract-OCR-with-source-code-and-test-data.html

?

參考:

1)https://stackoverflow.com/questions/23792373/installing-tesseract-ocr-on-centos-6

2)http://www.zmonster.me/2015/04/17/tesseract-install-usage.html?

?

*****************************************************************************************************

精力有限,想法太多,專注做好一件事就行

  • 我只是一個程序猿。5年內把代碼寫好,技術博客字字推敲,堅持零拷貝和原創
  • 寫博客的意義在于打磨文筆,訓練邏輯條理性,加深對知識的系統性理解;如果恰好又對別人有點幫助,那真是一件令人開心的事

*****************************************************************************************************

?

總結

以上是生活随笔為你收集整理的Tika结合Tesseract-OCR 实现光学汉字识别(简体、宋体的识别率百分之百)—附Java源码实现及真实测试数据和训练集下载地址...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。