国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Halcon的藥盒條形碼識別系統(tǒng)設(shè)計

2023-05-30 10:48:04羅子棋楊穎戴毅欽胡健劉坤銘吳昊榮
計算機應(yīng)用文摘 2023年3期
關(guān)鍵詞:圖像預(yù)處理識別條形碼

羅子棋 楊穎 戴毅欽 胡健 劉坤銘 吳昊榮

關(guān)鍵詞:藥品;條形碼;Halcon;圖像預(yù)處理;識別

1引言

藥品安全問題一直都是社會民眾關(guān)注的核心問題。一維條形碼技術(shù)能夠?qū)崿F(xiàn)計算機對藥品信息的快速便捷監(jiān)控,讓購買藥品的患者能夠清晰地對藥品信息進行溯源,且條形碼的誤碼率一般低至百萬分之一左右,安全可靠[1]。推行藥盒條形碼識別系統(tǒng),可以極大地保障藥品的流通安全性,也方便醫(yī)院、藥店對藥品的庫存管理和來源追溯。隨著智能制造技術(shù)飛速發(fā)展,信息的獲取方式、傳播方式、處理方式和管理方式等都有了極大的進步,條形碼技術(shù)也很快應(yīng)用到醫(yī)療藥品行業(yè)中[2]。我國國家食品藥品監(jiān)督管理總局也規(guī)定列入的重點藥品必須有“藥品電子監(jiān)管碼”才能銷售。德國MVtec公司研發(fā)的Halcon軟件是一款商用視覺處理軟件,其包含1000多個圖像處理算子,功能強大[3]。使用Halcon內(nèi)置的一維條形碼圖像識別算子對藥盒條形碼圖像進行處理,其程序開發(fā)速度快,對藥盒條形碼的識別效果好,很適合應(yīng)用到藥盒條形碼圖像識別系統(tǒng)。

2基于Halcon軟件的藥盒條形碼圖像預(yù)處理

2.1藥盒條形碼圖像采集

我國藥品的藥盒上規(guī)定必須含有EAN-13碼和Code-128碼兩種不同類型的條形碼,分別是藥品的零售商品碼和中國藥品電子監(jiān)管碼。藥品的信息系統(tǒng)管理在錄入與售賣中多采用的是EAN-13類型的條形碼,EAN-13碼的奇偶編碼表示二進制的規(guī)則,其能夠表示出13位字符的數(shù)字字符信息,包含國家、制造商、產(chǎn)品代號三種信息[4]。在藥盒條形碼的識別過程中,對條形碼圖像的采集是第1步也是重要的一步。條形碼圖像由光學(xué)傳感器、攝像頭、圖像處理系統(tǒng)對藥盒進行采集。采集到的藥盒條形碼圖片由攝像頭或者光學(xué)傳感器儲存到存儲芯片中,通過接口電路傳輸至計算機進行顯示。圖1為采集到的藥盒EAN-13碼和藥盒Code-128碼。

2.2藥盒條形碼圖像灰度化

RGB彩色圖像雖然與人眼視覺能夠很好地匹配,但其信息量也大,而條形碼的識別中并不需要彩色信息,故圖像處理時往往需要將彩色的圖像轉(zhuǎn)換為灰度圖像[5]。圖像灰度化是指只含有亮度信息,不含有色彩信息的圖像,而灰度化是指把含有亮度和色彩的彩色圖像變換成灰度圖像的過程。將圖片的色彩去除后使得圖片的占用內(nèi)存大小變小,因而處理計算所需要的資源、計算量減少,后續(xù)圖片的處理速度顯著提高。使用Halcon的rgbl _to_gray算子可以把RGB彩色圖像轉(zhuǎn)換成為灰度圖像[6]。圖2為藥盒EAN-13碼和Code-128碼圖像灰度化后的結(jié)果。

2.3藥盒條形碼圖像二值化

藥盒條形碼圖像的二值化就是把數(shù)字圖像轉(zhuǎn)化成一種只有兩種色彩的圖像,將圖像的目標(biāo)區(qū)域和圖像的背景區(qū)域區(qū)分開,處理好后的二值化圖像為后續(xù)圖像的邊緣提取等其他圖像處理奠定基礎(chǔ)。圖像二值化處理的關(guān)鍵之處就是選出一個合適的灰度閾值,使目標(biāo)區(qū)域和背景區(qū)域像素點被精準(zhǔn)地分割開來。在對藥盒條形碼圖像進行二值化處理后,其數(shù)據(jù)量會明顯減少,但讓我們感興趣的目標(biāo)區(qū)域的輪廓卻能夠更好地呈現(xiàn)。在Halcon軟件中利用threshold( Image:Region:MinGray,MaxGray)算子對藥盒條形碼進行二值化處理。在算子自動給出選定閾值后,通過查看灰度直方圖來微調(diào)選定閾值,以達(dá)到藥盒條形碼圖像二值化處理的操作。圖3為藥盒EAN-13碼二值化(左)和Code-128碼二值化(右)結(jié)果。通過動態(tài)圖閾值分割法,藥盒條形碼圖像被二值化處理成了只有兩種顏色的圖片,條形碼信息的區(qū)域變成紅色,在灰黑色背景中突顯出來。

