朱婉儀, 穆平安, 戴曙光(上海理工大學, 上海 200093)
檢測車燈總成裝配的完整性是車燈質量檢測的一個重要指標[1],目前已有文獻提出通過圖像處理的方法實現車燈零件的檢測,但對于車燈中透明部件的顏色、形狀特征都較為不明顯的情況,一般的圖像檢測算法難以做到較高的準確率和實時性。車燈中的透明部件顏色透明,形狀多樣,多用于車燈的內燈殼部分,具有保護燈具內部部件、調節(jié)燈光以及外觀造型等作用。本文運用圖像增強技術對車燈圖像進行預處理,并基于灰度的歸一化互相關(normalized cross-correlation,NCC)匹配與金字塔結合的算法對這類透明車燈部件的安裝情況進行檢測,使透明部件的檢測準確率和實時性大大提高。此外這種方法還可用于車燈的其他部件缺失檢測,使車燈的總成檢測具有更高的可靠性和實時性。
車燈圖像的采集環(huán)境,尤其是光照條件,會對獲取的圖像質量產生很大的影響,致使圖像整體的灰度層次不豐富,圖像的細節(jié)信息不夠清晰[2]。本文采用的直方圖均衡化對圖像的光照補償十分有效。通過均衡化處理可以將圖像的灰度值均勻地分布在整個灰度級范圍,實現圖像灰度的對比度增強效果[3]。
如圖1~圖4為不同光照條件下車燈部件圖像和經過直方圖均衡化處理的圖像結果。
圖1 正常燈光下圖像及對應的直方圖
圖2 正常燈光下均衡化的圖像及對應的直方圖
圖3 較暗燈光下的圖像及對應的直方圖
圖4 較暗燈光下均衡化的圖像及對應的直方圖
從圖中可以看出經過均衡化處理的直方圖像素值分布更均勻,均衡化后的圖像比原圖亮度有所增強,由于光照強度對圖像產生的影響明顯地減小,其中車燈的透明部件在經過處理后灰度對比度更明顯。
經過直方圖均衡化的車燈圖像雖然在一定程度上提高了對比度,但對于部分零件的邊緣細節(jié)信息還不夠突出。銳化濾波的增強處理則可以增強圖像的高頻分量,減弱圖像的低頻信息,從而增強圖像的灰度反差,使圖像細節(jié)突出或者增強被模糊化的部分[4]。
梯度銳化是采用一階微分的算法來體現圖像灰度值的變化率,從而實現圖像的增強[5]。設圖像的二元函數f(x,y)在(x,y)的梯度表達式定義為:
(1)
≈|Gx|+|Gy|
(2)
(3)
圖5 Prewitt梯度算子模板
在計算梯度時,本文采用了Prewitt算子對圖像進行銳化,它在提取邊緣信息時對噪聲也有一定的平滑作用[6]。圖5為使用的Prewitt計算模板,將經過銳化處理后的圖像與原圖疊加,可使車燈零件的邊緣細節(jié)更突出。
圖6 銳化處理后的車燈圖像
圖6為直方圖均衡化基礎上再經過銳化處理后的車燈圖像,圖像的視覺效果增強,零件的邊緣更清晰,灰度對比度更大,可觀察到透明部件的形狀輪廓更具體,這樣處理更有利于圖像匹配結果的準確性。
由于透明部件顏色信息較少,安裝在車燈上后,其在圖像上的顏色和形狀特征容易受周圍的部件影響,圖7、圖8分別為安裝了和未安裝透明部件的車燈圖像及其安裝位置的局部放大圖,可以看出其主要區(qū)別就是安裝了透明部件的部位灰度值偏亮,沒有安裝透明部件的部位灰度值偏暗,由此分析采用以灰度信息為基礎的算法進行相似度匹配可以做到較高的穩(wěn)定性。
圖7 安裝了透明部件的車燈圖像
圖8 未安裝透明部件的車燈圖像
歸一化互相關(NCC)函數匹配算法就是以灰度信息為基礎的圖像匹配,通過利用兩個圖像灰度值的相關函數,采用相似性算法計算出模板圖像與待檢測圖像的對應關系,從而判斷圖像的匹配程度,找到匹配的位置[7]。互相關函數NC(x,y)的定義如下:
(4)
式中:待匹配圖像I的像素大小為M×N;模板T的像素大小為m×n。從圖像I中任意選取一塊像素大小為m×n的子圖Ix,y,Ix,y的左上角像點在圖像I中的坐標為(x,y),可知坐標范圍為0≤x≤M-m,0≤y≤N-n。
將其再進行歸一化,則公式轉換如下:
(5)
由以上計算結果可知,NC(x,y)值越大,則表示檢測圖像位置的匹配度越高,與模板圖像越接近[8]。
采用NCC算法匹配準確性高,但計算量比較大,為了提高匹配速度,采用圖像金字塔搜索進行圖像分層,大大減小了計算量[9]。
在金字塔算法中,通過對原始圖像分辨率的處理分解為一個多尺度的新圖像序列。序列中的金字塔隨著塔層數的增高,圖像的大小和分辨率都降低。在相鄰兩層之間,分辨率一般相差2倍,上一層圖像的大小是下一層的1/4[10]。
高斯金字塔是由原圖像經過連續(xù)高斯濾波和二次采樣生成的一系列不同分辨率的圖像組成。圖9是經過高斯金字塔處理的車燈圖像4層搜索結構,其基本構建步驟如下:
圖9 高斯金字塔分層圖像
(1)將待處理的原始圖像作為金字塔的最下面一層用G1表示;
(2)將第1層圖像G1通過高斯低通濾波器進行濾波,再對濾波后的圖像進行隔行隔列的降采樣得到第一層圖像G2,很明顯此時G2的大小只有G1的1/4;
(3)繼續(xù)通過上述方法進行多尺度分解,可得到圖像G1,G2,…,Gn。對于第k層高斯金字塔圖像位于(x,y)的計算存在如下的遞推公式:
(6)
式中:w(m,n)=h(m)·h(n)為5×5具有低通特性的窗口函數,h是高斯密度分布函數(滿足約束條件:歸一化性、對稱性、奇偶項等貢獻性[11,12])。
以某車燈部件中的透明部件檢測為例,采用上述方法對車燈圖像進行匹配檢測。車燈圖像實際大小為656像素×494像素,只截取部分圖像進行說明。車燈圖像及透明部件模板提取如圖10所示,圖10(a)為標準車燈圖像,圖10(b)為從中提取透明部件的原始模板,其視覺效果不明顯,即使人工檢測時也容易漏檢。
由于原始透明部件尺寸較大,若將透明部件整體提取,不便于處理,因此提取透明部件灰度特征比較明顯的一部分作為模板,這樣處理既能夠加快匹配速度,也不影響匹配精度。模板尺寸為60像素×36像素。
圖10 車燈圖像及透明部件模板提取
透明部件周圍鑲嵌有其他的銀色和黑色部件,導致其灰度信息易受周圍零部件影響,不利于匹配。針對這個模板,先經過均衡化處理增強灰度對比度,再通過銳化濾波使模板輪廓灰度特征更加明顯,提高模板匹配的穩(wěn)定性,見圖11。
圖11 模板圖像處理過程
匹配算法實現的主要步驟如下:
(1)讀入模板圖像T和待檢測圖像I,對模板圖像和待檢測的車燈圖像分別進行直方圖均衡化和銳化濾波處理;
(2)設置金字塔層數為4,初始匹配窗口尺寸為15像素×9像素,匹配的相似度閾值設為0.75,基于歸一化互相關函數(NCC)進行分層匹配。
(3)找出相似度值最大時圖像對應的位置,并記為匹配區(qū)域。先從高層開始搜索,得到模板的粗匹配,再不斷縮小范圍,逐漸提高圖像分辨率進行精確匹配,最終找到搜索目標。
圖12為待檢測的車燈圖像,經過均衡化及銳化處理后,采用圖11處理后的透明部件模板進行匹配檢測,最后匹配結果如圖13所示。
圖12 待檢測車燈圖像
為了驗證本文算法的有效性,實驗將基于金字塔的歸一化互相關匹配方法分別與基于金字塔的圖像邊緣梯度特征匹配、K-means聚類分析算法和不變矩匹配進行對比。
實驗將基于金字塔的灰度匹配(歸一化匹配)和基于金字塔的特征匹配(邊緣梯度特征匹配)算法進行了對比。兩種算法的匹配速度和相似度結果如表1、圖14及圖15所示。
圖13 匹配結果圖
表1 基于金字塔的兩種方法匹配數據對比
圖14 兩種算法的匹配相似度
圖15 兩種算法的匹配時間
在匹配準確率上,從表1和圖14可以看出10個樣本中,采用基于歸一化互相關的金字塔匹配結果都正確,而基于邊緣梯度特征的金字塔匹配出現一個誤檢;在匹配速度上,從表1和圖15可以計算出,基于金字塔的歸一化互相關匹配的平均時間為49.6 ms,基于金字塔的邊緣梯度特征匹配的平均時間為152.6 ms,約為前者的3倍;綜上分析可知,采用本文的方法對車燈的透明部件檢測的匹配準確率更高,匹配速度更快。
實驗通過對車燈圖像進行K-means聚類分析來實現對透明部件的檢測。如圖16(a)為車燈局部部件原圖,設置分類數K為4,原圖均衡化處理后再進行聚類檢測。圖16(b)為分析結果,透明部件為白色區(qū)域,整個目標與旁邊的銀色部件以及黑色背景分開,邊緣清晰,檢測效果較好。
圖16 透明部件及聚類分析效果圖
實驗還采用文獻[2]提出的不變矩匹配對車燈透明部件進行檢測。將車燈圖像進行均衡化處理,再計算圖像的7個不變矩,由于不變矩對于平移、旋轉具有不變性,其更適用于具有旋轉特性的零件。如表2為本文算法和不變矩匹配在車燈角度變化時的匹配相似度比較,可以看出,當圖像旋轉時,不變矩匹配具有較高的匹配相似度,本文算法在零件旋轉角度較小時能保持較高的相似度,較大時相似度降低,但由于車燈的零部件在裝配時并不會產生太大的角度誤差,因此對算法的旋轉不變性沒有要求。
表2 角度變化時兩種算法的匹配相似度
如表3所示,為以上4種算法在車燈透明部件檢測的多次實驗結果數據,其中基于K-means聚類分析的成功檢測率最高,但花費的檢測時間也較長;基于金字塔的邊緣梯度特征匹配在速度和檢測效果上都差于基于金字塔的歸一化互相關匹配;而不變矩匹配雖然在圖像旋轉時有較好的檢測效果,但準確率和匹配速度比其他3種方法都低;綜合檢測準確率和速度要求,本研究采用的方法能夠較好地檢測出車燈透明部件的安裝情況,匹配準確度較高且檢測速度最快。
表3 4種算法的成功檢測率和檢測時間對比
針對車燈總成中一類透明部件的特性,提出了基于歸一化互相關(NCC)匹配算法對車燈透明部件實現圖像匹配,同時又結合了金字塔分層算法彌補歸一化互相關匹配帶來計算量大的不足,并在實現圖像匹配之前對圖像進行直方圖均衡化和銳化濾波從而增強圖像成分的對比度,使匹配準確度以及穩(wěn)定性提高。實驗結果表明:本文算法的成功檢測率可達到約95%,檢測時間約為50 ms,可以較高的準確率和速度實現車燈透明部件的檢測。通過對算法參數的設置能夠推廣應用于其他車燈部件裝配的檢測。
[參考文獻]
[1] 張彩艷,穆平安,戴曙光,等.基于3D直方圖與爬山法的K-means車燈零件檢測算法[J].計算機應用與軟件,2013,30(4):40-43.
[2] 夏穎,戴曙光,蘇添發(fā).基于不變矩匹配的車燈零件檢測[C]// 2007'儀表,自動化及先進集成技術大會論文集(二).2007.
[3] 梁曉輝,游志勝.自適應的彩色圖像光照補償新方法[J].光電工程,2006,33(2):94-97.
[4] 游福成.數字圖像處理[M].北京:電子工業(yè)出版社,2011.
[5] 朱奇光,張興家,陳衛(wèi)東,等.基于顏色矩的改進尺度不變特征變換的移動機器人定位算法[J].計量學報,2016,37(2):118-122.
[6] 阮秋琦.數字圖像處理[M].北京:電子工業(yè)出版社,2005.
[7] Li Y,Liu Q,Jing L,etal.A genetic-optimized multi-angle normalized cross correlation SIFT for automatic remote sensing registration[C]// Geoscience and Remote Sensing Symposium,2016.
[8] 謝維達,周宇恒,寇若嵐.一種改進的快速歸一化互相關算法[J].同濟大學學報(自然科學版),2011,39(8):1233-1237.
[9] 張桂南,劉志剛,韓燁,等.接觸網棒式絕緣子故障檢測的快速模糊匹配方法[J].鐵道學報,2013,35(5):27-33.
[10] Li Y,Wang R,Cui Z,etal.Spatial Pyramid Covariance based Compact Video Code for Robust Face Retrieval in TV-series[J].IEEETransactionsonImageProcessing, 2016,25(12):5905-5919.
[11] 黃蕾.圖像邊緣特征提取算法的分析與研究[D].合肥:安徽大學,2015.
[12] 劉源泂,孔建益,徐福軍,等.基于圖像金字塔的鋼板表面深度信息提取方法[J].計量學報,2015,36(4):356-359.