◆張龍坤 何舟橋 萬(wàn)武南
(成都信息工程大學(xué)網(wǎng)絡(luò)空間安全學(xué)院 四川 610225)
隨著5G時(shí)代的到來(lái),信息大爆炸、人工智能、大數(shù)據(jù)、機(jī)器學(xué)習(xí)等成為這個(gè)時(shí)代的新標(biāo)簽。人們對(duì)這些新技術(shù)的應(yīng)用也獲得了新的進(jìn)步和發(fā)展。尤其是在當(dāng)代,網(wǎng)絡(luò)辦公和網(wǎng)絡(luò)課堂正如雨后春筍般出現(xiàn),圖像交流和圖像傳播已經(jīng)成了新的趨勢(shì),圖像截取、文字識(shí)別和文字翻譯三種應(yīng)用結(jié)合成為人們網(wǎng)絡(luò)辦公和網(wǎng)絡(luò)社交的基本需求。但是市面上與需求匹配的應(yīng)用卻發(fā)展滯后。突出的問(wèn)題是文字識(shí)別和文字翻譯單個(gè)功能在發(fā)展,但是沒(méi)有將圖像識(shí)別、文字識(shí)別和文字翻譯三種應(yīng)用進(jìn)行密切結(jié)合。而這個(gè)結(jié)合點(diǎn)正是人們現(xiàn)在的特殊需要和新需求。
出現(xiàn)新的需求,就會(huì)有新的應(yīng)用為之誕生,也會(huì)推動(dòng)著相應(yīng)的技術(shù)和算法取得新的突破。本文將對(duì)文字識(shí)別算法Tesseract OCR分析和介紹。圖像截取、文字識(shí)別和文字翻譯應(yīng)用結(jié)合的功能將成為新一代的辦公軟件和社交軟件的基本功能。新的用戶體驗(yàn)也必將推動(dòng)著辦公軟件和社交軟件的革新。本文給出,圖像截取、文字識(shí)別和文字翻譯三種應(yīng)用結(jié)合的基本模型,并對(duì)模型做出簡(jiǎn)單的示例演示。
隨著互聯(lián)網(wǎng)技術(shù)的高速發(fā)展,人工智能、機(jī)器學(xué)習(xí)、文字識(shí)別,智能翻譯等新的高科技領(lǐng)域研究和發(fā)展方興未艾。對(duì)這些領(lǐng)域新的應(yīng)用創(chuàng)新也層出不窮。其中圖像截取,文字識(shí)別和文字翻譯的研究和應(yīng)用如火如荼,但是這三種應(yīng)用的結(jié)合使用,卻沒(méi)有跟上信息社會(huì)的發(fā)展腳步,略顯滯后。市面上對(duì)這三種應(yīng)用的結(jié)合也有許多不盡如人意的地方。目前的大多數(shù)辦公軟件、社交軟件和翻譯軟件都沒(méi)有將這三種應(yīng)用得到很好的結(jié)合。有些軟件要么只有圖像截取、要么只有文字翻譯功能,卻很少有將三種應(yīng)用全面結(jié)合的。支撐這三種應(yīng)用的有關(guān)技術(shù)的發(fā)展和相關(guān)算法的研究也存在一定的瓶頸。文字識(shí)別存在不準(zhǔn)確和模糊現(xiàn)象和文字翻譯結(jié)果略顯機(jī)械呆板的情況,這些問(wèn)題的解決都需要技術(shù)的進(jìn)一步發(fā)展和算法的新突破。
信息大爆炸時(shí)代已經(jīng)到來(lái),傳統(tǒng)經(jīng)濟(jì)向數(shù)字經(jīng)濟(jì)轉(zhuǎn)型發(fā)展,人們的需求日益變化。產(chǎn)品設(shè)計(jì)也從以技術(shù)為核心、以功能為賣(mài)點(diǎn)到以用戶體驗(yàn)為中心進(jìn)行了轉(zhuǎn)變。人們對(duì)辦公軟件、社交軟件和翻譯軟件的辦公效率和使用體驗(yàn)也提出了新的要求。當(dāng)下,網(wǎng)絡(luò)辦公、網(wǎng)絡(luò)課堂發(fā)展異軍突起,人們對(duì)圖像處理、文字識(shí)別、文字翻譯等功能的需求顯著增加。在網(wǎng)上辦公、網(wǎng)上課堂和網(wǎng)上社交等必然難以離開(kāi)文字,文字是人們使用這些應(yīng)用的進(jìn)行交流的主要途徑。技術(shù)的發(fā)展使得我們對(duì)圖像的傳輸和廣泛使用成了可能。新的需求推動(dòng)著對(duì)圖像處理的研究,例如圖像中的文字識(shí)別。隨著經(jīng)濟(jì)全球化的發(fā)展,國(guó)與國(guó)之間的交流日益密切,人們對(duì)除了母語(yǔ)之外的語(yǔ)言文字的接觸也日益頻繁。文字處理有了新的廣闊的應(yīng)用場(chǎng)景,即對(duì)圖像文字的識(shí)別提取和對(duì)文字翻譯。
隨著科技的發(fā)展,人們對(duì)圖像截取、文字識(shí)別和文字翻譯應(yīng)用結(jié)合的需求已經(jīng)成了新的發(fā)展趨勢(shì)。圖像交流和圖像傳播具有高效的特點(diǎn),而人們對(duì)各種軟件和應(yīng)用的體驗(yàn)也正在向簡(jiǎn)潔、高效和智能等方面聚集。對(duì)圖像中的文字識(shí)別和再理解,也將成為人們的基本需求。有了新的需求推動(dòng),必然會(huì)產(chǎn)生新的用戶體驗(yàn)設(shè)計(jì)。圖像截取、文字識(shí)別和文字翻譯三種應(yīng)用的結(jié)合必然會(huì)成為下一代辦公軟件和社交軟件的必備的基礎(chǔ)功能,也必然成為有關(guān)軟件對(duì)用戶體驗(yàn)新的研究點(diǎn),進(jìn)而成為新的價(jià)值增長(zhǎng)點(diǎn)。
新的需求已經(jīng)產(chǎn)生,新的用戶體驗(yàn)不僅依賴于應(yīng)用結(jié)合的創(chuàng)新,還需要從技術(shù)這個(gè)根本點(diǎn)出發(fā)。圖像截圖、文字識(shí)別和文字翻譯三種應(yīng)用的結(jié)合的實(shí)現(xiàn)和新發(fā)展,需要文字識(shí)別和文字翻譯有關(guān)算法和技術(shù)的新突破。
文字識(shí)別和文字翻譯當(dāng)前的主流機(jī)器學(xué)習(xí)算法的研究已經(jīng)取得了豐碩的成果。
文字識(shí)別算法:基于深度學(xué)習(xí)的OCR(Optical Character Recognition,光學(xué)字符識(shí)別)技術(shù),例如Tesseract OCR和CRNN OCR和attention OCR。OCR電子設(shè)備(例如掃描儀或數(shù)碼相機(jī))檢查紙上打印的字符,通過(guò)檢測(cè)暗、亮的模式確定其形狀,然后用字符識(shí)別方法將形狀翻譯成計(jì)算機(jī)文字的過(guò)程。
支持“向量機(jī)算法”,是一種監(jiān)督式學(xué)習(xí)的方法,可廣泛地應(yīng)用于統(tǒng)計(jì)分類(lèi)以及回歸分析。它是將向量映射到一個(gè)更高維的空間里,在這個(gè)空間里建立有一個(gè)最大間隔超平面。在分開(kāi)數(shù)據(jù)的超平面的兩邊建有兩個(gè)互相平行的超平面,分隔超平面使兩個(gè)平行超平面的距離最大化。假定平行超平面間的距離越大,分類(lèi)器的總誤差越小。
文字翻譯算法:循環(huán)神經(jīng)網(wǎng)絡(luò)和雙向RNN是比較成熟的文字翻譯算法,這兩種算法的核心是通過(guò)分析大量的文檔從而得出相應(yīng)的模型以實(shí)現(xiàn)對(duì)文字的翻譯。
這些主流的機(jī)器學(xué)習(xí)算法,都有本身的優(yōu)點(diǎn)和缺陷,需要進(jìn)一步的研究和發(fā)展。
筆者在實(shí)現(xiàn)圖像截取,文字識(shí)別和文字翻譯應(yīng)用基本模型時(shí),通過(guò)使用Tesseract OCR算法來(lái)實(shí)現(xiàn)文字識(shí)別功能。在此,簡(jiǎn)單地分析和介紹一下,Tesseract OCR算法。
Tesseract使用了一種通過(guò)文本行累加的簡(jiǎn)單而有效的偏斜檢測(cè)算法。該算法中將Blobs組織成文本行,并且分析這些行和區(qū)域以用來(lái)獲取固定間距或成比例的文本。然后會(huì)經(jīng)過(guò)兩遍識(shí)別,在第一遍中,嘗試依次識(shí)別每個(gè)單詞,將每個(gè)令人滿意的單詞都將作為訓(xùn)練數(shù)據(jù)傳遞給自適應(yīng)分類(lèi)器。然后自適應(yīng)分類(lèi)器將會(huì)更準(zhǔn)確地識(shí)別頁(yè)面下方的文本行,找到文本行后,使用二次樣條曲線更精確地?cái)M合基線。通過(guò)將blobs劃分為幾組來(lái)擬合基線,并為原始筆直基線合理地連續(xù)位移。
二次樣條曲線以最小二乘擬合到人口最多的分區(qū)(假定為基線)。當(dāng)從一個(gè)完整的單詞識(shí)別出來(lái)的結(jié)果不太滿意時(shí),tesseract通過(guò)字符級(jí)別的分割blob來(lái)改善結(jié)果。多邊形輪廓的一些凹的頂點(diǎn)是作為候選的分割點(diǎn),以及相反方向的凹點(diǎn)或者線段。這三部分可以成功的分割連接的字符。當(dāng)潛在的分割點(diǎn)已用完,但是還不能滿足要求,文字識(shí)別不好時(shí),就用到了“聯(lián)合器”。“聯(lián)合器”會(huì)嘗試最優(yōu)先搜索,把分割的blob最大可能聯(lián)合成候選字符。最后來(lái)解決含糊不清的空格,檢查x-height,定位small-cap的文本,和對(duì)大小寫(xiě)處理。
字庫(kù)訓(xùn)練:由于tesseract利用多邊形近似法而不是字符粗略的輪廓這種不同尋常的處理方式,也就帶來(lái)了識(shí)別率不高的問(wèn)題。因此為了提高不同場(chǎng)景下對(duì)文字的識(shí)別率,利用jTessBoxEditor軟件,需要對(duì)字庫(kù)進(jìn)行訓(xùn)練:具體操作步驟如下:
(1)圖片樣本采集
(2)圖片樣本標(biāo)注
(3)圖片樣本降噪
(4)將圖片轉(zhuǎn)換為T(mén)IF格式
(5)將TIF格式的圖片樣本合并為一個(gè)TIF文件
(6)生成TIF文件的box盒子文件
(7)補(bǔ)充和修正box盒子文件
(8) 生成lstmf文件
(1)液質(zhì)條件:Thermo Scientific LCQ液質(zhì)聯(lián)用儀,XbridgeTM-C18色譜柱(250 mm×4.6 mm,5 μm);填充劑為十八烷基硅烷鍵合硅膠;流動(dòng)相為乙腈-0.5%氨水溶液,等度洗脫(80∶20),體積流量0.5 mL/min;檢測(cè)波長(zhǎng)235 nm;柱溫25 ℃;進(jìn)樣量5 μL。ESI離子源,正離子檢出模式,掃描范圍m/z 95~800。
(9)提取語(yǔ)言的LSTMF文件
(10)訓(xùn)練
簡(jiǎn)易STR(截屏翻譯識(shí)別)軟件是一款基于Python、運(yùn)用了文字識(shí)別、文字翻譯、截屏等技術(shù)的文字工具,致力于解決文字轉(zhuǎn)換給人們帶來(lái)的困擾。它包含了文字識(shí)別、文字提取、截屏等三大模塊,三者既可以各自獨(dú)立工作,也可結(jié)合起來(lái)。文字翻譯模塊可指定英語(yǔ)、中文、韓語(yǔ)、法語(yǔ)等國(guó)際通用語(yǔ)言之間相互轉(zhuǎn)換,可從翻譯文本框中選擇性的轉(zhuǎn)換從圖片中識(shí)別出的文字,翻譯后的文本可全文復(fù)制以備他用;圖片截取模塊可截取當(dāng)前屏幕的選擇區(qū)域,也可全屏截取,截取圖片后可以使用文字提取模塊將截圖中的文字提取到翻譯文本框中,也可將圖片復(fù)制到剪切板,以便發(fā)送給他人,或做其他的編輯。
本軟件采用Python語(yǔ)言編程算法設(shè)計(jì),使用最多的是邏輯結(jié)構(gòu)的判斷語(yǔ)句,還有順序結(jié)構(gòu),還有循環(huán)結(jié)構(gòu)。本系統(tǒng)的大多數(shù)算法簡(jiǎn)單,軟件方便操作,容易上手。軟件設(shè)計(jì)時(shí)簡(jiǎn)單分為可視化窗口設(shè)計(jì),截圖功能設(shè)計(jì)、文字識(shí)別功能設(shè)計(jì)和翻譯功能設(shè)計(jì)四大部分進(jìn)行編程,使用python語(yǔ)言中的tkinter進(jìn)行GUI設(shè)計(jì),簡(jiǎn)單樸素,功能齊全,使用tkinter編輯可視化窗口,操作簡(jiǎn)單。系統(tǒng)框架如圖1,軟件流程如圖2。
3.3.1 圖像截取的實(shí)現(xiàn)
使用tkinter的canvas畫(huà)布并監(jiān)聽(tīng)鼠標(biāo)的單擊位置和釋放位置來(lái)實(shí)現(xiàn)截圖,可以對(duì)屏幕進(jìn)行截圖,使用者可以使用本功能截取屏幕上想要的部位,也可以對(duì)圖片利用本軟件的文字提取模塊對(duì)截取圖中的文字進(jìn)行提取,從未獲得圖片中文字的文本。截取的圖片會(huì)以一個(gè)單獨(dú)的窗口呈現(xiàn),對(duì)窗口里的截取的圖片可以進(jìn)行復(fù)制,以作其他用途。大致步驟如下所示:
(1)產(chǎn)生截屏需求
(2)點(diǎn)擊圖片截圖按鈕
(4)截取圖片磁盤(pán)存儲(chǔ)
(5)截取圖片可視化呈現(xiàn)
(6)圖片利用,文字提取,圖片拷貝
3.3.2 圖像文字識(shí)別的實(shí)現(xiàn)
本軟件使用由Google公司維護(hù)的一款功能強(qiáng)大的圖像識(shí)別軟件tesseract,其可識(shí)別超過(guò)100種語(yǔ)言,本軟件根據(jù)例如各種軟件無(wú)法識(shí)別的提示框,各種語(yǔ)言的外刊等幾十種不同應(yīng)用場(chǎng)景來(lái)訓(xùn)練了字庫(kù),將其對(duì)文字的識(shí)別率提高到了98%。提取圖片中的文字,將圖片中的文字轉(zhuǎn)化為可以進(jìn)行編輯的文本形式。方便使用者對(duì)圖片中的文字進(jìn)行編輯,并且結(jié)合了圖片截取功能,使得辦公更加方便。大致步驟如下所示:
(1)對(duì)獲取圖片,提取文字
(2)點(diǎn)擊文字提取按鈕
(3) 程序通過(guò)pytesseract庫(kù)調(diào)用tesseract
(4)發(fā)出請(qǐng)求,返回提取結(jié)果
(5)對(duì)提取結(jié)果進(jìn)行簡(jiǎn)單處理
(6) 在InText文本框中呈現(xiàn),翻譯編輯等

