python批量識(shí)別圖片指定區(qū)域文字內(nèi)容
Python批量識(shí)別圖片指定區(qū)域文字內(nèi)容,供大家參考,具體內(nèi)容如下
簡介
對(duì)于一張圖片,需求識(shí)別指定區(qū)域的內(nèi)容
1.截取原始圖上的指定圖片當(dāng)做模板
2.根據(jù)模板相似度去再原始圖片上識(shí)別準(zhǔn)確坐標(biāo)
3.根據(jù)坐標(biāo)剪切出指定位置圖片,也就是所需的內(nèi)容區(qū)域
4.對(duì)指定位置圖片進(jìn)行ocr識(shí)別
環(huán)境
Ubuntu18.04
Python2.7
所需Python模塊
1.aircv
用于識(shí)別模板再原始圖的位置坐標(biāo)
pip install aircv
2.Pillow
用于剪裁圖片
pip install Pillow
文字識(shí)別
在此也可以用平臺(tái)端的API進(jìn)行更精準(zhǔn)的識(shí)別
ubuntu下Tesseract環(huán)境安裝
sudo apt-get install libpng12-dev sudo apt-get install libjpeg62-dev sudo apt-get install libtiff4-dev sudo apt-get install gcc sudo apt-get install g++ sudo apt-get install automake
1.tesseract-ocr安裝
sudo apt-get install tesseract-ocr
2.pytesseract安裝
pip install pytesseract
Python代碼
識(shí)別對(duì)應(yīng)位置
#!/usr/bin/python2.7 # -*- coding: utf-8 -*- import aircv def matchImg(imgsrc, imgobj, confidence=0.2): """ 圖片對(duì)比識(shí)別imgobj在imgsrc上的相對(duì)位置(批量識(shí)別統(tǒng)一圖片中需要的部分) :param imgsrc: 原始圖片路徑(str) :param imgobj: 待查找圖片路徑(模板)(str) :param confidence: 識(shí)別度(0<confidence<1.0) :return: None or dict({'confidence': 相似度(float), 'rectangle': 原始圖片上的矩形坐標(biāo)(tuple), 'result': 中心坐標(biāo)(tuple)}) """ imsrc = aircv.imread(imgsrc) imobj = aircv.imread(imgobj) match_result = aircv.find_template(imsrc, imobj, confidence) # {'confidence': 0.5435812473297119, 'rectangle': ((394, 384), (394, 416), (450, 384), (450, 416)), 'result': (422.0, 400.0)} if match_result is not None: match_result['shape'] = (imsrc.shape[1], imsrc.shape[0]) # 0為高,1為寬 return match_result
圖片剪裁
#!/usr/bin/python2.7 # -*- coding: utf-8 -*- from PIL import Image, ImageEnhance def cutImg(imgsrc, out_img_name, coordinate): """ 根據(jù)坐標(biāo)位置剪切圖片 :param imgsrc: 原始圖片路徑(str) :param out_img_name: 剪切輸出圖片路徑(str) :param coordinate: 原始圖片上的坐標(biāo)(tuple) egg:(x, y, w, h) ---> x,y為矩形左上角坐標(biāo), w,h為右下角坐標(biāo) :return: """ image = Image.open(imgsrc) region = image.crop(coordinate) region = ImageEnhance.Contrast(region).enhance(1.5) region.save(out_img_name)
圖片識(shí)別
#!/usr/bin/python2.7 # -*- coding: utf-8 -*- import pytesseract from PIL import Image image = Image.open('bb.png') code = pytesseract.image_to_string(image) print(code)
對(duì)于三方API識(shí)別自行研究
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python 識(shí)別圖片中的文字信息方法
- Python圖像處理之識(shí)別圖像中的文字(實(shí)例講解)
- python實(shí)現(xiàn)簡單的文字識(shí)別
- 如何使用Python進(jìn)行OCR識(shí)別圖片中的文字
- python識(shí)別圖像并提取文字的實(shí)現(xiàn)方法
- 如何利用Python識(shí)別圖片中的文字
- Python 實(shí)現(xiàn)任意區(qū)域文字識(shí)別(OCR)操作
- 如何利用Python識(shí)別圖片中的文字詳解
- Python 圖片文字識(shí)別的實(shí)現(xiàn)之PaddleOCR
- Python圖片文字識(shí)別與提取實(shí)戰(zhàn)記錄
相關(guān)文章
Caffe卷積神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)層及參數(shù)
這篇文章主要為大家介紹了Caffe卷積神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)層及參數(shù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06Python pandas讀取CSV文件的注意事項(xiàng)(適合新手)
這篇文章主要給大家介紹了關(guān)于Python pandas讀取CSV文件的注意事項(xiàng),非常適合新手,csv是我接觸的比較早的一種文件,比較好的是這種文件既能夠以電子表格的形式查看又能夠以文本的形式查看,需要的朋友可以參考下2021-06-06Python常見讀寫文件操作實(shí)例總結(jié)【文本、json、csv、pdf等】
這篇文章主要介紹了Python常見讀寫文件操作,結(jié)合實(shí)例形式總結(jié)分析了Python常見的各種文件讀寫操作,包括文本、json、csv、pdf等文件的讀寫與相關(guān)注意事項(xiàng),需要的朋友可以參考下2019-04-04將pycharm配置為matlab或者spyder的用法說明
這篇文章主要介紹了將pycharm配置為matlab或者spyder的用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-06-06Python shelve模塊實(shí)現(xiàn)解析
這篇文章主要介紹了Python shelve模塊實(shí)現(xiàn)解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08pycharm安裝教程(下載安裝以及設(shè)置中文界面)
這篇文章主要給大家介紹了關(guān)于pycharm安裝教程,文中包括下載安裝以及設(shè)置中文界面,PyCharm是一款Python IDE,其帶有一整套可以幫助用戶在使用Python語言開發(fā)時(shí)提高其效率的工具,需要的朋友可以參考下2023-10-10Python?OpenCV中的drawMatches()關(guān)鍵匹配繪制方法
這篇文章主要介紹了Python?OpenCV中的drawMatches()關(guān)鍵匹配繪制方法,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-07-07