Python实现图片识别加翻译功能


Posted in Python onDecember 26, 2019

Python使用百度AI接口实现图片识别加翻译

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路径添加到环境变量中
import json
import requests
import keyboard #监听按键库
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函数的缓存问题(grabclipboard函数操作太快,它就会读取上一次的内容)
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里面有教程,我把网址放下面了"
# 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']
##================================================================================##
    # 翻译函数,word 需要翻译的内容
    def translate(word):
      # 有道词典 api
      url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=null'
      # 传输的参数,其中 i 为需要翻译的内容
      key = {
        'type': "AUTO",
        'i': word,
        "doctype": "json",
        "version": "2.1",
        "keyfrom": "fanyi.web",
        "ue": "UTF-8",
        "action": "FY_BY_CLICKBUTTON",
        "typoResult": "true"
      }
      # key 这个字典为发送给有道词典服务器的内容
      response = requests.post(url, data=key)
      # 判断服务器是否相应成功
      if response.status_code == 200:
        # 然后相应的结果
        return response.text
      else:
        print("有道词典调用失败")
        # 失败就返回空
        return None
    def get_reuslt(repsonse):
      # 通过 json.loads 把返回的结果加载成 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实现图片识别加翻译功能

打印结果如下:

Python实现图片识别加翻译功能

总结

以上所述是小编给大家介绍的Python实现图片识别加翻译功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python中的ConfigParser模块使用详解
May 04 Python
Python正则表达式教程之三:贪婪/非贪婪特性
Mar 02 Python
Python多线程经典问题之乘客做公交车算法实例
Mar 22 Python
如何在Cloud Studio上执行Python代码?
Aug 09 Python
Python插入Elasticsearch操作方法解析
Jan 19 Python
新年福利来一波之Python轻松集齐五福(demo)
Jan 20 Python
Python实现不规则图形填充的思路
Feb 02 Python
Python 创建守护进程的示例
Sep 29 Python
Django展示可视化图表的多种方式
Apr 08 Python
Python使用海龟绘图实现贪吃蛇游戏
Jun 18 Python
Python实现提取PDF简历信息并存入Excel
Apr 02 Python
Python+OpenCV实现图片中的圆形检测
Apr 07 Python
opencv resize图片为正方形尺寸的实现方法
Dec 26 #Python
opencv之为图像添加边界的方法示例
Dec 26 #Python
Python 过滤错误log并导出的实例
Dec 26 #Python
python3 pathlib库Path类方法总结
Dec 26 #Python
python3实现在二叉树中找出和为某一值的所有路径(推荐)
Dec 26 #Python
Pytorch中Tensor与各种图像格式的相互转化详解
Dec 26 #Python
基于h5py的使用及数据封装代码
Dec 26 #Python
You might like
php函数连续调用实例分析
2015/07/30 PHP
PHP删除数组中指定值的元素常用方法实例分析【4种方法】
2018/08/21 PHP
javascript实现的基于金山词霸网络翻译的代码
2010/01/15 Javascript
说明你的Javascript技术很烂的五个原因
2011/04/26 Javascript
Javascript动画效果(1)
2016/10/11 Javascript
详解Node.js模板引擎Jade入门
2018/01/19 Javascript
spirngmvc js传递复杂json参数到controller的实例
2018/03/29 Javascript
利用npm 安装删除模块的方法
2018/05/15 Javascript
js实现图片上传并预览功能
2018/08/06 Javascript
vue  自定义组件实现通讯录功能
2018/09/30 Javascript
微信小程序实现签到功能
2018/10/31 Javascript
vue踩坑记-在项目中安装依赖模块npm install报错
2019/04/02 Javascript
vue两组件间值传递 $router.push实现方法
2019/05/15 Javascript
Electron 打包问题:electron-builder 下载各种依赖出错(推荐)
2020/07/09 Javascript
python列表与元组详解实例
2013/11/01 Python
Python写的英文字符大小写转换代码示例
2015/03/06 Python
Python变量作用范围实例分析
2015/07/07 Python
教你用一行Python代码实现并行任务(附代码)
2018/02/02 Python
利用python的socket发送http(s)请求方法示例
2018/05/07 Python
Python对数据进行插值和下采样的方法
2018/07/03 Python
Python中__repr__和__str__区别详解
2019/11/07 Python
python实现吃苹果小游戏
2020/03/21 Python
PYcharm 激活方法(推荐)
2020/03/23 Python
Python用摘要算法生成token及检验token的示例代码
2020/12/01 Python
html5 Web SQL Database 之事务处理函数transaction与executeSQL解析
2013/11/07 HTML / CSS
Debenhams百货英国官方网站:Debenhams UK
2016/07/12 全球购物
Grow Gorgeous美国官网:只要八天,体验唤醒毛囊后新生的茂密秀发
2018/06/04 全球购物
手工制作的豪华英式沙发和沙发床:Willow & Hall
2019/05/03 全球购物
函授大专自我鉴定
2013/11/01 职场文书
大学生毕业自我鉴定范文
2014/02/03 职场文书
募捐倡议书
2014/04/14 职场文书
如何签定毕业生就业协议书
2014/09/28 职场文书
人事文员岗位职责
2015/02/04 职场文书
2016年母亲节寄语
2015/12/04 职场文书
JVM之方法返回地址详解
2022/02/28 Java/Android
PYTHON基于Pyecharts绘制常见的直角坐标系图表
2022/04/28 Python