余旭東,殷 廣,朱晨迪,謝栩聰
(1. 大連理工大學(xué) 寧波研究院, 浙江 寧波 315000; 2. 上汽大眾汽車有限公司, 上海 201805)
一臺(tái)轎車約由2萬(wàn)多個(gè)零部件組裝而成,其中鐵制零件(白車身零件)占絕大多數(shù)[1]。在白車身制造過(guò)程中,零件的幾何尺寸精度除了影響車輛的裝配質(zhì)量,也會(huì)影響汽車的NVH、操控性及耐久性等諸多關(guān)鍵性能[2],因此,零件的尺寸檢測(cè)一直都是各大整車廠商重點(diǎn)關(guān)注的對(duì)向。
白車身零件基本為厚度0.6 mm到2.5 mm的打孔薄板沖壓件,零件上有數(shù)量眾多的圓形/長(zhǎng)腰孔[3]。例如上汽大眾Viloran車型后門內(nèi)板上就有超過(guò)60個(gè)孔位,而這些孔位中除了24個(gè)相對(duì)重要的夾具/零件安裝定位孔由于精度要求高被納入常規(guī)白光測(cè)量報(bào)告外,其余內(nèi)飾卡扣安裝孔容許公差較大(公差± 2 mm,因?yàn)榭塾谢顒?dòng)量),常規(guī)測(cè)量報(bào)告通常不會(huì)將它們包括在內(nèi),但如果該尺寸超差會(huì)直接影響后道總裝車間內(nèi)飾安裝,引發(fā)大量返工并造成經(jīng)濟(jì)和時(shí)間損失。不同于流水線質(zhì)檢對(duì)單一零件進(jìn)行大批量精確檢測(cè),車身現(xiàn)場(chǎng)工程師處理尺寸問(wèn)題時(shí)需要考慮每個(gè)零件工位測(cè)量焊接前后孔位尺寸,以分析確認(rèn)誤差來(lái)自焊接過(guò)程還是單件本身。出于測(cè)量效率(進(jìn)入工位需要停線)以及使用環(huán)境考慮,三坐標(biāo)或藍(lán)光測(cè)量方法都無(wú)法適用于以上場(chǎng)景[4]。目前現(xiàn)場(chǎng)工程師一般借助游標(biāo)卡尺等接觸式方法對(duì)孔位進(jìn)行測(cè)量,該方法直接有效,但也會(huì)遇到包括夾具干涉無(wú)法伸入測(cè)量工具、孔位較多導(dǎo)致測(cè)量效率低的問(wèn)題[5]。此外在測(cè)量孔位間距時(shí),測(cè)量人員需要分別測(cè)出兩個(gè)孔位大小以及邊緣距離,然后進(jìn)行計(jì)算得出結(jié)果。如果遇上長(zhǎng)腰孔測(cè)量則計(jì)算難度還會(huì)上升,因此迫切需要一種能夠適應(yīng)車間現(xiàn)場(chǎng)工作要求的零件孔位測(cè)量方法。
通過(guò)機(jī)器視覺(jué)測(cè)量技術(shù)來(lái)完成對(duì)零件幾何尺寸的測(cè)量,是近年來(lái)工業(yè)檢測(cè)領(lǐng)域的研究熱點(diǎn)之一。該技術(shù)測(cè)量測(cè)度快,可實(shí)現(xiàn)生產(chǎn)線上連續(xù)測(cè)量[4],目前已經(jīng)被廣泛應(yīng)用在微電子[6]、航空航天產(chǎn)品[7]、軌道交通[8]、大型零件制造[9-11]、汽車工業(yè)[12-14]等行業(yè)。賈國(guó)邦[5]基于圖像處理技術(shù)提出一種非接觸式高效且高精度的微小孔零件尺寸測(cè)量方式,采用Canny算子進(jìn)行圖像輪廓提取,以鋁板小孔為實(shí)驗(yàn)對(duì)象,得到的測(cè)量結(jié)果誤差達(dá)到了微米級(jí)別。唐君萍[15]針對(duì)飛機(jī)零件上大量小尺寸導(dǎo)孔測(cè)量問(wèn)題提出了一套快速檢測(cè)系統(tǒng)MBMS,實(shí)驗(yàn)件上75個(gè)導(dǎo)孔共花費(fèi)7.4 min,檢測(cè)效率超過(guò)了三坐標(biāo)測(cè)量機(jī)。為了快速綜合檢測(cè)剎車片尺寸,徐志玲[16]提出了一種基于公差設(shè)計(jì)原則和圖像處理的綜合尺寸檢測(cè)方法:利用 CCD 相機(jī)拍攝圖形,處理得到二值圖像并利用最小外接矩形優(yōu)化算法,確定其放縮倍數(shù),最后利用白色像素點(diǎn)數(shù)與標(biāo)準(zhǔn)模版圖白色像素點(diǎn)數(shù)差異得到檢測(cè)結(jié)果。朱文博[17]為了提高二維尺寸測(cè)量精度和效率,采用形態(tài)學(xué)梯度算子提取圖像邊緣,并用最小二乘法擬合像素尺寸,通過(guò)標(biāo)準(zhǔn)件法對(duì)系統(tǒng)進(jìn)行標(biāo)定獲得零件尺寸。上述方法雖然保有較高精度,但都需要借助實(shí)驗(yàn)平臺(tái)、專業(yè)相機(jī)和計(jì)算機(jī)完成檢測(cè),成本較高且無(wú)法達(dá)到現(xiàn)場(chǎng)工作要求。倪彤元[18]基于圖像處理技術(shù)提出了一種基于Android APP的混凝土表面裂縫無(wú)損檢測(cè)方法,該方法主要用于估算混凝土表面裂縫長(zhǎng)度和面積,可以借助手機(jī)端完成快速檢測(cè),能夠以一種低成本且高效率的手段滿足工程應(yīng)用要求,但并未應(yīng)用于尺寸測(cè)量。
為了提升現(xiàn)有視覺(jué)測(cè)量技術(shù)的工程應(yīng)用價(jià)值,在適當(dāng)降低測(cè)量精度,并提升測(cè)量高效性與便捷性的前提下,本文提出一種可以借助智能手機(jī)完成識(shí)別的零件孔位尺寸快速檢測(cè)方法,以期以較低的使用成本為現(xiàn)場(chǎng)測(cè)量工作提供一種補(bǔ)充手段,并為零件視覺(jué)測(cè)量提供一種可供借鑒的思路和方法。首先,在待測(cè)量零件孔位左側(cè)粘貼測(cè)量基準(zhǔn)貼紙作為測(cè)量用比例尺,計(jì)算出圖像的單位像素點(diǎn)比例;其次,基于測(cè)量得到的手機(jī)相機(jī)畸變系數(shù)對(duì)拍攝圖像去畸變;最后,對(duì)圖像進(jìn)行高斯濾波及Canny邊緣檢測(cè),并將圖像從左至右對(duì)目標(biāo)孔位進(jìn)行標(biāo)記,以基準(zhǔn)貼紙所得單位像素點(diǎn)比例計(jì)算出每個(gè)孔位的最小外接矩形長(zhǎng)寬及距離。針對(duì)長(zhǎng)條形零件測(cè)量探索了基于Surf算法的圖像拼接方法。相關(guān)圖像處理借助Matlab實(shí)現(xiàn),并設(shè)計(jì)了PC端交互界面,能夠在移動(dòng)端借助Matlab Mobile完成檢測(cè)。
不同于雙目視覺(jué)技術(shù)能夠利用兩個(gè)鏡頭從兩個(gè)視點(diǎn)對(duì)同一個(gè)目標(biāo)進(jìn)行拍攝后得到深度信息[19],由于車間現(xiàn)場(chǎng)使用條件限制,只能使用單目視覺(jué)方法進(jìn)行測(cè)量。若在待測(cè)物體距離未知的情況下,不可能直接對(duì)圖像中物體進(jìn)行尺寸大小的測(cè)量計(jì)算[20]。參照Chen[21]在單目測(cè)量中使用的像素比例概念,本文引入如圖1所示的測(cè)量基準(zhǔn)貼紙作為比例尺,該貼紙為直徑d=10 mm的圓。
圖1 測(cè)量基準(zhǔn)貼紙
在二維圖像處理中,定義長(zhǎng)度方向的單位像素點(diǎn)比例pl與長(zhǎng)度方向的單位像素點(diǎn)比例為pw:
pl=la/d
(1)
pw=wa/d
(2)
式中,la、wa分別為圖像中基準(zhǔn)貼紙經(jīng)過(guò)處理得到最小外接矩形的長(zhǎng)寬,可通過(guò)式(9)、(10)得到。
任何透鏡都不是完美無(wú)缺的,而文中測(cè)量方法借助智能手機(jī)實(shí)現(xiàn),不同手機(jī)鏡頭畸變程度各不相同,為了尺寸測(cè)量結(jié)果的準(zhǔn)確性及一致性,有必要對(duì)手機(jī)拍攝的圖像進(jìn)行幾何去畸變處理。通過(guò)張正友棋盤格標(biāo)定法[22]標(biāo)定透鏡畸變,由于標(biāo)定板圖案尺寸至少要大于1/4視場(chǎng),小于整個(gè)視場(chǎng)[23],綜合考慮車間現(xiàn)場(chǎng)照片拍攝情況,選取GP 260黑白棋盤格進(jìn)行標(biāo)定,如圖2所示,得到相機(jī)的內(nèi)參矩陣、外參矩陣和畸變系數(shù)。
圖2 黑白棋盤格
由于算法采用的是張正友標(biāo)定法,畸變系數(shù)D(k1,k2,p1,p2,k3)中只用k1,k2,p1,p2。實(shí)際像素變換至理想像素的計(jì)算公式如下:
x’ =x· (1 +k1r2+k2r4) + 2p1xy+p2(r2+ 2x2)
(3)
y’ =y· (1 +k1r2+k2r4) + 2p2xy+p1(r2+ 2y2)
(4)
其中:r2=x2+y2,(x’,y’)為矯正后的像素點(diǎn),(x,y)為原圖像素點(diǎn)。
圖3分別展示了去畸變前后的圖像,對(duì)比圖3(a)與(b)可以看出該算法修復(fù)了原有圖像上的輕微枕形畸變。
圖3 去畸變前后圖像對(duì)比
采用 MATLAB中的rgb2gray函數(shù)進(jìn)行灰度處理,得到灰度圖像。高斯濾波目前是最為流行的去噪濾波算法,其原理為根據(jù)待濾波的像素點(diǎn)及其鄰域點(diǎn)的灰度值按照高斯公式生成的參數(shù)規(guī)則進(jìn)行加權(quán)平均,這樣可以有效濾去理想圖像中疊加的高頻噪聲。通過(guò)imfilter函數(shù)對(duì)圖像進(jìn)行高斯濾波,函數(shù)中濾波模板由fspecial (‘gaussian’, [10 10], sigma)函數(shù)生成,sigma = 1。
Canny邊緣檢測(cè)算子是John F. Canny開(kāi)發(fā)的一個(gè)多級(jí)邊緣檢測(cè)算法,其目標(biāo)是找到一個(gè)最優(yōu)的邊緣,其最優(yōu)邊緣的定義包括:盡可能多地標(biāo)示出實(shí)際邊緣;標(biāo)識(shí)出的邊緣要與實(shí)際邊緣盡可能接近;邊緣只能標(biāo)識(shí)一次且忽略圖像噪聲。由于采用了最優(yōu)化的思想,Canny邊緣檢測(cè)具有良好的信噪比、高精度以及較優(yōu)的定位性能[24],賈國(guó)邦[5]分別使用Sobel算子、Roberts算子、Prewitt算子和Canny算子對(duì)孔位進(jìn)行了檢測(cè),最終選擇了精度最高的Canny方法。沈正福[25]在進(jìn)行食品主體尺寸識(shí)別時(shí),也比較了Sobel算子、Laplace算子和Canny算子的精度,最終也選擇了Canny作為邊緣檢測(cè)算子,因此本文選用該方法對(duì)圖像進(jìn)行邊緣檢測(cè)。使用edge (I, ‘Canny’, threshold)函數(shù),其中I為輸入圖像,threshold為閾值,根據(jù)現(xiàn)場(chǎng)輪廓檢測(cè)效果進(jìn)行調(diào)整。此外在實(shí)際檢測(cè)案例中,被測(cè)量零件上可能存在的較小紋理及銹蝕或污損點(diǎn)會(huì)對(duì)后序按八連通區(qū)域的檢測(cè)造成干擾,因此文中先通過(guò)孔洞填充去除紋理,接著用Canny邊緣檢測(cè)提取孔洞填充圖像外圍邊緣,最后使用形態(tài)學(xué)算法去除較小的對(duì)象,減少干擾。
完成對(duì)圖像的處理階段后,通過(guò)[labelpic, num] = bwlabel (I,n)函數(shù)對(duì)圖像目標(biāo)從左至右進(jìn)行標(biāo)記,其中I為輸入圖像,n=8表示是按八連通尋找區(qū)域。配合find函數(shù)進(jìn)行特定目標(biāo)的操作,標(biāo)記左起第一個(gè)輪廓為標(biāo)準(zhǔn)貼紙計(jì)算單位像素點(diǎn)比例。運(yùn)用旋轉(zhuǎn)卡殼算法[26]將標(biāo)記得到的目標(biāo)對(duì)象進(jìn)行最小外接矩形的計(jì)算,得到最小外接矩形4個(gè)角的坐標(biāo),假設(shè)孔位1的最小外接矩形坐標(biāo)為a(xa,ya)、b(xb,yb)、c(xc,yc)、d(xd,yd),如圖4所示。
圖4 距離測(cè)量圖示
矩形邊長(zhǎng)計(jì)算如式(3):
(5)
(6)
(7)
(8)
da-b、db-c、dc-d、dd-a分別為ab、bc、cd、da邊長(zhǎng),且ab=cd,bc=da,則孔位1的最小外接矩形長(zhǎng)l1和寬w1分別如式(9)、(10)所示,同理可得到測(cè)量基準(zhǔn)貼紙邊長(zhǎng)la、wa以及孔位2的最小外接矩形邊長(zhǎng)l2和寬w2。
l1= max (da-b,db-c,dc-d,dd-a)
(9)
w1= min (da-b,db-c,dc-d,dd-a)
(10)
孔位1的實(shí)際外接矩形長(zhǎng)L1和寬W1可通過(guò)式(11)、(12)得到,其中pl與pw是由式(1)、(2)計(jì)算得出的單位像素點(diǎn)比例。
L1=pl·l1
(11)
W1=pw·w1
(12)
除了孔位大小的尺寸計(jì)算外,孔位間的距離也是需要重點(diǎn)關(guān)注的尺寸。使用同樣的原理進(jìn)行計(jì)算。假設(shè)孔位2的最小外接矩形坐標(biāo)為A(xA,yA)、B(xB,yB)、C(xC,yC)、D(xD,yD),則可得到孔位1和孔位2的最小外接矩形中心點(diǎn)坐標(biāo)e(xe,ye)、E(xE,yE),如式(13)~(16)所示。
xe= (xa+xb+xc+xd)/4
(13)
ye= (ya+yb+yc+yd)/4
(14)
xE= (xA+xB+xC+xD)/4
(15)
yE= (yA+yB+yC+yD)/4
(16)
由式(7)可得到孔位1與孔位2之間的實(shí)際距離D:
(17)
使用line函數(shù)在圖像中繪制出最小外接矩形以及孔位中點(diǎn)間距的連線,并通過(guò)text函數(shù)直接將計(jì)算得到的實(shí)際間距標(biāo)注在圖像中進(jìn)行顯示。
在對(duì)車身車間零件進(jìn)行測(cè)量時(shí),常會(huì)遇到需要窗框加強(qiáng)版、車門加強(qiáng)筋等長(zhǎng)條形零件上的通孔的測(cè)量需求。由于拍攝圖像比例限制,長(zhǎng)條形零件上孔位難以借助一張圖片表達(dá)。黎欣[9]針對(duì)大尺寸零件視覺(jué)測(cè)量提出了基于Surf特征點(diǎn)算法的圖像拼接方法,并且將其與BP神經(jīng)網(wǎng)絡(luò)相結(jié)合,應(yīng)用于滾動(dòng)軸的故障識(shí)別,得到了較好的識(shí)別效果。本文也將借助Surf特征點(diǎn)算法對(duì)待測(cè)零件圖像進(jìn)行拼接,實(shí)現(xiàn)對(duì)長(zhǎng)條形零件孔位的檢測(cè)。
Surf算法的圖像拼接過(guò)程主要包括:通過(guò)detect_surf函數(shù)提取兩個(gè)圖像的Surf有效特征并存儲(chǔ);通過(guò)匹配存儲(chǔ)的特征建立兩個(gè)圖像之間的對(duì)應(yīng)關(guān)系;通過(guò)函數(shù)matchFeatures確定匹配特征集后,通過(guò)變換模型將待拼接圖像變換到參考坐標(biāo)系下,即對(duì)圖像矩陣進(jìn)行投影變換,最終借助圖形融合得到拼接完成的圖像。
在進(jìn)行零件尺寸測(cè)量時(shí),首先將測(cè)量基準(zhǔn)貼紙粘貼在零件待測(cè)量孔位的最左側(cè),并確保其與孔位在同一平面上;然后拍攝照片,拍攝過(guò)程中需要盡量保證手機(jī)與待測(cè)量平面平行,并且將基準(zhǔn)貼紙和待測(cè)量孔位都納入拍攝范圍內(nèi)。完成拍攝后將照片導(dǎo)入MATLAB程序中進(jìn)行處理,經(jīng)過(guò)正畸、灰度變換、空間濾波、邊緣檢測(cè),最后完成尺寸標(biāo)注后輸出測(cè)量結(jié)果,具體操作流程如圖5所示。
圖5 零件孔位尺寸測(cè)量流程
此外,在手機(jī)拍攝待測(cè)量孔位時(shí),需要確保相機(jī)位置與光圈值、快門速度、ISO 等拍攝參數(shù)與手機(jī)進(jìn)行棋盤標(biāo)定時(shí)條件相同[27],這樣才能確保圖像正畸變達(dá)到最佳效果。
通過(guò)兩個(gè)案例來(lái)驗(yàn)證所提出方法的測(cè)量精度。借助堅(jiān)果R2后置1 300像素主攝鏡頭完成圖像拍攝,測(cè)得鏡頭的畸變系數(shù)D(k1,k2,p1,p2,k3) = (0.024 3, -0.012 7, -0.001 5, 0.000 6, 0),經(jīng)過(guò)畸變校正后進(jìn)行尺寸識(shí)別。
第一個(gè)案例要求識(shí)別白車身底板上一個(gè)焊接零件的孔位大小尺寸和孔距離尺寸,這個(gè)案例包括一個(gè)圓孔和一個(gè)長(zhǎng)腰孔,具有一定典型性。圖6為圖形處理過(guò)程中每個(gè)步驟下的處理結(jié)果,圖6 (a),(b),(c),(d)分別為正畸變后圖像,灰度處理后圖像、高斯濾波后圖像,邊緣檢測(cè)后圖像和尺寸標(biāo)注圖像。
圖6 底板零件孔位尺寸測(cè)量
為了驗(yàn)證本文所述檢測(cè)方法的準(zhǔn)確性,使用精度為0.05 mm的游標(biāo)卡尺對(duì)該零件進(jìn)行接觸式測(cè)量,每個(gè)數(shù)據(jù)測(cè)量3次取算數(shù)平均值,而本文測(cè)量方法所得圓孔結(jié)果取長(zhǎng)寬距離平均值,兩者對(duì)比結(jié)果如表1所示。
表1 底板零件測(cè)量結(jié)果對(duì)比 mm
由于數(shù)據(jù)是四組測(cè)量值和真實(shí)值的對(duì)比,故參照沈正福[25]的工作補(bǔ)充標(biāo)準(zhǔn)誤差來(lái)評(píng)價(jià)系統(tǒng)的測(cè)量準(zhǔn)確性,計(jì)算公式如式(18):
(18)
其中:xi,x(_)分別表示本文方法測(cè)量值和游標(biāo)卡尺測(cè)量值,σ為標(biāo)準(zhǔn)誤差,帶入數(shù)據(jù)得到標(biāo)準(zhǔn)相對(duì)誤差為0.274 mm。
該零件孔位主要用于安裝內(nèi)飾塑料卡扣,允許有較大活動(dòng)量,公差為+/-2 mm,而文中孔位尺寸最大相對(duì)誤差0.3 mm,距離相對(duì)誤差0.4 mm,能夠滿足該種非定位孔的幾何尺寸測(cè)量。除此之外,文中測(cè)量方法能直接給出孔孔之間距離,而不必像游標(biāo)卡尺測(cè)量一樣需要進(jìn)行換算,在檢測(cè)效率上也有一定的優(yōu)勢(shì)。
另一個(gè)案例為車輛前門內(nèi)板上靠近A柱區(qū)域的塑料蓋板安裝孔測(cè)量,由于孔位數(shù)量較多,接觸式測(cè)量效率較低。案例的測(cè)量過(guò)程如圖7 (a),(b),(c),(d)所示,分別為正畸變后圖像,灰度處理、高斯濾波后圖像,邊緣檢測(cè)后圖像和尺寸標(biāo)注圖像,4個(gè)孔位的標(biāo)注順序如圖7 (a)所示。
圖7 車門零件孔位尺寸測(cè)量
同樣用精度為0.05 mm的游標(biāo)卡尺對(duì)該零件進(jìn)行測(cè)量,孔位編號(hào)如圖7 (a)所示,本文方法測(cè)量與游標(biāo)卡尺測(cè)量結(jié)果對(duì)比如表2所示。
表2 車門零件測(cè)量結(jié)果對(duì)比 mm
通過(guò)公式(8)得到第二個(gè)案例所有測(cè)量值的標(biāo)準(zhǔn)相對(duì)誤差為0.220 mm。其中4個(gè)孔位的標(biāo)準(zhǔn)相對(duì)誤差為0.112 mm,孔位間距的標(biāo)準(zhǔn)相對(duì)誤差為0.311 mm。
門內(nèi)板卡扣孔位公差為±2 mm,而文中孔位尺寸相對(duì)誤差0.2 mm,距離相對(duì)誤差0.4 mm,能夠滿足該種非定位孔的幾何尺寸測(cè)量。文中測(cè)量方法能直接給出4個(gè)孔與孔中心之間距離而不用像游標(biāo)卡尺測(cè)量一樣進(jìn)行進(jìn)一步換算,有效提升了測(cè)量效率。
圖像拼接功能將同一個(gè)零件的兩張圖片進(jìn)行變換、拼接后合成一張圖片,在沒(méi)有支架測(cè)量系統(tǒng)的支持下,誤差會(huì)比較大。本節(jié)將以第一個(gè)案例,白車身底板上一個(gè)焊接零件為例,拍攝兩張照片合成后與單張照片及游標(biāo)卡尺測(cè)量結(jié)果對(duì)比,說(shuō)明圖像拼接合成后識(shí)別尺寸與單張照片及實(shí)際零件尺寸之間的差異。
拍攝的兩張圖像I1和I2如圖8 (a)、(b)所示,通過(guò)Surf特征點(diǎn)算法找到兩個(gè)圖像的Surf有效特征點(diǎn)和有效特征,再進(jìn)行匹配,匹配的特征點(diǎn)對(duì)應(yīng)關(guān)系如圖8 (c)所示。通過(guò)圖像變換得到的合成圖如圖8 (d)所示。
圖8 底板零件圖像合成
得到合成圖后再次進(jìn)行孔位尺寸識(shí)別,處理過(guò)程與2.2章節(jié)第一個(gè)案例相同,得到的識(shí)別結(jié)果如圖9所示。圖像合成方法測(cè)量、單張拍攝圖片測(cè)量與游標(biāo)卡尺測(cè)量結(jié)果對(duì)比如表3所示。
圖9 圖像合成后尺寸標(biāo)注后圖像
表3 底板零件測(cè)量結(jié)果對(duì)比 mm
由于基準(zhǔn)貼紙與左側(cè)的腰孔是在同一張圖像I1內(nèi),合成后計(jì)算得到的誤差與單張圖片時(shí)幾乎一致。而右側(cè)的圓孔在另一張待合成的圖像I2上,由于在拍照時(shí)沒(méi)有借助專用的測(cè)量支架,而是直接拍攝,其拍攝角度和距離必然與第一次拍攝圖像I1時(shí)不同,因此在進(jìn)行圖像合成變換時(shí)不可避免會(huì)出現(xiàn)測(cè)量誤差。圓孔直徑相對(duì)誤差由-0.1 mm增大為-0.8 mm;孔距離相對(duì)誤差由0.4 mm增大為-0.8 mm。由于測(cè)量誤差相對(duì)較大,圖像拼接后測(cè)量得到的孔位只能作為參考值,尤其是沒(méi)有貼基準(zhǔn)測(cè)量貼紙的圖像上的孔位。一個(gè)能夠固定拍攝角度和拍攝距離的手機(jī)測(cè)量支架或許能夠提升測(cè)量準(zhǔn)確度。
采用圖形用戶接口(GUI)編程技術(shù),開(kāi)發(fā)設(shè)計(jì)了孔位尺寸測(cè)定的軟件系統(tǒng),用戶界面如圖10所示。5個(gè)模塊分別為輸入圖像、處理選擇、輸出尺寸、邊緣檢測(cè)閾值和調(diào)試信息。首先點(diǎn)選輸入圖像模塊中瀏覽選項(xiàng),選取拍攝好、正畸變后的圖像,點(diǎn)擊加載。在處理選擇Input下出現(xiàn)待識(shí)別圖像后,選擇邊緣檢測(cè)(高斯濾波)閾值,從車間現(xiàn)場(chǎng)總結(jié)得到的默認(rèn)閾值為0.725,可根據(jù)現(xiàn)場(chǎng)實(shí)際要求進(jìn)行調(diào)整,調(diào)整范圍在0~1之間,即“權(quán)重”。當(dāng)數(shù)值增大時(shí),識(shí)別圖像內(nèi)的輪廓數(shù)量會(huì)相應(yīng)減小,即濾波的效果越強(qiáng);當(dāng)數(shù)值減小時(shí),識(shí)別圖像內(nèi)的輪廓數(shù)量會(huì)相應(yīng)增大,即濾波效果越弱。確定需要選擇的待測(cè)量圖像出現(xiàn)在Input下后點(diǎn)選“處理”框,開(kāi)始進(jìn)行孔位尺寸測(cè)量。如處理完成,調(diào)試信息框中出現(xiàn)“圖像處理與圖像輸出完成”,如處理失敗,則調(diào)試信息框中出現(xiàn)“圖像處理與圖像輸出失敗”字樣。在調(diào)試信息框中出現(xiàn)“圖像處理與圖像輸出完成”字樣后,處理選擇Output框中會(huì)出現(xiàn)識(shí)別完成后有尺寸標(biāo)注的圖像,同時(shí)輸出尺寸框中也會(huì)分別顯示出孔位尺寸,包括最小外接矩形的長(zhǎng)寬、以及孔位間距離,單位為mm。
圖10 圖像分析與尺寸測(cè)定系統(tǒng)用戶界面
除了通過(guò)PC端進(jìn)行測(cè)量運(yùn)算外,為了進(jìn)一步方便現(xiàn)場(chǎng)的測(cè)量工作,還借助MATLAB Mobile移動(dòng)端在移動(dòng)手機(jī)端實(shí)現(xiàn)現(xiàn)場(chǎng)白車身零件在線測(cè)量。
MATLAB Mobile是一款移動(dòng)端輕應(yīng)用,可以安裝在Android或IOS移動(dòng)設(shè)備上,并且連接到在 MathWorks Cloud上運(yùn)行的 MATLAB?會(huì)話。由于其易用性與高效性,MATLAB Mobile被廣泛應(yīng)用于理工類實(shí)驗(yàn)與教學(xué)中[28-29]。在使用手機(jī)端軟件前,需要先在PC端將圖像處理的m文件存儲(chǔ)到 MATLAB Drive云端,完成后打開(kāi)手機(jī)端安裝的MATLAB Mobile APP,登錄MathWorks Cloud上相同的賬戶,即可打開(kāi)云端的文件。同時(shí)有關(guān)尺寸的計(jì)算都在云端完成,云端計(jì)算完成后將計(jì)算結(jié)果發(fā)送回手機(jī)端。即只要能夠上網(wǎng),即使是處理能力較差的手機(jī)也能夠完成測(cè)量。同時(shí),MATLAB Mobile還能夠與同個(gè)Wifi下的PC端MATLAB連接,在PC端口完成計(jì)算后將結(jié)果發(fā)送至手機(jī),在不連接云端的條件下同樣能夠完成計(jì)算。
在實(shí)際操作中,拍攝完現(xiàn)場(chǎng)待識(shí)別零件照片后,首先在手機(jī)端將MATLAB Mobile應(yīng)用打開(kāi),并將拍攝的照片移動(dòng)到MATLAB Drive云端m文件所在的目錄下,點(diǎn)擊運(yùn)行程序即可得到孔位尺寸和孔位間距的識(shí)別結(jié)果。MATLAB Mobile在移動(dòng)端界面如圖11所示,具體操作可參考相關(guān)文獻(xiàn)[30]。
圖11 MATLAB Mobile在移動(dòng)端界面
本文針對(duì)汽車車身車間現(xiàn)場(chǎng)白車身零件尺寸測(cè)量的問(wèn)題,采用圖像處理技術(shù)(機(jī)器視覺(jué)方法)對(duì)零件孔位進(jìn)行在線測(cè)量,并且直接在原圖上標(biāo)注出測(cè)量完成的孔位距離以及孔位大小。具體發(fā)現(xiàn)包括:
1)基于圖像處理技術(shù)實(shí)現(xiàn)了對(duì)零件孔位尺寸的二維非接觸式測(cè)量。對(duì)零件圖像進(jìn)行灰度化、高斯濾波處理,生成二值圖像;通過(guò)Canny邊緣檢測(cè)方法提取圖像邊緣;去除尺寸較小的干擾因素;最終采用最小外接矩形標(biāo)注孔位尺寸,通過(guò)幾何方法求解孔位間尺寸。此外引入鏡頭去畸變技術(shù),提升尺寸測(cè)量結(jié)果的準(zhǔn)確性及一致性。
2)使用測(cè)量基準(zhǔn)貼紙作為比例尺,并且引入了手機(jī)端MATLAB Mobile,實(shí)現(xiàn)了車間現(xiàn)場(chǎng)測(cè)量的可行性與高效性。
3)測(cè)量案例表明,該方法對(duì)孔位尺寸測(cè)量最大相對(duì)誤差0.3 mm,孔距離最大相對(duì)誤差0.4 mm;孔位尺寸測(cè)量最大標(biāo)準(zhǔn)相對(duì)誤差0.274 mm,孔距離標(biāo)準(zhǔn)相對(duì)誤差0.311 mm,能夠作為公差要求較低的非定位孔的輔助測(cè)量手段。該方法尤其適用于白車身制造中用于安裝飾板的零件孔位,這些孔位常常處于一個(gè)平面且數(shù)量較大,借助該方法能方便且高效完成測(cè)量。
4)針對(duì)長(zhǎng)條形零件測(cè)量,探索了基于Surf算法的圖像拼接方法,比較了單張圖像拍攝、兩張圖像拍攝和直接測(cè)量的結(jié)果,發(fā)現(xiàn)由于兩次拍攝圖像的角度、距離不同,合成后圖像孔位,尤其是遠(yuǎn)離基準(zhǔn)貼紙的孔位尺寸誤差相對(duì)較大,目前還不能應(yīng)用于現(xiàn)場(chǎng)尺寸測(cè)量中,僅可作為參考結(jié)果。
5) 在現(xiàn)場(chǎng)圖像拍攝過(guò)程中,需要盡量保持拍攝角度為90°俯視,以防物體尺寸出現(xiàn)扭曲,因此對(duì)拍攝者拍攝手法要求較高。此外測(cè)量誤差仍然相對(duì)較大,設(shè)計(jì)一個(gè)合適又便捷的手機(jī)測(cè)量支架是今后進(jìn)一步完善該方法的研究方向。