一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

三步驟快速實現(xiàn)PaddleOCR實時推理

英特爾物聯(lián)網(wǎng) ? 來源:英特爾物聯(lián)網(wǎng) ? 作者:武卓 ? 2022-06-09 17:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者

英特爾AI軟件布道師

武卓博士

曾主持國家級及省部級科研項目十余項,已授權(quán)國際國內(nèi)專利十余項。

前言:該技術(shù)能讓PaddleOCR的開發(fā)者在筆記本電腦上即可獲得超越40FPS的速度,極大降低了PaddleOCR的部署成本。

簡介

在上篇文章中我們介紹過,光學(xué)字符識別(OCR)技術(shù)可以將文件、圖片或自然場景中的文字信息進行識別并提取,與一系列的自然語言處理技術(shù)聯(lián)合使用,能夠完成諸如文檔票據(jù)的文字信息自動化處理、實時圖片文字翻譯等任務(wù)。通過機器的自動化處理,可以幫助財務(wù)人員在處理票據(jù)時省卻大量手工輸入的工作量,也能夠方便我們在出國旅游時隨時對異域中的外國文字信息進行實時翻譯、減少語言不通帶來的不便。

既然OCR技術(shù)如此實用,有沒有什么方法能讓我們利用自己手邊的設(shè)備,隨時使用到這項技術(shù)呢?答案當然是肯定的。接下來,我們將以百度開源的PaddleOCR1-2 技術(shù)為例,具體介紹如何利用英特爾開源的OpenVINO 工具套件,僅使用我們手邊都有的CPU就能輕松實現(xiàn)對PaddleOCR的實時推理。

本篇是用OpenVINO 工具套件實現(xiàn)基于OCR及NLP輕松實現(xiàn)信息自動化提取的系列博客中的第二篇。我們將簡要介紹PaddleOCR的原理,以及利用OpenVINO 工具套件實現(xiàn)PaddleOCR推理加速的工作流程。同樣只需利用一頁Jupyter notebook,依照簡單的三個步驟,即可利用CPU實現(xiàn)基于PaddleOCR的實時文字信息提取。

PaddleOCR原理簡介

PaddleOCR是基于深度學(xué)習框架PaddlePaddle的一項OCR技術(shù),具有超輕、模型小、便于移動端及服務(wù)器端部署等特點。整個PaddleOCR技術(shù)的工作流程如下圖所示,主要包括文本檢測、方向分類、以及文本識別三部分。

28d278c6-db51-11ec-ba43-dac502259ad0.png

文本檢測任務(wù)是找出圖像或視頻中的文字位置。不同于目標檢測任務(wù),目標檢測不僅要解決定位問題,還要解決目標分類問題。但是,文本檢測也面臨一些難點,比如:自然場景中的文本具有多樣性,文字大小、方向、長度、形狀、語言都會有不同。有的時候,文字重疊或者密度較高,這些都會影響最終文本檢測的效果。目前常用的文本檢測方法有基于回歸以及基于分割的方法。而在PaddleOCR中,我們選取的是基于分割的DBNet3方法。

DBNet的工作原理如下圖所示。針對基于分割的方法需要使用閾值進行二值化處理而導(dǎo)致后處理耗時的問題,DBNet提出了一種可學(xué)習閾值的方法,并巧妙地設(shè)計了一個近似于階躍函數(shù)的二值化函數(shù),使得分割網(wǎng)絡(luò)在訓(xùn)練的時候能端對端的學(xué)習文本分割的閾值。自動調(diào)節(jié)閾值不僅帶來精度的提升,同時簡化了后處理,提高了文本檢測的性能。

2914895a-db51-11ec-ba43-dac502259ad0.png

方向分類指的是針對圖片中某些經(jīng)文本檢測得到的bounding box中的文字方向為非水平排列的情況,對bounding box的方向進行檢測。如果發(fā)現(xiàn)bounding box中的文字方向為非水平排列,則對該bounding box的方向進行糾正,使其旋轉(zhuǎn)為文字水平排列的方向,方便下一步的文本識別。

