專利名稱:高性能二維條形碼解碼方法
技術領域:
本發(fā)明屬于條形碼技術領域,尤其是一種高性能二維條形碼解碼方法。
背景技術:
二維條形碼是實現(xiàn)信息存儲、攜帶并自動識讀功能一種理想方法。二維條形碼具 有如下特點高密度、大容量、高可靠性;具有糾錯功能;可以表示多種語言和文字;可表示 圖像數(shù)據(jù);可對引入加密機制等等。二維條形碼解碼設備通常由嵌入式處理器組成的機器 視覺系統(tǒng),在嵌入式處理器內置有可對二維條形碼進行解碼的處理程序。由于二維條形碼 所具有的特點,因此對其進行辨析、識讀的過程變得極其復雜,解碼處理方法在速度、準確 性、可靠性成了難以兼顧的三大關鍵要素。
發(fā)明內容
本發(fā)明的目的在于克服現(xiàn)有技術的不足,提供一種解碼速度快、準確性及可靠性 高的高性能二維條形碼解碼方法。 本發(fā)明解決其技術問題是采取以下技術方案實現(xiàn)的
—種高性能二維條形碼解碼方法,包括以下步驟 (1)對包含有二維條形碼的數(shù)字圖像A進行圖像下采樣處理,生成縮小的圖像B ; (2)對下采樣后的圖像B進行圖像增強處理,得到增強圖像C ; (3)對增強圖像C進行低通濾波和局部閾值二值化處理,得到黑白圖像D ; (4)對黑白圖像D進行分塊、排序并進行連通區(qū)域標記處理; (5)對連通區(qū)域劃分網(wǎng)格并生成網(wǎng)格矩陣; (6)根據(jù)生成的網(wǎng)格矩陣進行解碼和糾錯,輸出數(shù)字圖像A所包含的二維條形碼 的解碼值。 而且,步驟(1)所生成的圖像B是數(shù)字圖像A的1/4或1/16。
而且,所述的增強圖像處理包括以下步驟
(1)求圖像B的直方圖; (2)根據(jù)圖像B的直方圖分別求出分布概率最大的極大值和極小值;
(3)對直方圖進行拉伸處理后得到增強圖像C。 而且,所述的拉伸處理方法是將數(shù)字圖像A極大值和極小值之間的區(qū)域變換后 映射到整個亮度分布空間。 而且,所述整個亮度分布空間為0 255之間。
而且,所述的低通濾波和局部閾值二值化包括以下步驟 (1)低通濾波步驟采用3X3鄰域或5X5鄰域平滑濾波法對增強圖像C進行運 算處理,濾去增強圖像C中的高頻分量,保留低頻分量,生成二值化所需的比對模板。
(2)局部閾值二值化步驟遍歷整幅數(shù)字圖像A,并逐像素同對比模板上的相應像 素進行比較,差值大于一定閾值的點為亮點,小于或等于閾值的點為暗點,生成一幅只包含黑色和白色兩種數(shù)值的的黑白圖像D。 而且,步驟(4)所述的標記連通區(qū)域包括拷貝黑白圖像副本,在圖像副本上對暗 點集合進行連通區(qū)域標記,然后按照快速連通區(qū)域標記算法標記為獨立區(qū)域,并按照占有 像素數(shù)量多少對獨立區(qū)域進行排序。
而且,所述的對連通區(qū)域劃分網(wǎng)格并生成網(wǎng)格矩陣包括以下步驟 (1)計算仿射變換矩陣指定目標圖像的大小,順序對連通區(qū)域進行查找區(qū)域邊
界,確定切變參數(shù)并生成切變矩陣,然后對排序的連通區(qū)域依次計算仿射變換矩陣; (2)生成目標圖像E :根據(jù)切變矩陣變換原始全幅圖像生成目標圖像E : (3)生成網(wǎng)格矩陣對目標圖像提取CLOCK邊的特征內容,初劃分網(wǎng)格,根據(jù)梯度
最大原則,尋找梯度最大點坐標并根據(jù)該坐標微調初劃分的網(wǎng)格,提取網(wǎng)格內容,根據(jù)網(wǎng)格
包含區(qū)域的明暗對比特征確定網(wǎng)格矩陣的相應位置的明暗特性,最后根據(jù)網(wǎng)格內的亮度分
布生成最終的網(wǎng)格矩陣。 而且,所述的切變參數(shù)包括圖像縮放系數(shù)、旋轉角度及切變系數(shù)。
本發(fā)明的優(yōu)點和積極效果是 1、本解碼方法包含有二維條形碼的數(shù)字圖像進行局部閾值二值化及網(wǎng)格調整算 法,加快了對二維條形碼的解碼速度,其解碼速度可以達到60次/秒以上,提高了條形碼掃 描速度。 2、本解碼方法包含有二維條形碼的數(shù)字圖像進行局部閾值二值化及網(wǎng)格調整算
法,具有良好的魯棒性,對于包含信息相同的不同數(shù)據(jù)碼流能夠保持一致的解碼結果,提高
了糾錯處理能力,解碼的誤碼率小于六個西格瑪,保證了解碼的準確性和可靠性。 3、本發(fā)明設計合理,具有解碼速度快、準確性及可靠性高等特點,提高了解碼的性
能,對二維條形碼的解碼能力不受條形碼密度、尺寸和放置方向的影響,完全可以應用于條
件較為苛刻以及對掃描速度要求較高的場合。
圖1是本發(fā)明的處理流程圖; 圖2是本發(fā)明所使用的二維條形碼采集及解碼處系統(tǒng)的連接示意圖。
具體實施例方式以下結合附圖對本發(fā)明實施例做進一步詳述 —種高性能二維條形碼解碼方法是在二維條形碼采集及解碼處系統(tǒng)上實現(xiàn)的,如 圖2所示,該二維條形碼采集及解碼處系統(tǒng)包括對所采集區(qū)域進行補光的照明系統(tǒng);能 夠手動或自動調焦的光學對焦系統(tǒng);耦合到對焦系統(tǒng)之后的有足夠分辨率的數(shù)字圖像傳感 器;同數(shù)字圖像傳感器相連的數(shù)字圖像采集通道;同數(shù)字圖像采集通道相銜接的圖像處理 系統(tǒng),在圖像處理系統(tǒng)內設有中央處理器;具有通信功能并與圖像處理系統(tǒng)相連接的數(shù)據(jù) 通訊系統(tǒng)。 高性能二維條形碼解碼方法是通過中央處理器內置的二維條形碼解碼程序實現(xiàn) 的。在中央處理器完成一些必要的初始化設置步驟后,數(shù)字圖像傳感器采集二維條形碼并 發(fā)送給本解碼程序,由本解碼程序對二維條形碼進行解碼處理。二維條形碼是由光學可讀寫符號構成,光學可讀符號定義為具有一定分布規(guī)律的、具有亮單元和暗單元的、沿兩個正
交方向分布的,被一個具有特殊的可辨特征的區(qū)域圍繞的一組亮暗變化區(qū)域。 高性能二維條形碼解碼方法,如圖1所示,包括以下步驟 1、對包含有二維條形碼的數(shù)字圖像A進行圖像下采樣處理,生成縮小的圖像B。
本步驟是對數(shù)字圖像傳感器采集包含有二維條形碼的數(shù)字圖像A進行下采樣,生 成一幅分辨率為數(shù)字圖像1/4或1/16的圖像B,保存在內存中。圖像下采樣處理的目的有 兩個一是為了減少后續(xù)圖像運算的數(shù)據(jù)量,二是提高后續(xù)處理對圖像的訪問速度。
2、對下采樣后的圖像B進行圖像增強處理,得到增強圖像C。
在本步驟中,增強圖像處理過程如下
(1)求圖像B的直方圖; (2)根據(jù)圖像B的直方圖分別求出分布概率最大的極大值和極小值;
(3)對直方圖進行拉伸處理后得到增強圖像C,即根據(jù)極大值和極小值將數(shù)字圖 像A極大值和極小值之間的區(qū)域變換后映射到整個亮度分布空間,該亮度分布空間為0 255之間。 圖像增強處理的目的是為了給后續(xù)運算提供亮度分布一致的圖像,圖像在亮度拉 伸后,更多的保留近深色區(qū)域的圖像細節(jié)。 3、對增強圖像C進行低通濾波和局部閾值二值化處理,得到黑白圖像D。
在本步驟中,低通濾波和局部閾值二值化處理過程如下 (1)低通濾波步驟采用3X3鄰域或5X5鄰域平滑濾波法對增強圖像C進行運 算處理,濾去增強圖像C中的高頻分量,保留低頻分量,生成二值化所需的比對模板。
(2)局部閾值二值化步驟遍歷整幅數(shù)字圖像A,并逐像素同對比模板上的相應像 素進行比較,差值大于一定閾值的點為亮點,小于或等于閾值的點為暗點,生成一幅只包含 黑色和白色兩種數(shù)值的的黑白圖像D。 4、對黑白圖像D進行分塊、排序并進行連通區(qū)域標記處理。
本步驟的處理過程為拷貝黑白圖像副本,在圖像副本上對暗點集合進行連通區(qū)
域標記,然后按照快速連通區(qū)域標記算法標記為獨立區(qū)域,并按照占有像素數(shù)量多少對獨
立區(qū)域進行排序,將序號分配給每個連通區(qū)域。 5、對連通區(qū)域劃分網(wǎng)格并生成網(wǎng)格矩陣。
在本步驟中,對連通區(qū)域劃分網(wǎng)格并生成網(wǎng)格矩陣包括 (1)計算仿射變換矩陣對排序的連通區(qū)域依次計算仿射變換矩陣,其具體過程
為指定一個目標圖像的大小,一般取100X100,然后順序對連通區(qū)域進行查找區(qū)域邊界,
確定圖像縮放系數(shù)、旋轉角度及切變系數(shù),生成切變矩陣,然后依次計算仿射變換矩陣; (2)生成目標圖像E :根據(jù)切變矩陣變換原始全幅圖像生成目標圖像E : (3)生成網(wǎng)格矩陣對目標圖像提取CLOCK邊的特征內容,初劃分網(wǎng)格,在網(wǎng)格附
近,根據(jù)梯度最大原則,尋找梯度最大點坐標(真正的網(wǎng)格分界線所在坐標),根據(jù)該坐標
微調初劃分的網(wǎng)格,提取網(wǎng)格內容,根據(jù)網(wǎng)格包含區(qū)域的明暗對比特征確定網(wǎng)格矩陣的相
應位置的明暗特性,最后根據(jù)網(wǎng)格內的亮度分布生成最終的網(wǎng)格矩陣。 6、根據(jù)生成的網(wǎng)格矩陣進行解碼和糾錯,輸出數(shù)字圖像A所包含的二維條形碼的
解碼值。
通過上述步驟,即可實現(xiàn)高性能二維條形碼解碼方法。 需要強調的是,本發(fā)明所述的實施例是說明性的,而不是限定性的,因此本發(fā)明并 不限于具體實施方式
中所述的實施例,凡是由本領域技術人員根據(jù)本發(fā)明的技術方案得出 的其他實施方式,同樣屬于本發(fā)明保護的范圍。
權利要求
一種高性能二維條形碼解碼方法,其特征在于包括以下步驟(1)對包含有二維條形碼的數(shù)字圖像A進行圖像下采樣處理,生成縮小的圖像B;(2)對下采樣后的圖像B進行圖像增強處理,得到增強圖像C;(3)對增強圖像C進行低通濾波和局部閾值二值化處理,得到黑白圖像D;(4)對黑白圖像D進行分塊、排序并進行連通區(qū)域標記處理;(5)對連通區(qū)域劃分網(wǎng)格并生成網(wǎng)格矩陣;(6)根據(jù)生成的網(wǎng)格矩陣進行解碼和糾錯,輸出數(shù)字圖像A所包含的二維條形碼的解碼值。
2. 根據(jù)權利要求1所述的高性能二維條形碼解碼方法,其特征在于步驟(1)所生成的圖像B是數(shù)字圖像A的1/4或1/16。
3. 根據(jù)權利要求1所述的高性能二維條形碼解碼方法,其特征在于所述的增強圖像處理包括以下步驟(1) 求圖像B的直方圖;(2) 根據(jù)圖像B的直方圖分別求出分布概率最大的極大值和極小值;(3) 對直方圖進行拉伸處理后得到增強圖像C。
4. 根據(jù)權利要求3所述的高性能二維條形碼解碼方法,其特征在于所述的拉伸處理方法是將數(shù)字圖像A極大值和極小值之間的區(qū)域變換后映射到整個亮度分布空間。
5. 根據(jù)權利要求4所述的高性能二維條形碼解碼方法,其特征在于所述整個亮度分布空間為0 255之間。
6. 根據(jù)權利要求1所述的高性能二維條形碼解碼方法,其特征在于所述的低通濾波和局部閾值二值化包括以下步驟(1) 低通濾波步驟采用3X3鄰域或5X5鄰域平滑濾波法對增強圖像C進行運算處理,濾去增強圖像c中的高頻分量,保留低頻分量,生成二值化所需的比對模板。(2) 局部閾值二值化步驟遍歷整幅數(shù)字圖像A,并逐像素同對比模板上的相應像素進行比較,差值大于一定閾值的點為亮點,小于或等于閾值的點為暗點,生成一幅只包含黑色和白色兩種數(shù)值的的黑白圖像D。
7. 根據(jù)權利要求1所述的高性能二維條形碼解碼方法,其特征在于步驟(4)所述的標記連通區(qū)域包括拷貝黑白圖像副本,在圖像副本上對暗點集合進行連通區(qū)域標記,然后按照快速連通區(qū)域標記算法標記為獨立區(qū)域,并按照占有像素數(shù)量多少對獨立區(qū)域進行排序。
8. 根據(jù)權利要求1所述的高性能二維條形碼解碼方法,其特征在于所述的對連通區(qū)域劃分網(wǎng)格并生成網(wǎng)格矩陣包括以下步驟(1) 計算仿射變換矩陣指定目標圖像的大小,順序對連通區(qū)域進行查找區(qū)域邊界,確定切變參數(shù)并生成切變矩陣,然后對排序的連通區(qū)域依次計算仿射變換矩陣;(2) 生成目標圖像E :根據(jù)切變矩陣變換原始全幅圖像生成目標圖像E :(3) 生成網(wǎng)格矩陣對目標圖像提取CLOCK邊的特征內容,初劃分網(wǎng)格,根據(jù)梯度最大原則,尋找梯度最大點坐標并根據(jù)該坐標微調初劃分的網(wǎng)格,提取網(wǎng)格內容,根據(jù)網(wǎng)格包含區(qū)域的明暗對比特征確定網(wǎng)格矩陣的相應位置的明暗特性,最后根據(jù)網(wǎng)格內的亮度分布生成最終的網(wǎng)格矩陣。
9.根據(jù)權利要求1所述的高性能二維條形碼解碼方法,其特征在于所述的切變參數(shù)包括圖像縮放系數(shù)、旋轉角度及切變系數(shù)。
全文摘要
本發(fā)明涉及一種高性能二維條形碼解碼方法,包括以下步驟(1)對包含有二維條形碼的數(shù)字圖像A進行圖像下采樣處理,生成縮小的圖像B;(2)對下采樣后的圖像B進行圖像增強處理,得到增強圖像C;(3)對增強圖像C進行低通濾波和局部閾值二值化處理,得到黑白圖像D;(4)對黑白圖像D進行分塊、排序并進行連通區(qū)域標記處理;(5)對連通區(qū)域劃分網(wǎng)格并生成網(wǎng)格矩陣;(6)根據(jù)生成的網(wǎng)格矩陣進行解碼和糾錯,輸出數(shù)字圖像A所包含的二維條形碼的解碼值。本發(fā)明設計合理,具有解碼速度快、準確性及可靠性高等特點,提高了解碼的性能,對二維條形碼的解碼能力不受條形碼密度、尺寸和放置方向的影響,完全可以應用于條件較為苛刻以及對掃描速度要求較高的場合。
文檔編號G06K9/00GK101710385SQ20091024512
公開日2010年5月19日 申請日期2009年12月28日 優(yōu)先權日2009年12月28日
發(fā)明者李丹, 李春鵬 申請人:天津優(yōu)尼萊博泰克電子科技發(fā)展有限公司