圖1 STR(截屏翻譯識(shí)別)軟件系統(tǒng)框圖

圖2簡(jiǎn)易STR(截圖翻譯識(shí)別)軟件流程圖
3.3.3 文字翻譯的實(shí)現(xiàn)
軟件基于強(qiáng)大的百度翻譯平臺(tái)來(lái)實(shí)現(xiàn)對(duì)不同種語(yǔ)言的轉(zhuǎn)換,支持世界上主流語(yǔ)言的互相翻譯:目前支持的語(yǔ)言有中文、英語(yǔ)、日語(yǔ)、韓語(yǔ)、法語(yǔ)、阿拉伯語(yǔ)、俄羅斯語(yǔ)、西班牙語(yǔ)、葡萄牙語(yǔ)等國(guó)際主流語(yǔ)言的相互翻譯。只需將想要翻譯的文字放到InText文本框里,選擇對(duì)應(yīng)的語(yǔ)言和要翻譯成的語(yǔ)言即可完成翻譯。譯文會(huì)自動(dòng)呈現(xiàn)在OutText文本框中。其步驟如下所示:
(1) 將原文放到InText文本框中
(2)選定原文的語(yǔ)言,選定譯文語(yǔ)言
(3)點(diǎn)擊文字翻譯按鈕
(4) OutText文本框呈現(xiàn)翻譯的譯文
3.3.4 實(shí)現(xiàn)結(jié)果展示
通過(guò)對(duì)圖像截取、文字識(shí)別、文字翻譯這三大原本各自獨(dú)立功能的結(jié)合,并依附強(qiáng)大的百度翻譯,Google Tesseract-OCR圖像識(shí)別軟件,最終形成了STR(截屏翻譯識(shí)別)軟件的雛形。打開(kāi)主界面,如需截取相應(yīng)的文字區(qū)域,則點(diǎn)擊圖片截取按鈕來(lái)截圖,然后通過(guò)文字提取按鈕來(lái)識(shí)別圖片中的文字,再指定想要轉(zhuǎn)換的源語(yǔ)言和目的語(yǔ)言來(lái)轉(zhuǎn)換全文或者選擇其中的一部分文字來(lái)進(jìn)行轉(zhuǎn)換,點(diǎn)擊文字翻譯按鈕后會(huì)將全文或者選中的文字翻譯成指定的語(yǔ)言,輸出到下方的文本框中。
運(yùn)行主界面如圖3,文字翻譯結(jié)果展示如圖4。

圖3運(yùn)行主界面

圖4識(shí)別和翻譯運(yùn)行界面
網(wǎng)絡(luò)空間已經(jīng)成為人們主要的精神生活虛擬空間,網(wǎng)絡(luò)空間的信息主要的形式載體就包含圖片,而圖像交流和圖像傳播已經(jīng)成為一個(gè)新的趨勢(shì)。對(duì)圖像種文字地提取和翻譯已經(jīng)成為新的需求。圖像截取、文字識(shí)別和文字翻譯的應(yīng)用結(jié)合迫切需要得到實(shí)現(xiàn)。文字識(shí)別和文字翻譯的新技術(shù)和新算法也需要不斷地突破,為新的應(yīng)用結(jié)合提供技術(shù)支撐。本文據(jù)此提出,圖像截取、文字識(shí)別和文字翻譯應(yīng)用結(jié)合的基本模型,并通過(guò)示例對(duì)模型做了基本演示,更加具體和可行的模型和具有更加豐富功能的示例,需要進(jìn)一步的豐富和完善。