Google現在於Google Go應用程式中加入Google Lens文字辨識功能,除了能夠翻譯照片中的文字之外,還可以將翻譯的文字朗讀出來,提供無法讀寫或是文字語言不通的人們,有效獲取文本資訊的方法。擁有Lens功能的新版Google Go已經正式推出,使用者可以開始試用這些新功能。

過去Google Go僅在Android Go裝置以及特定市場的Google Play商店,直到最近Google Go才開始在全球Google Play商店上架。不過,Google Go要加入Lens功能,裝置必須要能夠擷取高解析度的圖像,Google提到,要在入門級的裝置上處理高解析度圖像並不簡單,比起旗艦級的手機有更多的限制。

因此Google Go採用了Android支援函式庫中,一個稱為CameraX的新圖像函式庫,CameraX是Android Camera2 API的抽象層,可以解決裝置相容性,開發者不再需要為各種裝置編寫特別的程式碼,就能夠以最小延遲且可靠地捕捉高品質的圖像。

使用CameraX的Google Go,在高階裝置與低階裝置採取不同的策略,高階裝置可以持續捕捉高解析度影格,但Google提到,在低階裝置上串流影格,可能會導致影像出現嚴重延遲,因此會在用戶點擊拍攝按鈕時,才會產生單一高解析度的圖像。

接著要為捕捉到的照片進行文字辨識,Google Go會將照片縮小並傳送到Lens伺服器,以OCR技術偵測字符的包圍矩形(Bounding Box)並合併成行(下圖),以進行文字辨識。Google提到,由於Google Go捕捉到的圖像可能包含了招牌、手寫和文件等各式來源,文字可能有獨特風格之外,影像還可能是模糊的,這些問題都可導致OCR引擎辨識錯誤,因此Lens功能會利用單字附近的內容,自動校正錯誤,並且利用知識圖(Knowledge Graph),判斷專有名詞而不進行翻譯。

翻譯出單詞後,接下來的工作是要把這些單詞組合在一起,像是報紙有標題、文章和廣告,公車時刻表有起始地、目的地和時間,每種文本有其結構,Google利用卷積神經網路(Convolutional Neural Networks,CNN)透過判列、顏色或是樣式等資訊,以檢測連貫的文字塊,並在同一個文字塊中,以文字對齊、語言和段落等訊號,判斷最終閱讀順序。而使用者拍攝照片會影響檢測文件結構難易度,當照片視角扭曲時,系統便無法反推軸對齊包圍矩形(Axis Aligned Box),Google提到,他們需要持續改進Lens功能,加強對失真的處理能力。

Google Go的Lens功能,使用了Google翻譯的神經機器翻譯(Neural Machine Translation,NMT)演算法,一次翻譯一整個句子,而為了使翻譯結果更實用,Lens會在影像畫面上,直接以翻譯文字覆蓋影像,像對ATM按鈕的翻譯,Google Lens會直接在按鈕上覆蓋經翻譯的文字,而且考慮到呈現的結果,系統還會調整字型大小以及顯示的背景顏色等要素,盡可能無縫地與圖像疊加。

最後一個階段是以語音朗讀翻譯文本,其使用了Google文字轉語音服務(Text-to-Speech,TTS),並使用DeepMind的WaveNet技術,將文字轉成逼真的人聲語音。在發音的時候,螢幕上的文字也會出現伴唱機的歌詞效果,指示語音與相對應的文字。


Advertisement

更多 iThome相關內容