<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 智能計(jì)算 > 設(shè)計(jì)應(yīng)用 > 基于OpenCV的生產(chǎn)日期字符識(shí)別研究*

          基于OpenCV的生產(chǎn)日期字符識(shí)別研究*

          作者:李佳琪(安徽理工大學(xué) 經(jīng)濟(jì)與管理學(xué)院,安徽 淮南 232000) 時(shí)間:2021-07-27 來(lái)源:電子產(chǎn)品世界 收藏
          編者按:利用OpenCV-python和開(kāi)源OCR技術(shù)進(jìn)行圖像預(yù)處理,并通過(guò)訓(xùn)練得到一個(gè)專屬字庫(kù),能較為精準(zhǔn)地識(shí)別生產(chǎn)日期字符。針對(duì)如何提高商品標(biāo)簽識(shí)別系統(tǒng)的工作效率,從改善商品標(biāo)簽圖像質(zhì)量和提高識(shí)別算法效率入手進(jìn)行研究,目的是提高生產(chǎn)效率、提升產(chǎn)品質(zhì)量。

          商品的標(biāo)識(shí)技術(shù)是對(duì)標(biāo)簽進(jìn)行編碼和標(biāo)記的技術(shù)手段,也是產(chǎn)品可追溯性的基礎(chǔ)。標(biāo)識(shí)技術(shù)關(guān)系到物流、食品和電子商務(wù)等多個(gè)行業(yè),影響深遠(yuǎn)。伴隨人們生活水平的提高,對(duì)于健康和安全的關(guān)注越來(lái)越多,每個(gè)行業(yè)對(duì)產(chǎn)品的品質(zhì)和安全性的要求也越來(lái)越高[1]。編碼標(biāo)識(shí)的不統(tǒng)一阻礙了各個(gè)行業(yè)的發(fā)展,包括對(duì)產(chǎn)品的溯源、電子商務(wù)及對(duì)產(chǎn)品標(biāo)簽標(biāo)準(zhǔn)化的要求,因此,國(guó)家商品生產(chǎn)日期標(biāo)識(shí)規(guī)范體系的建立顯得尤為必要。

          本文引用地址:http://www.ex-cimer.com/article/202107/427161.htm

          OCR 技術(shù)通過(guò)照相機(jī)拍攝圖片,利用檢測(cè)模式掃描圖像,從中排除干擾信息并提取文本信息,然后對(duì)文本信息進(jìn)行,用一系列算法翻譯成計(jì)算機(jī)處理文本 [2]。現(xiàn)在,還可直接連接攝像頭或照相機(jī)直接進(jìn)行視頻識(shí)別。典型的OCR 技術(shù)首先是對(duì)輸入圖像進(jìn)行預(yù)處理,再對(duì)處理過(guò)的圖像進(jìn)行文字檢測(cè)識(shí)別,在不同項(xiàng)目背景下,根據(jù)光照、背景顏色、產(chǎn)品材質(zhì)和產(chǎn)品要求的不同,預(yù)處理和識(shí)別方法也會(huì)有所差異。

          識(shí)別過(guò)程將由計(jì)算機(jī)端的Python 程序完成。本文采用的商品標(biāo)簽識(shí)別過(guò)程如圖1 所示。

          作者簡(jiǎn)介:李佳琪(1995~),女,安徽舒城,回族,碩士生,研究方向:神經(jīng)網(wǎng)絡(luò),E-mail:568950838@qq.com。

          *國(guó)家自然科學(xué)基金,61873004,多源傳感器環(huán)境下基于異構(gòu)特征信息融合的行為識(shí)別

          國(guó)家自然科學(xué)基金,51474007,基于領(lǐng)域本體的煤礦安全數(shù)據(jù)融合方法及應(yīng)用

          1627372168298032.png

          圖1 商標(biāo)標(biāo)簽識(shí)別過(guò)程

          1   預(yù)處理與識(shí)別

          1.1

          是一個(gè)跨平臺(tái)的輕量級(jí)開(kāi)源計(jì)算機(jī)視覺(jué)庫(kù),支持多種機(jī)器語(yǔ)言。 模塊覆蓋全面,其中囊括了、圖像處理、人臉識(shí)別等。OpenCV 涵蓋300 多個(gè)C 語(yǔ)言函數(shù)的中、高層API,對(duì)于輸入圖像的格式也非常包容,用它進(jìn)行應(yīng)用開(kāi)發(fā)非常高效和簡(jiǎn)潔,而且包含了豐富的工業(yè)檢測(cè)類(lèi)函數(shù),能夠用于實(shí)時(shí)圖像處理,使用便捷,功能完善,適用于本文實(shí)驗(yàn)環(huán)境。

          1.2

          是19 世紀(jì)80 年代由惠普實(shí)驗(yàn)室開(kāi)發(fā)的,谷歌改進(jìn)了其中的算法,通過(guò)排除引擎缺陷進(jìn)行了優(yōu)化。 的功能強(qiáng)大,應(yīng)用廣泛,是開(kāi)源的OCR 識(shí)別系統(tǒng)[3]。Tesseract-OCR 識(shí)別引擎在開(kāi)源別引擎中占有重要地位,完整識(shí)別過(guò)程由一種頁(yè)面結(jié)構(gòu)闡發(fā)方法對(duì)圖片做布局剖析,旨在辨別圖像上的表格、文本、圖片等內(nèi)容,為后續(xù)識(shí)別工作做鋪墊。

          2   

          將背景信息和文本信息分開(kāi),消除圖像無(wú)關(guān)信息、加強(qiáng)有效信息,從而簡(jiǎn)化后續(xù)辨認(rèn)字符步調(diào),減輕辨認(rèn)難度和錯(cuò)誤率。

          2.1 圖像傾斜校正

          產(chǎn)品在流水線輸送帶上運(yùn)動(dòng)時(shí),經(jīng)過(guò)高速攝像機(jī)拍攝照片,可能會(huì)遇到產(chǎn)品放置不規(guī)范的問(wèn)題,導(dǎo)致拍攝的照片歪斜,不平行于水平線。預(yù)處理第一步是將扭曲的原始圖片進(jìn)行校正。在此環(huán)境中,使用傅里葉變換做圖像的傾斜校正。

          二維圖像的傅里葉變換公式:

          image.png

          式中,f 和F 分別為空間域值和頻域值,示出了傅立葉變換后的結(jié)果需要使用的真實(shí)圖像加虛擬圖像,或振幅圖像(magitude 圖像)加相位圖像[4](如圖2)。

          1627372383265716.png

          (a)傾斜校正前

          1627372405597499.png

          (b)傾斜校正后

          圖2 校正前后對(duì)比

          2.2 圖像噪聲處理

          在收集、傳輸和處理圖像的過(guò)程中,圖像會(huì)產(chǎn)生一些不可避免的噪聲,包含與圖像無(wú)關(guān)和冗余滋擾信息。降低圖像噪聲不僅可以使圖像更加清晰,而且可以突出圖像的感興趣區(qū)域,易于識(shí)別(如圖3)。

          image.png

          (a)原圖

          image.png

          (b)中值濾波對(duì)噪聲的處理

          圖3 噪聲處理前后的對(duì)比

          2.3 圖像二值化

          遍歷像素點(diǎn),通過(guò)選取合適的值,灰度值二分為255 或0,白色為255,黑色為0,如式(3)所示。分類(lèi)后圖像變?yōu)楹诎?,分辨圖像中的圖形和文本,便于后續(xù)將文本信息提取出來(lái)[5]。

          image.png

          1)Otsu 算法

          此算法是把背景和目標(biāo)閾值的差距拉大,分裂性較強(qiáng),所求的是類(lèi)內(nèi)方差min,和類(lèi)間方差的max,首先遍歷所有像素點(diǎn),統(tǒng)計(jì)灰度級(jí)像素的個(gè)數(shù),將圖像灰度化,再次遍歷計(jì)算出最大類(lèi)間方差,程序略顯復(fù)雜[6],效果圖如圖4 所示。

          1627372907718531.png

          圖4 Otsu對(duì)光照不均的處理

          2)Sauvola 算法

          該算法通過(guò)引入以像素點(diǎn)為中心領(lǐng)域的wide 為參數(shù)windowsize 和自定義系數(shù)比例因子k 來(lái)降低對(duì)噪聲的敏感性,也就是對(duì)niblack 算法進(jìn)行改進(jìn)。它集中于當(dāng)前像素,閾值是根據(jù)該像素的當(dāng)前像素的附近灰度平均值和標(biāo)準(zhǔn)偏差動(dòng)態(tài)計(jì)算[7]。

          灰度均值m 與標(biāo)準(zhǔn)方差s:

          image.png

          然后是該點(diǎn)的閾值T(x, y),其中T的大小可以根據(jù)k 來(lái)調(diào)節(jié):

          image.png

          image.png

          圖5 Sauvola對(duì)光照不均的處理

          2.4 邊緣檢測(cè)

          邊緣檢測(cè)是通過(guò)卷積或微分計(jì)算后得到的二值化

          圖像。

          1)Laplacian 算子邊緣檢測(cè)

          拉普拉斯算子被分成4 個(gè)和8 個(gè)鄰域,域是像素梯度需求鄰域的4 個(gè)相鄰方向上的中央附近的方向和梯度[8](如圖6)。

          image.png

          圖6 Laplacian的邊緣處理

          2)Canny 邊緣檢測(cè)算法

          Canny 從信噪比、單邊緣和定位性能方面來(lái)判定邊緣的優(yōu)劣,Canny 邊緣檢測(cè)算法可以分為以下5 個(gè)步驟:

          ①圖像灰度化

          通過(guò)RGB 三個(gè)通道,為了降維,將圖片圖像進(jìn)行灰度化。

          ②高斯模糊處理

          此步驟是對(duì)圖像進(jìn)行smooth 處理,通過(guò)濾波器將高斯函數(shù)離散化[9],高斯函數(shù)與濾波器的計(jì)算:

          image.png

          ③圖像梯度、梯度幅值、梯度方向計(jì)算

          該點(diǎn)通過(guò)計(jì)算當(dāng)前像素與其附近的像素差值來(lái)進(jìn)行位置判斷,接近這個(gè)差值稱為圖像梯度。首先計(jì)算一階導(dǎo)數(shù):

          image.png

          計(jì)算梯度幅值M:

          image.png

          計(jì)算梯度值的方向

          image.png

          ④ NMS(非極大值抑制)

          留存邊緣方向上具有極大值的像素,通過(guò)NMS 找出其中的局部最大值,將其他位置的值取0。

          ⑤雙閾值的邊界選取

          梯度大于任何邊緣的最大閾值是真正的邊緣,而低于最小閾值的邊緣為非邊緣,非邊緣即舍去(如圖7)。

          image.png

          圖7 Canny的邊緣處理

          2.5本文算法的選取

          中值濾波是對(duì)光滑脈沖噪聲表現(xiàn)良好,效果圖像的邊界順滑清晰。與平均灰度法比較,Sauvola 使用二值化的圖像,能解決產(chǎn)生照度不均的影響。拉普拉斯對(duì)噪聲敏感,分辨邊緣像素的位置表現(xiàn)優(yōu)異,但易出現(xiàn)雙像素邊界,導(dǎo)致日期顯示模糊不清晰;Canny 對(duì)比Laplacian 克制了噪聲引起的非邊緣,對(duì)于光照不均的圖像也能有如圖所示的效果,線條更流暢光滑,同時(shí)細(xì)化過(guò)的邊緣比較清晰,易于后續(xù)的識(shí)別工作。

          綜上,根據(jù)實(shí)際檢測(cè)考慮,本項(xiàng)目的噪聲處理、二值化及邊緣檢測(cè)的算法分別借用的是中值濾波、Sauvola算法和Canny 邊緣檢測(cè)法。

          3   商品生產(chǎn)日期字符識(shí)別

          3.1 識(shí)別目的

          在車(chē)間生產(chǎn)中,生產(chǎn)日期是由操作工人設(shè)置噴印裝置并對(duì)生產(chǎn)日期進(jìn)行噴印。生產(chǎn)日期的錯(cuò)誤為后續(xù)的溯源、倉(cāng)儲(chǔ)造成困難。為避免生產(chǎn)資料的浪費(fèi)和后續(xù)工作的開(kāi)展,制作日期字符識(shí)別數(shù)據(jù)集并校驗(yàn)成果。

          本文通過(guò)jTessBoxEditor 進(jìn)行字符識(shí)別訓(xùn)練工作,Tesseract 深度學(xué)習(xí)樣本訓(xùn)練工具基于Java 開(kāi)發(fā),當(dāng)Tesseract 的自帶字符庫(kù)不足以滿足需要時(shí), 通過(guò)jTessBoxEditor 訓(xùn)練得到專屬字符庫(kù),提高生產(chǎn)日期識(shí)別率和準(zhǔn)確率。

          3.2 字符集的創(chuàng)建和測(cè)試

          在jTessBoxEditor 編輯器中點(diǎn)擊merge tiff,打開(kāi)拍攝到的商品生產(chǎn)日期圖片,并為文件命名,以生成訓(xùn)練集的tif 文件(如圖8)。

          image.png

          圖8 訓(xùn)練集部分樣本圖

          通過(guò)輸入命令行生成box 文件,再導(dǎo)入tif 文件,然后它會(huì)主動(dòng)識(shí)別box 文件并主動(dòng)導(dǎo)入(如圖9)。

          image.png

          圖9 字符識(shí)別界面

          利用窗口上方的模塊,對(duì)文件內(nèi)字符進(jìn)行框選,調(diào)整字體坐標(biāo),標(biāo)準(zhǔn)為一字一框,并對(duì)識(shí)別的字符進(jìn)行修正,最后點(diǎn)擊save。

          在輸入命令后創(chuàng)建字體特征文件,之后開(kāi)始對(duì)字符文件進(jìn)行訓(xùn)練,并把生成的文件合并,即得到訓(xùn)練文件(如圖10)。

          1627373782169893.png

          圖10 字符集訓(xùn)練界面

          字符識(shí)別的正確率受前期圖片處理的程度和字符庫(kù)的影響,訓(xùn)練集中包含英文、中文和數(shù)字三種字符,為了驗(yàn)明三種字符的單獨(dú)測(cè)試效果,從以下四個(gè)方向進(jìn)行

          觀察測(cè)試:

          1)中文字符正確率

          2)英文字符正確率

          3)數(shù)字字符正確率

          4)全部字符正確率

          image.png

          通過(guò)測(cè)試顯示,錯(cuò)誤率最高為5.00% 的中文字符,Tesseract 對(duì)于英文和數(shù)字字符還是比較精準(zhǔn)的,錯(cuò)誤主要在于字符“期”容易識(shí)別為分開(kāi)的兩個(gè)字“其”和“月”,接下來(lái)對(duì)字符偏旁部首誤分割的判定準(zhǔn)確率進(jìn)行研究?jī)?yōu)化。

          4   結(jié)束語(yǔ)

          本文基于OpenCV 和開(kāi)源庫(kù)Tesseract,在Python平臺(tái)根據(jù)現(xiàn)有的完善字符識(shí)別算法,利用訓(xùn)練出的專屬字符庫(kù)初步實(shí)現(xiàn)了在簡(jiǎn)單環(huán)境下對(duì)商品生產(chǎn)日期的識(shí)別功能。

          本實(shí)驗(yàn)項(xiàng)目?jī)H針對(duì)普通場(chǎng)景下的圖像進(jìn)行商品標(biāo)簽日期字符的識(shí)別,對(duì)于復(fù)雜場(chǎng)景下或復(fù)雜字體、混合字體或彎曲識(shí)別界面的圖像文字識(shí)別還有待研究。后續(xù)將在和字符識(shí)別方面進(jìn)行優(yōu)化,即將著手的工作如下:

          1)研究生產(chǎn)日期標(biāo)簽污損情況下的字符識(shí)別。

          2)識(shí)別結(jié)果僅顯示于界面,未能聯(lián)系產(chǎn)品進(jìn)行操控。

          3)進(jìn)一步提高字符識(shí)別的速度和正確率。

          參考文獻(xiàn):

          [1] 于穎.追溯無(wú)國(guó)界——追溯實(shí)施中的軟件,自動(dòng)化與數(shù)據(jù)標(biāo)準(zhǔn)化[J].中國(guó)自動(dòng)識(shí)別技術(shù),2015(4):60-64.

          [2] 王德青,吾守爾·斯拉木,許苗苗.場(chǎng)景文字識(shí)別技術(shù)研究綜述[J].計(jì)算機(jī)工程與應(yīng)用,2020,56(18):1-15.

          [3] 李志昂,李少波,白強(qiáng),等.基于視覺(jué)的機(jī)器人目標(biāo)抓取研究[J].組合機(jī)床與自動(dòng)化加工技術(shù),2020(9):108-111.

          [4] 馬鎖冬,曾春梅,許峰.基于4f系統(tǒng)的光學(xué)圖像加密與解密仿真教學(xué)[J].大學(xué)物理實(shí)驗(yàn),2018,31(6):39-45.

          [5] 石鵬飛,劉慧.基于OpenCV的偏光片檢測(cè)方法[J].機(jī)械管理開(kāi)發(fā),2020,35(10):162-164+202.

          [6] 陳飛.改進(jìn)的交互式Otsu紅外圖像分割算法[J].計(jì)算機(jī)測(cè)量與控制,2020,28(9):248-251.

          [7] 李藝杰,鄒坤霖,孫煒,等.基于Sauvola算法和神經(jīng)網(wǎng)絡(luò)的圖像自適應(yīng)二值化方法[J].測(cè)控技術(shù),2020,39(8):62-69+75.

          [8] 趙慧娟,姜盼松,黃文聰.基于圖像識(shí)別算法的圖像傳感器質(zhì)量檢測(cè)方法改善研究[J].工業(yè)工程,2020,23(3):115-122.

          [9] 白松讓,段敏,曹景勝,等.基于OpenCV的車(chē)道線智能檢測(cè)和識(shí)別[J].遼寧工業(yè)大學(xué)學(xué)報(bào)(自然科學(xué)版),2020,40(2):92-95.

          (本文來(lái)源于《電子產(chǎn)品世界》雜志2021年7月期)



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();