1. 程式人生 > >孤荷淩寒自學python第八十三天初次接觸ocr配置tesseract環境

孤荷淩寒自學python第八十三天初次接觸ocr配置tesseract環境

之路 () 過程 屏幕 col 會有 64位系統 查找 信息

孤荷淩寒自學python第八十三天初次接觸ocr配置tesseract環境

(完整學習過程屏幕記錄視頻地址在文末)

學習Python我肯定不會錯過圖片文字的識別,當然更重要的是簡單的驗證碼識別了,今天花的所有時間都用於尋找最偷懶的方式來解決這一經典問題。

結果發現,還是大名鼎鼎的【tesseract】是最受歡迎的,於是就著手配置tesseract的相關環境。

今天的主要操作都是在windows10的64位系統下進行的。

一、第一步,安裝tesseract-ocr在windows64位下的版本

我把這理解為環境配置。

首先在github的tesseract的安裝指引頁面去查找最新版的安裝程序包的地址。

https://github.com/UB-Mannheim/tesseract/wiki

從此頁面中可以找到最新版的安裝程序包地址:

https://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-w64-setup-v4.0.0.20181030.exe

下載完成之後,按安裝程序提示即可安裝成功。

二、第二步,安裝pil庫

經過查閱網文資料,發現,對於64位操作系統下的Python3.x版本的python來說,只對python2.x有用的pil庫安裝要復雜 些。

首先到下面網址去下載針對 64位windows操作系統的pil庫文件的whl文件:

https://www.lfd.uci.edu/~gohlke/pythonlibs/#pillow

下載完成後,在windows的CMD命令窗口中使用Pip命令安裝這個whl文件:

pip install I:\MAKEAPP\python\Python365\whl_lib\Pillow-5.4.1-cp36-cp36m-win_amd64.whl

我安裝成功後的提示如下:

C:\WINDOWS\system32>pip install I:\MAKEAPP\python\Python365\whl_lib\Pillow-5.4.1-cp36-cp36m-win_amd64.whl

Processing i:\makeapp\python\python365\whl_lib\pillow-5.4.1-cp36-cp36m-win_amd64.whl

Installing collected packages: Pillow

Found existing installation: Pillow 5.1.0

Uninstalling Pillow-5.1.0:

Successfully uninstalled Pillow-5.1.0

Successfully installed Pillow-5.4.1

安裝完成後,需要將安裝目錄添加到系統環境變量的Path中。

我是按照下面博文的設置來進行操作的:

https://www.cnblogs.com/jianqingwang/p/6978724.html

最後在cmd窗口中輸入並檢查版本信息:

C:\WINDOWS\system32>tesseract.exe -v

tesseract v4.0.0.20181030

leptonica-1.76.0

libgif 5.1.4 : libjpeg 8d (libjpeg-turbo 1.5.3) : libpng 1.6.34 : libtiff 4.0.9 : zlib 1.2.11 : libwebp 0.6.1 : libopenjp2 2.2.0

三、安裝pytesseract模塊

在windows的cmd命令提示框中輸入:

pip install pytesseract

即可完成安裝。

四、測試是否成功

import PIL

from PIL import Image

from PIL import ImageEnhance

import re

import pytesseract

import _mty

def msgbox(info,titletext=‘孤荷淩寒的word模塊對話框QQ578652607‘,style=0,isShowErrMsg=False):

return _mty.msgboxGhlh(info,titletext,style,isShowErrMsg)

image = Image.open(‘666.jpg‘)

image.load()

enhancer = ImageEnhance.Contrast(image)

enhancer = enhancer.enhance(4)

image = image.convert(‘L‘)

image.show()

text = pytesseract.image_to_string(image)

text=re.sub("\W", "", text)

msgbox(text)

然而識別率非常的低,是非常的低!

——————————

今天整理的學習筆記完成,最後例行說明下我的自學思路:

根據過去多年我自學各種編程語言的經歷,認為只有真正體驗式,解決實際問題式的學習才會有真正的效果,即讓學習實際發生。在2004年的時候我開始在一個鄉村小學自學電腦 並學習vb6編程語言,沒有學習同伴,也沒有高師在上,甚至電腦都是孤島(鄉村那時還沒有網絡),有的只是一本舊書,在痛苦的自學摸索中,我找到適應自己零基礎的學習方法:首先是每讀書的一小節就作相應的手寫筆記,第二步就是上機測試每一個筆記內容是否實現,其中會發現書中講的其實有出入或錯誤,第三步就是在上機測試之後,將筆記改為電子版,形成最終的修訂好的正確無誤的學習筆記 。

通過反復嘗試錯誤,在那個沒有分享與交流的黑暗時期我摸黑學會了VB6,爾後接觸了其它語言,也曾聽過付費視頻課程,結果發現也許自己學歷果然太低,就算是零基礎的入門課程,其實也難以跟上進度,講師的教學多數出現對初學者的實際情況並不了解的情況,況且學習者的個體也存在差異呢?當然更可怕的是收費課程的價格往往是自己難以承受的。

於是我的所有編程學習都改為了自學,繼續自己的三步學習筆記法的學習之路。

當然自學的最大問題是會走那麽多的彎路,沒有導師直接輸入式的教學來得直接,好在網絡給我們帶來無限搜索的機會,大家在網絡上的學習日誌帶給我們共享交流的機會,而QQ群等交流平臺、網絡社區的成立,我們可以一起自學,互相批評交流,也可以獲得更有效,更自主的自學成果。

於是我以人生已過半的年齡,決定繼續我的編程自學之路,開始學習python,只希望與大家共同交流,一個人的獨行是可怕的,只有一群人的共同前進才是有希望的。

誠摯期待您的交流分享批評指點!歡迎聯系我加入從零開始的自學聯盟。

這個時代互聯網成為了一種基礎設施的存在,於是本來在孤獨學習之路上的我們變得不再孤獨,因為網絡就是一個新的客廳,我們時刻都可以進行沙龍活動。

非常樂意能與大家一起交流自己自學心得和發現,更希望大家能夠對我學習過程中的錯誤給予指點——是的,這樣我就能有許多免費的高師了——這也是分享時代,社區時代帶來的好福利,我相信大家會的,是吧!

根據完全共享的精神,開源互助的理念,我的個人自學錄制過程是全部按4K高清視頻錄制的,從手寫筆記到驗證手寫筆記的上機操作過程全程錄制,但因為4K高清文件太大均超過5G以上,所以無法上傳至網絡,如有需要可聯系我QQ578652607對傳,樂意分享。上傳分享到百度網盤的只是壓縮後的720P的視頻。

我的學習過程錄像百度盤地址分享如下:(清晰度:1280x720)

鏈接:https://pan.baidu.com/s/1qMeoq3NK9_asGerzQCuwww

提取碼:qwt4

Bilibili:

https://www.bilibili.com/video/av41503799/

喜馬拉雅語音筆記:

https://www.ximalaya.com/keji/19103006/156673810

孤荷淩寒自學python第八十三天初次接觸ocr配置tesseract環境