IT之家10月17日消息 此前,華為官方發布一則短視頻以介紹華為Mate30系列手機中接入的“滾屏翻譯”功能。現在華為EMUI官方微信號撰文詳解EMUI10“滾屏翻譯”及其背后的OCR技術,我們來看一下吧。
華為EMUI官方表示,EMUI10全屏翻譯的存在,解決了外文翻譯的難題,但是如果想要翻譯多屏內容,需要一次又一次進行全屏翻譯的操作。隨著內容長度的增加,操作的繁復還會使閱讀的連貫性降低。基于此,“滾屏翻譯”便派上了用場。
EMUI10滾屏翻譯支持各種應用、十種語言、多屏內容的翻譯。使用小藝語音口令“幫我翻譯屏幕”或雙指按壓屏幕即可使用。華為EMUI官方表示,“當你瀏覽一篇長文章需要翻譯時,系統會先將其滾動截屏,形成一張原文的長截圖,然后對長截圖進行切分、文本檢測、翻譯、排序、去重、拼接,最后以同樣的圖片和翻譯完成的文字,再次呈現在你的面前,這就是滾屏翻譯。”
在這一系列的步驟中,最為關鍵的是如何對長截圖進行初步處理。那利用什么技術去進行處理呢?這里就不得不提到這里面的關鍵技術——OCR技術。
以下為華為EMUI官方對OCR技術的詳解:
OCR,即光學字符識別(Optical Character Recognition),指檢查字符,并對其進行檢測識別,然后再將其字符形狀轉換成計算機文字的過程。在這里的應用,也就是對原來長文章形成的長截圖上的文字,進行識別提取,將它們提供給后續的機器翻譯環節使用,也就是完成了長篇源文字提取的過程。
從技術原理上為檢測和識別兩段式算法框架,涉及中、英、日、韓、俄、西、法、德、意、葡十種語言識別能力,包含多個運行于NPU(Neural-network Processing Unit,神經網絡處理單元)的深度模型。
調用OCR算法后,首先對圖像做增強處理,將圖片適配至理想狀態后,采用多線程的方式同步運行深度模型以及后處理運算,最后借助NLU(Natural Language Understanding,自然語言理解)校正輸出文本識別結果。
翻譯得準不準,依賴于OCR識別的準確性;翻譯得快不快,依賴于OCR處理字符速度的快慢。將經過OCR處理的文本進行機器翻譯,重新對圖片進行排序、拼接處理,最后把翻譯好的長篇文章呈現在用戶面前。
這樣一套能把長文章中的文字轉變為圖片,再轉換成譯文的創新方案,現在已經申請專利保護了噢!
//每行字每張圖,都要完完整整//
滾屏翻譯中還創新性地通過OCR文本行定位以實現智能的圖片切分和拼接,巧妙地避免了在長截圖切分過程中文字或圖片被截斷的情況。
大家可能會有這樣的疑問,原文形成的長截圖直接翻譯不行嗎?為什么還要做切分呢?
這是因為,當前的圖片翻譯只支持單屏內容的翻譯,長截圖會自動縮放成和屏幕等高進行翻譯,圖片被壓縮,文字大小自然也被壓縮了,這會極大地影響到翻譯結果的準確性。
為了有效提高翻譯的準確性,那就把長截圖切分成多張短圖后再做翻譯吧。但如果直接按照屏幕高度對長截圖做簡單切分,很可能會出現一行文字被截斷或者一張插圖被截斷的情況。
而滾屏翻譯,采用OCR技術,可以檢測出一行文本或圖片的位置坐標,如果發現切分位置正好處在某行或某張圖片中間,則會向上移動到行間空白位置進行切分。
以這種規則處理后的圖片寬度同屏幕一致,高度等于或略低于屏幕高度,每一行字和每一張圖都是完整的。這種方案巧妙實用,在速度快的同時,還保證了大家的翻譯體驗。