博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 王炸:這個(gè)GitHub 20000+ Star的OCR項(xiàng)目迎來(lái)四大重磅升級(jí)

王炸:這個(gè)GitHub 20000+ Star的OCR項(xiàng)目迎來(lái)四大重磅升級(jí)

發(fā)布人:機(jī)器之心 時(shí)間:2022-05-15 來(lái)源:工程師 發(fā)布文章

PaddleOCR 可稱(chēng)得上 OCR 方向目前最火的 repo。


OCR 方向的工程師,之前一定聽(tīng)說(shuō)過(guò) PaddleOCR 這個(gè)項(xiàng)目,累計(jì) Star 數(shù)量已超過(guò) 20000+,頻頻登上 GitHub Trending 和 Paperswithcode 日榜月榜第一,在 Medium 與 Papers with Code 聯(lián)合評(píng)選的《Top Trending Libraries of 2021》,從百萬(wàn)量級(jí)項(xiàng)目中脫穎而出,榮登 Top10在《2021 中國(guó)開(kāi)源年度報(bào)告》中被評(píng)為活躍度 Top5!稱(chēng)它為 OCR 方向目前最火的 repo 絕對(duì)不為過(guò)。

圖片

PaddleOCR 影響力。

圖片

PP-OCRv3 效果。
本次 PaddleOCR 最新發(fā)版,帶來(lái)四大重磅升級(jí),包括如下:

  • 發(fā)布超輕量 OCR 系統(tǒng) PP-OCRv3:中英文、純英文以及多語(yǔ)言場(chǎng)景精度再提升 5% - 11%!

  • 發(fā)布半自動(dòng)標(biāo)注工具 PPOCRLabelv2:新增表格文字圖像、圖像關(guān)鍵信息抽取任務(wù)和不規(guī)則文字圖像的標(biāo)注功能。

  • 發(fā)布 OCR 產(chǎn)業(yè)落地工具集:打通 22 種訓(xùn)練部署軟硬件環(huán)境與方式,覆蓋企業(yè) 90% 的訓(xùn)練部署環(huán)境需求。

  • 發(fā)布業(yè)界首個(gè)交互式OCR開(kāi)源電子書(shū)《動(dòng)手學(xué)OCR》,覆蓋OCR全棧技術(shù)的前沿理論與代碼實(shí)踐,并配套教學(xué)視頻。


官網(wǎng)地址:https://www.paddlepaddle.org.cn

Gitee: https://gitee.com/paddlepaddle/PaddleOCR

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


下面我們就對(duì)上述升級(jí)依次進(jìn)行說(shuō)明:
一、PP-OCRv3 優(yōu)化策略詳細(xì)解讀
PP-OCR 是 PaddleOCR 團(tuán)隊(duì)自研的超輕量 OCR 系統(tǒng),面向 OCR 產(chǎn)業(yè)應(yīng)用,權(quán)衡精度與速度。近期,PaddleOCR 團(tuán)隊(duì)針對(duì) PP-OCRv2 的檢測(cè)模塊和識(shí)別模塊,進(jìn)行共計(jì) 9 個(gè)方面的升級(jí),打造出一款全新的、效果更優(yōu)的超輕量 OCR 系統(tǒng):PP-OCRv3。
從效果上看,速度可比情況下,多種場(chǎng)景精度均有大幅提升:

  1. 中文場(chǎng)景,相比 PP-OCRv2,中文模型提升超 5%;

  2. 英文數(shù)字場(chǎng)景,相比 PP-OCRv2,英文數(shù)字模型提升 11%;

  3. 多語(yǔ)言場(chǎng)景,優(yōu)化 80 + 語(yǔ)種識(shí)別效果,平均準(zhǔn)確率提升超 5%。


圖片


全新升級(jí)的 PP-OCRv3 的整體框架圖(粉色框中為 PP-OCRv3 新增策略)如下圖。檢測(cè)模塊仍基于 DB 算法優(yōu)化;而識(shí)別模塊不再采用 CRNN,更新為 IJCAI 2022 最新收錄的文本識(shí)別算法 SVTR (論文名稱(chēng):SVTR: Scene Text Recognition with a Single Visual Model),并對(duì)其進(jìn)行產(chǎn)業(yè)適配。

圖片


具體的優(yōu)化策略包括:
1. 檢測(cè)模塊

  • LK-PAN:大感受野的 PAN 結(jié)構(gòu)

  • DML:教師模型互學(xué)習(xí)策略

  • RSE-FPN:殘差注意力機(jī)制的 FPN 結(jié)構(gòu)


