一、框架介紹
Tesseract 是一款圖片識別工具,可以抓取圖片中的文字,可以支持多種語言(默認(rèn)是英語),需要下載開源文件可以在github上下載,如果知識應(yīng)用不想太多深究直接在google code里邊搜索下載即可。
二、Tesseract內(nèi)容
Doc:說明文檔
Tessdata:存放各種文字庫(chi_sim.traineddata:中文 等)
Tessseract.exe 即可以啟動文件開始調(diào)用Tesseract 可以通過cmd方式調(diào)用,先cd到對應(yīng)的目錄,然后 輸入 tesseract.exe 圖片名 導(dǎo)出文件名(如:tesseract.exe 1.jpg 1) 就可以把和tesseract同目錄的 1.jpg文件識別結(jié)果存放在 1.txt文件中。當(dāng)然如果需要支持中文,需要在tessdata中添加 chi_sim.traineddata 文件,
然后 調(diào)用例子:tesseract.exe 1.jpg 1 -L chi_sim 制定是根據(jù)什么文字庫進(jìn)行識別。 當(dāng)然圖片地址可以引用全路徑、輸出結(jié)果也可以全路徑如果只是想把Tesseract做為一個工具做文字解析,并不追求太高成功率使用者,這樣即可滿足需要了,直接通過CMD調(diào)用exe進(jìn)行執(zhí)行。有需要玩的小伙伴可以直接下載附件 Tesseract_簡單使用.rar文件
三、.Net項(xiàng)目高級使用
如果.Net項(xiàng)目需要使用 DLL方式引用進(jìn)行研發(fā),可以下載Tesseract_DLL引用包。
X86和X64是針對Tesseract關(guān)聯(lián)引用DLL,根據(jù)程序所在系統(tǒng)位數(shù)進(jìn)行自適應(yīng)配置。
liblept168.dll 這個文件會在windows server 2003中發(fā)布IIS情況下無法加載錯誤信息: Failed to find library "liblept168.dll" for platform x86. 如果發(fā)布在更高版本系統(tǒng)中即可正常使用Tesseract.DLL即是要添加到對應(yīng)的項(xiàng)目中的。以下是測試tesseract.dll 代碼:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
using (var engine = new TesseractEngine(Server.MapPath( @"~/tessdata" ), "eng" , EngineMode.Default)) { // have to load Pix via a bitmap since Pix doesn't support loading a stream. using (var image = new System.Drawing.Bitmap(imageFile.PostedFile.InputStream)) { using (var pix = PixConverter.ToPix(image)) { using (var page = engine.Process(pix)) { meanConfidenceLabel.InnerText = String.Format( "{0:P}" , page.GetMeanConfidence()); resultText.InnerText = page.GetText(); } } } } |
TesseractEngine:構(gòu)造函數(shù)參數(shù)注意事項(xiàng)=》第一個是字庫路徑必須使用tessdata結(jié)尾,第二個如果需要使用chi_sim即中文
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。