關於圖文識別功能相關技術的大致實現

傷心的我發表於2018-05-08

    關於圖文識別功能相關技術的實現

 

轉載請註明源地址http://www.cnblogs.com/funnyzpc/p/8908906.html

  上一章,寫的是SSL證照配置,中間折騰了好一會,在此感謝SSL證照發行商的協助;這次我就講講ocr識別的問題,先說說需求來源吧。。。

  之前因為風控每次需要手動P協議檔案和身份證(脫敏),還要識別證件及圖片檔案的內容,覺得狠狠狠麻煩,遂就找到了技術總監,技術總監一拍腦袋,額,小鄒啊。。。

  呃,一開始並沒抱太大希望,不過還是花了些心思做了些需求實現的調研,怎麼辦 google、duckduckgo、github一路找下來就有了幾個工程了,嘿嘿~,可惜還沒高興到,沒想到的是這些工程一個比一個坑,不是依賴windows系統元件就是程式碼bug不斷,作者們,能用點兒心麼

  日夜操勞,加班啊,總算是將幾個工程全都修得能跑起來了,大費周折。。。難得啊

  欸,可惜效果均不佳;現開始,我總結下一些主流的圖文識別技術,只是淺聊哦。。。

首先,這些工程大致分兩類:

  一類是純演算法,不附帶機器學習功能的,且需要依賴於window系統元件的工程,比如tesseract和tess4j,識別效果可以說是巨差(可能我的技術很菜的原因),但有一點兒值得讚許,就是識別結果的格式還算不錯,這類圖文識別的特點大致有如下幾點:

  A>工程程式碼量較大

  B>依賴window元件,需要在window系統下才能執行

  C>識別效果無法通過學習逐漸優化

  D>識別出來的文字時常亂碼,中文識別亂碼錯別字較多

  E>識別結果通常使用格式化模子來格式化結果,遂,識別結果的格式還算過得去

  一類是基於機器學習(比如Tensorflow)的工程,這些工程參差不齊,存在外掛版本問題,尤其是python外掛,實在在太太太難裝了,在一就是工程大多較為簡陋,由於機器學習具有不斷改善的趨勢,這是基於機器學習的圖文識別的最大優勢,總結起來,基於機器學習的圖文識別的特點兒大致有如下幾點:

  A>工程比較簡單,程式碼量不是很多

  B>依賴的語言外掛,如python實在難以安裝

  C>有很多優化的方向,比如使用顯示卡,優化演算法(卷積神經網路)來提高識別速度及模型準確度

  D>十分耗費計算機欄位,一般識別一頁A4大小的圖片中的內容,(我使用Macbook Pro) 最快也用了二十多秒

  E>識別的結果比較亂,但對於中文,尤其是圖片較好的中文的文字識別準確率能達到百分之七十網上,但是識別格式和文字準確度不如上者

  F>由於是基於機器學習,遂需要大量的資料餵養以提高識別的準確率,餵養的資料十分可觀

 

  額,總的來說,後者的優勢較大,也是趨勢,比如騰訊QQ的圖片識別還有百度大腦AI這些基本都是基於機器學習,個人覺得,如果投入一個團隊去專門研究開發一個圖文識別的產品,也是比較容易實現的,何況這個方向向前走就是人工智慧,儘管現在看起來有些智障...。

  哦,大致總結完了,我就展示下基於tess4j和chinese-ocr這兩專案的實現效果,我的輸入是身份證:

(注意:源圖片是從github上拉下來的,個人做了些簡陋的脫敏處理!)

  下面是基於tess4j實現的結果:

tess4j的實現只能基於windows元件實現,故專案只能在windows下執行,另外tesseract也是windows元件的實現。

  一下是基於chinese-ocr的專案的實現的結果:

chinese-orc是基於python語言+tensorflow的實現,結果一目瞭然,需要說的是,一下幾個也是基於=>

   IITG-Captcha-Solver-OpenCV-TensorFlow:基於Tensorflow實現的驗證碼識別,已除錯通過,驗證碼模糊度較高的識別不夠準確
  text-detection-ctpn       :基於Tensorflow實現的圖片識別,未除錯通過
  tensorflow-ocr         :基於tensorflow實現的圖片識別,未除錯通過
 
由於github共享的工程參差不齊,存在外掛版本、語言以及系統版本的差異,遂這些專案clone下來後需要修改些bug才可,這裡簡述下一些大致的問題的解決思路:
  A>對於外掛版本下載不了的(我用的是pycharm),建議使用相鄰版本的外掛,但有些外掛需要爬梯出去才可下
  
  B>對於部分(例如 test.py)檔案跑不起來的,請嘗試著將這個檔案放置在工程主目錄下,但同時請注意 import引用的檔案(可能需要手動修改)
  C>對於專案出現的主流問題請移步Issues以查詢
         嗯,此篇原本在前一天發表的,由於公司週年慶耽擱了會兒,最後,我把上面幾個工程的打包檔案共享下(包含我修改過bug的),有需要的請自行下載,如有疑問請電郵或留言
 
工程下載連結: https://pan.baidu.com/s/1B2Eyak8zwdAldA0NBfmlvw
工程下載密碼: r2av
  

 

相關文章