2. 識(shí)別模塊


  • SVTR_LCNet:輕量級(jí)文本識(shí)別網(wǎng)絡(luò)

  • GTC:Attention 指導(dǎo) CTC 訓(xùn)練策略

  • TextConAug:挖掘文字上下文信息的數(shù)據(jù)增廣策略

  • TextRotNet:自監(jiān)督的預(yù)訓(xùn)練模型

  • UDML:聯(lián)合互學(xué)習(xí)策略

  • UIM:無(wú)標(biāo)注數(shù)據(jù)挖掘方案


優(yōu)化策略解讀詳見(jiàn) “第六節(jié):PP-OCRv3 優(yōu)化策略詳解”。
二、PPOCRLabelv2 多項(xiàng)重磅更新
PPOCRLabel 是首款開(kāi)源的 OCR 半自動(dòng)數(shù)據(jù)標(biāo)注工具,大幅減少開(kāi)發(fā)者標(biāo)注 OCR 數(shù)據(jù)的時(shí)間。2021 年,項(xiàng)目獲得 Wave Summit 2021 優(yōu)秀開(kāi)源項(xiàng)目獎(jiǎng)、啟智社區(qū)優(yōu)秀項(xiàng)目獎(jiǎng)。經(jīng)過(guò)一年的更新迭代,PPOCRLabel 結(jié)合產(chǎn)業(yè)實(shí)際落地需求,正式發(fā)布 PPOCRLabelv2,更新內(nèi)容如下:

  • 新增標(biāo)注類(lèi)型:表格標(biāo)注、關(guān)鍵信息標(biāo)注、不規(guī)則文字圖像的標(biāo)注(印章、彎曲文本等)

  • 新增功能:鎖定框、圖像旋轉(zhuǎn)、數(shù)據(jù)集劃分、批量處理等

  • 易用性提升:新增 whl 包安裝、以及優(yōu)化多處標(biāo)注體驗(yàn)


圖片


圖片


圖片


圖片

從上到下依次為表格標(biāo)注、KIE 標(biāo)注、不規(guī)則文字圖像的標(biāo)注以及圖像旋轉(zhuǎn)、批處理、撤銷(xiāo)。
三、OCR 產(chǎn)業(yè)落地工具集
考慮到真實(shí)產(chǎn)業(yè)應(yīng)用面對(duì)的各種軟硬件環(huán)境和不同的場(chǎng)景需求,基于飛槳訓(xùn)推一體的功能完備,本次升級(jí)發(fā)布 OCR 產(chǎn)業(yè)落地工具集,打通 22 種訓(xùn)練部署軟硬件環(huán)境與方式,包括 3 種訓(xùn)練方式、6 種訓(xùn)練環(huán)境、3 種模型壓縮策略和 10 種推理部署方式,如下表所示:

圖片


其中特色能力如下:
1. 分布式訓(xùn)練:飛槳分布式訓(xùn)練架構(gòu)具備 4D 混合并行、端到端自適應(yīng)分布式訓(xùn)練等多項(xiàng)特色技術(shù)。在 PP-OCRv3 識(shí)別模型訓(xùn)練中,4 機(jī)加速比達(dá)到 3.52 倍,精度幾乎無(wú)損。
2. 模型壓縮:飛槳模型壓縮工具 PaddleSlim 功能完備,覆蓋模型裁剪、量化、蒸餾和 NAS。PP-OCR 模型經(jīng)過(guò)裁剪量化后,模型大小從 8.1M 壓縮至 3.5M,移動(dòng)端平均預(yù)測(cè)耗時(shí)減少 36%。
3. 服務(wù)化部署:飛槳服務(wù)化部署引擎 Paddle Serving,提供性能優(yōu)越、功能可靠的模型即服務(wù)能力。針對(duì) PP-OCR 模型的服務(wù)化部署,采用全異步的 Pipeline Serving,可將吞吐量提升 2 倍以上。
4. 移動(dòng)端 / 邊緣端部署:飛槳輕量化推理引擎 Paddle Lite 適配了 20+ AI 加速芯片,可以快速實(shí)現(xiàn) OCR 模型在移動(dòng)設(shè)備、嵌入式設(shè)備和 IOT 設(shè)備等高效設(shè)備的部署。
5. 云上飛槳:面向飛槳框架及其模型套件的部署工具箱,支持 Docker 化部署和 Kubernetes 集群部署兩種方式,滿(mǎn)足不同場(chǎng)景與環(huán)境下 OCR 模型的訓(xùn)練部署需求。
除了以上三項(xiàng)重大升級(jí)外,此次發(fā)布的開(kāi)源電子書(shū)《動(dòng)手學(xué) OCR》由 PaddleOCR 團(tuán)隊(duì)、復(fù)旦大學(xué)青年研究員陳智能、中國(guó)移動(dòng)研究院視覺(jué)領(lǐng)域資深專(zhuān)家黃文輝以及廣大 OCR 開(kāi)發(fā)者共同打造,覆蓋了從文本檢測(cè)識(shí)別到文檔分析的 OCR 全棧技術(shù)。
四、PP-OCRv3 優(yōu)化策略詳解