文本識別的任務(wù)是將文本檢測得到的bounding box中的具體的文字內(nèi)容識別出來。文本識別的算法有針對規(guī)則文本以及不規(guī)則文本識別的算法。對于規(guī)則文本,主流的算法CTC(Conectionist Temporal Classification)和基于Sequence2Sequence 的方法。

在本文demo中,我們采用的是基于CTC的方法。由于文本識別任務(wù)的特殊性,輸入數(shù)據(jù)中存在大量的上下文信息,卷積神經(jīng)網(wǎng)絡(luò)的卷積核特性使其更關(guān)注于局部信息,缺乏長依賴的建模能力,因此僅使用CNN很難挖掘到文本之間的上下文聯(lián)系。

為了解決這一問題,首先通過使用CRNN (Convolutional Recurrent Neural Network)4 ,利用卷積網(wǎng)絡(luò)提取圖像特征,并同時引入了雙向 LSTM(Long Short-Term Memory) 用來增強上下文建模。最終將輸出的特征序列輸入到CTC模塊, 通過ctc歸納字符間的連接特性,直接解碼序列結(jié)果。該結(jié)構(gòu)被驗證有效,并廣泛應(yīng)用在文本識別任務(wù)中, 如下圖所示。

2952c0b2-db51-11ec-ba43-dac502259ad0.png

5分鐘 3步驟

快速實現(xiàn)PaddleOCR實時推理

在最新版本的OpenVINO 2022.1中,已經(jīng)實現(xiàn)了對基于PaddlePaddle深度學(xué)習框架的深度學(xué)習模型的支持。而PaddleOCR作為一項深受廣大開發(fā)者喜愛的開源技術(shù),其中開源的預(yù)訓(xùn)練模型已經(jīng)可以在OpenVINO 2022.1版本中直接進行模型讀取以及加速推理。

接下來,我們將通過代碼示例,介紹如何按照簡單的三個步驟,實現(xiàn)OpenVINO 工具套件對PaddleOCR的加速推理。整個工作流程如下圖所示:

299100de-db51-11ec-ba43-dac502259ad0.png

其中OpenVINO 工具套件會對PaddleOCR中的文本檢測以及文本識別模型進行讀取以及推理加速。本次demo中我們展示的是利用自己的網(wǎng)絡(luò)攝像頭,將實時獲取的視頻流中的文字信息利用PaddleOCR進行提取。當然,開發(fā)者也可以上傳圖片,利用OpenVINO 工具套件對PaddleOCR的推理實現(xiàn)對圖片中的文字信息進行提取。

步驟一:下載需要使用的PaddleOCR預(yù)訓(xùn)練模型,并完成模型的讀取與加載

在導(dǎo)入需要使用到的相應(yīng)Python包后,首先需要對將要使用的PaddleOCR開源預(yù)訓(xùn)練模型進行下載。本次demo中使用到的是輕量化的"Chinese and English ultra-lightweight PP-OCR model (9.4M)"模型。由于PaddleOCR中包含了文本檢測及文本識別兩個深度學(xué)習模型,因此,我們首先定義一個模型下載函數(shù),如下圖所示。

2a182064-db51-11ec-ba43-dac502259ad0.png

接下來,完成文本檢測模型的下載,

2a52e316-db51-11ec-ba43-dac502259ad0.png

以及推理引擎的初始化、文本檢測模型的讀取以及在 CPU上面的加載。

2a91e19c-db51-11ec-ba43-dac502259ad0.png

再然后,完成文本識別模型的下載,

2adfa008-db51-11ec-ba43-dac502259ad0.png

以及文本識別模型的讀取以及在CPU上面的加載。其中,有一步需要特別說明的是,動態(tài)輸入的處理。

