日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

python 實現批量圖片識別并翻譯

瀏覽:35日期:2022-07-06 15:34:03

近小編遇到一個生存問題,女朋友讓我給她翻譯英文化妝品標簽。美其名曰:'程序猿每天英語開發,英文一定很好吧,來幫我翻譯翻譯化妝品成分',”來,幫我看看這個面膜建議敷幾分鐘“。。。。看來斥巨資買化妝品不算完,還需要會各種英文介紹。

默默收起大學考的一摞429分的四級證書,我打開了IDE。。。我打算開發一個能批量翻譯的圖片的demo,把家里的各種化妝品都翻譯好。機智如我,是不會自己從訓練模型做起的,打開有道智云的友好的AI接口頁面 ,果然有圖片翻譯服務,體驗了一下可是真不錯,于是果斷使用。

效果展示

Demo在這里,一起來看看效果吧:

識別過程如下:

python 實現批量圖片識別并翻譯

逐個看看效果哈!make up for ever 雖然沒翻譯成玫珂菲,哈哈哈但是關鍵詞長期保濕、固定噴霧都翻譯出來了~~棒

python 實現批量圖片識別并翻譯

這個更是不明覺厲,韓文、英文混合都能翻譯~~~

python 實現批量圖片識別并翻譯

櫻花水的表現也不錯哦~

python 實現批量圖片識別并翻譯

再亂入一個開起來更像包裝盒的圖片識別,效果不錯,沒受圖片上文字傾斜等影響 :

python 實現批量圖片識別并翻譯

調用API的準備工作——生成調用所需要的應用id和密鑰

根據有道智云的接口約定,需要先在有道智云的個人頁面上生成調用所需要的應用id和密鑰,以便作為你的調用標識以及收費參考。。

具體步驟是:在有道智云的個人頁面上創建實例、創建應用、綁定應用和實例,獲取調用接口用到的應用的id和密鑰。具體個人注冊的過程和應用創建過程詳見文章分享一次批量文件翻譯的開發過程

python 實現批量圖片識別并翻譯

開發過程介紹

1、api接口介紹

先介紹下該工程的核心部分,有道智云圖片翻譯服務的調用接口

API HTTPS地址:https://openapi.youdao.com/ocrtransapi

接口調用方式:POST

請求格式:表單

相應格式:JSON

接口調用參數調用API需要向接口發送以下字段來訪問服務。

字段名 類型 含義 必填 備注 type text 文件上傳類型 True 目前支持Base64,請置該字段值為1 from text 源語言 True 參考下方的 支持語言 (可設置為auto) to text 目標語言 True 參考下方的 支持語言 (可設置為auto) appKey text 應用ID True 可在 應用管理 查看 salt text UUID True 1995882C5064805BC30A39829B779D7B sign text 簽名 True md5(應用Id+q+salt+應用密鑰) ext text 翻譯結果音頻格式,支持mp3 false mp3 q text 要識別的圖片 true type為1時必填,圖片的Base64編碼 docType text 服務器響應類型,目前只支持json false json render text 是否需要服務端返回渲染的圖片,0:否;1:是,默認是0 false 0 nullIsError text 如果ocr沒有檢測到文字,是否返回錯誤,false:否;true:是,默認是false false 注意是字符串

簽名生成方法如下:1、將請求參數中的 應用ID appKey , 圖片的Base64編碼 q ,UUID salt 和 應用密鑰 按照 應用ID+q+salt+應用密鑰的順序拼接得到字符串 str 。2、對字符串 str 做 md5,得到32位大寫的 sign (參考Java生成MD5示例,可點擊右側的JAVA示例)。

輸出結果返回的結果是json格式,具體說明如下:

