董大衛,方宇,陳國棟,楊皓,周志峰
(1.201620 上海市 上海工程技術大學 機械與汽車工程學院;2.215000 江蘇省 蘇州市 蘇州大學 機電工程學院)
隨著我國汽車工業的快速發展,汽車生產各個環節的檢測顯得尤為重要[1-3]。其中,車身表面縫隙面差的尺寸是評價車身覆蓋件匹配質量的重要參數。車身覆蓋件大多由沖壓制成,經沖壓拉伸后,覆蓋件尺寸難免存在誤差[4]。在裝配時,如果覆蓋件尺寸誤差過大會導致覆蓋件之間存在較大的間隙和面差,影響整車的外觀、密封、防雨等性能。因此,需要在汽車出廠之前對覆蓋件之間的間隙與面差進行尺寸檢測,以保證汽車的裝配質量。
汽車的四門兩蓋處的縫隙是汽車裝配質量的重要體現[5]。為了完成良好的互換功能,汽車的四門兩蓋要與周圍邊緣保持適當的匹配縫隙面差以保證外觀圓滑[6]。整個車身的覆蓋件的縫隙主要有以下部分組成:發動機引擎蓋(發動機艙總成及周圍邊緣)、左右前后車門(前后車門與側圍及周圍邊緣)、行李箱蓋(后背門總成及周圍邊緣)。
傳統的汽車表面縫隙尺寸檢測方式主要采用塞尺等機械式量具。塞尺檢測精度可達0.1 mm,但是在測量過程中,塞尺會劃傷車身表面,并且測量結果無法實時處理。除此之外,還可以通過計算機視覺、電感式檢測工具、激光檢測工具進行檢測[7-9]。陳曉博利用雙目相機對縫隙進行特征匹配并三維重建,但是傳統匹配方法匹配效果不佳,檢測結果相比實際尺寸值有一定的差距。電感式檢測工具可以快速放置,易于重復使用。相比傳統的機械式檢測方法,該方法不拘泥于被測形貌,大大提升了檢測精度與效率。激光檢測工具效率高、精度高、適應性強,在國外使用比較廣泛。電感式檢測和激光檢測為非接觸式檢測,這就避免在檢測過程中劃傷汽車表面。但是電感式檢測工具、激光檢測工具價格昂貴,檢測成本和維修費用較高,對于國內主機廠來說是沉重的負擔。
為了解決上述問題,本文在陳曉博研究的基礎上提出一種利用最小外接矩形檢測縫隙面差的新方法,通過最小外接矩形獲取縫隙上的特征點并進行匹配,提高匹配的精度與效率,為后續的三維重建奠定基礎,從而尋求一種理想的檢測方案。
如圖1 所示,設左相機坐標系與世界坐標系重合,為owxwywzw,圖像坐標系為OlXlYl,焦距為fl;右相機坐標系為orxryrzr,圖像坐標系為OrXrYr,焦距為fr。汽車縫隙上一點P 在兩成像平面上的投影分別為Pl,Pr,它們的齊次坐標分別為(xl,yl,1)T,(xr,yr,1)T。點P 在左右相機坐標系中的坐標分別為(Xw,Yw,Zw)T,(Xr,Yr,Zr)T。

圖1 汽車表面縫隙三維重建原理圖Fig.1 Schematic diagram of 3D reconstruction of automobile surface gap
由此可以獲得圖像坐標系與相機坐標系之間的轉換關系

相機坐標系與世界坐標系的轉換關系為

由此可以推導出汽車縫隙上一點P 在空間坐標系下的坐標

由式(3)可得,在標定的基礎上,根據左右相機的焦距fl,fr以及空間點在左右相機圖像坐標系下的坐標就可以求得縫隙空間點的三維坐標,進而實現汽車表面尺寸的測量。
首先對雙目相機進行標定,獲取內外參數。對圖像進行預處理得到縫隙輪廓的二值圖像。繪制縫隙的最小外接矩形。以最小外接矩形的4 個頂點以及2 條長邊的中點作為匹配的特征點,進行固定點匹配,并通過兩幅圖像對應關系逆向求取空間點的三維坐標,實現車身縫隙的尺寸測量。與機械式的檢測方法相比,此方法為非接觸式檢測,從而避免劃傷汽車表面。并且雙目相機的價格相較激光檢測工具較低,可以滿足廠家控制成本的需求。整體流程如圖2 所示。

