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

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

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

怎么設計一種基于OpenVINO與PaddleOCR的結構化輸出抄表器?

SDNLAB ? 來源:SDNLAB ? 2023-08-11 16:40 ? 次閱讀

01 背景介紹

“表”是生活中的隨處可見的一種設備。常見的“表”包括了家用電表,水表等設備;除此之外,還有工頻場強計等“表”。受制于由于受到區(qū)域因素以及技術因素的制約,并非每種“表”都能夠進行數(shù)據(jù)的自動采集,從而只能通過人工手動抄表。

這種數(shù)據(jù)采集工作一方面較為費事和枯燥,另一方面,長時間工作帶來的會導致工作人員疲勞,從而產(chǎn)生抄錄錯誤。通過人工智能技術構造自動化的抄表流程能夠極大的克服上述問題,提高工作效率。

相關工作

迄今為止,已經(jīng)有許多關于電表讀數(shù)的優(yōu)秀項目出現(xiàn),這些項目大都依賴于對特定場景的模型訓練(包括微調(diào))。 例如:

【PaddlePaddle+OpenVINO】電表檢測識別模型的部署

OpenVINO meter reader

但對于抄表工作的業(yè)務場景而言,具有以下特點:

無法準備大量的徹底貼合業(yè)務場景的數(shù)據(jù)集

待抄錄的“表”中的內(nèi)容是文字,而非進度條或儀表盤

基于開放數(shù)據(jù)訓練得到的OCR模型能夠識別到“表”中的內(nèi)容

因而,對于一些較為規(guī)整的“表”,我們完全可以基于開源OCR模型進行零微調(diào)的抄表工作。

技術方案

本項目提供了有一種無需額外訓練的抄表器,只需要人為指定一些和布局有關的配置信息,即可實現(xiàn)表中數(shù)據(jù)的記錄。 總體流程如下:

