8.6M超輕量中英文OCR模型開源,訓練部署一條龍|Demo在線可玩

2020-12-11 量子位

魚羊 發自 凹非寺量子位 報導 | 公眾號 QbitAI

要說生活裡最常見、最便民的AI應用技術,OCR(光學字符識別)當屬其中之一。

尋常到日常辦理各種業務時的身份證識別,前沿到自動駕駛車輛的路牌識別,都少不了它的加持。

作為一名開發者,各種OCR相關的需求自然也少不了:卡證識別、票據識別、汽車場景、教育場景文字識別……

那麼,這個模型大小僅8.6M沒有GPU也能跑得動,還提供自定義訓練到多硬體部署的全套開發套件的開源通用OCR項目,了解一下?

話不多說,先來看效果。

可以看到,無論文字是橫排、還是豎排,這個超輕量模型都有不錯的識別效果。

難度略高,且實際生活當中經常遇到的場景也不在話下:

那麼,如果情況更複雜一點,這麼小的模型能hold住嗎?

畢竟,在實際應用場景中,圖像中的文字難免存在字符彎曲、模糊等諸多問題。

比如,並不高清的路牌:

主體部分基本都識別無誤,只有英文小字部分因為確實比較模糊,識別效果不太理想。

再看一張文字背景複雜的圖像識別效果:

出現一個錯別字,扣一分。滿分10分的話,可以打個9分了。

其實,在實際OCR項目落地過程中,開發者往往面臨兩個痛點:

1. 無論是移動端和伺服器端,待識別的圖像數目往往非常多,都希望模型更小,精度更高,預測速度更快。GPU太貴,最好使用CPU跑起來更經濟。在滿足業務需求的前提下,模型越輕量佔用的資源越少。2. 實際業務場景中,OCR面臨的問題多種多樣,業務場景個性化往往需要自定義數據集重新訓練,硬體環境多樣化就需要支持豐富的部署方式。再加上收集數據之類的dirty work,往往一個項目落地中的大部分時間都用在算法研發以外的環節中,迫切需要一套完整全流程的解決方案,來加快研發進度,節約寶貴的研發時間。

也就是說,超輕量模型及其全流程解決方案,尤其對於算力、存儲空間有限的移動端、嵌入式設備而言,可以說是剛需。

而在這個開源項目中,開發者也貼心提供了直接可供測試的Demo。

在量子位的實際上手測試中,在移動端Demo上這樣一個不到10M的模型,基本上可以做到秒出效果。

在中文公開數據集ICDAR2017-RCTW上,限定圖片長邊尺寸960px,測試數據與測試條件相同的前提下,將該項目與之前一度登上GitHub熱榜的Chineseocr_Lite(5.1k stars)最新發布的10M模型進行測試對比。在模型大小、精度和預測速度方面,結果如下:

該8.6M超輕量模型,V100 GPU單卡平均預測耗時57ms,CPU平均預測耗時319ms。

而Chineseocr_Lite的10M模型,V100單卡預測速度230ms,CPU平均預測耗時739ms。

當然,這裡面模型預測速度的提升不僅是因為模型大小更小了,也離不開算法與框架深度適配優化。

項目中給出的Benchmark如下:

作為一名面向GitHub編程的程式設計師,頓時感到老闆再來各種OCR需求都不方了。(手動狗頭)

而且這個8.6M超輕量開源模型,背後還有大廠背書。

因為出品方不是別人,是國產AI開發一哥百度,他們把這個最新開源的OCR工具庫取名:PaddleOCR

GitHub 地址:https://github.com/PaddlePaddle/PaddleOCR

8.6M的通用OCR模型如何煉成

PaddleOCR發布的超輕量模型,主要由4.1M的檢測模型和4.5M的識別模型組成。

其中,檢測模型的Base模型採用DB算法,文本模型的Base模型採用經典的CRNN算法。

鑑於MobileNetV3在端側系列模型中的優越表現,兩個模型均選擇使用MobileNetV3作為骨幹網絡,可將模型大小初步減少90%以上

除此之外,開發人員還採用減小特徵通道數等策略,進一步對模型大小進行了壓縮。

模型雖小,但是訓練用到的數據集卻一點也不少,根據項目方給出的數據,模型用到的數據量(包括合成數據)大約在百萬到千萬量級。

但是也有開發者可能會問,在某些垂類場景,通用OCR模型的精度可能不能滿足需求,而且算法模型在實際項目部署也會遇到各種問題,應該怎麼辦呢?

PaddleOCR從訓練到部署,提供了非常全面的一條龍指引,堪稱「最全OCR開發者大禮包」。

「最全OCR開發者大禮包」

△禮包目錄,堪稱業界最全

支持自定義訓練

OCR業務其實有特殊性,用戶的需求很難通過一個通用模型來滿足,之前開源的Chineseocr_Lite也是不支持用戶訓練的。

