使用pytesseract圖像處理之中文識別(二)

今天繼續之前的圖像識別,這次在英文的基礎上開始中文識別,首先添加中文識別包:chi_sim 這個文件。下載地址:
https://github.com/tesseract-ocr/tessdata
如果你有不明白的可以去官方GitHub看看:
https://github.com/tesseract-ocr/tesseract
下載後把chi_sim 這個文件安裝到你的tessdata這個文件夾下面。
注意一點: 下載中文包的時候要看看你的tesseract的版本,如果你的是3.02版本的,就下3.02對應的中文包;3.05就下3.05的,一定要仔細這裏。不然後面會報錯!
安裝好了後,我就去寫代碼:
在這裏插入圖片描述
結果發現報錯如下:
pytesseract.pytesseract.TesseractError: (3221225477, ‘’)
這是怎麼回事呢?明明中文包下載對的啊。試過識別英文圖片的,都是正常打印出字母來。於是納悶了一下,便開始各種谷歌,看了數篇解決方案後,發現是環境變量那裏少了tessdata這個,於是點開
環境變量
找到 “系統變量”這裏的“Path”變量 ,雙擊它,然後在彈出的頁面裏面找到之前添加的Tesseract-OCR這個變量:
tessdata
在它後面新建一個同樣路徑的變量,然後再加上tessdata 這個單詞。
注意一定要重新建一個環境變量,而不是在原來的上面直接加!!!
即這樣:C:\Program Files (x86)\Tesseract-OCR\tessdata
就像我上面圖片一樣,建兩個後確定保存。
這裏再多說一句:如果你按上面的添加環境變量後還是報錯,可以看看你的系統變量這一欄有沒有下圖這個選項:
在這裏插入圖片描述
如果沒有的話,就自己新建一個,把他添加進去。
這下我再運行上面的程序,隨手找的一張背景有點雜亂的中文圖片,識別效果如下圖:
中文圖片識別OCR
簡直差的不行了,又換了一張圖,是標準的宋體,而且背景很乾淨,於是得到了下面這樣的效果:
在這裏插入圖片描述
所以得出跟英文一樣的結論:tesseract要想識別中文的概率達到百分之七十以上,首先要字體是宋體;其次背景要很乾淨,沒有跨行。 因爲只安裝了中文簡體的包,沒有安繁體,而繁體是下面tra這個:
在這裏插入圖片描述
所以如果你要識別繁體就要下這一個纔對!好了今天的識別就到這裏,後面繼續開始訓練字庫。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章