10月26日-27日,由陝西省委網信辦、陝西省工業和資訊化廳、陝西省科學技術廳指導,中國人工智慧學會主辦,西安市委網信辦、西安市科學技術局、西安國家民用航天產業基地管理委員會、京東雲共同承辦的2019第九屆中國智慧產業高峰論壇在“硬科技之都”--西安舉辦。在27日舉辦的視覺感知技術與應用前沿論壇上,CAAI模式識別專委會主任、中科院自動化研究所副所長、研究員、IEEE/IAPR/CAAI Fellow 劉成林為我們帶來了題為“文件影像識別技術進展與應用”的精彩演講。
以下是劉成林的演講實錄:
今天的論壇主題是視覺感知,視覺感知有很多不同的場景,不同場景的資料有不同的特點,文件影像是一類比較特殊的視覺資料,也有很廣泛的用途。文件影像識別也稱為文字識別,這裡面技術的內涵和應用前景都是非常豐富的。我首先介紹一下文字識別的背景,現在一般把它叫文件分析與識別,過去講的文字識別是單個字的識別,那叫文字識別沒有問題,但我們實際碰到的情況都是一整頁紙,在一張圖片裡,首先要把文字在什麼地方提取出來,然後才能識別。文件分析和識別的目的,就是把影像裡面的文字,從影像形式,轉成電子文字,讓計算機能夠理解它是什麼意思。
文件是載有文字元號的紙張、影像或者電子檔案。一大類文件是書籍、報紙、雜誌、檔案等紙張文件。過去一般是通過掃描得到文件影像,現在越來越多的影像是拍照的,不僅有拍照紙張文件,也有很多自然場景文件(如標識、標牌、車牌等)。另一類是合成文件,比如合成一個電子影像,或者在手寫的過程當中用數碼筆採集的筆劃軌跡資料(稱為聯機手寫文件),原來是沒有的,所以也把它當成是合成文件。文件識別領域主要處理文件影像(聯機手寫文件也可以看做是一種影像)。現在越來越多的文件是通過拍照成像,包括金融領域的票 據、單據、證件照等。跟掃描相比,拍照影像的視角、光照變化、形變等導致影像分析識別更困難。今天第一個報告肖京先生提到他們處理保險單、票 據等,都是手機拍照以後傳到網上去,在網上進行處理。目前這種業務處理方式越來越普遍。
文件處理流程主要有這麼幾個階段。掃描或拍照成像以後,首先是版面分析,把文字區域定位分割出來,下一個主要任務就是對文字行進行處理。傳統方法希望把每個文字切分出來識別單個文字,但是字元切分是非常困難的,尤其手寫字元大小、間隔不均勻,字間有粘連,漢子多部首等,導致字元間邊界很難確定。因此,切分和識別是不能分開進行的,現在基本上是把整個文字行進行識別,同時進行字元切分和識別,這又稱為字串識別。
這個流程裡四個階段,從影像處理到版面分析,到內容識別,最後到語義分析和應用,每個階段都有大量的技術問題。最重要的兩個步驟是版面分析和內容識別。版面分析分割影像裡面的不同區域,包括文字區域和非文字區域,文字區域分割為段落和文字行。內容識別除了傳統的文字識別之外還有其他的,比如說圖形、公式、印章等。
文字識別領域的歷史基本上是和模式識別、人工智慧領域同步,從上世紀50年代、也就是電子計算機出現以後發展起來的。從早期的單字識別到後來的詞識別、文字行識別,都有很多的難點,也發展了很多有效的方法。
下面概述一下文件識別裡面主要的方法。
影像的預處理是為了改善影像質量,或者進行二值化,區分文字與背景。對於噪聲影像的二值化,提出了很多從簡單到複雜的方法,現在可以用深度神經網路(如全卷積網路)直接對畫素進行分類。預處理中形狀矯正也很重要,比如拍照的影像,對它的變形、光照、陰影等矯正後得到比較規範、清晰的影像。
版面分析是非常重要的一個階段,其方法可分為兩大類:自上而下和自下而上。自上而下的方法把影像從大到小進行劃分,直到每個區域對應某一類物件,比如說這個區域裡面都是文字,這個區域裡面都是某一類圖形。代表性的自上而下方法如投影法和X-Y Cuts。自下而上的方法從影像基本單元(畫素、連通成分)從小到大聚合為文字行和區域,對影像旋轉、變形、不規則區域等具有更強的適應能力。比如手寫文件中,手寫文字行有傾斜、彎曲,行之間捱得近,用投影法就很難分開,需用自下而上的聚類方法進行分割。經典的自下而上方法如DocStrum(文件譜)、Voronoi圖方法等。最近的趨勢是用深度神經網路或概率圖模型進行版面分析。這是我們最近提出的一個方法,用條件隨機場對連通成分進行分類,底層特徵提取和分類用卷積神經網路,可以區分文件中文字和非文字,文字區域進一步分為印刷和手寫文字。
對於比較複雜的影像,比如複雜背景或噪聲嚴重干擾的影像,很難用二值化去掉背景,那就可以用全卷積神經網路通過畫素分類來區分背景和前景,分割文字、圖形等區域。我們最近對全卷積神經網路方法做了一些改進,用多層次標號資料進行訓練,可以分割捱得很近的手寫文字行,並分割不同型別的區域,如手寫文字、印刷文字、圖形、表格等。
場景文字檢測可以看成一個特殊的版面分析問題。現在網際網路(包括社交網如微信、微博)上有大量使用者上載的圖片,檢測和識別其中的文字有巨大的用途,最近10年是非常熱的研究方向,提出了很多方法。一類是基於文字的方法,先檢測文字或連通成分,聚合成文字行,這也可以看成是自下而上的方法;第二類是直接對文字行整體進行檢測,比如這個基於全卷積網路的直接回歸方法,可直接估計任意方向文字行的邊界。最近很多研究針對彎曲文字行的檢測和識別,也有很多方法,比如TextSnake方法在提取連通成分之後,用所謂的彈性形狀的方法得到文字行;這個基於自適應區域表示的方法對文字行的邊界進行動態調整,可以得到任意形狀輪廓的文字行的位置。
下面重點講文字識別和文字識別。早期主要做單個文字的識別,過去研究中對形狀歸一化、特徵提取和分類提出了大量的方法,對於一般的手寫漢字識別最好做到90%左右正確率。現在用深度神經網路,用大量樣本訓練,識別精度遠遠超過了傳統方法。那麼是不是傳統方法就沒有用了呢?其實還是有用的,比如用梯度方向特徵圖作為卷積神經網路的輸入用於手寫文字識別,可得到更高的精度同時網路複雜度較低,還不需要特別多的訓練樣本。
我們現在識別的目標主要對整個文字行進行識別,因為切分和識別很難分開進行。那麼我們研究單字識別器有沒有用?還是有用的,現在一個基本的文字行識別方法是基於過切分或者候選切分網格的方法,比如這個文字行有四個文字,你不知道應該從哪裡切分,可以用一個單字識別器,對每個侯選文字進行識別,得出一個置信度,最後根據這個置信度在候選網格中搜尋最優路徑,給出最終切分和識別結果,這裡單字識別器的效能至關重要。英文手寫識別中主要用隱馬爾科夫模型,這是一種隱式切分的方法。現在長短時記憶遞迴神經網路(LSTM-RNN)在英文、阿拉伯文手寫文字識別中成了主流,用於場景文字識別也基本是最好的方法。
我們最近提出一種基於滑動窗分類的文字行識別方法,用滑動窗做動態的文字檢測,這類似過切分的方法。這個方法在場景文字識別中取得了跟其他最好方法相當的效能,而模型複雜度比RNN低很多,可以很容易地推廣到大類別字符集的中文手寫和場景文字識別。
除了文字和文字之外,影像中各種圖形符號的識別也很重要。現在手寫文字識別精度非常高了,在應用中文字以外的圖形符號也有重要的意思,比如表格、數學公式、流程圖、工程圖、簽名、印章等。公式識別是一個很難的問題,有大量的研究,最近採用深度神經網路(尤其是注意網路)對手寫公式識別取得了很大進步,但是識別率還不是很高。
剛才介紹了一些文件分析與識別的主要方法,那麼現在文件識別的效能達到了什麼程度呢?先看看英文和法文手寫文字識別的效能。有兩個比較通用的資料庫,英文的IAM和法文的RIMES,這是一些樣本示例。去年國際手寫識別前沿會議(ICFHR)上的一篇文章報告了一些最好方法的識別率。一般用詞錯誤率(WER)和字錯誤率(CER)來衡量。輸入文字行(沒有分詞),沒有詞典的情況下,英文IAM資料集上最好的結果是WER為17.82%,CER為5.7%;法文RIMES資料集上最好的結果是WER為9.6%,CER為2.3%。
中文手寫識別中比較通用的資料庫是中科院自動化所釋出的CASIA聯機和離線手寫樣本庫,包括手寫單字樣本和段落、文字行樣本。利用此樣本庫,2011年和2013年國際文件分析與識別會議(ICDAR)舉行了兩次中文手寫識別競賽。這是在2013年競賽測試集上一些代表性結果,包括競賽結果和後來論文中發表的一些結果。單字識別中,最好的效能都是卷積神經網路(CNN)產生的,目前聯機手寫漢字(3755類)最高識別率為98.15%,離線手寫單字識別正確率97.30%。
中文手寫文字行識別的效能用字元正確率(測試集中所有字元被正確識別的比率)來衡量。這是在2013年競賽測試集上一些代表性的識別結果。離線手寫文字行識別結果是用的過切分方法,其中分類器用的CNN,目前最高正確率為96.32%,中科院自動化所報告的。聯機手寫文字行識別最好識別結果是華南理工大學報導的,字元正確率96.58%。早在2013年競賽中,聯機手寫文字行識別的字元正確率就達到了95.03%,用的是過切分方法加多層神經網路分類器。
手寫數學公式識別一般用CROHME(聯機手寫數學公式識別競賽)資料集,用CROHME 2014訓練集做訓練,COHME 2013測試集做驗證,CROHME 2014測試集和CROHME 2016測試集作評價。把聯機手寫筆跡轉換成影像,可做離線手寫公式識別實驗。目前報導的結果,CROHME 2014測試集上聯機識別最高正確率61.16%,離線手寫公式識別最高正確率47.06%。
下面我們看看文件識別技術應用情況。這是大家最關心的,到底能用在什麼地方,用的怎麼樣。
傳統的文件識別應用場景包括印刷文件數字化、郵政分揀、票 據識別、聯機手寫文字識別(主要是單字識別)。過去離線手寫字元識別的成功應用不多,主要是印刷體識別。
當前,手寫文字識別效能大幅提升,開始進入實用階段。各種票 據的識別開始推廣,拍照文件(包括票 據、卡證等)越來越多。手寫作文識別、法律文件和檔案識別開始推廣。車牌識別從正面影像識別到任意角度識別,應用場所從道路擴充套件到停車場、網上保險理賠等。智慧手機軟體可以對文件拍照識別並翻譯。網際網路上巨量圖片中文字資訊的提取可用自動文字檢測識別技術。除了文件影像中的文字,表格、公式、圖形符號等的識別開始受到重視。
現在我們看一些典型應用場景的識別例子。這些圖片由中科閱深科技公司(中科院自動化所與漢王科技有限公司合資成立的文件識別技術公司)提供。車牌識別方面,任意方向視角圖片中,車牌檢測正確率98%以上,識別正確率97%以上。金融票 據識別中,手寫金額、單位名、人名等可以正確識別。影像中多種卡證混合的情況下,可自動檢測定位卡證並分割、分類。中學生作文識別字元正確率平均98%以上。法律文件中可自動分析表格結構、識別文字內容,支援自動判案、理賠等。印章檢測分割可以處理與文字高度重疊的印章。
以上我們看出,文件識別技術有了很 大 發 展,尤其是手寫文件識別技術已經可以實用。但是現有技術還有一些不足,需要進一步研究提高。對文字識別而言,現有深度學習方法依賴大量標記樣本訓練;文字識別精度有很大提高,但是達不到100%,那麼為了檢查修正錯誤,能否把置信度低的字元自動標記出來(也就是拒識),這個目前還很難。字元結構分析在有些場合有重要應用,文字語義分析還做得不夠。版面分析方面,版式變化太多,尚無普適性的表示分析方法。表格分析中,無框線表格的分析是難點。手寫公式識別正確率還比較低,等等。
最後,展望一下未來技術發展和應用前景。技術上,版面分析研究有新進展,比如基於基元檢測和關係分析,具有較好的版面適應性;流程圖、公式識別需要更加重視;文字整頁識別(無需文字行分割)方法值得探索,即使短期內難以達到實用,這種研究有助於推動技術發展。文字識別方面,弱監督學習值得探索,字元定位、置信度估計和拒識需要重視;字元結構分析要加強研究。應用方面,已有的應用將不斷提高檢測識別精度,並且系統開發定製將更高效。新的應用場景將不斷推廣,如教育、醫療、古籍數字化、考古、數字人文、文化旅遊等,都可以開發很多的應用。