python批量循环图片识别_python 实现批量图片识别并翻译
python 实现批量图片识别并翻译
时间:2020-11-02|栏目:Python|点击: 次
获取待翻译图片文件的方法(此处设置的仅支持.jpg文件):
def get_files():
files = filedialog.askopenfilenames(filetypes=[('text files', '.jpg')])
translate.file_paths=files
if files:
for file in files:
text1.insert(tk.END, file + '\n')
text1.update()
else:
print('你没有选择任何文件')
获取结果存储路径:
def set_result_path():
result_path=filedialog.askdirectory()
translate.result_root_path=result_path
text2.insert(tk.END,result_path)
翻译按钮,调用了translate_files,该文件中的translate_files()方法最终调用了translate类的translate_files()方法:
def translate_files():
if translate.file_paths:
translate.translate_files()
tk.messagebox.showinfo("提示","搞定")
else :
tk.messagebox.showinfo("提示","无文件")
2、批量图片处理
transclass.py实现了图片读取、处理等逻辑,Translate类定义如下:
class Translate():
def __init__(self,name,file_paths,result_root_path,trans_type):
self.name=name
self.file_paths=file_paths # 待翻译文件路径
self.result_root_path=result_root_path # 结果存放路径
self.trans_type=trans_type
def translate_files(self):
for file_path in self.file_paths:#对批量图片逐个处理
file_name=os.path.basename(file_path)
print('==========='+file_path+'===========')
trans_reult=self.translate_use_netease(file_path) #对单个图片调用接口
resul_file=open(self.result_root_path+'/result_'+file_name.split('.')[0]+'.txt','w').write(trans_reult) #返回结果写入
def translate_use_netease(self,file_content): #调用有道接口,并返回结果
result= connect(file_content)
return result
3、有道api调用
pictranslate.py中封装了调用有道智云API的一些方法,其中最核心的是connect()方法,按照接口要求拼接了所需参数,发起请求并返回结果。
def connect(file_content,fromLan,toLan):
f = open(file_content, 'rb') # 二进制方式打开图文件
q = base64.b64encode(f.read()).decode('utf-8') # 读取文件内容,转换为base64编码
f.close()
data = {}
# data['from'] = '源语言'
# data['to'] = '目标语言'
data['from'] = 'auto'
data['to'] = 'auto'
data['type'] = '1'
data['q'] = q
salt = str(uuid.uuid1())
signStr = APP_KEY + q + salt + APP_SECRET
sign = encrypt(signStr)
data['appKey'] = APP_KEY
data['salt'] = salt
data['sign'] = sign
response = do_request(data)
result=json.loads(str(response.content, encoding="utf-8"))
print(result)
translateResults=result['resRegions']
print(translateResults)
pictransresult=""
for i in translateResults:
pictransresult=pictransresult+i['tranContent']+"\n"
return pictransresult
总结
又是一次愉快的开发体验,而且还是为数不多的求生成功体验 : P ,没想到借助开放平台的力量,图像识别,自然语言处理变得如此易如反掌,只要能正确发起请求,就能得到不错的翻译结果,剩下大把的时间用来和女朋友炫技,这感觉——爽!
以上就是python 实现批量图片识别并翻译的详细内容,更多关于python 图片识别并翻译的资料请关注站圈网其它相关文章!
python批量循环图片识别_python 实现批量图片识别并翻译相关推荐
- python批量resize图片大小_python opencv 批量改变图片的尺寸大小的方法
我目标文件夹下有一大批图片,我要把它转变为指定尺寸大小的图片,用pthon和opencv实现的. 以上为原图片. import cv2 import os # 按指定图像大小调整尺寸 def resi ...
- python实现验证码识别_python实现图文验证码识别
一,验证码类别 以下为网站常见的验证码: 1.图片验证码:常见的为英文.数字.汉字,计算题等类型的验证码. 2.行为式验证码: 常见的有滑动拼图,文字点选,图标点选,推理拼图等类型的验证码. 3.手机 ...
- python批量上传 服务器_Python Tornado批量上传图片并显示功能
简介 Tornado龙卷风是一个开源的网络服务器框架,它是基于社交聚合网站FriendFeed的实时信息服务开发而来的.2007年由4名Google前软件工程师一起创办了FriendFeed,旨在使用 ...
- python中读取word信息_Python实现批量读取word中表格信息的方法
本文实例讲述了Python实现批量读取word中表格信息的方法.分享给大家供大家参考.具体如下: 单位收集了很多word格式的调查表,领导需要收集表单里的信息,我就把所有调查表放一个文件里,写了个py ...
- python批量生成文件夹_python实现批量获取指定文件夹下的所有文件的厂
本文实例讲述了python实现批量获取指定文件夹下的所有文件的厂商信息的方法.分享给大家供大家参考.具体如下: 功能代码如下: import os, string, shutil,re import ...
- python读取所有txt文件_python如何批量读取txt文件
python批量读取txt文件的方法:首先导入系统模块:然后将文件夹路径更改为需要批量读取的txt文件存放的路径:再调用系统模块得到该文件夹下的所有文件名称:最后遍历文件夹,读取txt文件. 如果文件 ...
- 利用python批量查询企业信息_python实现批量获取指定文件夹下的所有文件的厂商信息...
本文实例讲述了python实现批量获取指定文件夹下的所有文件的厂商信息的方法.分享给大家供大家参考.具体如下: 功能代码如下: import os, string, shutil,re import ...
- python 录入数据不重复_python Django批量导入不重复数据
本文为大家分享了python Django批量导入不重复数据的实现代码,供大家参考,具体内容如下 程序如下: #coding:utf-8 import os os.environ.setdefault ...
- python批量读取文件内容_Python之批量读取文件【面试必学】
原博文 2019-12-24 14:00 − python的os模块可以实现普遍的操作系统功能,并且和平台无关.以下为实现根目录下文件的批量读取. os.listdir(dirname)可以列出dir ...
最新文章
- Windows Server 2008 R2使用LDP恢复已删除的用户实战
- 人工智能定会的录取率也不过百分之29
- 客户端连ORACLE
- 训练日志 2019.1.23
- Java基础---常用类之Math类 and Syetem类
- UI素材|网站404页面有什么用处
- func_ext.php,fsockopen和pfsockopen函数替换
- Laravel 在哪些地方使用了 trait ?
- 学习React之前你需要知道的的JavaScript基础知识
- 非致命战计算机病毒战属于,《信息化战争》章节
- 浅谈AI芯片的简要发展历史
- IDEA中输入法无法切换成中文解决方法
- U盘和移动硬盘不能安全删除问题及解决方案
- oracle exclude table,EXPDP/IMPDP:关于EXCLUDE参数
- 如何查看mysql的gtid_mode_配置MHA开启主从同步的时候会提示从库gtid_mode为ON的状态...
- 怎么用思维导图做会议纪要?MindNow来教你
- Android baidu地图定位实现签到打卡功能(附源码)
- 【unity】FPS快速实现全息瞄准镜
- 玩转Jetson AGX Orin—— Quick Start
- LeetCode刷题笔记2——数组2