亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python如何實現連續圖文識別

發布時間:2021-04-09 11:39:06 來源:億速云 閱讀:165 作者:小新 欄目:開發技術

這篇文章主要介紹了python如何實現連續圖文識別,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

1.工具:

1.1 剪切板。我下載并安裝使用的是剪切板查看器(clipbrd.exe),成功后顯示“剪貼薄查看器.exe”

1.2  截圖工具并設置熱鍵。保存圖片鍵和退出鍵可任意設置,注意不能同其它熱鍵沖突。我使用的是微信截圖,進入設置---進入快捷按鍵---把截取屏幕鍵改為F1。

1.3 Python 3.x,Windows環境

1.4 注冊百度云帳號,獲取Appid  API Key   Secret Key 

1.5 新建文件夾。我建的名叫‘圖文識別'文件夾(C:\Users\Administrator\AppData\Local\Programs\Python\Python35-32\圖文識別)

1.6 ‘圖文識別'文件夾下,有3個.py文件,分別是:screenshot.py  baiduap.py  getText.py;有1個配置文本文件是password.ini;有個圖像文件是Picture.png。

1.7 需要有以下第三方庫:keyboard、PIL、aip、configparser、win32con、win32clipboard。

2 完整代碼:

2.1 screenshot.py是主程序,可獨立運行,主要功能為截圖并保存。

""" 本程序可獨立運行,主要功能是截圖并保存"""
import sys
from time import sleep
import keyboard
from PIL import ImageGrab #pillow
from baiduap import BaiDuAPI
from getText import GetText
 
def screenShot():
   """用于截圖并保存"""
   print('請按F1開始截圖')
   if keyboard.wait(hotkey='f1')==None:
     print('復制剪切板的圖片,請按Ctrl+b,不復制繼續截圖')
     if keyboard.wait(hotkey='Ctrl+b')==None:
        sleep(0.02) #防止獲取的是上一張截圖
        #復制剪貼板里面的圖片
        im=ImageGrab.grabclipboard()
        im.save('Picture.png')
 
if __name__=='__main__':
   baiduapi=BaiDuAPI('password.ini')
   for _ in range(sys.maxsize):
     screenShot()
     texts=baiduapi.picture2Text('Picture.png') 
     print(texts)
     GetText.setText(texts)  #剪貼板剪貼
     sleep(0.02)
     GetText.getText()
     print('退出請按Ctrl+x') 
     if keyboard.wait(hotkey='Ctrl+x')==None:
        name=input('請輸入保存圖像識別文字文件名:')
        f=open(name+'.txt','w')
        f.write(texts)
        f.close()
        break

2.2 baiduap.py 程序可獨立使用,主要功能是圖像文字識別。

from aip import AipOcr
import configparser
 
class BaiDuAPI:
   """圖片文字識別"""
   #初識化方法
   def __init__(self,filePath): #self 就是BaiDuAPI()
     #讀取工單信息
     target=configparser.ConfigParser()
     target.read(filePath)
     app_id=target.get('我的工單','App_ID')
     app_key=target.get('我的工單','App_KEY')
     secret_key=target.get('我的工單','SECRET_KEY')
     self.client=AipOcr( app_id, app_key,secret_key)
 
   def picture2Text(self,filePath):
     #讀取圖片
     image=self.getPicture(filePath)
     texts=self.client.basicGeneral(image)
     #print(texts['words_result'])
     allTexts=''
     for word in texts['words_result']:
        allTexts=allTexts+word.get('words','')
     return allTexts
    
   @staticmethod  
   def getPicture(filePath):
     with open(filePath,'rb') as fp:
        return fp.read()
 
if __name__=='__main__':
   baiduapi=BaiDuAPI('password.ini')
   print(baiduapi.picture2Text('Picture.png'))

2.3 getText.py 程序,主要功能是把圖像識別出來的文字,保存到剪切板。

import sys 
import os.path 
import win32clipboard as w  
import win32con 
 
class GetText:
   
   def getText():#讀取剪切板 
     w.OpenClipboard() 
     d = w.GetClipboardData(win32con.CF_TEXT) 
     w.CloseClipboard() 
     return d 
   def setText(aString):#寫入剪切板 
     w.OpenClipboard() 
     w.EmptyClipboard() 
     w.SetClipboardText(aString) 
     w.CloseClipboard() 
 
if __name__=='__main__': 
   GetText.setText('布衣弓長')
   GetText.getText()

2.4 password.ini 文件,用記事本編寫,把百度云獲取的相關信息填進去。內容是:

[我的工單];節
App_ID=151313**
App_KEY=1V2LlBhLUYaHu2Y9*******
SECRET_KEY=fGufC1CbiZ0tw1imTGoIsaGO******

3.運行。啟動qq和剪貼薄查看器.exe,在python環境下運行screenshot.py。

經實測:識別率高,能快速抓取多圖,但每運行一次程序,只能識別保存在Picture.png文件里圖像的文字。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“python如何實現連續圖文識別”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

登封市| 常宁市| 江北区| 江津市| 民乐县| 海安县| 蒙城县| 龙泉市| 富蕴县| 塔河县| 余姚市| 仙游县| 东方市| 阿拉尔市| 桂平市| 马鞍山市| 台中市| 苍梧县| 沾益县| 涪陵区| 南安市| 潼关县| 溆浦县| 绥滨县| 山西省| 山阳县| 南通市| 贞丰县| 霍州市| 岳西县| 江安县| 黄大仙区| 高淳县| 射洪县| 南郑县| 收藏| 武乡县| 平遥县| 兰西县| 长治市| 敦化市|