1. 檢測(cè)模塊優(yōu)化策略
PP-OCRv3 檢測(cè)模塊對(duì) PP-OCRv2 中的 CML(Collaborative Mutual Learning) 協(xié)同互學(xué)習(xí)文本檢測(cè)蒸餾策略進(jìn)行了升級(jí)。如下圖所示,CML 的核心思想結(jié)合了①傳統(tǒng)的 Teacher 指導(dǎo) Student 的標(biāo)準(zhǔn)蒸餾與 ②Students 網(wǎng)絡(luò)之間的 DML 互學(xué)習(xí),可以讓 Students 網(wǎng)絡(luò)互學(xué)習(xí)的同時(shí),Teacher 網(wǎng)絡(luò)予以指導(dǎo)。
PP-OCRv3 分別針對(duì)教師模型和學(xué)生模型進(jìn)行進(jìn)一步效果優(yōu)化。其中,在對(duì)教師模型優(yōu)化時(shí),提出了大感受野的 PAN 結(jié)構(gòu) LK-PAN 和引入了 DML(Deep Mutual Learning)蒸餾策略;在對(duì)學(xué)生模型優(yōu)化時(shí),提出了殘差注意力機(jī)制的 FPN 結(jié)構(gòu) RSE-FPN。消融實(shí)驗(yàn)如下表所示。

圖片


圖片


測(cè)試環(huán)境:Intel Gold 6148 CPU,預(yù)測(cè)時(shí)開(kāi)啟 MKLDNN 加速。
(1)LK-PAN:大感受野的 PAN 結(jié)構(gòu)
LK-PAN (Large Kernel PAN) 是一個(gè)具有更大感受野的輕量級(jí) PAN 結(jié)構(gòu),核心是將 PAN 結(jié)構(gòu)的 path augmentation 中卷積核從 3*3 改為 9*9。通過(guò)增大卷積核,提升特征圖每個(gè)位置覆蓋的感受野,更容易檢測(cè)大字體的文字以及極端長(zhǎng)寬比的文字。使用 LK-PAN 結(jié)構(gòu),可以將教師模型的 hmean 從 83.2% 提升到 85.0%。
(2)DML:教師模型互學(xué)習(xí)策略
DML 互學(xué)習(xí)蒸餾方法,通過(guò)兩個(gè)結(jié)構(gòu)相同的模型互相學(xué)習(xí),可以有效提升文本檢測(cè)模型的精度。教師模型采用 DML 策略, hmean 從 85% 提升到 86%。將 PP-OCRv2 中 CML 的教師模型更新為上述更高精度的教師模型,學(xué)生模型的 hmean 可以進(jìn)一步從 83.2% 提升到 84.3%。
(3)RSE-FPN:殘差注意力機(jī)制的 FPN 結(jié)構(gòu)
RSE-FPN(Residual Squeeze-and-Excitation FPN)引入殘差結(jié)構(gòu)和通道注意力結(jié)構(gòu),將 FPN 中的卷積層更換為帶有殘差結(jié)構(gòu)的通道注意力結(jié)構(gòu)的 RSEConv 層,進(jìn)一步提升特征圖的表征能力。進(jìn)一步將 PP-OCRv2 中 CML 的學(xué)生模型的 FPN 結(jié)構(gòu)更新為 RSE-FPN,學(xué)生模型的 hmean 可以進(jìn)一步從 84.3% 提升到 85.4%。
2. 識(shí)別模塊優(yōu)化策略
PP-OCRv3 的識(shí)別模塊是基于文本識(shí)別算法 SVTR 優(yōu)化。SVTR 不再采用 RNN 結(jié)構(gòu),通過(guò)引入 Transformers 結(jié)構(gòu)更加有效地挖掘文本行圖像的上下文信息,從而提升文本識(shí)別能力。直接將 PP-OCRv2 的識(shí)別模型,替換成 SVTR_Tiny,識(shí)別準(zhǔn)確率從 74.8% 提升到 80.1%(+5.3%),但是預(yù)測(cè)速度慢了將近 11 倍,CPU 上預(yù)測(cè)一條文本行,將近 100ms。
因此,如下圖所示,PP-OCRv3 采用如下 6 個(gè)優(yōu)化策略進(jìn)行識(shí)別模型加速,消融實(shí)驗(yàn)如下表所示。

圖片


注:測(cè)試速度時(shí),實(shí)驗(yàn) 01-03 輸入圖片尺寸均為 (3,32,320),04-08 輸入圖片尺寸均為 (3,48,320)。在實(shí)際預(yù)測(cè)時(shí),圖像為變長(zhǎng)輸入,速度會(huì)有所變化。測(cè)試環(huán)境:Intel Gold 6148 CPU,預(yù)測(cè)時(shí)開(kāi)啟 MKLDNN 加速。