2.4藥盒條形碼圖像中條形碼輪廓提取

藥盒條形碼圖像的輪廓提取是其圖像處理和機器視覺處理中最基本的問題。圖像目標(biāo)區(qū)域輪廓提取的精度直接影響后續(xù)數(shù)字圖像數(shù)據(jù)處理的精度,其關(guān)鍵因素就是在平滑和銳化處理時保持住圖像的基本特征。藥盒條形碼圖像的局部亮度變化中差別最大的地方是條碼邊緣,條形碼的兩側(cè)反射率會相差較大,而邊緣的像素也很密集,邊緣像素點附近的梯度是一致的,因此通過檢測輪廓特征明顯、信息量大的像素區(qū)域,就可以高效率地檢測出條形碼輪廓。在Halcon中使用Edge算子進行條形碼輪廓提取。藥盒條形碼圖像在經(jīng)過灰度化、二值化處理的基礎(chǔ)上,其區(qū)域進行了輪廓提取處理。如圖4所示,藥盒條形碼在進行輪廓提取后,條形碼的形狀特征更加明顯和容易辨認(rèn)。

3藥盒條形碼圖像識別處理

3.1藥盒條形碼圖像的特征篩選識別

在藥盒條形碼圖像識別中需要排除復(fù)雜場景的干擾。采用平方梯度特征的方式,剔除邊緣中的短邊緣和曲線邊緣,這種方法能較好地排除大部分背景的干擾,有利于后續(xù)藥盒條形碼圖像中條碼的定位。通過Halcon的Sobel算子對藥盒條形碼圖像進行特征識別提取。圖5為藥盒EAN-13碼特征識別和Code-128碼特征識別結(jié)果。

3.2藥盒條形碼圖像的條碼區(qū)域定位

通過梯度方向一致性的特征對邊緣進行篩選后,邊緣圖像中除了條碼邊緣外,具有梯度方向一致性的線條也被保留下來,這些線條通常是物體的輪廓、表格的邊緣等,一般孤立存在,不具備條碼邊緣分布的密集性。為了進一步消除背景的干擾,保證條碼定位區(qū)域的準(zhǔn)確性,采用形態(tài)學(xué)處理。形態(tài)學(xué)的基本操作有膨脹、腐蝕、開運算以及閉運算,其中開運算操作是先對圖像腐蝕后膨脹,去掉目標(biāo)外孤立的點及細(xì)小物體,再利用Halcon中的find_bar_code算子對藥盒條形碼進行識別定位,find_bar_code算子會查找并讀取給定條形碼圖像中的條形碼符號。但是,在一幅條形碼的圖像中,只能讀取出來任意數(shù)量的單一類型條形碼。并且,在調(diào)用find—bar—code算子前,必須通過調(diào)用create—bar—code—model算子來創(chuàng)建需要處理的條形碼模型,find bar—code算子則只能夠識別并定位出該模型所定義的條形碼類型。通過識別藥盒條形碼的條碼圖案特征,將藥盒條形碼的圖案區(qū)域進行定位識別。圖6為藥盒EAN-13碼定位和藥盒Code-128碼定位。藥盒條形碼的條碼圖案定位后,為后續(xù)對藥盒條形碼的條形碼信息識別解碼轉(zhuǎn)換打下基礎(chǔ)。

3.3藥盒條形碼信息識別與解碼

藥盒條形碼識別系統(tǒng)中最重要的是對采集到的藥盒條形碼圖像進行信息提取,將藥盒條形碼圖像中儲存的條形碼信息識別讀取出來。通過Halcon軟件的內(nèi)置算子對采集到的藥盒條形碼圖像進行圖像識別,將藥盒條形碼中條碼的二進制信息轉(zhuǎn)化為十進制的數(shù)字字符信息,并將藥盒條形碼檢測識別出的十進制數(shù)字字符信息顯示于圖形窗口的圖片之上,便于對照是否識別出錯。如圖7所示,Halcon軟件對藥盒的Code-128類型條形碼信息進行了識別,條形碼信息所含的20位數(shù)字字符信息識別解碼后顯示在了窗口左上方,識別出的十進制數(shù)字字符的信息為83664920037628902502,這和圖像中藥盒條形碼下部數(shù)字字符信息一致,說明正確識別出了藥盒Code-128條形碼信息。