字段名 字段說明 orientation 圖片所對應的方向 lanFrom ocr所識別出來認為的圖片中的語言 textAngle 圖片的傾斜角度 errorCode 錯誤碼 lanTo 目標語言 resRegions 圖片翻譯的具體內容 -boundingBox 區域范圍,四個值: 左上角的x值,左上角的y值,區域的的寬,區域的高 例如:134,0,1066,249 -linesCount 行數(用于前端排版) -lineheight 行高 -context 該區域的原文 -linespace 行間距 -tranContent 翻譯結果

2、詳細開發

這個demo使用python3開發,包括maindow.py,transclass.py,pictranslate.py三個文件。maindow.py主要實現界面部分,使用python自帶的tkinter庫,來進行圖片文件選擇、選擇結果存放路徑。transclass.py實現了圖片讀取、處理等邏輯,最后通過pictranslate.py中的方法來調用圖片翻譯API。

1、界面部分主要元素:

root=tk.Tk()root.title('netease youdao translation test')frm = tk.Frame(root)frm.grid(padx=’50’, pady=’50’)btn_get_file = tk.Button(frm, text=’選擇待翻譯圖片’, command=get_files)btn_get_file.grid(row=0, column=0, ipadx=’3’, ipady=’3’, padx=’10’, pady=’20’)text1 = tk.Text(frm, width=’40’, height=’10’)text1.grid(row=0, column=1)btn_get_result_path=tk.Button(frm,text=’選擇翻譯結果路徑’,command=set_result_path)btn_get_result_path.grid(row=1,column=0)text2=tk.Text(frm,width=’40’, height=’2’)text2.grid(row=1,column=1)btn_sure=tk.Button(frm,text='翻譯',command=translate_files)btn_sure.grid(row=2,column=1)root.mainloop()

