C 使用Tesseract OCR 解析驗證碼

2021-06-20 01:17:08 字數 2015 閱讀 5103

之前我在一文中介紹了用c#識別簡單不變形數字驗證碼,但是對於識別變形的

下面介紹乙個開源的ocr引擎tesseract2。值得慶幸的是雖然是開源的但是它的識別率較高,並不比其他引擎差勁。網上介紹tessnet2也是當時時間排名第三的識別引擎,只是後來慢慢不維護了,目前是google在維護,大家都知道google 在搞電子圖書館,每天都有不同類目的書被掃瞄成電子版。所以有g老大維護,識別率差不到**去。呵呵。。別鄙視我。。。

tessnet2 是用vc ++ 開發的,其中是生成tessnet2.dll ,我們可以通過.net 來呼叫內部具體類庫實現識別。

tessnet2的使用:

2、將tessnet2.dll 新增到vs 引用中,和新增.net程式集一樣。

3、用tessnet2進行識別

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

webrequest request = webrequest.create("");

webresponse response = request.getresponse();

stream st = response.getresponsestream();

bitmap bitmap = (bitmap)bitmap.fromstream(st);

uncodebase ud =newuncodebase(bitmap );

bitmap = ud.graybypixels();

ud.clearnoise(128, 2);

picturebox1.image = bitmap ;

tessnet2.tesseract ocr =newtessnet2.tesseract();//宣告乙個ocr類

ocr.setvariable("tessedit_char_whitelist","0123456789");//設定識別變數,當前只能識別數字。

@"\\tmpe","eng",true);

listresult = ocr.doocr(bitmap , rectangle.empty);//執行識別操作

stringcode = result[0].text;

textbox1.text = code;

識別效果:

Tesseract OCR 入門使用

以下只針對widows平台,linux下沒有測試 tesserocr與pytesseract是python的乙個ocr識別庫,但其實是對tesseract做的一層python api封裝,pytesseract是google的tesseract ocr引擎包裝器 所以它們的核心是tesseract,...

Tesseract OCR使用說明

新增源 sudo vi etc apt sources.list 新增deb bionic universe 其中bionic和自己安裝的系統有關,根據實際情況進行改變 安裝 sudo apt install tesseract ocr sudo apt install libtesseract d...

C 使用Tesseract OCR 解析驗證碼

tessnet官網 之前我在一文中介紹了用c 識別簡單不變形數字驗證碼,但是對於識別變形的 下面介紹乙個開源的ocr引擎tesseract2。值得慶幸的是雖然是開源的但是它的識別率較高,並不比其他引擎差勁。網上介紹tessnet2也是當時時間排名第三的識別引擎,只是後來慢慢不維護了,目前是googl...