圖2 縫隙檢測流程圖Fig.2 Flow chart of gap detection
對于計算機視覺來說,相機標定是基本的步驟,由標定得到的雙目相機的內外參數極大地影響著之后的三維重建準確性。本文采用張正友標定法,這是一種介于傳統標定方法和自標定方法之間的簡易標定法。
該方法的基本步驟如下:打印一張棋盤方格圖貼在一個平面上,然后從不同的角度拍攝最少3 張圖像,檢測出每幅圖像中的特征點,由檢測到的特征點可以計算出每幅圖像的平面投影矩陣,最后確定相機的內外參數。
使用雙目相機采集汽車車身縫隙的圖像,并對其進行畸變校正,將其作為系統預處理的輸入。預處理方法包括灰度化、圖像平滑以及二值化等。
3.2.1 圖像灰度化
本文使用的是彩色雙目相機,其以RGB 數據來表示圖像的顏色。彩色圖像包含的信息較多,直接進行圖像處理會極大地增加計算量,因此需要對彩色圖像進行灰度化,從而減少計算量。本文采用加權平均值灰度化方法,此方法既可以較好地保留圖像細節部分,又可以避免平均值法灰度化以及最大值灰度化法帶來的圖像失真問題。這樣既達到了灰度化目的,又為接下來的輪廓提取提供了有利條件。該方法的公式為

3.2.2 圖像濾波
圖像濾波作用是去除圖像采集過程中產生的噪聲,保留了原始圖像形狀的輪廓以及細節,改善圖像質量,為后續的圖像分割以及特征點提取提供便利。本文采用中值濾波對圖像進行平滑,獲得高質量圖像。
3.2.3 邊緣檢測
邊緣檢測是利用圖像的特性,將圖像中感興趣區域與其他區域分割開來。本文采用閾值分割進行邊緣檢測。其原理是用一個或幾個閾值將圖像的灰度級分為幾個部分,屬于同一部分的像素被視為同一個物體。
閾值分割算法通常設置一個臨界值T,將圖像的像素分為2 類,如下:

使用傳統特征匹配算法會包含一些錯誤的匹配點對,這些錯誤的匹配點對會在三維重建中造成錯誤的三維點,本文利用最小外接矩形來提取特征點。
最小外接矩形通常指區域所有外接矩形中面積最小的一個,它包含各個邊界的頂點,能夠提高縫隙特征匹配精度,降低誤匹配率。本文采用旋轉卡殼法來尋找縫隙輪廓的最小外接矩形。旋轉卡殼法是以旋轉法為基礎發展而來,其檢測結果相比旋轉法更加精確。先求取縫隙區域的凸殼,再求出凸殼的最小外接矩形。以凸殼替換原始二維點集,這樣頂點的數量減少,而且將未排序點集轉換為按順序排列的凸多邊形,形成了線性結構,從而簡化求解步驟,提高效率。
根據2 幅以上的圖像獲得物體三維幾何參數即為立體視覺的三維重建。使用雙目相機可以得到空間中的一個物體左右2 幅投影圖像,并且2幅圖像相互對應。通過立體匹配,得到左右圖像對應的匹配點坐標,就可以依據兩幅圖像的對應關系反求出空間點的世界坐標,也就是空間點的三維重建。
由相機標定可獲得左右相機的投影矩陣,接下來通過投影矩陣求出空間點的空間坐標。
設左右相機的投影矩陣分別為Ml,Mr,即:

設縫隙上有一點P,在左右圖像中的像素坐標分別為(ul,vl,1)T,(ur,vr,1)T。(X,Y,Z,1)T為點P 的空間齊次坐標,則有

將式(7)中的Zc1與Zc2消元后可得X,Y,Z 的線性方程組

通過解方程組,其最小二乘解即為所求點P的空間坐標。
為了驗證以上提出的縫隙檢測方法,搭建了檢測平臺,如圖3 所示。試驗主要硬件設備有:一臺USB3.0 接口的萊娜雙目相機,型號為HNY-CV-003C。其分辨率為2 560×720,幀率為60 f/s,像素尺寸為3.75 μm×3.75 μm,鏡頭焦距為3.6 mm,工作電壓為5 V,基線距離為6 cm。標定板選用12×9 的棋格板。一臺配有MATLAB2017b 以及OpenCV 的筆記本電腦。圖4為本文進行縫隙檢測試驗時使用雙目相機采集的大眾汽車翼子板與前車門縫隙圖像。

圖3 試驗平臺Fig.3 Test platform

