李紅衛(wèi)
(航空工業(yè)西安飛機工業(yè)(集團)有限責任公司,陜西 西安 710089)
鉚接是飛機結構連接最常見的形式之一,在飛機制造、使用過程中,因受外力等因素的作用,易使飛機結構發(fā)生變形,繼而影響飛機平臺機體結構的質(zhì)量、壽命甚至飛機的性能,因此,其鉚接質(zhì)量至關重要[1]。
目前,飛機制造過程中,鉚接質(zhì)量的檢測主要以人工檢測為主,檢測效率和質(zhì)量不高。隨著新一代飛機對機體結構要求的日益嚴苛,依靠人工檢測已難以適應新的需求。
計算機輔助檢測鉚接質(zhì)量,首先需要讓計算機系統(tǒng)能夠在機體結構中準確“識別”出一個個獨立的“鉚釘”,常常采用“視覺識別”方法[2-4]。盛敏等人[5]先通過提取二值化圖像中的邊緣,確定了鉚釘區(qū)域,接著提出了一種改進的內(nèi)距均值法[6],確定了鉚釘區(qū)域的中心和半徑;魯睿婷等人[7]利用全自動光學檢測系統(tǒng)測量了鉚釘尺寸,通過電氣控制單元控制鉚釘?shù)呐帕?,并采用相機對鉚釘進行了拍照,使用圖像檢測的方法檢測了鉚釘,該系統(tǒng)的測量精度在0.03 mm~0.06 mm;胡江濤等人[8]利用畸變矯正技術,減少了相機的非線性失真,并通過Radon變換方法實現(xiàn)了飛機鉚釘尺寸的精確測量;丁力平[9]通過實驗,并對比了多種邊緣檢測算法自動提取鉚釘?shù)男Ч?,最終確定了基于Canny算子的邊緣檢測方法效果最佳。
但是大部分基于圖像的方法均只能獲取到二維的尺寸信息,無法獲取更多信息,對鉚接質(zhì)量作進一步的評估;且因依賴于邊緣提取技術來檢測鉚釘,對像素的精銳程度要求高,對光照、分辨率和圖像噪聲等因素敏感,檢測結果易受干擾。
基于三維點云掃描技術,本文提出自適應的局部點云密度計算方法,以解決點云密度較小區(qū)域內(nèi)的鉚釘提取的難點,提升鉚接質(zhì)量檢測的效率與可靠性。
點云密度一般為整個點云的平均密度,單位為“個/平方米”。不同于點云密度,本文定義的局部點云密度為點云中每個點的內(nèi)部屬性,與各點之間的間隙有關。局部點云密度能夠體現(xiàn)點云數(shù)據(jù)整體空間分布不均勻的特性,點云分布越密集,局部點云密度越大。
本文主要依據(jù)點云的局部密度來提取釘頭部分的點云信息。局部密度的計算結果直接影響點云聚類和模型擬合的結果,對于離散點云P中的任意一點pi(x,y,z),本文通過對其r鄰域中的點進行統(tǒng)計分析來估算pi處的局部密度。具體公式如下:
d(pi)=num(Nr(pi))
(1)
式中:Nr(pi)—由pi為中心點的直徑為2r的球形區(qū)域;d(pi)—pi處的局部密度,由Nr(pi)領域內(nèi)的采樣點構成。
局部密度d(pi)為鄰域Nr(pi)內(nèi)點的個數(shù),鄰域大小r對局部密度的估算有直接影響,較大或較小的r都能夠在一定程度上消除點云數(shù)據(jù)的測量誤差,不能很好地體現(xiàn)點云數(shù)據(jù)的不均勻性。為此,本文綜合考慮點云的空間分布均勻度,將r設定為釘頭的半徑長度。下文中提到的密度均為局部點云密度。
通常來說,釘頭部分的點云較為密集,局部自適應函數(shù)的點云如圖1所示。
圖1 局部自適應函數(shù)的點云
點云密度值與右邊顏色條對應。所定義的點云局部密度函數(shù)需要進行自適應處理,以增大密集區(qū)域與稀疏區(qū)域之間的密度差值。
局部自適應密度的構建主要通過在抑制稀疏區(qū)域的密度的同時提升密集區(qū)域的密度來實現(xiàn)。首先根據(jù)計算各點密度的局部平均值,即針對任一點,計算其鄰域Nr(pi)內(nèi)每個點密度的平均值,即:
(2)
式中:n—鄰域Nr(pi)內(nèi)點的個數(shù)。
隨后確定局部方差:
(3)
然后設定放大系數(shù)C,并利用局部平均值和局部方差,得到局部自適應密度:
(4)
放大系數(shù)C通常依據(jù)實際情況和經(jīng)驗值獲得。
局部自適應密度使得密集區(qū)域的密度變大,而稀疏區(qū)域的密度越小,導致兩者之間的密度差值變大,因此能夠更好地根據(jù)密度提取密集區(qū)域的點云。
不同密度函數(shù)的點云如圖2所示。
圖2 不同密度函數(shù)的點云
圖2中顯示的點的密度均大于等于96。從圖2可知,對局部點云密度的自適應操作可以抑制稀疏區(qū)域的密度;點云的密度大小依據(jù)顏色體現(xiàn);自適應的操作能夠明顯提升密集區(qū)域的密度。
得到高密度點云區(qū)域后,筆者首先利用點云聚類方法,將單個鉚釘輪廓點云從整體點云中提取出來。針對單個鉚釘輪廓點云,筆者將其投影至二維平面,采用圓擬合算法對鉚釘輪廓進行擬合處理。
對鉚釘輪廓點云進行圓擬合前,需要將整體的點云分割成多個單獨的輪廓點云。本文采用基于區(qū)域增長[10]的點云聚類算法進行點云分割。
給定整體點云P,區(qū)域增長算法將點云分割成多個互相獨立的子塊,P1,P2,…,Pk,即:
P=P1∪P2∪…∪Pk,s.t.?i,j,‖Pi-Pj‖≥ε
(5)
式中:‖Pi-Pj‖—兩點云集中的最小間距。
首先,筆者設定距離閾值并從整體點云中隨機選擇一點作為種子點,分別計算該點和其鄰域內(nèi)各點間距。如果點間距值小于給定的距離閾值,則將該對應點并入種子點生長區(qū)域。當前種子點鄰域搜索完畢后,將新并入的點選為新的種子點,重復上述操作,直至當前點集中無法并入新點時,當前區(qū)域即作為獨立的點集被分割完成。將分割完成的點集從整體點云中刪除,重新隨機選擇新的種子點,重復上述步驟,開始下一點云集合的分割。當整體點云無尚未分割的點時,停止分割,此時區(qū)域生長聚類完成。聚類完成后,聚類中點云個數(shù)少于200的聚類將被刪除。
點云聚類結果如圖3所示(不同顏色表示不同的聚類)。
圖3 點云聚類結果
針對分割出的單個鉚釘輪廓點云,由于在三維空間中進行圓擬合難度較大,且鉚釘三維點云在高度方向上差別不大,本文將空間圓擬合問題轉(zhuǎn)化為二維平面圓擬合的問題。
首先筆者通過PCA[11](主成分分析)擬合出三維點云所在的平面。設定當前鉚釘輪廓點云記為Q={qi(x,y,z),i=1,2,…,N},其中:N—輪廓點云Q中點的個數(shù)。首先計算Q的協(xié)方差矩陣:
(6)
式中:μ—Q中所有點云的質(zhì)心。
μ可表示為:
(7)
假定λ1,λ2,λ3為協(xié)方差矩陣CQ對應的3個特征值,且λ1≤λ2≤λ3。由主成分分析法可知,其中對應的單位化特征向量Φ1即為點云所在二維平面的法矢。至此,投影平面即可由輪廓點云質(zhì)心μ和法向量Φ1確定。然后將所有點沿平面法線Φ1方向投影至二維平面即可。
由于點云密度去噪的結果中存在少量的離群點,本文采用基于RANSAC[12](隨機采樣一致性)的圓擬合算法,進行鉚釘邊緣點云的提取。與傳統(tǒng)的最小二乘方法相比,RANSAC可以有效地排除噪聲點或離群點的影響,常被用于點云配準[13]、點云邊界提取[14]等。
設定擬合圓的方程為fx′,y′,r(x,y):(x-x′)2+(y-y′)2=r2,其中,(x′,y′)與r分別為所求圓的圓心與半徑。由1.2節(jié)所得到的二維投影點可表示為S={si(xi,yi),i=1,2,…,K},其中:K—二維投影點的個數(shù)。
由RANSAC求出擬合圓方程的步驟如下:
(1)參數(shù)初始化。初始化參數(shù)包括擬合次數(shù)C,初始局內(nèi)點集合Sin,擬合參數(shù)p,閾值t及初始迭代次數(shù)I。其中C=∞,Sin=Φ,I=0。擬合參數(shù)及閾值可根據(jù)情況確定,在本文中,設定p=0.99,t=0.01;
(2)迭代停止判斷。若擬合次數(shù)C>1,則重復步驟3~5;
(3)隨機選點。從二維投影點集中隨機選擇3個點,算出對應的擬合圓參數(shù)(xe,ye,re);
(4)局內(nèi)點集計算。根據(jù)公式:S_e={(x_i,y_i)∈Ss.t.|√((x_i-x_e)^2+(y_i-y_e)^2)-r_e| (5)參數(shù)更新。若當前局內(nèi)點數(shù)量大于初始局內(nèi)點數(shù)量,|Se|>|Sin|,即令Sin=Se,(x′,y′,r)=(xe,ye,re),C=log(1-p)/log(1-ωn),其中ω=Sin/S。迭代次數(shù)I增加一次。 最終RANSAC圓擬合結果如圖4所示。 圖4 RANSAC圓擬合結果 為驗證該算法的可靠性和有效性,筆者進行鉚釘點云提取實驗。 本文采用Handy 700高精度三維激光掃描儀對鉚接表面進行掃描,獲取三維點云,如圖5所示。 圖5 機體結構掃描與鉚釘三維點云 然后運行上述算法進行鉚釘自動提取,提取結果如圖6所示。 圖6結果表明:本文提出的鉚釘三維點云提取算法能有效地識別出鉚釘輪廓點云,并提取單獨的鉚釘點云;尤其是本文提出的自適應密度計算方法,在掃描點云分布不均勻的情況下,依然能將相對密度較大的輪廓點云識別并保留;由于采用了基于RANSAC的圓擬合方法,本文算法能較好地處理噪聲數(shù)據(jù)。 由于傳統(tǒng)方法直接在原始密度值上進行高密度點云提取,密度較高的噪聲區(qū)域也被包含進去,影響了鉚釘提取的結果。從圖6中可以看出,當輸入點云中存在密度異常點云集時,本文算法依然能準確地提取出鉚釘輪廓。 本文方法與傳統(tǒng)密度計算方法結果對比如表1所示。 表1 本文方法與傳統(tǒng)密度計算方法結果對比 從表1中可以看出:由于傳統(tǒng)密度計算方法沒有考慮密度分布不勻,當掃描數(shù)據(jù)中存在密度較高的非鉚釘點云時,密度較低的鉚釘點云會被過濾掉,造成提取結果的缺失,降低了提取的準確率。 為適應飛機機體結構中鉚釘掃描點云密度分布不均勻的特點,本文提出了自適應的局部點云密度計算方法,解決了點云密度較小區(qū)域內(nèi)的鉚釘提取的難點;對于密度過濾后的三維點云,采取了投影至二維平面進行聚類的方法;為了排除噪聲對鉚釘提取的影響,采用隨機一致性采樣算法進行了圓擬合,實現(xiàn)了鉚釘輪廓點云的自動提取。 本文的提取算法可自動準確地“識別”并定量判定“鉚釘”形態(tài),可提升機體結構鉚接質(zhì)量檢測的效率與質(zhì)量。3 實驗及結果分析
4 結束語