由于文本識別模型的輸入是文本檢測得到的一系列bounding box圖像,而圖像中的字體由于大小和文字長短程度不一,就造成了文本識別模型的輸入是動態(tài)輸入的。與以往版本需要對圖像尺寸進行重調(diào)整(resize)而將模型輸入尺寸固定、從而可能引起性能損失的處理方法不同的是,OpenVINO 2022. 1版本已經(jīng)可以很好的支持模型的動態(tài)輸入。

在CPU上進行文本識別模型加載之前,只需要對于輸入的若干維度中具有動態(tài)輸入的維度賦值-1或申明動態(tài)輸入尺寸的上限值,比如Dimension(1,512),即可完成對模型動態(tài)輸入的處理。接下來,即可按常規(guī)步驟完成在CPU上加載文本識別模型。

2b000ff0-db51-11ec-ba43-dac502259ad0.png

步驟二:為文本檢測及文本識別定義必要的前處理及后處理函數(shù)。

為文本檢測模型定義必要的前處理函數(shù),如下圖所示

2b3b59fc-db51-11ec-ba43-dac502259ad0.png

為文本識別模型定義必要的前處理函數(shù),如下圖所示

2b7b294c-db51-11ec-ba43-dac502259ad0.png

2bbd3b98-db51-11ec-ba43-dac502259ad0.png

2bdc2742-db51-11ec-ba43-dac502259ad0.png

為文本檢測模型定義后處理函數(shù),將文本檢測模型的推理結(jié)果轉(zhuǎn)為bounding box形式,作為文本識別模型的輸入,如下圖所示。

2c14223c-db51-11ec-ba43-dac502259ad0.png

步驟三:利用OpenVINO 工具套件推理引擎(Runtime)針對攝像頭采集視頻進行實時推理

2c9cb12e-db51-11ec-ba43-dac502259ad0.png

定義運行PaddleOCR模型推理的主函數(shù),主要包括以下四個部分:

01運行網(wǎng)絡(luò)攝像頭,將捕捉到的視頻流作為paddleOCR的輸入

2cc9adbe-db51-11ec-ba43-dac502259ad0.png

02準備進行文本檢測和文本識別的視頻幀

2d28f3aa-db51-11ec-ba43-dac502259ad0.png

03針對文本檢測進行推理

2d81d36c-db51-11ec-ba43-dac502259ad0.png

根據(jù)文本檢測得到的bounding box,進行文本識別推理

2e02ab54-db51-11ec-ba43-dac502259ad0.png

04將文本提取的結(jié)果可視化

2e2581d8-db51-11ec-ba43-dac502259ad0.png

結(jié)果討論

下面我們來看看運行結(jié)果吧:

我們可以看到,對于網(wǎng)絡(luò)攝像頭采集的視頻流中的文字提取效果還是很不錯的。僅僅利用CPU進行推理,也可以得到30FPS以上的性能,可以說能夠達到實時的推理效果!當然,除了視頻流作為輸入,開發(fā)者還可以上傳圖片,進行文本信息提取。以下是針對上傳圖片中印刷體文字和手寫體文字信息提取的一些測試效果。

你還在等什么,快來根據(jù)我們提供的源代碼,在自己的個人電腦上嘗試一下吧!

小結(jié)

OCR具有將圖片、掃描文檔或自然場景中的文字信息識別轉(zhuǎn)化為數(shù)字化、機器編碼方式存儲的優(yōu)勢。將OCR進行文字識別的結(jié)果與自然語言處理中的NLP技術(shù)相結(jié)合,能夠?qū)崿F(xiàn)自動化的信息提取,為我們免去手動輸入信息填寫的麻煩,并有助于信息的結(jié)構(gòu)化存儲與查找。在本次系列博客的第二篇中,我們簡要介紹了PaddleOCR的工作原理,并提供了一個基于OpenVINO 工具套件實現(xiàn)PaddleOCR的Jupyter notebook demo??梢苑奖阕x者在閱讀的同時,下載源碼并在自己的電腦端利用CPU來輕松實現(xiàn)PaddleOCR的加速推理。

原文標題:用OpenVINO? 輕松實現(xiàn)PaddleOCR實時推理 | 開發(fā)者實戰(zhàn)