圖4 汽車翼子板與前車門的縫隙圖像Fig.4 Gap image between fender and front door
4.2.1 灰度化試驗
圖像灰度化后,原始數據量減少,處理速度加快。拍攝縫隙原圖如圖5 所示,灰度化后的縫隙圖像如圖6 所示。

圖5 縫隙原圖Fig.5 Original picture of gap

圖6 縫隙圖像灰度化Fig.6 Graying of slit image
4.2.2 縫隙邊緣檢測試驗
在試驗過程中,干擾噪聲多為椒鹽噪聲,因此采用中值濾波對圖像中的椒鹽噪聲進行平滑去噪,其結果如圖7 所示。對去除噪聲的灰度圖像進行閾值分割,從而準確地檢測出縫隙邊緣。將中值濾波圖像進行二值化處理后如圖8 所示。

圖7 中值濾波處理Fig.7 Median filter processing

圖8 縫隙邊緣檢測Fig.8 Gap edge detection
在獲得縫隙邊緣的基礎上,通過建立凸外形并且旋轉凸外形以尋找包圍給定2D 點集的最小面積矩形,在原圖中將縫隙輪廓的最小外接矩形繪制出來。以最小外接矩形的4 個頂點以及2 條長邊的中點作為匹配的特征點,進行固定點的匹配,如圖9 所示。

圖9 繪制最小外接矩形并進行固定點匹配Fig.9 Draw minimum circumscribed rectangle and match fixed points
主機廠在進行汽車表面縫隙尺寸檢測時通常檢測縫隙的頂部、中部以及底部的縫寬和面差。本文由最小二乘解得到的特征點在左右圖像中的坐標如表1 所示。

表1 匹配點的世界坐標Tab.1 World coordinates of matching points
測量的縫隙線范圍為56 mm×4 mm,在此范圍內可將縫隙視為直線。通過先旋轉縫隙線與世界坐標系的z 軸平行,然后把旋轉之后的縫隙線分別向x-z 平面、y-z 平面投影,從而求取縫隙線的寬度和面差數值。設左右縫隙線分別為l1和l2,縫隙線與x 軸、y 軸的夾角分別為α,β,可使縫隙線先繞x 軸旋轉α角,再繞y 軸旋轉β角。
縫隙線上的點經過旋轉之后的新坐標如下:

式中:(x,y,z)T——縫隙旋轉前特征點的坐標;(x',y',z')T——縫隙旋轉后特征點的坐標。
由縫隙上點的空間坐標,分別求得兩條縫隙線的方向向量為:l1=(0.977,-54.980,1.591),l2=(1.065,-54.949,1.579),進而可得l1和l2與x 軸、y 軸的夾角分別為α1=88.983 °,β1=178.055 °,α2=88.980 °,β2=178.015 °。將數值代入式(9),計算得到縫隙上點的新坐標如表2 所示。

表2 匹配點新的坐標Tab.2 New coordinates of matching points
由此可以得出縫隙的寬度與面差結果,如表3 所示。

表3 縫隙寬度面差檢測結果Tab.3 Detection results of gap width difference
本文所測縫隙為翼子板與前車門之間的縫隙,其縫寬的工業標準值為4 mm,面差標準范圍為0~1 mm。其誤差分析如下:絕對誤差:│4.097-4│=0.097 mm;相對誤差:0.097÷4×100%=2.4%
本文算法檢測縫隙寬度的相對誤差為2.4%。經過分析,產生誤差的主要原因有:(1)相機在標定的過程中沒有進行立體校正,在進行特征匹配時會產生一些誤差;(2)在繪制最小外接矩形時,矩形未必和縫隙輪廓完全重合,這也會導致誤差。
本文采用雙目相機對汽車表面的縫隙進行實時拍攝,并將所獲得的縫隙圖像作為系統原始示圖像輸入。通過灰度化、中值濾波提高縫隙圖像質量;利用閾值分割獲取縫隙的輪廓邊緣;提出一種基于最小外接矩形的方法來獲得縫隙邊緣上的特征點,進行固定點匹配,從而簡化了匹配過程,提高了效率,最終實現汽車表面縫隙寬度以及面差的檢測。對于試驗產生的誤差,可以在標定時進行立體校正以及畸變校正,提升立體匹配精度;在圖像預處理中對縫隙圖像進行銳化,增強縫隙邊緣的細節,使最小外接矩形與縫隙邊緣重合度更高。試驗結果表明,本文提出檢測方法得到的縫隙尺寸相對誤差為2.4%,具有一定的精度、效率以及穩定性,能夠滿足國內主機廠對于實時檢測的要求,具有一定的現實意義。