欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實(shí)現(xiàn)圖像識(shí)別的示例代碼

 更新時(shí)間:2021年03月22日 09:54:37   作者:先知丨先覺(jué)  
這篇文章主要介紹了python實(shí)現(xiàn)圖像識(shí)別的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

一、安裝庫(kù)

首先我們需要安裝PIL和pytesseract庫(kù)。
PIL:(Python Imaging Library)是Python平臺(tái)上的圖像處理標(biāo)準(zhǔn)庫(kù),功能非常強(qiáng)大。
pytesseract:圖像識(shí)別庫(kù)。

我這里使用的是python3.6,PIL不支持python3所以使用如下命令

pip install pytesseract
pip install pillow

如果是python2,則在命令行執(zhí)行如下命令:

pip install pytesseract
pip install PIL

這時(shí)候我們?nèi)ミ\(yùn)行上面的代碼會(huì)發(fā)現(xiàn)如下錯(cuò)誤:

錯(cuò)誤提示的很明顯:
No such file or directory :"tesseract"

這是因?yàn)槲覀儧](méi)有安裝tesseract-ocr引擎

二、tesseract-ocr引擎

光學(xué)字符識(shí)別(OCR,Optical Character Recognition)是指對(duì)文本資料進(jìn)行掃描,然后對(duì)圖像文件進(jìn)行分析處理,獲取文字及版面信息的過(guò)程。OCR技術(shù)非常專(zhuān)業(yè),一般多是印刷、打印行業(yè)的從業(yè)人員使用,可以快速的將紙質(zhì)資料轉(zhuǎn)換為電子資料。關(guān)于中文OCR,目前國(guó)內(nèi)水平較高的有清華文通、漢王、尚書(shū),其產(chǎn)品各有千秋,價(jià)格不菲。國(guó)外OCR發(fā)展較早,像一些大公司,如IBM、微軟、HP等,即使沒(méi)有推出單獨(dú)的OCR產(chǎn)品,但是他們的研發(fā)團(tuán)隊(duì)早已掌握核心技術(shù),將OCR功能植入了自身的軟件系統(tǒng)。對(duì)于我們程序員來(lái)說(shuō),一般用不到那么高級(jí)的,主要在開(kāi)發(fā)中能夠集成基本的OCR功能就可以了。這兩天我查找了很多免費(fèi)OCR軟件、類(lèi)庫(kù),特地整理一下,今天首先來(lái)談?wù)凾esseract,下一次將討論下Onenote 2010中的OCR API實(shí)現(xiàn)??梢栽谶@里查看OCR技術(shù)的發(fā)展簡(jiǎn)史。
Tesseract的OCR引擎最先由HP實(shí)驗(yàn)室于1985年開(kāi)始研發(fā),至1995年時(shí)已經(jīng)成為OCR業(yè)內(nèi)最準(zhǔn)確的三款識(shí)別引擎之一。然而,HP不久便決定放棄OCR業(yè)務(wù),Tesseract也從此塵封。
數(shù)年以后,HP意識(shí)到,與其將Tesseract束之高閣,不如貢獻(xiàn)給開(kāi)源軟件業(yè),讓其重?zé)ㄐ律?005年,Tesseract由美國(guó)內(nèi)華達(dá)州信息技術(shù)研究所獲得,并求諸于Google對(duì)Tesseract進(jìn)行改進(jìn)、消除Bug、優(yōu)化工作。

###安裝tesseract-ocr引擎

brew install tesseract

然后我們通過(guò)tesseract -v看一下是否安裝成成功

tesseract 3.05.01
leptonica-1.75.0
libjpeg 9b : libpng 1.6.34 : libtiff 4.0.9 : zlib 1.2.11

這時(shí)候我們運(yùn)行上面代碼會(huì)出現(xiàn)亂碼


這是因?yàn)?code>tesseract默認(rèn)只有語(yǔ)言包中沒(méi)有中文包,如下圖:

###安裝tesseract-ocr語(yǔ)言包
我們?nèi)itHub下載我們需要的語(yǔ)言包,這里我只下載了chi_tra.traineddatachi_sim.traineddata
github:tesseract-ocr/tessdata
然后放到/usr/local/Cellar/tesseract/3.05.01/share/tessdata路徑下面。

可以通過(guò)tesseract --list-langs查看本地語(yǔ)言包:

可以通過(guò)tesseract --help-psm 查看psm

0:定向腳本監(jiān)測(cè)(OSD)
1: 使用OSD自動(dòng)分頁(yè)
2 :自動(dòng)分頁(yè),但是不使用OSD或OCR(Optical Character Recognition,光學(xué)字符識(shí)別)
3 :全自動(dòng)分頁(yè),但是沒(méi)有使用OSD(默認(rèn))
4 :假設(shè)可變大小的一個(gè)文本列。
5 :假設(shè)垂直對(duì)齊文本的單個(gè)統(tǒng)一塊。
6 :假設(shè)一個(gè)統(tǒng)一的文本塊。
7 :將圖像視為單個(gè)文本行。
8 :將圖像視為單個(gè)詞。
9 :將圖像視為圓中的單個(gè)詞。
10 :將圖像視為單個(gè)字符。

