Github Star 10k,超級好用的 OCR 數(shù)據(jù)合成與半自動標注工具
一、導讀
OCR方向的工程師,一定需要知道這個OCR開源項目:PaddleOCR
短短幾個月,累計Star數(shù)量已超過10k,
頻頻登上Github Trending 日榜月榜,
稱它為 OCR方向目前最火的repo絕對不為過。
最近,它又帶來四大新發(fā)布與升級:
核心內(nèi)容先睹為快:
- 全新發(fā)布數(shù)據(jù)合成工具Style-Text: 可以批量合成大量與目標場景類似的圖像,在多個場景驗證,效果均提升15%以上。
- 全新發(fā)布半自動數(shù)據(jù)標注工具PPOCRLabel: 有了它數(shù)據(jù)標注工作事半功倍,相比labelimg標注效率提升60%以上,社區(qū)小規(guī)模測試,好評如潮。
- 多語言識別模型效果升級: 在開源測試集評估,中文、英文、韓語、法語、德語、日文識別效果均優(yōu)于EasyOCR。
- PP-OCR開發(fā)體驗再升級: 支持動態(tài)圖開發(fā)(訓練調(diào)試更方便),靜態(tài)圖部署(預測效率更高),魚與熊掌可以兼得。
二、PaddleOCR歷史表現(xiàn)回顧
先看下PaddleOCR自去年6月開源以來,短短幾個月在GitHub上的表現(xiàn):
- 6月,8.6M超輕量模型發(fā)布,GitHub Trending 全球趨勢榜日榜第一。
- 8月,開源CVPR2020頂會SOTA算法,再上GitHub趨勢榜單!
- 10月,發(fā)布PP-OCR算法,開源3.5M超超輕量模型,再登Paperswithcode 趨勢榜第一。
這個含金量,廣大的GitHub開發(fā)者們自然懂,3.5M超超輕量模型的效果圖大家直接看,絕對杠杠的。
火車票、表格、金屬銘牌、翻轉(zhuǎn)圖片、外語都是妥妥的,3.5M的模型能達到這個識別精度,絕對是良心之作了!
傳送門:
Github:https://github.com/PaddlePaddle/PaddleOCR
那么最近的12月份更新,又給大家?guī)砟男@喜呢?
三、全新發(fā)布OCR數(shù)據(jù)合成工具:Style-Text
相比于傳統(tǒng)的數(shù)據(jù)合成算法,Style-Text可以實現(xiàn)特殊背景下的圖片風格遷移,只需要少許目標場景圖像,就可以合成大量數(shù)據(jù),效果展示如下:
1、相同背景批量數(shù)據(jù)合成
2、相同文字批量數(shù)據(jù)合成
3、圖片分離前景背景
除了拉風的效果,采用這樣的合成數(shù)據(jù)和真實數(shù)據(jù)一起訓練,可以顯著提升特殊場景的性能指標,分別以兩個場景為例:
怎么樣,絕對是黑科技了吧。
這項能力核心算法是基于百度和華科合作研發(fā)的文本編輯算法《Editing Text in the Wild》https://arxiv.org/abs/1908.03047
不同于常用的基于GAN的數(shù)據(jù)合成工具,Style-Text主要框架包括 ①文本前景風格遷移模塊 ②背景抽取模塊 ③融合模塊。經(jīng)過這樣三步,就可以迅速實現(xiàn)圖片文字風格遷移啦。
四、超強OCR數(shù)據(jù)標注工具:PPOCRLabel
除了數(shù)據(jù)合成,數(shù)據(jù)標注也一直是深度學習開發(fā)者關注的重點,無論是從成本還是時間上面,提高標注效率,降低標注成本太重要了。
PPOCRLabel通過內(nèi)置高質(zhì)量的PPOCR中英文超輕量預訓練模型,可以實現(xiàn)OCR數(shù)據(jù)的高效標注。CPU機器運行也是完全沒問題的。
話不多說,直接看PPOCRLabel效果演示:
用法也是非常的簡單,標注效率提升60%-80%是妥妥的。只能說,真的太香了。
五、最好的多語言模型效果
簡單對比一下目前主流OCR方向開源repo的核心能力:
中英文模型性能及功能對比
其中,部分多語言模型性能及功能(F1-Score)對比(僅EasyOCR提供)
值得一提的是,目前已經(jīng)有全球開發(fā)者通過PR或者issue的方式為PaddleOCR提供多語言的字典和語料,在PaddleOCR上已經(jīng)完成了全球主流語言的廣泛覆蓋:包括中文簡體、中文繁體、英文、法文、德文、韓文、日文、意大利文、西班牙文、葡萄牙文、俄羅斯文、阿拉伯文、印地文、維吾爾文、波斯文、烏爾都文、塞爾維亞文(latin)、歐西坦文、馬拉地文、尼泊爾文、塞爾維亞文、保加利亞文、烏克蘭文、白俄羅斯文、泰盧固文、卡納達文、泰米爾文,也歡迎更多開發(fā)者可以參與共建。
六、PP-OCR開發(fā)體驗再升級
動態(tài)圖和靜態(tài)圖是深度學習框架常用的兩種模式。在動態(tài)圖模式下,代碼編寫運行方式符合Python程序員的習慣,易于調(diào)試,但在性能方面, Python執(zhí)行開銷較大,與C++有一定差距。
相比動態(tài)圖,靜態(tài)圖在部署方面更具有性能的優(yōu)勢。靜態(tài)圖程序在編譯執(zhí)行時,預先搭建好的神經(jīng)網(wǎng)絡可以脫離Python依賴,在C++端被重新解析執(zhí)行,而且擁有整體網(wǎng)絡結(jié)構(gòu)也能進行一些網(wǎng)絡結(jié)構(gòu)的優(yōu)化。
飛槳動態(tài)圖中新增了動態(tài)圖轉(zhuǎn)靜態(tài)圖的功能,支持用戶使用動態(tài)圖編寫組網(wǎng)代碼。預測部署時,飛槳會對用戶代碼進行分析,自動轉(zhuǎn)換為靜態(tài)圖網(wǎng)絡結(jié)構(gòu),兼顧了動態(tài)圖易用性和靜態(tài)圖部署性能兩方面優(yōu)勢。
七、良心出品的中英文文檔教程
別的不需要多說了,大家訪問GitHub點過star之后自己體驗吧:
https://github.com/PaddlePaddle/PaddleOCR