霍國義
(河南水利與環(huán)境職業(yè)學(xué)院,河南 鄭州 450011)
由于條形碼的廉價(jià)性以及便利性使得該技術(shù)在倉儲(chǔ)業(yè)務(wù)流程中得到了廣泛的應(yīng)用。將條形碼粘貼在物品規(guī)定的位置,在物品入庫、出庫的過程中通過對(duì)條形碼的掃描即可以記錄相關(guān)信息,免去人工記錄的麻煩。條形碼上的特征根據(jù)其紋理特征表現(xiàn)形式不同而各異。采用條形碼對(duì)倉儲(chǔ)業(yè)務(wù)流程進(jìn)行記錄主要依靠對(duì)條形碼中的紋理信息進(jìn)行處理。而隨著圖像處理相關(guān)技術(shù)的日益成熟,基于條形碼的技術(shù)應(yīng)用也日益廣泛。傳統(tǒng)的條形碼技術(shù)主要是通過相應(yīng)的掃描設(shè)備對(duì)條形碼進(jìn)行掃描,并將條形碼的圖像數(shù)據(jù)存儲(chǔ)起來,然后通過將條形碼圖像與標(biāo)準(zhǔn)庫中圖像的對(duì)比來對(duì)條形碼進(jìn)行識(shí)別。但是如果由于人為的或者非人為的原因造成條形碼損壞,就無法對(duì)物品進(jìn)行有效識(shí)別,因?yàn)闅埲钡臈l形碼必然會(huì)造成比對(duì)失敗進(jìn)而使識(shí)別失敗,給倉儲(chǔ)環(huán)節(jié)帶來很多麻煩。為了使得殘缺的條形碼能夠準(zhǔn)確被識(shí)別,本文提出了一種殘缺條形碼修補(bǔ)技術(shù),即利用曲線演化技術(shù)來對(duì)掃描軟件進(jìn)行相應(yīng)的改進(jìn),在掃描的過程中首先判斷條形碼是否有殘缺,如果能夠正常識(shí)別則進(jìn)入下一個(gè)流程,如果不能正常識(shí)別,那么就利用曲線演化對(duì)殘缺的條形碼進(jìn)行像素修補(bǔ),進(jìn)而提高殘缺的條形碼的識(shí)別率。
要對(duì)條形碼進(jìn)行有效識(shí)別,就需要定量掌握條形碼中的紋理曲線的函數(shù)式以及曲線與曲線的關(guān)系。首先根據(jù)條形碼圖像的強(qiáng)度信息,得到條形碼圖像中水平線的函數(shù)表現(xiàn)形式,然后得到在水平軸方向上的方程表達(dá)式,最后獲取條形碼圖像中曲線的方程。本文主要的研究?jī)?nèi)容是已知?dú)埲睏l形碼上的曲線,然后根據(jù)曲線的演化對(duì)殘缺的條形碼進(jìn)行修補(bǔ),所以僅對(duì)如何獲取殘缺條形碼的曲線作簡(jiǎn)要的說明。
(1)殘缺條形碼曲線的獲取。殘缺條形碼上的曲線一般來說都是直線(當(dāng)然也有的條形碼上是存在曲線的,這里就不做討論了),可以將其直線的方程利用斜率的表達(dá)式表達(dá)出來。假設(shè)認(rèn)為條形碼上存在一點(diǎn),那么過這一點(diǎn)的直線具有無數(shù)條,但是對(duì)于條形碼上的直線來講只存在一條,并且這條曲線上的像素值明顯與其他區(qū)域的像素值不同,通過遍歷整幅圖像就可以得到滿足直線條件的一些點(diǎn),過這些點(diǎn)都存在一簇直線,每條直線都對(duì)應(yīng)著一個(gè)參數(shù)在y 軸上的截距和直線的斜率,最后對(duì)這些點(diǎn)的斜率和截距進(jìn)行統(tǒng)計(jì),如果出現(xiàn)某個(gè)斜率和截距值出現(xiàn)一個(gè)峰值,那么就可以在條形碼上確定該直線。如果條形碼上的曲線不是直線也可以利用上述方法來獲取曲線的方程。
(2)條形碼曲線的演化。通過統(tǒng)計(jì)學(xué)的方法來獲取條形碼的曲線方程后,接下來就要研究該曲線演化的規(guī)律以及如何利用該曲線對(duì)殘缺的條形碼進(jìn)行修補(bǔ)。曲線的演化有著一套較為成熟的理論,假設(shè)曲線C 為條形碼上所提取的曲線,曲線演化的含義為曲線C 隨著時(shí)間t 變化,直到滿足約定的條件為止。描述曲線最為重要的兩個(gè)參數(shù)是曲線的單位法向量以及曲率,曲線的單位法向量用來描述曲線的方向,而曲率則表示曲線彎曲的程度,那么曲線的演化也就是根據(jù)曲線的單位法向量和曲線的斜率來研究曲線隨著時(shí)間的變化。
通過上述推算獲得曲線演化的方程式隱式,本文將條形碼圖像中的曲線作為水平線來獲取演化方程。根據(jù)上文所描述的條形碼上曲線的獲取以及演化方式,現(xiàn)假設(shè)通過曲線獲取算法所得到的條形碼的曲線為:
在上述公式中C(s,t)為曲線,s,t 為曲線的參數(shù),其中橫坐標(biāo)x 和縱坐標(biāo)y 都可以利用參量s,t 來表示。一般將曲線的運(yùn)動(dòng)方程寫成:
在建立曲線方程以及曲線演化方程后,再對(duì)條形碼曲線演化方程進(jìn)行轉(zhuǎn)化。本文采取的曲線演化方式為常值演化和曲率演化相結(jié)合的方式,對(duì)于條形碼上的直線來講由于其斜率為定值,所以演化的速度和方向是一定的,通過直線的常值演化就能夠?qū)ο袼剡M(jìn)行較好的修補(bǔ),但是對(duì)于直線下面的數(shù)字來講,最好的演化方式是曲線演化。
利用曲線演化的方式進(jìn)行像素修補(bǔ)的過程為:通過式(1)和式(2)得到曲線的運(yùn)動(dòng)方程,現(xiàn)假設(shè)在時(shí)刻t 曲線上最后一點(diǎn)的位置為C(x,y,t),利用曲線演化求取下一時(shí)刻曲線上最后一個(gè)點(diǎn)的位置C(x,y,t+△t),那么曲線的演化就可以順利進(jìn)行下去,直到整幅圖像被修整完畢。利用曲率演化,在t+△t 時(shí)刻曲線上最后一個(gè)點(diǎn)相對(duì)于t 時(shí)刻的點(diǎn)運(yùn)動(dòng)的距離和方向可由下式得到:
假設(shè)有一批物資要入庫,每個(gè)要入庫的物資上都貼了條形碼,在搬運(yùn)的過程中發(fā)生了條形碼的殘缺。在這種情況下,依靠條形碼的掃描軟件中的殘缺條形碼自動(dòng)修補(bǔ)算法對(duì)條形碼進(jìn)行修補(bǔ)并識(shí)別,最后記錄貨物的相關(guān)信(息。本文選取了一個(gè)完整的條形碼與一個(gè)殘缺的條形碼作為實(shí)驗(yàn)對(duì)象,然后將像素修補(bǔ)的算法與傳統(tǒng)的條形碼識(shí)別的算法進(jìn)行了識(shí)別準(zhǔn)確率的對(duì)比,得到實(shí)驗(yàn)的結(jié)果見表1。
表1 實(shí)驗(yàn)結(jié)果
通過表1 可知,對(duì)于完整的條形碼,二者都能夠進(jìn)行精確的識(shí)別,但是對(duì)于殘缺條形碼,未修補(bǔ)之前識(shí)別失敗了,而修補(bǔ)之后則能夠準(zhǔn)確識(shí)別,證明本文算法大大提高了殘缺條形碼識(shí)別的準(zhǔn)確率。
條形碼技術(shù)由于其廉價(jià)性、便利性被大量的應(yīng)用在倉儲(chǔ)物流環(huán)節(jié)中。但是條形碼極易發(fā)生損壞,殘缺的條形碼的識(shí)別就成了倉儲(chǔ)物流面臨的一個(gè)難題。本文建立了條形碼中曲線演化的方程,通過迭代來對(duì)殘缺部分的圖像進(jìn)行插值修補(bǔ)。實(shí)驗(yàn)表明該技術(shù)能夠提高殘缺條形碼的識(shí)別率。
[1]賈勤,李志全,劉雪飛.基于小波變換的數(shù)字全息再現(xiàn)像質(zhì)量提高方法[J].燕山大學(xué)學(xué)報(bào),2012,(5).
[2]熊立志,陳立潮,潘理虎,等.基于多尺度輪廓結(jié)構(gòu)元素的多形狀邊緣檢測(cè)[J].計(jì)算機(jī)應(yīng)用研究,2012,(9).
[3]王海波.基于顏色和邊緣特征的圖像檢索技術(shù)研究[D].烏魯木齊:新疆大學(xué),2011.
[4]陳虎,周朝輝,王守尊.基于數(shù)學(xué)形態(tài)學(xué)的圖像去噪方法研究[J].工程圖學(xué)學(xué)報(bào),2004,(2).
[5]黃傳波,金忠.基于半監(jiān)督線性近鄰傳遞的相關(guān)反饋方法[J].信息與控制,2011,(3).
[6]黃傳波,金忠.基于半監(jiān)督線性近鄰傳遞的相關(guān)反饋方法[J].信息與控制,2011,(3).