為了方便開發者使用自己的數據自定義超輕量模型,除了8.6M超輕量模型外,PaddleOCR同時提供了2種文本檢測算法(EAST、DB)、4種文本識別算法(CRNN、Rosseta、STAR-Net、RARE),基本可以覆蓋常見OCR任務的需求,並且算法還在持續豐富中。

特別是「模型訓練/評估」中的「中文OCR訓練預測技巧」,更是讓人眼前一亮,點進去可以看到「中文長文本識別的特殊處理、如何更換不同的backbone等業務實戰技巧」,相當符合開發者項目實戰中的煉丹需求。

打通預測部署全流程

對開發者更友好的是,PaddleOCR提供了手機端(含iOS、Android Demo)、嵌入式端、大規模數據離線預測、在線服務化預測等多種預測工具組件的支持,能夠滿足多樣化的工業級應用場景。

數據集匯總

項目幫開發者整理了常用的中文數據集、標註和合成工具,並在持續更新中。

目前包含的數據集包括:

5個大規模通用數據集(ICDAR2019-LSVT,ICDAR2017-RCTW-17,中文街景文字識別,中文文檔文字識別,ICDAR2019-ArT)大規模手寫中文數據集(中科院自動化研究所-手寫中文數據集)垂類多語言OCR數據集(中國城市車牌數據集、銀行信用卡數據集、驗證碼數據集-Captcha、多語言數據集)還整理了常用數據標註工具(labelImg、roLabelImg、labelme)、常用數據合成工具(text_renderer、SynthText、SynthText_Chinese_version、TextRecognitionDataGenerator、SynthText3D、UnrealText)

並且開源以來,受到開發者的廣泛關注,已經有大量開發者投入到項目的建設中並且貢獻內容。

真·乾貨滿滿。

體驗一下?

看到這裡,你心動了嗎?如果還想眼見為實,PaddleOCR已經提供了在線Demo,網頁版、手機端均可嘗試。

感興趣的話收好下面的傳送門,親自體驗起來吧~

傳送門:

項目地址:https://github.com/PaddlePaddle/PaddleOCR

網頁版Demo:https://www.paddlepaddle.org.cn/hub/scene/ocr

移動端Demo:

https://ai.baidu.com/easyedge/app/openSource?from=paddlelite

— 完 —

