溫馨提示×

溫馨提示×

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

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

Python怎么實現(xiàn)圖片識別加翻譯功能

發(fā)布時間:2021-03-24 10:31:03 來源:億速云 閱讀:253 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹Python怎么實現(xiàn)圖片識別加翻譯功能,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

Python使用百度AI接口實現(xiàn)圖片識別加翻譯

python誕生30周年

# encoding:utf-8
import requests
import base64
from PIL import Image
import pytesseract
# 這里需要安裝一下 Tesseract-OCR
# 鏈接:https://pan.baidu.com/s/1D2eODet7x9xshBVi6ZUZ_Q 
# 提取碼:qfef
# 安裝好之后別忘了把Tesseract-OCR路徑添加到環(huán)境變量中
import json
import requests
import keyboard #監(jiān)聽按鍵庫
from PIL import ImageGrab #圖像處理庫
import time
from aip import AipOcr #pip install baidu_aip
# print("開始截圖")
# 1. 截取圖片
keyboard.wait(hotkey='ctrl+alt+a')
# print("鍵盤按下了'ctrl+alt+a'")
keyboard.wait('enter')
# print("鍵盤按下了'enter'")
# 模擬延遲,來解決grabclipboard函數(shù)的緩存問題(grabclipboard函數(shù)操作太快,它就會讀取上一次的內(nèi)容)
time.sleep(0.1)
# 2. 保存圖片到電腦上
image = ImageGrab.grabclipboard()
image.save('screen.png')
#*************************************************************************************
request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic"
# 二進制方式打開圖片文件
f = open('screen.png', 'rb')
img = base64.b64encode(f.read())
params = {"image":img}
access_token = "你自己的access_token,百度AI里面有教程,我把網(wǎng)址放下面了"
# https://ai.baidu.com/ai-doc/OCR/vk3h7y58v
request_url = request_url + "?access_token=" + access_token
headers = {'content-type': 'application/x-www-form-urlencoded'}
response = requests.post(request_url, data=params, headers=headers)
print("文字識別:")
if response:
  locList = response.json()['words_result']
  for i in locList:
    print(i['words'])
print("\n翻譯:")
if response:
  locList = response.json()['words_result']
  for i in locList:
    text = i['words']
##================================================================================##
    # 翻譯函數(shù),word 需要翻譯的內(nèi)容
    def translate(word):
      # 有道詞典 api
      url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=null'
      # 傳輸?shù)膮?shù),其中 i 為需要翻譯的內(nèi)容
      key = {
        'type': "AUTO",
        'i': word,
        "doctype": "json",
        "version": "2.1",
        "keyfrom": "fanyi.web",
        "ue": "UTF-8",
        "action": "FY_BY_CLICKBUTTON",
        "typoResult": "true"
      }
      # key 這個字典為發(fā)送給有道詞典服務(wù)器的內(nèi)容
      response = requests.post(url, data=key)
      # 判斷服務(wù)器是否相應(yīng)成功
      if response.status_code == 200:
        # 然后相應(yīng)的結(jié)果
        return response.text
      else:
        print("有道詞典調(diào)用失敗")
        # 失敗就返回空
        return None
    def get_reuslt(repsonse):
      # 通過 json.loads 把返回的結(jié)果加載成 json 格式
      result = json.loads(repsonse)
      print("%s" % result['translateResult'][0][0]['tgt'])
    def main():
      list_trans = translate(text)
      get_reuslt(list_trans)
    if __name__ == '__main__':
      main()

保存的圖片如下:

Python怎么實現(xiàn)圖片識別加翻譯功能

打印結(jié)果如下:

Python怎么實現(xiàn)圖片識別加翻譯功能

以上是“Python怎么實現(xiàn)圖片識別加翻譯功能”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI