• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      彩色三維PDF417條碼的設(shè)計(jì)

      2011-07-05 11:32:32黃乃映詹宜巨
      自動(dòng)化與信息工程 2011年3期
      關(guān)鍵詞:條碼算子灰度

      黃乃映 詹宜巨

      (1.中山大學(xué)信息科學(xué)與技術(shù)學(xué)院 2.中山大學(xué)工學(xué)院)

      1 引言

      最初出現(xiàn)的一維條碼由于承載信息能力有限,人們又設(shè)計(jì)出二維條碼,它使用的是二維坐標(biāo)系,空間上的點(diǎn)可以通過(X,Y)來表示,即條碼在橫向X軸和縱向Y軸都含有信息。但是隨著條碼應(yīng)用范圍的進(jìn)一步擴(kuò)大,其承載信息的能力已經(jīng)不能滿足人們的要求,于是人們又提出三維條碼的理念,用彩色代替原始二維條碼中的黑白色,這樣由顏色衍生出來的Z軸也包含大量的信息,使用的是三維坐標(biāo)系,空間上的點(diǎn)可以通過(X,Y,Z)來表示[1]。

      在所有類型的二維條碼中,PDF417條碼的應(yīng)用范圍最廣并具有很高的認(rèn)可度。它屬于堆疊式二維條碼,由3到90行的截短一維條碼堆疊而成。PDF417條碼的密度會(huì)隨著行數(shù)的增加而增加,對(duì)于低密度PDF417條碼和高密度PDF417條碼的識(shí)別方法是不一樣的,因?yàn)楫?dāng)PDF417條碼的密度較低時(shí),光學(xué)系統(tǒng)點(diǎn)擴(kuò)展函數(shù)的影響可以忽略;反之,當(dāng)PDF417條碼密度較高時(shí)則不能[2,3]。由于現(xiàn)在人們要求PDF417條碼能夠承載更多的信息,因此PDF417條碼的密度越來越高,這給條碼的識(shí)別帶來很大的難度。由于三維條碼使用的是三維空間,即使條碼密度較低,其容納信息的能力也非常強(qiáng)。因此本文結(jié)合三維條碼理論,設(shè)計(jì)彩色三維PDF417條碼,并重點(diǎn)研究三維PDF417條碼的識(shí)別。

      2 彩色三維PDF417條碼的設(shè)計(jì)

      三維PDF417條碼的設(shè)計(jì)主要涉及編碼方式和顏色的選取,下面對(duì)這兩部分做具體的介紹。

      2.1 編碼方式的選取

      條碼的編碼方法分為兩種:模塊組配法和寬度調(diào)節(jié)法,兩種方法的編碼容量都會(huì)隨著模塊寬度的增大而增大。但是實(shí)驗(yàn)表明[4,5]:當(dāng)模塊寬度小于等于7時(shí),寬度調(diào)節(jié)法的編碼容量更大;當(dāng)模塊寬度大于7時(shí),模塊組配法的編碼容量更大。隨著條碼應(yīng)用范圍的不斷擴(kuò)大,人們要求不斷增加條碼的編碼容量,所以模塊寬度常常大于 7,而這時(shí)模塊組配法的編碼容量更大,因此本文選擇模塊組配法編碼方式。

      2.2 顏色的選取

      按照三維條碼理論,顏色的選取主要有兩種方法:第一種方法是根據(jù)同類顏色、不同灰度值進(jìn)行選擇,即將黑色分成不同的等級(jí),如深黑、淺黑、較深黑等等顏色,這種方法不僅對(duì)識(shí)別設(shè)備要求很高,更重要的是條碼的抗干擾性能大大降低,倘若條碼在流通的過程中受到污損、褪色等情況,就不能正確識(shí)別條碼,所以此方法具有很強(qiáng)的局限性;第二種方法是根據(jù)顏色的不同進(jìn)行選擇,這樣可以很好地克服第一種方法的缺點(diǎn)[4,5]。因此本文選取彩色來代替二維條碼中條的顏色,空的顏色仍然采用白色。設(shè)計(jì)的條碼如圖1所示。

      圖1 彩色三維PDF417條碼

      2.3 比較

      下面對(duì)三維PDF417條碼和二維PDF417條碼進(jìn)行比較,以編碼容量作為對(duì)比的標(biāo)準(zhǔn)。

      設(shè)一個(gè)三維PDF417條碼字符的模塊數(shù)為n,條和空的對(duì)數(shù)為k,則所能表示的碼字?jǐn)?shù)為:

      (1)式中p表示條的顏色種數(shù),q表示空的顏色種數(shù)[4,5]。

      設(shè)一個(gè)二維PDF417條碼字符的模塊數(shù)為n,條和空的對(duì)數(shù)為k,則所能表示的碼字?jǐn)?shù)為[4,5]:

      由(1)式除以(2)式得:

      假設(shè)p=6,q=2,可得:

      3 三維PDF417條碼的識(shí)別

      對(duì)于三維PDF417條碼的識(shí)別,本文采取兩種識(shí)別方法:第一種方法是把三維PDF417條碼轉(zhuǎn)化為二維 PDF417條碼進(jìn)行識(shí)別;第二種方法是對(duì)三維PDF417條碼直接進(jìn)行識(shí)別。其識(shí)別過程如圖2 和圖3 所示,兩種方法的主要區(qū)別在于第二種方法沒有圖像預(yù)處理環(huán)節(jié)。

      圖2 第一種識(shí)別方法

      圖3 第二種識(shí)別方法

      3.1 圖像預(yù)處理

      圖像預(yù)處理是第一種識(shí)別方法必不可少的一個(gè)環(huán)節(jié),其主要包括以下三個(gè)環(huán)節(jié):彩色條碼灰度化、圖像二值化、去噪,其具體的流程如圖4所示。

      3.1.1 彩色圖像灰度變換

      圖4 圖像預(yù)處理流程

      彩色圖像灰度變換常用三種方法:加權(quán)法、平均法、最大值法。

      ① 加權(quán)法:有實(shí)驗(yàn)證明:人眼對(duì)不同顏色的敏感程度是不同的,對(duì)綠色最強(qiáng),對(duì)藍(lán)色最弱,在RGB空間中,對(duì)R、G、B以不同的權(quán)值進(jìn)行加權(quán)平均,如式(5)所示:

      (5)式中 f (i,j)為灰度值輸出。

      ② 平均法:在RGB空間中,對(duì)R、G、B三分量的亮度求均值,如式(6)所示:

      (6)式中 f (i ,j)為灰度值輸出。

      ③ 最大值法:在RGB空間中,對(duì)R、G、B三分量的亮度求最大值,其式(7)所示:

      (7)式中 f( i,j)為灰度值輸出。

      以上三種方法處理結(jié)果如圖5、圖6、圖7所示。

      最大值法處理效果如圖 7所示,當(dāng)以 R、G、B三分量亮度最大值作為灰度值輸出,使得輸出的灰度圖像偏亮,這不利于灰度圖像二值化;均值法處理圖像效果如圖6所示,當(dāng)以R、G、B三分量的亮度均值作為灰度值輸出,使得輸出的灰度圖像整體亮度比較均勻,可以滿足圖像二值化的要求,但是如圖5所示的加權(quán)法處理效果更好,圖像與背景之間非常明顯,更加有利于圖像二值化,因此本文選取加權(quán)法進(jìn)行彩色圖像灰度化。

      3.1.2 灰度圖像二值化

      圖5 加權(quán)法

      圖6 均值法

      圖7 最大值法

      灰度圖像二值化常采用閾值化處理,即選擇一個(gè)合適的閾值,將灰度圖像轉(zhuǎn)換成二值圖像,閾值選取的好壞,對(duì)圖像和背景的分離具有重要的影響?,F(xiàn)在普遍采用直方圖技術(shù)來選取閾值,對(duì)于灰度 PDF417條碼圖像來說,在二值化的時(shí)候,可以將條碼中的條作為特征物圖像,空作為背景物圖像;或者將條碼中的空作為特征物圖像,將條作為背景物圖像[6]。

      如圖8所示的二維PDF417條碼直方圖,可以發(fā)現(xiàn)有兩個(gè)峰值較大,則將兩個(gè)較大波峰的中間位置定義為閾值,即谷底的最小值[6]?;叶葓D像二值化后,所得結(jié)果如圖9所示,這里閾值取為0.82。

      3.1.3 去噪

      圖8 條碼直方圖

      圖9 二值圖像

      現(xiàn)在普遍采用濾波器來消除噪聲,濾波器種類比較多,如空域低通濾波器,頻域低通濾波等等,如圖10和圖11所示。

      圖10 3×3模板均值濾波

      圖11 5×5模板均值濾波

      從圖10和圖11可以發(fā)現(xiàn),濾波后條碼圖像顯得比較模糊,這不利于條碼邊緣檢測,如果想保證邊緣檢測的正確性,必須保證圖像與背景之間的清晰。所以本文沒有采用濾波平滑的方法來消除噪聲,而采用受控形態(tài)學(xué)中膨脹和腐蝕算法[7]。

      受控形態(tài)學(xué)的原理比較簡單,主要是通過指定一個(gè)約束量S來控制腐蝕和膨脹運(yùn)算的程度,因?yàn)樵谝话闩蛎浐透g算法中,并沒有具體指出膨脹和腐蝕的程度,這樣很難保證膨脹和腐蝕運(yùn)算的效果,其處理結(jié)果如圖12和圖13所示。由于受控形態(tài)學(xué)中的受控腐蝕和受控膨脹對(duì)于噪聲的敏感度比較低,因此本文采用受控腐蝕和受控膨脹來對(duì)噪聲進(jìn)行平滑處理,其處理結(jié)果如圖14和圖15所示。

      通過比較圖9和圖15,可以發(fā)現(xiàn)條碼圖像邊緣的模糊程度小了很多。通過比較圖10、圖11、圖12、圖13、圖15可以發(fā)現(xiàn),經(jīng)濾波器處理后的圖像,不僅背景灰暗,且邊緣不清楚,這對(duì)于之后邊緣檢測會(huì)產(chǎn)生很大的負(fù)面影響。經(jīng)一般腐蝕和膨脹處理后,圖像產(chǎn)生很大失真,顯然不適合噪聲的消除。但是經(jīng)過先受控腐蝕再受控膨脹處理后,不僅背景清晰,最重要的是圖像失真程度非常小。因此本文采用先受控腐蝕后受控膨脹來消除噪聲。

      圖12 一般膨脹變化

      圖13 一般腐蝕變化

      圖14 先受控腐蝕變化

      圖15 再受控膨脹變化

      3.2 顏色空間的選擇

      彩色圖像邊緣檢測都需要基于一定的顏色空間,如 RGB、HSV顏色空間。一般情況下,數(shù)字圖像是以RGB形式存在。但是實(shí)際情況下,人們?yōu)榱诵枰ǔ0?RGB空間轉(zhuǎn)化為其他形式的空間,但是在轉(zhuǎn)化的時(shí)候,容易受到噪聲的影響[8]。例如將RGB空間轉(zhuǎn)化為HSV空間,再還原為RGB空間,結(jié)果如圖17所示。

      圖16 HSV空間

      圖17 還原RGB空間

      通過比較圖1和圖17,可以發(fā)現(xiàn),如果對(duì)顏色空間進(jìn)行轉(zhuǎn)換,會(huì)造成彩色圖像中某些信息丟失,而且轉(zhuǎn)換后的圖像對(duì)噪聲十分敏感,因此本文仍然選用RGB顏色空間。

      3.3 旋轉(zhuǎn)條碼

      商場購物或者驗(yàn)證發(fā)票時(shí),經(jīng)常出現(xiàn)條碼偏移和傾斜的現(xiàn)象,為了對(duì)條碼精確識(shí)別,則必須在識(shí)別之前,將條碼旋轉(zhuǎn)到水平狀態(tài)。本文采用Hough算法[9]旋轉(zhuǎn)條碼。

      旋轉(zhuǎn)條碼的時(shí)候,由于受到噪聲、污損等外界因素的影響,彩色條碼圖像中條的顏色區(qū)域會(huì)出現(xiàn)少量麻點(diǎn),因此必須對(duì)受到干擾的區(qū)域進(jìn)行插值?,F(xiàn)在出現(xiàn)的插值方法主要有:最鄰近插值、雙線性插值、三次卷積插值、Hermite插值等,本文采用先三次卷積插值再Hermite插值。

      圖18 最鄰近插值

      圖19 雙線性插值

      圖21 再Hermite插值

      旋轉(zhuǎn)后,最鄰近插值法效果最差,旋轉(zhuǎn)得到的條碼圖像邊緣非常粗糙,如圖18所示;雙線性插值旋轉(zhuǎn)效果次之,如圖19所示;三次卷積旋轉(zhuǎn)效果最好,如圖20所示;同時(shí)由于雙線性插值具有低通性質(zhì),因此在高頻的時(shí)候,條碼圖像會(huì)產(chǎn)生失真,會(huì)使圖像邊界更加粗糙;三次卷積法可以有效克服最鄰近插值和雙線性插值的缺點(diǎn)。但是在PDF417條碼層與層交界處,旋轉(zhuǎn)效果仍然不是很好,因此本文利用兩點(diǎn)三次Hermite插值對(duì)每層交界處進(jìn)行平滑,如圖21所示。旋平后的二維條碼和三維條碼如圖2 2和圖2 3所示。

      圖22 二維條碼旋轉(zhuǎn)

      圖23 三維條碼旋轉(zhuǎn)

      3.4 分割單行條碼[6,11]

      由于PDF417條碼是由多行一維條碼疊加而成,因此在識(shí)別的時(shí)候必須分割出每行條碼。利用 Sobel水平邊緣檢測算子 f (x,y)來提取PDF417條碼水平邊緣,再進(jìn)行水平投影,如圖24所示。

      圖24 水平投影后所得圖像[7]

      由圖2 4可知:圖像的峰點(diǎn)對(duì)應(yīng)于條碼的行邊界,這樣行邊界的計(jì)算就轉(zhuǎn)化為峰點(diǎn)數(shù)量的計(jì)算。

      下面利用統(tǒng)計(jì)方法來計(jì)算條碼的行邊界。

      將條碼旋轉(zhuǎn)到水平狀態(tài)后,可以通過條碼的上下邊界方程,來計(jì)算PDF417條碼圖像的高度 H'。則行高如式(10)所示:

      接下來就可以根據(jù)行高來分割單行條碼。條碼圖像分割結(jié)果如圖2 5所示。

      圖25 分割出的單行條碼

      3.5 邊緣檢測

      3.5.1 二維PDF417條碼的邊緣檢測

      條碼邊緣檢測就是采用某種算法,將條碼圖像中的條和空之間的分界線提取出來,常用的邊緣檢測算法有 Roberts、Sobel、Log、Prewitt、Canny 等[11~14]。

      Log算子邊緣檢測效果如圖2 9所示,條碼二值圖像的邊緣大部分都沒有檢測出來,明顯不符合要求;Sobel和Prewitt算子邊緣檢測效果如圖2 6和圖2 8所示,其檢測效果比Log算子稍好,但是仍然有部分邊緣沒有檢測出來;Roberts算子邊緣檢測效果如圖 27所示,從效果圖可以發(fā)現(xiàn),在檢測的時(shí)候,產(chǎn)生了大量的偽邊緣;Canny算子邊緣檢測效果如圖3 0所示,檢測效果不僅邊緣清晰,偽邊緣很少,甚至沒有,故選取Canny算子進(jìn)行邊緣檢測。

      圖26 Sobel算子檢測

      圖27 Roberts算子檢測

      圖28 Prewitt算子檢測

      圖29 Log算子檢測

      圖30 Canny算子檢測

      3.5.2 三維PDF417條碼的邊緣檢測

      除了將彩色條碼圖像轉(zhuǎn)化為灰度二值圖像外,還可以直接從彩色條碼圖像入手。在對(duì)一般的彩色圖像進(jìn)行邊緣檢測的時(shí)候,如果出現(xiàn)部分邊緣丟失,不會(huì)對(duì)結(jié)果產(chǎn)生很大的影響,但是彩色三維PDF417條碼圖像則不同,因?yàn)闂l碼圖像中的顏色攜帶著大量的信息,如果在邊緣檢測的時(shí)候出現(xiàn)漏檢,就會(huì)對(duì)結(jié)果產(chǎn)生很大的影響。下面用傳統(tǒng)Canny算法來直接檢測彩色三維PDF417條碼圖像邊緣,如圖3 1所示。

      圖31 傳統(tǒng)的Canny算法

      從圖3 1可以發(fā)現(xiàn),直接利用傳統(tǒng)Canny算法檢測條碼邊緣,得到的結(jié)果并不是十分的理想,因此本文對(duì)傳統(tǒng)Canny算法進(jìn)行改進(jìn),傳統(tǒng)Canny算法共有四個(gè)步驟[11~14]:① 利用高斯濾波器平滑圖像,去除圖像噪聲;② 利用一階偏導(dǎo)的有限差分來計(jì)算梯度幅值和方向;③ 對(duì)梯度幅值進(jìn)行非極大值抑制;④ 用雙閾值算法檢測并且連接邊緣。

      現(xiàn)在對(duì)第二步、第三步進(jìn)行優(yōu)化。

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

      首先,彩色圖像仍然以 RGB的形式存在,在點(diǎn)(i,j)的8個(gè)鄰域內(nèi),通過對(duì)x、y、45°、135°方向上求偏導(dǎo),來計(jì)算點(diǎn) (i ,j)的梯度值和方向。其具體過程如下:

      x方 向 偏 導(dǎo) 數(shù) Rx(i,j)、 Bx(i,j)、 Gx(i,j)、Py(i,j ):

      (2)在第一種方法中,是把彩色圖像轉(zhuǎn)化為灰度二值圖像,這樣圖像與背景之間非常清晰。如果直接用傳統(tǒng)的Canny算法對(duì)彩色三維PDF417條碼進(jìn)行邊緣檢測,由于圖像與背景之間不是那么清晰,因此邊緣檢測效果不是很好,效果如圖3 0所示,因此閾值選取的好壞對(duì)邊緣檢測有著至關(guān)重要的作用。由于傳統(tǒng)Canny算法采用雙閾值進(jìn)行判別,這樣容易造成漏檢或者產(chǎn)生偽邊緣,為克服這缺點(diǎn),本文采用局部動(dòng)態(tài)閾值選擇的方法。

      已知原梯度圖像Y,Y經(jīng)過非極大值抑制之后得到的圖像為X,則閾值選擇的過程如下:

      ① 計(jì)算X中各個(gè)候選點(diǎn)的雙閾值。設(shè) x( i ,j)是X中的一點(diǎn),Y中存在一個(gè)中心為 Y (i,j)的正方形,其寬度為a,點(diǎn) x( i ,j)雙閾值的選取與正方形內(nèi)梯度分布存在緊密的聯(lián)系,可以根據(jù)PDF417條碼密度的大小調(diào)整a的大小,a的取值范圍為 [3 0,50],在所選正方形區(qū)域梯度直方圖中,像素點(diǎn)個(gè)數(shù)的計(jì)算是按照梯度遞增順序進(jìn)行累計(jì)[15]。假設(shè)像素點(diǎn)的總個(gè)數(shù)為 Z,高閾值用T2表示,低閾值用 T1表示,當(dāng)累計(jì)和占 Z得百分比則為T2,T2的40%為T1。

      ② 假設(shè)X中候選邊緣點(diǎn)的梯度值為T,該點(diǎn)的高閾值為T2,低閾值為T1,當(dāng) T> T2時(shí),則候選點(diǎn)為時(shí),且與保留邊緣點(diǎn)的8個(gè)鄰域相連,該點(diǎn)為邊緣點(diǎn),保留該點(diǎn)[15]。實(shí)驗(yàn)結(jié)果如圖3 2所示。

      圖32 改進(jìn)的Canny算法

      4 結(jié)論

      本文采取了兩種識(shí)別方法,下面對(duì)它們的識(shí)別效果進(jìn)行比較,主要不同之處歸納如下:

      (1)從識(shí)別效果來看:第一種方法的邊緣檢測效果非常好,如圖3 0所示,幾乎沒有任何的偽邊緣;第二種方法的邊緣檢測效果也不錯(cuò),如圖3 2所示,產(chǎn)生了少量的偽邊緣。所以第一種方法識(shí)別效果更好;

      (2)從識(shí)別效率來看:第一種方法的識(shí)別速度要比第二種方法快,因?yàn)榻?jīng)過改進(jìn)的Canny算法運(yùn)行速度比較慢;

      (3)從計(jì)算量來看:由于第二種方法沒有圖像預(yù)處理,不需進(jìn)行灰度變換、二值化、去噪等計(jì)算,因此相比于第一種方法,計(jì)算量小很多。

      [1]三維碼[DB/OL]. http://baike.baidu.com/view/1586298.htm.

      [2]二維條形碼[DB/OL]. http://baike.baidu.com/View/71834.htm

      [3]PDF417條碼[DB/OL]. http://baike.baidu.com/view/132249.htm

      [4]劉寧鐘,楊靜宇.三維條碼的編碼理論和設(shè)計(jì)[J].計(jì)算機(jī)學(xué)報(bào),2007,30(4):686-692.

      [5]劉寧鐘.高維條碼識(shí)別技術(shù)和編碼理論的研究[D].博士學(xué)位論文.南京理工大學(xué),2003:1-13,21-27,56-72.

      [6]王沁.PDF417條碼識(shí)別技術(shù)研究[D].碩士學(xué)位論文.西安理工大學(xué),2007:17-34.

      [7]文華.基于數(shù)學(xué)形態(tài)學(xué)的圖像處理算法的研究[D].碩士學(xué)位論文.哈爾濱工程大學(xué),2006:7-42.

      [8]胡博.彩色圖像分割算法研究[D].碩士學(xué)位論文.電子科技大學(xué),2009:8-13.

      [9]Hough變換[DB/OL]. http://baike.baidu.com/view/1241775.htm

      [10]成誠. 二維PDF417條碼識(shí)別技術(shù)的研究及其在Linux 平臺(tái)下的實(shí)現(xiàn)[D].碩士學(xué)位論文.南京航空航天大學(xué),2008:18-32.

      [11]楊帆.數(shù)字圖像處理與分析[M].北京:北京航空航天大學(xué)出版社,2007.251-261.

      [12]周曉偉.二維條碼識(shí)別技術(shù)研究[D].碩士學(xué)位論文.上海交通大學(xué),2007:15-27.

      [13]胡小鋒,趙輝等.Visual C++/MATLAB圖像處理與識(shí)別實(shí)用案例精選[M].人民郵電出版社,2004:85-118.

      [14]王家文,曹宇.MATLAB 6.5圖形圖像處理[M].2004:190-193,268-272.

      [15]王佳,李波,徐其志.邊緣檢測中局部區(qū)域的動(dòng)態(tài)閾值選取的方法[J].計(jì)算機(jī)應(yīng)用研究,2010,27(2).

      猜你喜歡
      條碼算子灰度
      中國條碼技術(shù)與應(yīng)用協(xié)會(huì)
      條碼微站
      采用改進(jìn)導(dǎo)重法的拓?fù)浣Y(jié)構(gòu)灰度單元過濾技術(shù)
      擬微分算子在Hp(ω)上的有界性
      基于灰度拉伸的圖像水位識(shí)別方法研究
      各向異性次Laplace算子和擬p-次Laplace算子的Picone恒等式及其應(yīng)用
      一類Markov模算子半群與相應(yīng)的算子值Dirichlet型刻畫
      基于最大加權(quán)投影求解的彩色圖像灰度化對(duì)比度保留算法
      Roper-Suffridge延拓算子與Loewner鏈
      基于灰度線性建模的亞像素圖像抖動(dòng)量計(jì)算
      黑河市| 泰和县| 鹰潭市| 临沭县| 临猗县| 荥阳市| 理塘县| 台北市| 东源县| 阿勒泰市| 丹棱县| 彭阳县| 岳普湖县| 安乡县| 龙口市| 舒兰市| 阳城县| 南漳县| 枞阳县| 吉林省| 泉州市| 隆回县| 荆门市| 县级市| 云梦县| 湖州市| 三亚市| 德令哈市| 曲麻莱县| 界首市| 甘泉县| 光山县| 南川市| 德兴市| 旬阳县| 正镶白旗| 莒南县| 萍乡市| 阳山县| 桐梓县| 濮阳市|