對傾斜狀態(tài)采集到的藥盒條形碼圖像進行識別時,將采集到的藥盒條形碼圖像傾斜,并且在不進行圖像傾斜校正的情況下進行條形碼識別。如圖8所示,以EAN-13類型條形碼為例,傾斜藥盒的條形碼圖像經(jīng)過識別解碼,仍然可以將藥盒條形碼所含的數(shù)字字符信息識別出來。

圖9為瓶裝藥盒EAN-13碼解碼識別?;贖alcon軟件能夠?qū)τ星?、罐裝、桶裝的藥盒上的條形碼進行處理,對采集到的大罐裝以及瓶裝藥盒條形碼圖像進行了成功識別解碼。盡管瓶裝藥盒的圓柱形包裝有一定的曲率,但仍然能如同平面藥盒條形碼圖像一樣正常識別解碼。

4藥盒條形碼識別系統(tǒng)設(shè)計

4.1系統(tǒng)總體設(shè)計

藥盒條形碼系統(tǒng)主要由攝像頭與計算機組成,計算機上搭載Halcon軟件和QT框架。先由攝像頭采集藥盒條形碼圖像,將采集到的圖像由數(shù)據(jù)線傳輸給計算機,在計算機中由Halcon軟件對藥盒條形碼圖像進行圖像處理并將藥盒條形碼的條形碼信息識別解碼,最后將Halcon所識別解碼的結(jié)果傳輸?shù)絈T框架所搭建的界面中進行顯示。圖10為藥盒條形碼識別系統(tǒng)總體設(shè)計圖。

4.2系統(tǒng)開發(fā)與實現(xiàn)

藥盒條形碼識別系統(tǒng)需要將Halcon處理解碼得到的數(shù)字信息進行顯示,并將解碼得到的數(shù)字字符信息在藥品信息數(shù)據(jù)庫中進行對比,最終得到藥品信息并在系統(tǒng)界面進行。Halcon軟件的工作界面不利于客戶直觀使用,通常會將Halcon軟件程序轉(zhuǎn)換為C++程序,然后在QT中創(chuàng)建系統(tǒng)界面,再顯示Halcon軟件對藥盒條形碼圖像所處理得到的結(jié)果。圖11為QT界面展現(xiàn)的藥品條形碼信息。

5結(jié)束語

藥品的管理、配發(fā)、監(jiān)管等問題通過藥盒上的條形碼進行聯(lián)網(wǎng)智能化管理,既提高了工作效率,也減少了藥品的安全問題。利用Halcon軟件內(nèi)置算子能夠?qū)崿F(xiàn)藥盒條形碼識別,輔助QT界面設(shè)計,能夠很好地實現(xiàn)系統(tǒng)的可視化。當(dāng)然,利用Halcon軟件進行條形碼圖像處理時,條形碼圖像采集環(huán)節(jié)仍然有需要改進的地方,如做一個簡單的攝像頭并進行遮光處理或者優(yōu)化藥盒放置臺角度等方法來減少反光的影響;另外,在本次搭建的藥盒條形碼識別系統(tǒng)中,由于藥盒條形碼有EAN-13碼和Code-128碼,且兩者模型解碼模型不同,因此沒有實現(xiàn)在一段程序中一次可以檢測兩種編碼的功能,后期還需加入判別程序,以嘗試實現(xiàn)藥盒條形碼兩種編碼的識別。

猜你喜歡
圖像預(yù)處理識別條形碼
創(chuàng)意條形碼
從條形碼到二維碼
從條形碼到二維碼
條形碼大變身
基于LabVIEW雛雞雌雄半自動鑒別系統(tǒng)
表格圖像特征目標(biāo)識別技術(shù)的研究
科技視界(2016年23期)2016-11-04 23:14:15
淺談哈密瓜病蟲害的防治措施
蘋果樹常見病蟲害防治技術(shù)
青島市中山公園園林樹木易混淆品種識別
基于MATLAB的圖片中字符的分割與識別
洪江市| 延长县| 阿克苏市| 临泽县| 宜良县| 南安市| 富民县| 含山县| 万山特区| 沁水县| 信丰县| 平南县| 安龙县| 宁强县| 城固县| 留坝县| 邛崃市| 石屏县| 布拖县| 县级市| 阳信县| 淅川县| 潍坊市| 文化| 福清市| 大埔区| 永德县| 安达市| 衡水市| 蒙山县| 昔阳县| 封丘县| 石楼县| 中方县| 仁怀市| 维西| 西青区| 五寨县| 皮山县| 广元市| 镇平县|