下面介紹一個開源的OCR引擎Tesseract2。值得慶幸的是雖然是開源的但是它的識別率較高,并不比其他引擎差勁。網上介紹Tessnet2也是當時時間排名第三的識別引擎,只是后來慢慢不維護了,目前是G

下面介紹一個開源的OCR引擎Tesseract2。值得慶幸的是雖然是開源的但是它的識別率較高,并不比其他引擎差勁。網上介紹Tessnet2也是當時時間排名第三的識別引擎,只是后來慢慢不維護了,目前是Google在維護,大家都知道Google 在搞電子圖書館,每天都有不同類目的書被掃描成電子版。所以有G老大維護,識別率差不到哪里去。呵呵。。別鄙視我。。。

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

Tessnet2的使用:

1、點擊http://files.cnblogs.com/zhuxiangyu/tessnet2_32.rar鏈接下載Tessnet2.dll ,

?? Tessnet2是支持多國語的。語言包下載鏈接:http://code.google.com/p/tesseract-ocr/downloads/list

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

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("http://sz.2zf.cn/js/code2.asp");
????????????WebResponse response = request.GetResponse();
????????????Stream st = response.GetResponseStream();
????????????Bitmap bitmap = (Bitmap)Bitmap.FromStream(st);
?UnCodebase ud = new?UnCodebase(bitmap );
????????????bitmap = ud.GrayByPixels();
????????????ud.ClearNoise(128, 2);
????????????pictureBox1.Image = bitmap ;
tessnet2.Tesseract ocr = new?tessnet2.Tesseract();//聲明一個OCR類
????????????ocr.SetVariable("tessedit_char_whitelist","0123456789");//設置識別變量,當前只能識別數字。
????????????ocr.Init(Application.StartupPath + @"\\tmpe","eng",true);//應用當前語言包。注,Tessnet2是支持多國語的。語言包下載鏈接:http://code.google.com/p/tesseract-ocr/downloads/list
????????????List<tessnet2.Word> result = ocr.DoOCR(bitmap , Rectangle.Empty);//執行識別操作
????????????string?code = result[0].Text;
????????????textBox1.Text = code;

?

?

識別效果:

image

?

代碼下載:CSharp簡單數字驗證碼解析.rar

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/387540.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/387540.shtml
英文地址,請注明出處:http://en.pswp.cn/news/387540.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

js 更改json的 key

let t data.map(item > {return{fee: item[費用],companyName1: item.companyName,remark1: item.remark,beginTime1: item.beginTime,endTime1: item.endTime}})console.log(t) 源地址&#xff1a;https://www.cnblogs.com/Marydon20170307/p/8676611.html轉載于:https:/…

1.4版本上線(第八次會議)

在小組成員連夜趕工的奮斗下&#xff0c;終于在昨天深夜成功實現了UI界面功能 至此&#xff0c;我們的系統終于真正可實用而不是局限在命令行進行互動了 由于python嵌入數據庫功能實現難度較大&#xff0c;迫于時間的局限性&#xff0c;我們選擇了用json文件與txt文件進行替代&…

分UV教程

第一步 首先&#xff0c;打開一個練習場景“空中預警機1.max”&#xff08;這事小弟平時的練習做的不好獻丑了&#xff09;。&#xff08;圖01&#xff09; 圖01 第二步 這里我們拿機翼來舉例子&#xff0c;隱藏除機翼意外的其他模型。&#xff08;圖02&#xff09; 圖02 第三步…

k8s系列--- dashboard認證及分級授權

http://blog.itpub.net/28916011/viewspace-2215214/ 因版本不一樣&#xff0c;略有改動 Dashboard官方地址&#xff1a; https://github.com/kubernetes/dashboard dashbord是作為一個pod來運行&#xff0c;需要serviceaccount賬號來登錄。 先給dashboad創建一個專用的認證信息…

JAVA項目開發

16年java軟件開發經驗&#xff0c;全職項目開發&#xff0c;項目可簽合同、開普票和專票。 主要承接項目&#xff1a; 1、網站開發項目 自主開發千帆CMS動態發布系統&#xff0c;基于java/springboot2/jpa/easyui開發&#xff0c;簡單易用&#xff0c;后臺與前端分離&#xff0…

3dmax基本操作

1、基本操作平移視圖&#xff08;你所說的移動&#xff09;&#xff1a;CTRLP&#xff0c;或者用&#xff0c;滾輪。按住鼠標滾輪不放拖動&#xff0c;就行了。旋轉&#xff1a; ALT滾輪。按住ALT鍵不放&#xff0c;利用滾輪的移動&#xff08;滾輪也要按著不放&#xff09…

padding影響整個div的實際寬度

padding影響整個div的實際寬度 1.不讓padding影響整個div的實際寬度 所以要設置css屬性&#xff1a; box-sizing:box-sizingposted on 2019-01-25 16:58 玉貔貅 閱讀(...) 評論(...) 編輯 收藏 轉載于:https://www.cnblogs.com/yupixiu/p/10320564.html

unity3d 任務頭上的血條