為什么這里要強(qiáng)調(diào)語(yǔ)言包和psm,因?yàn)槲覀冊(cè)谑褂弥袝?huì)用到,
比如多個(gè)語(yǔ)言包組合并且視為統(tǒng)一的文本塊將使用如下參數(shù):

pytesseract.image_to_string(image,lang="chi_sim+eng",config="-psm 6")

這里我們通過(guò)+來(lái)合并使用多個(gè)語(yǔ)言包。

接下來(lái)我們看一下配置好一切的正確結(jié)果。

import pytesseract
from PIL import Image

image = Image.open("../pic/c.png")
code = pytesseract.image_to_string(image,lang="chi_sim",config="-psm 6")
print(code)

 

此時(shí)大公告成。

到此這篇關(guān)于python實(shí)現(xiàn)圖像識(shí)別的示例代碼的文章就介紹到這了,更多相關(guān)python 圖像識(shí)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Django中FilePathField字段的用法

    Django中FilePathField字段的用法

    這篇文章主要介紹了Django中FilePathField字段的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05
  • 教你使用Psycopg2連接openGauss的方法

    教你使用Psycopg2連接openGauss的方法

    Psycopg是一種用于執(zhí)行SQL語(yǔ)句的PythonAPI,可以為PostgreSQL、openGauss數(shù)據(jù)庫(kù)提供統(tǒng)一訪問(wèn)接口,應(yīng)用程序可基于它進(jìn)行數(shù)據(jù)操作,這篇文章主要介紹了教你使用Psycopg2連接openGauss的方法,需要的朋友可以參考下
    2022-11-11
  • python3.6.8 + pycharm + PyQt5 環(huán)境搭建的圖文教程

    python3.6.8 + pycharm + PyQt5 環(huán)境搭建的圖文教程

    這篇文章主要介紹了python3.6.8 + pycharm + PyQt5 環(huán)境搭建,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • python 基于selenium實(shí)現(xiàn)鼠標(biāo)拖拽功能

    python 基于selenium實(shí)現(xiàn)鼠標(biāo)拖拽功能

    這篇文章主要介紹了python 基于selenium實(shí)現(xiàn)鼠標(biāo)拖拽功能的方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-12-12
  • django框架創(chuàng)建應(yīng)用操作示例

    django框架創(chuàng)建應(yīng)用操作示例

    這篇文章主要介紹了django框架創(chuàng)建應(yīng)用操作,結(jié)合實(shí)例形式分析了Django框架的安裝、創(chuàng)建項(xiàng)目、創(chuàng)建數(shù)據(jù)庫(kù)及創(chuàng)建應(yīng)用相關(guān)操作技巧,需要的朋友可以參考下
    2019-09-09
  • 使用python?scrapy爬取天氣并導(dǎo)出csv文件

    使用python?scrapy爬取天氣并導(dǎo)出csv文件

    由于工作需要,將爬蟲(chóng)的文件要保存為csv,以前只是保存為json,下面這篇文章主要給大家介紹了關(guān)于如何使用python?scrapy爬取天氣并導(dǎo)出csv文件的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • Python實(shí)現(xiàn)的旋轉(zhuǎn)數(shù)組功能算法示例

    Python實(shí)現(xiàn)的旋轉(zhuǎn)數(shù)組功能算法示例

    這篇文章主要介紹了Python實(shí)現(xiàn)的旋轉(zhuǎn)數(shù)組功能算法,結(jié)合實(shí)例形式總結(jié)分析了數(shù)組旋轉(zhuǎn)算法的原理與實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2019-02-02
  • Pytorch之parameters的使用

    Pytorch之parameters的使用

    今天小編就為大家分享一篇Pytorch之parameters的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12
  • jupyter notebook 增加kernel教程

    jupyter notebook 增加kernel教程

    這篇文章主要介紹了jupyter notebook 增加kernel教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-04-04
  • Python實(shí)現(xiàn)獲取視頻時(shí)長(zhǎng)功能

    Python實(shí)現(xiàn)獲取視頻時(shí)長(zhǎng)功能

    這篇文章主要介紹了Python如何實(shí)現(xiàn)獲取視頻時(shí)長(zhǎng)功能,可以精確到毫秒。文中的示例代碼簡(jiǎn)潔易懂,對(duì)我們的學(xué)習(xí)有一定的幫助,感興趣的可以了解一下
    2021-12-12

最新評(píng)論