相關焦點

  • 機器學習也能套模版:在線選擇模型和參數,一鍵生成demo
    不過,開發者說,有更多功能正在路上,比如目標檢測、語義分割等任務目標。在PyTorch下,可使用的模型有:AlexNet、ResNet、DenseNet及VGG。而在scikit-learn下,可選擇的模型有:Support vectors、Random forest、Perceptron、K-nearest neighbors及Decision tree。之後,在下方,在選擇不同的模型下,還可以調節不同的訓練參數。
  • Github Star 7.2K,超級好用的OCR數據合成與半自動標註工具,強烈...
    多語言識別模型效果升級:中文、英文、韓語、法語、德語、日文識別效果均優於 EasyOR。 PP-OCR 開發體驗再升級:支持動態圖開發(訓練調試更方便),靜態圖部署(預測效率更高),魚與熊掌可以兼得。
  • CNOCR:測試集準確率最高98%,自帶識別模型的中文OCR包
    大家都知道,訓練模型是一件非常費時費力的事情,但今天這款項目已經自帶訓練好的識別模型,我們只需要下載下來使用即可,可以說是非常方便了,那麼下面我們就去看看這個項目的詳細信息吧。項目名稱:cnocr項目作者:cyahua開源許可協議:Apache-2.0項目地址:https://gitee.com/cyahua/cnocr項目簡介cnocr是用來做中文OCR的Python 3包。cnocr自帶了訓練好的識別模型,安裝後即可直接使用。
  • 支持40種語言的圖片文字識別(OCR)項目
    那麼,這裡喵哥就要給大家推薦一個開源項目 EasyOCR。EasyOCR 並不是可以直接使用的軟體(雖然它有一個演示網站),而是一個超級易於使用的 OCR 開源工具庫。三行代碼,就可以實現一個 OCR 功能。EasyOCR 支持40多種語言,包括英文,中文,日文,韓文和泰文等。
  • 打開攝像頭,2D插畫實時變動畫,中國程序媛出品,Demo在線可玩
    打開攝像頭,2D插畫實時變動畫,中國程序媛出品,Demo在線可玩 2020-05-11 20:47 來源:澎湃新聞·澎湃號·湃客
  • Facebook開放輕量開源工具Fbthrift
    Facebook開放輕量開源工具Fbthrift Facebook宣布開放輕量開源工具Fbthrift,通過這個工具,不僅可以自動生成分布式的應用程式客戶端,可以用更少的、更密集的內存,驅動重負載的硬體系統,支撐更多的上層服務。
  • 人工智慧有了「殺毒軟體」 可在線測評算法模型安全性
    記者從清華人工智慧研究院獲悉,該院RealAI(瑞萊智慧)創業團隊8日推出針對算法模型本身安全的檢測平臺,意味著人工智慧也有了「殺毒軟體」。 人工智慧發展的天然「軟肋」 作為引領新一輪科技革命和產業變革的顛覆性技術,人工智慧目前正在滲透到了社會生活的方方面面。
  • 保護隱私快速訓練,Facebook開源Opacus,用差分隱私訓練PyTorch
    那麼,如何方便地使用差分隱私來訓練機器學習模型呢?近日,Facebook 開源了 Opacus 庫,支持以這種方式訓練 PyTorch 模型。近日,Facebook 開源了一個新型庫 Opacus,它支持使用差分隱私來訓練 PyTorch 模型,擴展性優於目前的 SOTA 方法。
  • GPU解碼提升40倍,英偉達推進邊緣設備部署語音識別,代碼已開源
    而且這種方法不僅適用於低端硬體,而且也能為數據中心帶來顯著的效率提升,從而能夠識別更多並行的在線音頻流。該方法的早期版本已開源。 從大型數據中心伺服器到低功耗邊緣設備,該架構可在各種層級的硬體上部署生產級模型。
  • ELECTRA中文預訓練模型開源,僅1/10參數量,性能依舊媲美BERT
    在前不久,谷歌終於開源了ELECTRA,並發布了預訓練模型,這對於缺大算力的高校和企業,簡直是一大福音。更重要的是,生成器使用最大似然來訓練,而不是通過對抗性訓練來欺騙判別器。中文ELECTRA預訓練模型目前已有的開源 ELECTRA 預訓練模型只是英文的預訓練模型。但世界上還有許多其他語言(例如中文)研究的學者,他們需要與其相應的語言預訓練模型。
  • RealAI推出可在線測評算法模型的安全平臺
    4月8日,孵化自清華AI研究院的創業團隊RealAI(瑞萊智慧)正式推出國內首個針對算法模型本身安全的檢測平臺——RealSafe人工智慧安全平臺。作為人工智慧時代的「殺毒軟體」,RealSafe提供從測評到防禦完整的解決方案,快速緩解對抗樣本攻擊威脅。
  • 不用代碼,一分鐘體驗二十個開源模型
    開源模型效果體驗,廢話不說,先上圖:看到如此神奇,是不是手癢現在就想體驗?步驟非常簡單!」,點擊想體驗的模型,拿出手機(安卓蘋果皆可)掃碼,自動安裝,等待幾秒鐘,即可打開 APP 實時體驗各類模型的效果。
  • 十分鐘,小白的我用亞馬遜雲服務(AWS)的SageMaker訓練了一個ML模型
    在Amazon SageMaker這裡,用戶只需要帶著自己的算法和代碼,以及準備好的數據,就能在這裡開始訓練並部署模型了,看起來就像拎包入住。即便是沒有自己的算法和代碼,也沒有數據,也可以和我一樣利用SageMaker自帶的demo體驗一把。
  • mmdetection使用目標檢測工具箱訓練,測試
    相比 FAIR 此前開源的 Detectron,mmdetection 有以下幾大優勢:    Performance 稍高    訓練速度稍快:Mask R-CNN 差距比較大,其餘的很小。    所需顯存稍小: 顯存方面優勢比較明顯,會小 30% 左右。
  • FB開源深度學習推薦模型
    這些模型實現允許我們對比 Caffe2 框架和 PyTorch 框架,以及 Glow。或許最重要的一點是,未來我們可以從每個框架中選出最好的特徵,然後組合成一個框架。Big Basin 具備模塊化、可擴展的架構。DLRM 基準支持隨機輸入和合成輸入的生成。基準模型同時也支持模型自定義生成類別特徵對應的索引。
  • 谷歌ALBERT模型V2+中文版來了,GitHub熱榜第二
    而最近,谷歌開源了中文版本和Version 2,項目還登上了GitHub熱榜第二。平均來看,ALBERT-xxlarge比v1略差一些,原因有以下2點:額外訓練了1.5M步(兩個模型的唯一區別就是訓練1.5M和3M步);對於v1,在BERT、Roberta和XLnet給出的參數集中做了一點超參數搜索;對於v2,只是採用除RACE之外的V1參數,其中使用的學習率為
  • 開源中國 2018 新增開源軟體最受歡迎 TOP 50
    ML.NET 允許 .NET 開發者開發他們自己的模型,並將自定義 ML 注入到他們的應用程式中。他們無需開發或調整機器學習模型的專業知識,一切都可在 .NET 中搞定。Docker 容器鏡像是一個輕量、獨立、含有運行某個應用所需全部軟體的可執行包,那麼一個 Docker 鏡像裡面會包含什麼東西?