陳超, 徐和根(同濟大學 電子與信息工程學院, 上海 201800)
運動圖像中QR碼分割與識別
陳超, 徐和根
(同濟大學 電子與信息工程學院, 上海 201800)
針對QR(Quick Response)碼解碼,提出了一種在運動視頻圖像中進行有特定邊框的QR碼分割與識別的方法。先通過訓練C4.5決策樹實現(xiàn)對圖像中QR碼ROI Region of Interest)的自動提取和圖像分割,再經(jīng)自動QR碼圖像畸變校正后,對QR碼進行解碼。驗證結(jié)果表明,該方法能有效地增強解碼器對環(huán)境、背景及圖形畸變的魯棒性,提高了QR碼的解碼正確率。
QR碼; C4.5決策樹; 畸變校正; ROI分割
在復雜背景環(huán)境下的運動視頻圖像中進行QR(Quick Response)碼檢測解碼時,由于受環(huán)境光照變化、運動模糊、圖像畸變及QR碼在圖片中的大小和位置不確定等因素的影響,往往會出現(xiàn)QR碼識別率較低的問題。
針對光照變化的問題,目前普遍采用的方法是用白平衡進行預處理[1,2];對于圖像畸變需要進行的畸變校正中使用較多的方法是Hough直線檢測[3,4]和角點檢測[5,6]算法;對于ROI的提取方法有基于HSV顏色空間[7]或者RGB顏色空間的彩色圖像分割、基于聚類算法的圖像分割[8]、基于顏色直方圖的圖像分割[9]。采用Hough變換和角點檢測的算法對圖像進行校正的時候在圖片背景單一,并且QR碼占整張圖片比例較大的情形下可以取得比較好的效果。但是在本文的應用場景中因為彩色圖片背景的復雜,以及QR碼所占圖片的比例比較小且位置不定的情況下使用Hough直線檢測和角點檢測取得的效果都不是很好,不能很好的定位出QR碼的關鍵點,從而使得校正結(jié)果不理想。而在ROI (Region of Interest)分割的時候由于光照的變化,使用基于HSV或RGB顏色空間的圖像分割的效果都不是很好,因為使用這些方法對圖像進行分割的時候都要對各個顏色通道進行劃分閾值的選取,而閾值的選取只能選取固定值,很難做到自適應。使用顏色直方圖進行圖像分割時也涉及到了分割閾值的選取問題,在光線不定且圖像背景復雜的情況下也不能很好的對QR碼進行分割。在有些圖片中有可能出現(xiàn)QR碼所占圖片較小的情況,且在背景中會出現(xiàn)較接近藍色的像素,這會干擾使用聚類算法對圖像進行分割。
針對環(huán)境光照變化、圖像畸變及圖片中QR碼大小和位置不確定等問題,本文提出了一種基于C4.5決策樹[10-11]ROI自動提取及基于QR自身定標點的畸變自動校正方法。
1.1 有特定顏色邊框的QR碼ROI分割
為將有特定顏色邊框的QR碼ROI提取出來,本文采用基于C4.5決策樹算法的來實現(xiàn)顏色的自動提取和QR碼ROI的自動分割,以增強對環(huán)境變化的魯棒性。其過程如圖1所示。
圖1 使用C4.5決策樹提取ROI過程
構(gòu)建決策樹前,需要采集訓練樣本,為方便起見,采用了圖2所示模板,用于訓練識別某個特定顏色,如圖2所示。
圖2 藍色訓練模板
圖2模板選取藍色和非藍色作為訓練色,理論上該方法也同樣適用于其他顏色。訓練樣本圖片的色彩空間采用RGB顏色空間。
將此訓練模板放置于不同光照和背景的環(huán)境中,利用攝像頭從各個角度采集訓練樣本圖片。樣本圖片經(jīng)人工標記出藍色區(qū)域和非藍色區(qū)域(藍色標記為1,非藍色標記為0) 。
為降低計算量,在數(shù)據(jù)用于訓練決策樹之前,可對樣本像素進行抽樣和離散化處理[12-14]。另外,由于噪聲等因素的干擾,可能會導致圖像中具有相同RGB分量的像素標記值卻不同的矛盾,因此需要對同一圖片的數(shù)據(jù)進行前剪枝預處理[15-16]。其方法是先分別統(tǒng)計矛盾數(shù)據(jù)出現(xiàn)的概率,根據(jù)少數(shù)服從多數(shù)的原則,剔除概率出現(xiàn)少的矛盾數(shù)據(jù)。
預處理后的數(shù)據(jù)輸入C4.5決策樹算法進行訓練。訓練步驟如下:
a) 對每個樣本中的各像素,對屬性(R、G、B)計算各自信息增益率;
b) 排序增益率,選取最大值作為該級分支屬性;
c) 生成該級分支樹;
d) 對次級樣本中的各像素,計算剩下的屬性的各自信息增益率;
e) 排序增益率,選取最大值作為下一級分支屬性;
f) 如此反復,直至所有屬性全部使用完畢(即為樹葉);
g) 進行后剪枝[17],形成決策樹。
本文在不同環(huán)境下采集了200個樣本圖片參與決策樹訓練,生成的決策樹即可用于待檢樣本的顏色提取。
為了驗證基于C4.5決策樹的顏色提取效果,本文使用基于HSV顏色空間閾值的顏色提取作為實驗對照組。之所以選用HSV顏色空間是因為HSV顏色空間更符合人眼的感知特性,另一方面HSV是均勻的顏色空間更加適合彩色圖像的顏色提取[7]。
分別使用HSV顏色空間進行顏色提取(S通道的固定閾值為70-255,H的固定閾值為50-180,V不設閾值)和使用C4.5進行顏色提取的效果對比,如圖3所示。
從圖3中可以看出,對于各種不同的光照條件以及不同的背景情況, C4.5決策樹法比HSV顏色空間法擁有更好的自適應性和魯棒性。
利用C4.5決策樹對QR碼ROI的提取過程,如圖4表示。
原圖HSV濾波C4.5濾波樣本1樣本2樣本3
圖3 兩種顏色濾波效果對比圖
(c)確定ROI(d)ROI區(qū)域提取并歸一化
圖4 用C4.5決策樹進行QR碼ROI
圖4(a)是待檢樣本,圖4(b)為圖4(a)在使用決策樹后得到的濾波效果。在此基礎上使用連通域檢測的方法就可以確定QR碼在整個圖片中的ROI(如圖4(c) 所示) 。進而提取出QR碼并縮放到設定的大小(本文統(tǒng)一將圖片高度縮放為256個像素,寬度等比縮放)如圖4(d)所示。
1.2 QR碼畸變的自動校正
校正前,需要先確定QR碼的方位。本文采用的方法是,先找出QR碼的3個定標點的位置,然后根據(jù)這3個定標點計算出第四個點的辦法來定位QR碼。
由于QR碼中有3個圖形分別處在QR碼的3個角上,如圖5所示。
(a)定標點(b)QR碼示意圖
圖5 QR碼位置探測圖形示意圖
每個位置探測圖形由黑色、白色、黑色、白色、黑色的次序構(gòu)成(如圖5(a)所示),各顏色的相對寬度的比例為1∶1∶3∶1∶1[18]。通過對QR碼圖像的行和列進行像素點統(tǒng)計,記錄滿足條件的點,最后可以確定QR碼的3個位置探測圖形,從而計算出每個位置探測圖形的中心,即3個定標點(圖5(b)中的A,B,C點)[18]。
以A為掃描起點,向上逐點掃描。根據(jù)位置探測圖形的特征,當檢測到掃描點的像素值變化軌跡為深淺深淺時,根據(jù)QR碼的四周都是空白區(qū),可以確定此時已掃描到QR碼的上邊界。再向左依此檢測像素點變化可以得到圖形的左邊界,依此可以確定左上角頂點a,同理可以依此得到左下角頂點c和右上角頂點b。根據(jù)左下角頂點和右上角頂點可以定位出右下角頂點坐標,以b為坐標原點,以直線bc為起始位置不斷的改變直線的斜率直到直線上的像素由較多的深色跳變?yōu)閹缀跞康臏\色就可以確定bd邊,同理可以確定cd邊,如圖6所示。
(a)原圖(b)校正后的圖形
圖6 畸變校正示意圖
從而確定它們的交點d,如圖6(b)所示。
校正的依據(jù)就是通過坐標變換,將畸變的QR碼恢復成正方形的形狀??梢岳媒鉀Q透視變形的“連接點”法來對圖形進行校正。校正前后坐標對應關系為[5]式(1)。
(1)
其中,(x,y)為畸變圖形的坐標,(u,v)為校正后圖形的坐標。式(1)中含有8個未知參數(shù)。通過上述步驟獲得的畸變QR碼的4個頂點的坐標a1(x0,y0),b1(x1,y1),c1(x2,y2),d1(x3,y3),以及期望校正后的4個相應點坐標a2(u0,v0),b2(u1,v1),c2(u2,v2),d2(u3,v3),可利用這4對已知的定標點坐標來求解這些未知參數(shù)(如圖6所示),其矩陣的形式如[5]式(2)。
(2)
(3)
由式(1)可得到式(3),通過式(3)對原圖與校正后圖像各像素的坐標進行一一映射,從而得到校正后的圖片,如圖7所示。
(a)校正前(b)校正后
圖7 畸變校正
本文測試的場景是在一輛20多厘米高的AGV小車上裝有一個斜向下的攝像頭,實現(xiàn)的功能是使小車在不同環(huán)境條件下及隨機行駛過程中準確找到并解碼出地面上的帶有藍色外框的二維碼。實驗環(huán)境的軟硬件參數(shù),如表1所示。
表1 實驗環(huán)境的相關參數(shù)
為了驗證本文提出的圖像預處理的方法是否對于QR碼的解碼率有提高作用。本文隨機從小車獲取的測試場景中提取了150幅帶QR碼的圖片進行解碼實驗,解碼流程圖如圖8所示。
圖8 總體流程圖
解碼直接使用Google 的C++版zxing算法。
圖片預處理分成5種不同的情況:
第一種情況是不使用其他任何圖像預處理直接解碼;
第二種先使用了白平衡然后采用基于HSV顏色閾值的ROI分割,再對分割出來的圖像進行解碼;
第三種先采用了基于C4.5的ROI分割,在對圖像進行解碼;
第四種,在第二種預處理的基礎上再進行畸變校正,然后在進行解碼;
第五種,在第三種預處理的基礎上再進行畸變校正,然后在進行解碼。
這5種不同方法分別解碼150幅圖片的結(jié)果,如表2所示。
表3 各種預處理方法實驗結(jié)果
從表2實驗結(jié)果中可以看出使用了圖像預處理后圖像的解碼率是有了比較大的提高,在沒有使用圖像預處理是解碼率是比較低的,對環(huán)境的魯棒性差。單獨使用ROI提取和畸變校正都對提高解碼率有幫助,特別是使用了ROI后解碼率的提高比較大。而同時使用ROI和畸變校正后使得解碼率有了更大的提高。此外,對于圖片中有多個QR碼的情況,也可以采取這種方法將二維碼自動逐個的分割出來,再分別進行自動校正和解碼。
但是,使用C4.5算法提取ROI的圖片預處理過程時間明顯高于HSV。
本文提出了一種在運動視頻圖像中進行QR碼分割與識別的方法,先通過訓練C4.5決策樹實現(xiàn)對圖像中具有特定顏色邊框的QR碼ROI的自動提取和圖像分割,然后通過自動畸變校正后進行解碼。實驗證明:結(jié)合這些方法,有效地增強理解碼器對環(huán)境、背景及圖形畸變的魯棒性,提高了QR碼的解碼正確率。
本方法的不足之處包括:
1. QR碼需要添加特定顏色的邊框,以便用C4.5決策樹進行ROI提取和圖像分割。
2. 使用決策樹對圖像進行顏色識別時,訓練樣本過少會使形成的決策樹枝葉稀疏,樣本過多則會出現(xiàn)過度擬合,從而導致顏色漏檢或誤檢。
3. 構(gòu)建決策樹時沒有使用光源強度和圖片亮度等信息,有造成誤剪枝的可能。
4. 使用決策樹進行ROI分割時,預處理的時間過長,算法以及算法的實現(xiàn)代碼有待優(yōu)化。
5. 在畸變校正的處理過程中雖然絕大多數(shù)的情況下都可以找到三個定標點,但在實驗過程中也出現(xiàn)定標點尋找失敗的情況,從而導致無法自動校正畸變。
[1] 韓強, 戎蒙恬, 劉文江. 圖像信號處理器中的自動白平衡的算法研究[J]. 信息技術(shù),2009,11:55-59.
[2] 史榕. 自動白平衡算法的研究與實現(xiàn)[J]. 信息技術(shù),2012,3:85-89.
[3] 王景中,賀磊.一種快速有效的QR碼定位方法[J].計算機技術(shù)與發(fā)展,2015,25(8):84-90.
[4] 衛(wèi)晉偉,戴曙光,穆平安.基于形態(tài)學和Hough變換的QR碼校正和定位算法[J].電腦與信息技術(shù),2010,18(6):32-36.
[5] 黃珂,薛月菊,陳瑤,陳漢鳴,李鴻生. QR碼圖像幾何校正算法的研究[J]. 計算機工程與應用,2014,50(20):192-197.
[6] 龔平,劉相濱,周鵬.一種改進的Harris角點檢測算法[J].計算機工程與應用,2010,46(11):173-175.
[7] 張國權(quán),李戰(zhàn)明,李向偉,魏偉一. HSV空間中彩色圖像分割研究[J].計算機工程與應用,2010,46(26):179-181.
[8] 林開顏,徐立鴻,吳軍輝. 快速模糊C均值聚類彩色圖像分割方法[J]. 中國圖像圖學報, 2004,9(2):159-164.
[9] 陳坤,馬燕,李順寶. 基于直方圖和模糊C均值的彩色圖像分割方法[J]. 計算機應用與軟件,2012, 29(4):256-260.
[10] Kusrini, Hartati S, Wardoyo R, Harjoko A. Efficient C4.5 [J]. IEEE Transactions on Knowledge and Data Engineering, 2002, 14(2): 438-444.
[11] Thakur D, Markandaiah N, Raj D S. Reoptimization of ID3 and C4.5 decision tree[C]. 2010 International Conference on Computer and Communication Technology (ICCCT 2010), 2010, 448-450.
[12] 劉耀南. C4.5算法的分析和應用[J]. 東莞理工學院學報,2012,19(5):47-52.
[13] 李孝偉,陳福才,李邵梅. 基于分類規(guī)則的C4.5決策樹改進算法[J]. 計算機工程與設計,2013,34(12):4321-4326.
[14] 苗煜飛,張宵宏. 決策樹C4.5算法的優(yōu)化與應用[J]. 計算機工程與應用,2015,51(13):255-259.
[15] 魏紅寧. 決策樹剪枝方法的比較[J]. 西南交通大學學報,2005,40(1):44-48.
[16] Chen Fucai, Li Xiaowei, Liu Lixiong. Improved C4.5 decision tree algorithm based on sample selection [C]. Proceedings of 2013 IEEE 4th International Conference on Software Engineering and Service Science(ICSESS 2013), 2013,779-782.
[17] Zhang Wenchao, Li Yafen. “A Post-Pruning Decision Tree Algorithm Based on Bayesian”[C].2013 International Conference on Computational and Information Sciences, 2013, 988-991.
[18] 肖翔. QR碼圖像的校正與定位方法研究[J]. 計算機科學,2007,34(11):217-219.
SegmentationandRecognitionofQRCodeinMovingImage
Chen Chao, Xu Hegen
(College of Electronics and Information Engineering, Tongji University, Shanghai 201800)
A segmentation and decoding method for QR (Quick Response) code with a specific color border from a moving image is proposed. First, the ROI (Region of Interest)of QR code is extracted and segmented from the image using the C4.5 decision tree . Then the QR code is decoded after automatic distortion correction of the ROI image. Experimental results show that this method can effectively increase the robustness and the decoding accuracy of decoder for environmental variation and image distortion.
QR code; C4.5 decision tree; Distortion correction; Segmentation of ROI
TP311
A
2017.03.27)
國家自然科學基金(61273284)。
陳超(1991-),男,碩士研究生,研究方向:自動檢測與機器視覺。
徐和根(1972-),男,博士,副教授,研究方向:自動檢測與機器視覺。
1007-757X(2017)10-0001-04