獲取待翻譯圖片文件的方法(此處設置的僅支持.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 ,沒想到借助開放平臺的力量,圖像識別,自然語言處理變得如此易如反掌,只要能正確發起請求,就能得到不錯的翻譯結果,剩下大把的時間用來和女朋友炫技,這感覺——爽!

項目地址:https://github.com/LemonQH/BatchPicTranslate

以上就是python 實現批量圖片識別并翻譯的詳細內容,更多關于python 圖片識別并翻譯的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久黄色影院| 免费视频一区二区| 日韩av有码| 日韩欧美2区| 好看的亚洲午夜视频在线| 日韩av福利| 国精品一区二区| 亚洲一区二区网站| 国产视频一区三区| 水蜜桃精品av一区二区| 欧美经典一区| 91日韩免费| 亚洲成人一区在线观看| 日韩午夜高潮| 国产一区二区中文| 丝瓜av网站精品一区二区| 欧美特黄一区| 亚洲久草在线| 日韩视频网站在线观看| 久久青草久久| 日韩视频一区二区三区在线播放免费观看| 亚洲一区二区三区四区五区午夜 | 亚洲免费一区三区| 国产精品欧美在线观看| 久久不见久久见中文字幕免费| 国产精品中文字幕亚洲欧美| 国产精品videossex久久发布| 色一区二区三区四区| 午夜在线精品偷拍| 国产成人精品一区二区三区在线| 97精品国产| 亚洲精品小说| 国产精品成人国产| 欧美日韩国产一区二区三区不卡| 视频一区日韩精品| 久久在线免费| 国产日韩亚洲| 激情久久久久久久| 日韩一区二区三区四区五区| 成人片免费看| 亚洲精品观看| 亚洲欧美日韩视频二区| 高潮一区二区| 久久伊人久久| 国产美女久久| 亚洲欧美日本国产| 久久国产直播| 欧美激情另类| 久久亚洲精精品中文字幕| 日韩欧美美女在线观看| 日韩欧美字幕| 国产精品nxnn| 欧美在线91| 国产伦精品一区二区三区视频 | 国产综合亚洲精品一区二| 国产精品v日韩精品v欧美精品网站 | 亚洲精品888| 久久久久国产| 久久蜜桃精品| 免费av一区| 欧美丝袜一区| 亚洲欧美日韩高清在线| 丁香六月综合| 首页国产精品| 人人香蕉久久| 天堂资源在线亚洲| 久久中文字幕av一区二区不卡| 日本欧美国产| 日韩免费福利视频| 色婷婷精品视频| 亚洲大片在线| 蜜桃一区二区三区在线| 亚洲成人免费| 亚洲激精日韩激精欧美精品| 午夜欧美精品久久久久久久| 九九久久电影| 日韩精品亚洲aⅴ在线影院| 午夜一区在线| 日韩精品免费一区二区夜夜嗨| 日本成人在线视频网站| 久久精品女人| 亚洲va中文在线播放免费| 伊人久久成人| 欧美亚洲综合视频| 韩国女主播一区二区三区| 亚洲大片在线| 日韩高清在线观看一区二区| 国产精品宾馆| 欧美一区三区| 日韩福利在线观看| 成人在线超碰| 免费国产亚洲视频| 中文字幕免费一区二区| 国产精品夜夜夜| 99久久精品费精品国产| 日韩欧美三区| 精品一区欧美| 国产精品分类| 99国产精品99久久久久久粉嫩| 日韩不卡手机在线v区| 久久精品高清| 精品国产一区二区三区性色av| 欧美日韩国产高清| 国产麻豆一区二区三区精品视频| 久久精品国产www456c0m| 国产精品一区二区三区美女| 黑丝美女一区二区| 丰满少妇一区| 日本综合视频| 国产视频一区免费看| 国产91在线播放精品| 日韩精品导航| 中文字幕免费一区二区| 999久久久免费精品国产| 国产精品久久久久久久久久妞妞 | 亚洲中字黄色| 国产一区日韩一区| 日产精品一区| 欧美激情麻豆| 国产日本久久| 另类av一区二区| 日韩成人精品一区二区| 久久不见久久见免费视频7| 日韩激情av在线| 免费人成黄页网站在线一区二区| 日韩在线短视频| 高潮久久久久久久久久久久久久| 日韩高清一区二区| 日韩av三区| 日本国产亚洲| 欧美亚洲二区| 国产伦理一区| 精品理论电影在线| 精品久久国产一区| 美女久久久久久| 欧美三级第一页| 日韩综合小视频| 国产三级一区| 久久一区精品| 日韩成人三级| 久久久成人网| 久久99精品久久久野外观看| 最新日韩av| 国产精品草草| 精品三级久久久| 999视频精品| 亚洲精品一级二级三级| 蜜臀国产一区二区三区在线播放| 欧美+亚洲+精品+三区| 五月天久久久| 免费不卡在线观看| 日本成人一区二区| 久久这里只有精品一区二区| 麻豆视频在线观看免费网站黄| 亚洲三级欧美| 黄色日韩精品| 国产亚洲观看| 国产一区调教| 欧美日韩亚洲在线观看| 亚洲tv在线| 成人亚洲欧美| 涩涩涩久久久成人精品| 97在线精品| 免费人成网站在线观看欧美高清| 美女视频网站久久| 丝袜美腿亚洲一区| 久久av免费| 国产视频亚洲| 成人午夜精品| 欧美激情五月| 亚洲人妖在线| 蜜臀91精品国产高清在线观看 | 成人精品视频| 日韩av中文字幕一区二区三区| 久久只有精品| 婷婷综合成人| 欧美精品一区二区三区精品| 欧美好骚综合网| 美女久久99| 日本不卡在线视频| 日韩视频中文| 欧美日韩在线播放视频| 欧美国产一级| 久久尤物视频| 欧美国产日本| 国产精品久久久久久久久久久久久久久 | 亚洲一区二区三区无吗| 日韩三区在线| 中国字幕a在线看韩国电影| 久久精品av麻豆的观看方式| 蜜臀a∨国产成人精品| 亚洲大全视频| 国产综合激情| 神马日本精品| 久久高清精品| 激情综合亚洲| 欧美精品一线| 国产精品日韩久久久| 亚洲伦乱视频| 极品日韩av|