圖片


(1)SVTR_LCNet:輕量級(jí)文本識(shí)別網(wǎng)絡(luò)
SVTR_LCNet 是針對(duì)文本識(shí)別任務(wù),將 Transformer 網(wǎng)絡(luò)和輕量級(jí) CNN 網(wǎng)絡(luò) PP-LCNet 融合的一種輕量級(jí)文本識(shí)別網(wǎng)絡(luò)。使用該網(wǎng)絡(luò),并且將輸入圖片規(guī)范化高度從 32 提升到 48,預(yù)測(cè)速度可比情況下,識(shí)別準(zhǔn)確率達(dá)到 73.98%,接近 PP-OCRv2 采用蒸餾策略的識(shí)別模型效果。
(2)GTC:Attention 指導(dǎo) CTC 訓(xùn)練策略
GTC(Guided Training of CTC),利用 Attention 指導(dǎo) CTC 訓(xùn)練,融合多種文本特征的表達(dá),是一種有效的提升文本識(shí)別的策略。使用該策略,識(shí)別模型的準(zhǔn)確率進(jìn)一步提升到 75.8%(+1.82%)。
(3)TextConAug:挖掘文字上下文信息的數(shù)據(jù)增廣策略
TextConAug 是一種挖掘文字上下文信息的數(shù)據(jù)增廣策略,可以豐富訓(xùn)練數(shù)據(jù)上下文信息,提升訓(xùn)練數(shù)據(jù)多樣性。使用該策略,識(shí)別模型的準(zhǔn)確率進(jìn)一步提升到 76.3%(+0.5%)。
(4)TextRotNet:自監(jiān)督的預(yù)訓(xùn)練模型
TextRotNet 是使用大量無(wú)標(biāo)注的文本行數(shù)據(jù),通過(guò)自監(jiān)督方式訓(xùn)練的預(yù)訓(xùn)練模型。該模型可以初始化 SVTR_LCNet 的初始權(quán)重,從而幫助文本識(shí)別模型收斂到更佳位置。使用該策略,識(shí)別模型的準(zhǔn)確率進(jìn)一步提升到 76.9%(+0.6%)。
(5)UDML:聯(lián)合互學(xué)習(xí)策略
UDML(Unified-Deep Mutual Learning)聯(lián)合互學(xué)習(xí)是 PP-OCRv2 中就采用的對(duì)于文本識(shí)別非常有效的提升模型效果的策略。在 PP-OCRv3 中,針對(duì)兩個(gè)不同的 SVTR_LCNet 和 Attention 結(jié)構(gòu),對(duì)他們之間的 PP-LCNet 的特征圖、SVTR 模塊的輸出和 Attention 模塊的輸出同時(shí)進(jìn)行監(jiān)督訓(xùn)練。使用該策略,識(shí)別模型的準(zhǔn)確率進(jìn)一步提升到 78.4%(+1.5%)。
(6)UIM:無(wú)標(biāo)注數(shù)據(jù)挖掘方案
UIM(Unlabeled Images Mining)是一種非常簡(jiǎn)單的無(wú)標(biāo)注數(shù)據(jù)挖掘方案。核心思想是利用高精度的文本識(shí)別大模型對(duì)無(wú)標(biāo)注數(shù)據(jù)進(jìn)行預(yù)測(cè),獲取偽標(biāo)簽,并且選擇預(yù)測(cè)置信度高的樣本作為訓(xùn)練數(shù)據(jù),用于訓(xùn)練小模型。使用該策略,識(shí)別模型的準(zhǔn)確率進(jìn)一步提升到 79.4%(+1%)。
3. 整體效果對(duì)比
經(jīng)過(guò)上述文本檢測(cè)和文本識(shí)別 9 個(gè)方面的優(yōu)化,最終 PP-OCRv3 在速度可比情況下,在中文場(chǎng)景端到端 Hmean 指標(biāo)相比于 PP-OCRv2 提升 5%,效果大幅提升。具體指標(biāo)如下表所示:

圖片


在英文數(shù)字場(chǎng)景,基于 PP-OCRv3 單獨(dú)訓(xùn)練的英文數(shù)字模型,相比于 PP-OCRv2 的英文數(shù)字模型提升 11%,如下表所示。

圖片


在多語(yǔ)言場(chǎng)景,基于 PP-OCRv3 訓(xùn)練的模型,在有評(píng)估集的四種語(yǔ)系,相比于 PP-OCRv2,識(shí)別準(zhǔn)確率平均提升 5% 以上,如下表所示。同時(shí),PaddleOCR 團(tuán)隊(duì)基于 PP-OCRv3 更新了已支持的 80 余種語(yǔ)言識(shí)別模型。

圖片


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