人物的名稱與血條的繪制方法很簡單&#xff0c;但是我們需要解決的問題是如何在3D世界中尋找合適的坐標。因為3D世界中的人物是會移動的&#xff0c;它是在3D世界中移動&#xff0c;并不是在2D平面中移動&#xff0c;但是我們需要將3D的人物坐標換算成2D平面中的坐標&#xff0…

如何在C#中使用Win32和其他庫之三

具有內嵌字符數組的結構 某些函數接受具有內嵌字符數組的結構。例如&#xff0c;GetTimeZoneInformation() 函數接受指向以下結構的指針&#xff1a; typedef struct _TIME_ZONE_INFORMATION { LONG Bias; WCHAR StandardName[ 32 ]; SYSTEMTIME Standa…

unity3d 預制體

首先要說明一下什么是預制體&#xff1f; 在Unity3D里面我們叫它Prefab&#xff1b;我們也可以這樣理解&#xff1a;當制作好了游戲組件&#xff08;場景中的任意一個gameobject &#xff09;,我們希望將它制作成一個組件模版&#xff0c;用于批量的套用工作&#xff0c;例如說…

Python小數據池,代碼塊

今日內容一些小的干貨 一. id is 二. 代碼塊三. 小數據池四. 總結python小數據池&#xff0c;代碼塊的最詳細、深入剖析 一. id is 二. 代碼塊三. 小數據池四. 總結一&#xff0c;id&#xff0c;is&#xff0c; 在Python中&#xff0c;id是什么&#xff1f;id是內存地址…

【Wax】使用Wax (framework方式,XCode 4.6)

前情提示&#xff1a;【Wax】使用Wax &#xff08;非framework方式&#xff0c;XCode 4.6&#xff09; 這次&#xff0c;將以framework的方式來使用Wax 那么&#xff0c;讓我們開始吧&#xff01;&#xff01;&#xff01; 準備工作&#xff1a; 下載wax.framework&#xff1a;…

unity3d 簡單動畫

1&#xff0c;動畫系統配置 創建游戲對象并添加Animation組件&#xff0c;然后將動畫文件拖入組件。 進入動畫文件的Debug屬性面板 選中Legacy屬性 選中游戲對象&#xff0c;打開Animation編輯窗口 添加動畫變化屬性 需改關鍵幀的屬性值 配置完成后運行即可得到動畫效果 2&…

人月神話閱讀筆記(二)

今天對人月神話的正文部分進行了閱讀&#xff0c;從人月神話這一部分中了解到缺乏合理的時間進度控制是造成滯后的主要原因&#xff0c;比其他任何事情影響的和還大&#xff0c;書中也對造成這種這種普遍災難的原因進行了并進行了詳細列舉。 首先&#xff0c;我們對估算技術缺乏…

3dmax導出到unity3d下分割動畫

1、在3dmax 導出時候&#xff0c;要導出FBX文件&#xff0c;同時包含動畫&#xff0c;骨骼&#xff0c;皮膚等內容 2、把FBX文件導入到Unity3d后會默認有一個超長的大動畫&#xff0c;就是一個整體的動畫&#xff0c;如圖Take001&#xff0c;這個時候要分割哪部分是跑&#xf…

華碩首款平板電腦周五開售

新浪科技訊北京時間3月21日晚間消息&#xff0c;華碩周一宣布&#xff0c;將于本周開售首款平板電腦EeePadTransformer。本周五&#xff0c;臺灣地區用戶將可以率先預定這款平板電腦&#xff0c;隨后還將在全球其他國家和地區推出,悠語yoryu化妝品玻尿酸水潤彈力面膜120ml補水保…

(2)頁面標簽解析

<!--規定文檔類型的指令&#xff1a;html,以h5的語法來書寫html文件--><!DOCTYPE html><!--頁面根標簽&#xff0c;什么是根標簽&#xff0c;就是一個頁面空間可以理解成全局&#xff0c;所有內容都在這個頁面空間內--><!--langen就是定義頁面的默認語言&…

Unity3d之AssetBundle打包與讀取

一、創建Assetbundle 在unity3d開發的游戲中&#xff0c;無論模型&#xff0c;音頻&#xff0c;還是圖片等&#xff0c;我們都做成Prefab&#xff0c;然后打包成Assetbundle&#xff0c;方便我們后面的使用&#xff0c;來達到資源的更新。 一個Assetbundle可以打包一個模型&…

Android代碼抄襲Java曝猛料 新證據出現

Oracle最初告Android代碼里侵犯了他們旗下Java知識產權的時候,大多數不明真相的圍觀群眾都是站在Google這一邊的,畢竟Oracle蠻橫不講理慣了嘛. 但是,這次我們還真是當了不明真相的圍觀群眾了,美國專利博 ... Oracle最初告Android代碼里侵犯了他們旗下Java知識產權的時候,大多數…

JS之數據類型v(** v**)v個人筆記

<body> <!-- 單詞記憶 argument&#xff1a;實參 assignment&#xff1a;賦值 instance&#xff1a;實例 1.JS中的數據類型分為以下類型 *值類型&#xff08;基本類型&#xff09;*String&#xff1a;可以為任何字符串*Number&#xff1a;可以為任何數字*boolean&…