文章出處:【微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 英特爾
    +關(guān)注

    關(guān)注

    61

    文章

    10192

    瀏覽量

    174592
  • OCR
    OCR
    +關(guān)注

    關(guān)注

    0

    文章

    161

    瀏覽量

    16783
  • 深度學(xué)習
    +關(guān)注

    關(guān)注

    73

    文章

    5560

    瀏覽量

    122763

原文標題:用OpenVINO? 輕松實現(xiàn)PaddleOCR實時推理 | 開發(fā)者實戰(zhàn)

文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    迅為RK3576開發(fā)板攝像頭實時推理測試-ppseg?圖像分割

    迅為RK3576開發(fā)板攝像頭實時推理測試-ppseg 圖像分割
    的頭像 發(fā)表于 07-11 14:31 ?155次閱讀
    迅為RK3576開發(fā)板攝像頭<b class='flag-5'>實時</b><b class='flag-5'>推理</b>測試-ppseg?圖像分割

    大模型推理顯存和計算量估計方法研究

    過程中需要占用大量顯存,導(dǎo)致推理速度變慢,甚至無法進行。 計算量過大:大模型的計算量較大,導(dǎo)致推理速度慢,難以滿足實時性要求。 為了解決這些問題,本文將針對大模型推理顯存和計算量的估計
    發(fā)表于 07-03 19:43

    Modbus轉(zhuǎn)以太網(wǎng)終極方案:三步實現(xiàn)老舊設(shè)備智能升級

    7.8萬元/年(人工處理報警) 四、三步快速實施指南 步驟1:物理連接 步驟2:參數(shù)配置 步驟3:系統(tǒng)聯(lián)調(diào) ? 御控云平臺:
    發(fā)表于 04-24 10:37

    Claude 3.7:編碼助手首選,claude api key如何申請獲取與深度解析*

    核心看點 混合推理引擎 :Claude 3.7 融合快速代碼生成與深度問題解決能力,實現(xiàn)“快思考”與“深思考”的無縫切換。 便捷API訪問 :三步
    的頭像 發(fā)表于 03-24 09:43 ?941次閱讀
    Claude 3.7:編碼助手首選,claude api key如何申請獲取與深度解析*

    150℃無壓燒結(jié)銀最簡單步驟

    的熱點。在材料科學(xué)與電子工程領(lǐng)域,燒結(jié)技術(shù)作為連接與成型的關(guān)鍵工藝之一,始終占據(jù)著舉足輕重的地位。接下來,我們將詳細介紹150℃無壓燒結(jié)銀AS9378TB的最簡單步驟,以便讀者和客戶能夠快速理解并
    發(fā)表于 02-23 16:31

    “輕松上手!5分鐘學(xué)會用京東云打造你自己的專屬DeepSeek”

    GPU云主機環(huán)境準備 ?:部署Ollama :運?DeepSeek模型 四:圖形客戶端使? #第五步驟可以不執(zhí)? 五:本地數(shù)據(jù)投喂 ?:京東云GPU云主機環(huán)境準備: DeepSeek的不同版本模型對主機
    的頭像 發(fā)表于 02-10 17:41 ?1684次閱讀
    “輕松上手!5分鐘學(xué)會用京東云打造你自己的專屬DeepSeek”

    摩爾線程宣布成功部署DeepSeek蒸餾模型推理服務(wù)

    近日,摩爾線程智能科技(北京)有限責任公司在其官方渠道發(fā)布了一則重要消息,宣布公司已經(jīng)成功實現(xiàn)了對DeepSeek蒸餾模型推理服務(wù)的部署。這一技術(shù)突破,標志著摩爾線程在人工智能領(lǐng)域邁出了堅實的一
    的頭像 發(fā)表于 02-06 13:49 ?792次閱讀

    工程師指南:38步驟 反激式開關(guān)電源設(shè)計提供全面指導(dǎo)

    圍繞反激式開關(guān)電源設(shè)計展開,詳細介紹了 38 個設(shè)計步驟,涵蓋電路參數(shù)計算、元件選型及環(huán)路補償設(shè)計等方面,為反激式開關(guān)電源設(shè)計提供全面指導(dǎo)。 *附件:38步驟 反激式開關(guān)電源設(shè)計提供全面指導(dǎo).pdf
    的頭像 發(fā)表于 01-16 18:09 ?2760次閱讀
    工程師指南:38<b class='flag-5'>步驟</b> 反激式開關(guān)電源設(shè)計提供全面指導(dǎo)

    實現(xiàn)實時維測量的技術(shù)挑戰(zhàn)

    隨著科技的飛速發(fā)展,實時維測量技術(shù)已成為現(xiàn)代工業(yè)和科研領(lǐng)域的重要工具。它能夠提供精確的維數(shù)據(jù),幫助工程師和研究人員更好地理解和設(shè)計復(fù)雜的系統(tǒng)。 1. 數(shù)據(jù)采集速度 實時
    的頭像 發(fā)表于 12-30 15:23 ?541次閱讀

    如何實現(xiàn)數(shù)字孿生?分為以下四步驟

    和優(yōu)化管理。下面我將詳細介紹如何實現(xiàn)數(shù)字孿生以及相關(guān)的關(guān)鍵步驟和技術(shù)。 首先,實現(xiàn)數(shù)字孿生的關(guān)鍵在于數(shù)據(jù)的采集、建模、分析和反饋,具體步驟如下: 1.數(shù)據(jù)采集: 通過各種傳感器、監(jiān)控設(shè)
    的頭像 發(fā)表于 11-29 13:57 ?1511次閱讀

    放電消納負載如何實現(xiàn)

    放電消納負載是一種電力系統(tǒng)運行控制技術(shù),主要用于解決電力系統(tǒng)中由于負荷波動、電源故障等原因產(chǎn)生的過剩電能問題。其實現(xiàn)過程主要包括以下幾個步驟: 檢測和預(yù)測:首先,通過對電力系統(tǒng)的實時監(jiān)測,獲取系統(tǒng)
    發(fā)表于 10-30 15:26

    FPGA和ASIC在大模型推理加速中的應(yīng)用

    隨著現(xiàn)在AI的快速發(fā)展,使用FPGA和ASIC進行推理加速的研究也越來越多,從目前的市場來說,有些公司已經(jīng)有了專門做推理的ASIC,像Groq的LPU,專門針對大語言模型的推理做了優(yōu)化
    的頭像 發(fā)表于 10-29 14:12 ?1946次閱讀
    FPGA和ASIC在大模型<b class='flag-5'>推理</b>加速中的應(yīng)用

    快速確定升壓轉(zhuǎn)換器最大輸出電流的步驟

    電子發(fā)燒友網(wǎng)站提供《快速確定升壓轉(zhuǎn)換器最大輸出電流的步驟.pdf》資料免費下載
    發(fā)表于 09-07 10:42 ?0次下載
    <b class='flag-5'>快速</b>確定升壓轉(zhuǎn)換器最大輸出電流的<b class='flag-5'>三</b>個<b class='flag-5'>步驟</b>

    PCBA加工打樣要經(jīng)過哪些流程?每一步驟都很關(guān)鍵

    一站式PCBA智造廠家今天為大家講講PCBA打樣整套流程有哪些?PCBA打樣從設(shè)計到成品交付流程。在電子產(chǎn)品設(shè)計和開發(fā)過程中,PCBA打樣是一個至關(guān)重要的步驟。下面我們將詳細介紹PCBA打樣的整個
    的頭像 發(fā)表于 09-04 09:40 ?674次閱讀
    PCBA加工打樣要經(jīng)過哪些流程?每一<b class='flag-5'>步驟</b>都很關(guān)鍵

    linux安裝.net core3.1步驟

    linux安裝.net core3.1步驟 各項用到的命令
    發(fā)表于 09-03 11:41 ?0次下載