配置圖片中屏幕區(qū)域的坐標值。(這些坐標值也可以通過cv2的拐點檢測或深度學習進行獲?。?/p>

對圖片進行預處理(仿射變換)

配置待識別的元素對應的坐標,并裁剪對應的區(qū)域

如有需要,可以對裁剪下來的區(qū)域進行預處理

基于OpenVINO進行文字識別

結構化輸出信息

如有需要,對輸出結果進行進一步精煉

2874f852-3822-11ee-9e74-dac502259ad0.png

目錄

背景介紹

圖片預處理

基于OpenVINO加載PaddleOCR識別模型進行預測

結構化輸出與后處理

02 圖片預處理

由于本項目是一個零微調(diào)的項目,因此,為了保證識別模型的有效性,需要人工對齊輸入信息。

修正傾斜的圖片,將圖片中的屏幕區(qū)域修正到指定的大小

根據(jù)從說明書等地方獲取到的設備信息,設定待識別的區(qū)域在屏幕上的布局

修正圖片

以下列圖片為例,本節(jié)展示如何將圖片從傾斜的狀態(tài),修正為正面觀眾的狀態(tài)。

28a06b22-3822-11ee-9e74-dac502259ad0.jpg28c54014-3822-11ee-9e74-dac502259ad0.png28d59ad6-3822-11ee-9e74-dac502259ad0.png28f293a2-3822-11ee-9e74-dac502259ad0.png ? 290028d2-3822-11ee-9e74-dac502259ad0.png ?

03 基于OpenVINO加載PaddleOCR識別模型進行預測

文字識別模型(PaddleOCR)

PaddleOCR 是PaddlePaddle的文字識別套件。迄今為止,PaddleOCR已經(jīng)提供了許多復用性強的預訓練模型。在本項目中使用的預訓練模型是Chinese and English ultra-lightweight PP-OCR model (9.4M)。更多的信息請參考PaddleOCR Github或PaddleOCR Gitee。

一個標準的OCR流程包括了文字檢測和文字識別,對于本項目來說,文字檢測工作已經(jīng)通過人工配置的方式解決了,因此,只需要進行文字識別即可。

OpenVINO簡介

OpenVINO作為Intel原生的深度學習推理框架,可以最大化的提升人工智能神經(jīng)網(wǎng)絡在Intel平臺上的執(zhí)行性能,實現(xiàn)一次編寫,任意部署的開發(fā)體驗。OpenVINO在2022.1版本后,就可以直接支持飛槳模型,大大提升了模型在Intel異構硬件上的推理性能與部署便捷性,帶來更高的生產(chǎn)效率,更廣闊的兼容性以及推理性能的優(yōu)化。

獲取模型

2954d490-3822-11ee-9e74-dac502259ad0.png

基于OpenVINO加載PaddleOCR

使用OpenVINO加載Paddle模型無需經(jīng)過任何轉(zhuǎn)換,只需要:

創(chuàng)建環(huán)境

讀取模型

生成推理接口

296a7b38-3822-11ee-9e74-dac502259ad0.png

文字識別

依舊對于上述示例圖片,希望結構化輸出以下內(nèi)容:[{"Info_Probe":""}, {"Freq_Set":""}, {"Freq_Main":""}, {"Val_Total":""},{"Val_X":""}, {"Val_Y":""}, {"Val_Z":""}, {"Unit":""}, {"Field":""}]。輸出示例如下圖所示:

29952a9a-3822-11ee-9e74-dac502259ad0.png

配置布局

首先,需要基于仿射變換的結果,配置各個元素在圖片上的布局。這個配置對于同一批表來說是固定的。

29c8ade8-3822-11ee-9e74-dac502259ad0.png

文字識別的預處理函數(shù)

29e284c0-3822-11ee-9e74-dac502259ad0.png29ef2338-3822-11ee-9e74-dac502259ad0.png2a0d1032-3822-11ee-9e74-dac502259ad0.png2a24c2ea-3822-11ee-9e74-dac502259ad0.png ?

文字識別的后處理函數(shù)

用于將文字識別的結果進行解碼,轉(zhuǎn)化為漢字

2a397ee2-3822-11ee-9e74-dac502259ad0.png2a56cd4e-3822-11ee-9e74-dac502259ad0.png2a6de556-3822-11ee-9e74-dac502259ad0.png2a893c3e-3822-11ee-9e74-dac502259ad0.png ?

基于OpenVINO進行文字識別

下面以Freq_Set為例,進行文字識別

2a9bee88-3822-11ee-9e74-dac502259ad0.png2ab3fa1e-3822-11ee-9e74-dac502259ad0.png

100H2實時值

結構化輸出與后處理

上面的邏輯已經(jīng)完成了使用OpenVINO加載PaddleOCR并進行預測,但實際上由于整個模型沒有進行微調(diào),所以對于當前的業(yè)務場景來說可能不夠完美,這個時候可以通過一些簡單的邏輯進行處理,比如,對于示例圖片中,H2必然是不存在的,這個地方可以直接通過replace替換為HZ。

簡單來說,對于示例圖片的這種表,可以定義如下后處理函數(shù):

2acb213a-3822-11ee-9e74-dac502259ad0.png2ae90df8-3822-11ee-9e74-dac502259ad0.png

全流程一鍵運行

為了方便運行,這里也提供了一個封裝好的函數(shù)

2b042f52-3822-11ee-9e74-dac502259ad0.png2b19a2b0-3822-11ee-9e74-dac502259ad0.png2b2c28e0-3822-11ee-9e74-dac502259ad0.png ? ?






審核編輯:劉清

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

    關注

    27

    文章

    8505

    瀏覽量

    145982
  • 神經(jīng)網(wǎng)絡

    關注

    42

    文章

    4717

    瀏覽量

    100009
  • 人工智能
    +關注

    關注

    1787

    文章

    46061

    瀏覽量

    235006
  • OCR
    OCR
    +關注

    關注

    0

    文章

    141

    瀏覽量

    16262
  • 預處理器
    +關注

    關注

    0

    文章

    13

    瀏覽量

    2213

原文標題:基于OpenVINO與PaddleOCR的結構化輸出抄表器

文章出處:【微信號:SDNLAB,微信公眾號:SDNLAB】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    結構化布線系統(tǒng)有哪些難題

    ?! ?.結構化布線系統(tǒng)的結構  通用結構化布線系統(tǒng)和海量結構化布線系統(tǒng)是結構化布線的核心內(nèi)容,朗訊科技(前身為AT&T)和它的SYSTIM
    發(fā)表于 05-19 13:46

    TrustZone結構化消息是什么?

    大家好,我已閱讀任何與TrustZone相關的內(nèi)容,但我無法弄清楚這兩個世界是如何相互溝通的。我所能找到的只是TrustZone API規(guī)范中的內(nèi)容:客戶端和服務可以通過兩機制進行通信:結構化
    發(fā)表于 03-20 08:58

    請問怎樣去設計一種智能小區(qū)無線系統(tǒng)?

    基于GPRS的智能小區(qū)無線系統(tǒng)主要由哪幾部分組成?怎樣去設計一種智能小區(qū)無線系統(tǒng)?
    發(fā)表于 05-28 06:16

    怎么實現(xiàn)基于結構化方法的無線傳感網(wǎng)絡設計?

    怎么實現(xiàn)基于結構化方法的無線傳感網(wǎng)絡設計?
    發(fā)表于 05-31 06:34

    如何設計一種低壓電力客戶遠程集中自動系統(tǒng)?

    安科瑞電氣——萬佳芬18721502664摘要:在智能、自動、信息的環(huán)境背景下,設計一種低壓電力客戶遠程集中自動
    發(fā)表于 07-06 07:48

    結構化設計分為哪幾部分?結構化設計的要求有哪些

    結構化設計分為哪幾部分?結構化設計的要求有哪些?結構化設計主要包括哪些部分?
    發(fā)表于 12-23 06:15

    如何使用arm匯編指令去實現(xiàn)一種結構化編程呢?

    如何使用arm匯編指令去實現(xiàn)一種結構化編程呢?有哪位大神可以解答下嗎
    發(fā)表于 11-09 15:18

    一種結構化道路環(huán)境中的視覺導航系統(tǒng)詳解

    根據(jù)結構化道路環(huán)境的特點提出了一種將邊沿檢測和道路環(huán)境知識相結合的機器視覺算法 , 并結合基于行為響應的路徑規(guī)劃方法和智能預瞄控制方法 , 實現(xiàn)了套基本的機器人視覺導航系統(tǒng) . 在自主機器人實驗
    發(fā)表于 09-25 07:23

    一種新型的智能用電系統(tǒng)的設計

    本文針對IC 卡電表和低壓載波在居民用電行業(yè)不能廣泛推廣的問題,利用GPRS通訊網(wǎng)絡技術、總線技術與低壓載波通訊技術等設計出一種新型的智能用電
    發(fā)表于 12-18 15:55 ?15次下載

    一種基ZigBee技術無線系統(tǒng)的設計

    傳統(tǒng)方式存在著入戶麻煩、費用過高、存在安全隱患等弊端,已經(jīng)不適應現(xiàn)代物業(yè)管理的需要;因此,提出了一種基于ZigBee無線通信技術的無線
    發(fā)表于 01-25 15:15 ?42次下載

    一種新型的智能用電系統(tǒng)的設計

    一種新型的智能用電系統(tǒng)的設計  1 引言     目前國內(nèi)已有多種用于居民用電的產(chǎn)品,
    發(fā)表于 02-26 16:46 ?947次閱讀
    <b class='flag-5'>一種</b>新型的智能用電<b class='flag-5'>抄</b><b class='flag-5'>表</b>系統(tǒng)的設計

    一種用于工作流的結構化數(shù)據(jù)模型及應用研究_胡飛虎

    一種用于工作流的結構化數(shù)據(jù)模型及應用研究_胡飛虎
    發(fā)表于 03-19 11:45 ?0次下載

    一種改進的無線智能水表系統(tǒng)

    住宅樓結構應用為目標,結合無線智能水表系統(tǒng)特點、部署環(huán)境特征和
    發(fā)表于 12-07 14:00 ?1次下載
    <b class='flag-5'>一種</b>改進的無線智能水表<b class='flag-5'>抄</b><b class='flag-5'>表</b>系統(tǒng)

    Alexa示例強調(diào)了一種結構化數(shù)據(jù)的復雜性

    結構化數(shù)據(jù)對人工智能系統(tǒng)的發(fā)展至關重要。人工智能系統(tǒng)與用戶的溝通越好,就越能自主學習,因此,它的效率也就越高。這點很重要,因為如果個人工智能系統(tǒng)只要求用戶以結構化的格式進行交互,
    的頭像 發(fā)表于 09-27 15:13 ?2865次閱讀

    一種自適應網(wǎng)頁結構化信息提取方法

    一種自適應網(wǎng)頁結構化信息提取方法介紹說明。
    發(fā)表于 05-08 10:58 ?2次下載