摘 要 :火箭發動機殼體內部螺紋連接處縫隙的檢測精度是衡量其質量的重要指標,由于發動機殼體內表面形貌復雜,因此內縫質量僅靠人工檢測不僅效率低而且可靠性差。提出一種基于 FNN 網絡的內縫視覺檢測方法,以灰度共生矩陣和 PCA 算法構造圖像的特征參數,訓練 FNN 網絡,將火箭發動機殼體內縫的粗加工面與精加工面進行分類,分類識別率 98.8%;然后,對兩類情況做不同的圖像處理,用 Sobel 算子找到縫隙邊緣;最后,通過標定進行包括采集原始圖像誤差、直線擬合誤差的系統誤差修正,完成內縫寬度精確測量。實驗表明,該方法穩定可靠,能夠實現 0.1mm~0.6mm 范圍 內 ±0.02mm 的識別精度。該方法實現了火箭發動機殼體內部螺紋連接處的高精度測量,為實現產品高效自動生產和質量檢測提供了技術保障。
關鍵詞:發動機內縫測量;灰度共生矩陣;PCA;神經網絡
姜春英; 丁美杰; 孟向臻; 葉長龍; 王鵬; 閆子龍, 電子測量技術 發表時間:2021-10-29
0 引 言
固體火箭發動機主要采用螺紋連接,螺紋連接的扣數對發動機的穩定性十分重要。固體火箭發動機殼體內表面的縫寬大小是檢測螺紋連接質量的重要指標之一。傳統的縫寬檢測方法是通過人工手動測量。由于人工對帶藥的固體火箭發動機進行檢測,具有一定的危險性;且由于待測縫寬細小,使得操作者不易測量,導致測量結果一致性差,效率低。為了提高縫隙測量的精度與效率,保障操作人員的生命安全,非常有必要利用機器視覺的智能檢測方法取代傳統的人工操作環節,從而實現自動化、智能化的生產流程。
微小縫隙測量是個難題,而固體火箭發動機殼體由于其加工工藝不同,導致內表面環境復雜,從而使其縫隙測量難上加難。傳統縫隙測量使用精密測量工具進行人工抽樣檢查,存在著測量速度慢、人為因素影響大等缺點,無法滿足大規模自動化生產制造的需求。將機器視覺技術引入工件尺寸幾何測量中,可實現非接觸性高精度測量,既能避免測量過程中的人為誤差,又可實現快速和連續測量,能有效保證生產制造過程的自動化。基于機器視覺的精密測量技術在工業生產現場的應用越來越普遍,已成為國內外研究熱點。針對固體火箭發動機殼體內縫測量這一具體工程問題,待測圖像的特征提取和邊緣提取與定位是其檢測方法的關鍵技術。在圖像邊緣提取技術領域,段振云等提出基于高斯積分曲線擬合的亞像素邊緣提取算法 [1] ,定位精度高,但僅適用于單邊階躍狀邊緣;徐平等提出基于邊緣像元投影的高精度亞像素檢測方法[1],然而此方法對噪聲不敏感;在圖像特征提取技術領域,由 Beltrami 和 Jordan 提出的主成分分析法(PCA)[2],它可以用于圖像矩陣降維,以降維后的矩陣為基礎提取圖像特征,但降維后的數據可解釋性差;Haralick 等人提出的灰度共生矩陣 (GLCM)可以有效的提取出圖像的紋理特征[3],并良好的反映了圖像空間中相隔某距離的兩像素之間會存在一定的灰度關系。
為了滿足固體火箭殼體內縫檢測的精度要求,本文提出一種基于雙路 FNN 網絡火箭發動機殼體內縫方法。該方法通過預訓練的神經網絡將待測圖像分為兩類,并通過對兩類圖像預處理提升圖像的質量,再通過 Sobel 算子提取并定位縫隙邊緣,最后通過標定對系統誤差進行修正。實驗表明該方法測量的縫隙誤差在 0.02mm 以內,滿足精度要求。
1 雙路 FNN 神經網絡模型的構建
固體火箭發動機殼體內表面一側由于加工工藝的不同,形成了粗加工面和精加工面兩種不同情況。粗加工面和精加工面的形貌如圖 1 所示:
圖 1(a)中縫隙左側的粗糙面約占固體火箭發動機內縫表面形貌情況的 2/3。圖 1(b)中縫隙左側形貌顯得光滑,這是由固體火箭發動機內表面一側部分殼體經過精加工導致。粗加工面含有刀花和黑斑,精加工面僅含有刀花,刀花和黑斑的存在都不便于尋找縫隙邊緣,需要將其濾去,然而濾去黑斑和刀花時亦會造成邊緣的損失。由于粗加工面與精加工面邊緣損失不同,為了提高檢測精度,設計相應的神經網絡區分這兩類情況,并對兩類情況分別標定。
1.1 提取縫隙圖像特征參數
1) 主成分分析(PCA)
PCA 的基本思想是通過尋找樣本空間的一組正交向量,實現用少數主成分來描述原來的高維數據,進而最大限度地保留原始數據的信息。本文的圖像共含 300×64 個像素。顯然用這海量的數據去進行圖像分類是耗費資源的。遂通過 PCA 對圖像樣本集 X 進行數據特征空間的重構如式(1),取出最能反映圖像特征的 4 組基底。 1 2 * ( , ...... )T X x x x ? N N P (1) 其中 N 為樣本數,P 為維度。任意樣本 xi可看作式(2): 1 ? p T i i i i i x x ? ? ??? (2) 式中 ?i表示線性無關的單位基,通過降維可將 xi寫作式(3): 1 1 ? q p T T i i i i i i i i i q x x x ? ? ? ? ? ? ?? ? ? ? (3) 式中 q 表示降維后的特征維度,q+1 到 p 為遺失的維度。定義損失函數 J: 2 1 1 1 (( ) ) N q T i j i j J x x N ? ? ?? ? ? ? (4) 式中 x 為樣本的均值。通過 PCA 降維后得到的 4 組基底重新構造樣本圖,任取 16 組重構圖與原圖進行對比,圖像的信息損失如圖 2 所示。
圖 2(a)表示任取 16 張精加工與粗加工面原始圖像的縫隙形貌,圖 2(b)為通過 PCA 降維后與之相對應的 16 組精加工與粗加工面原始圖像的縫隙形貌。與原圖相比,重構圖損失了部分像素,降低了圖像清晰度,但與此同時也保留刀花和黑斑等主要特征。通過 PCA 降維處理,降低了圖像因為線性相關,參數耦合所造成的影響,除去了部分冗余信息,但仍保留了圖像的主要特征。
2) 灰度共生矩陣紋理特征的提取
灰度共生矩陣是一種通過研究灰度的空間相關特性的紋理表征方法,反映的是圖像灰度分布關于方向、局部領域和變化幅度的綜合信息。灰度共生的矩陣的構造因子包括步長 d、方向參數θ、灰度級 Ng 和窗口大小 S。固體火箭內表面紋理明顯,沒有方向性和周期性。為了提高運算效率,取θ為 0°。窗口大小取 8×8,灰度級取 16,長取 4。
灰度共生矩陣具有 14 個統計特征參數,窗口的特征向量維度較高,存在信息冗余的現象[4],根據經驗值選取對比度、角二階矩、熵和逆差矩作為表征內縫表面紋理特征參數。分析兩種情況下對比度、角二階矩、熵和逆差矩的概率分布,結果如圖 3 所示。
圖 3 中依次繪制了角二階矩、對比度、熵、逆差矩在粗加工面和精加工面兩種條件下高斯核密度估計圖。觀察粗加工面與精加工面兩種情況下 4 個特征參數的概率分布可知角二階矩、對比度、熵、逆差矩在粗加工面和精加工面兩種條件下相關性較低。適宜做神經網絡的輸入。
1.2 網絡結構的設計
前饋神經網絡(FNN)的數學涵義是逼近一個復合函數,如式(5)所示: y f x ? ( , ) ? (5) 式中 y 為神經網絡的輸出,x 為輸入,θ為參數。通過學習參數θ的值,使函數值逼近 y。常規前饋神經網絡通過將輸入經過一系列復合起來的函數訓練得到輸出。其過程可用式(6)所示: f x f N f N f x ( ) ( ) ( 1)...( (1)( ))) ? ? (6) 隨機對固體火箭發動機殼體內縫表面共拍攝 300 張圖像作為分類實驗樣本圖像。采用式(7)所示的平均分類精度 R 作為評判標準。
R N ? (7) 式中:Nright表示分類正確的樣本數量,Nall表示所有樣本數量。
分別以 PCA 降維得到的 4 組基底,構建灰度共生矩陣得到的 4 個特征參數以及 4 組基底加 4 個特征參數作為傳統 FNN 網絡輸入,進行網絡訓練。表 1 所示為 3 種算法分類精度的實驗統計結果,可以得出 PCA 基底+灰度共生矩陣特征參數作為網絡輸入,相較于其他兩種算法有較大的提升。
根據實驗結果可知灰度共生矩陣所構建的特征參數對分類結果具有更高的靈敏性。設計雙路 FNN 神經網絡,數學模型如式(8)所示:
式中 f(x)表示灰度共生矩陣所構建的特征參數作為輸入的多層感知機,g(x)表示 PCA 降維后的 4 組基底作為輸入的多層感知機,t(x ^ )表示將 f(x)和 g(x) 合并隨機打亂順序。F(t(x ^ ))表示將雙輸入合并后的多層感知機。本文設計網絡模型結構如圖 4 所示:
圖 4 中的網絡結構共有 5 個部分,Input 層表示網絡的輸入,包括由 PCA 和灰度共生矩陣算法得到的特征集合 1 和特征集合 2,Processing 層將對特征集合的預處理,通過多層感知機算法對特征進行自學習,Concatenate 層將特征集合 1 和特征集合 2 通過 Processing 層自學習得到的特征連接,再將連接的特征通過 DNN 深度神經網絡,最終輸出分類結果的概率。
為了加速網絡收斂速度,對輸入的特征進行 Normalization 處理,將其映射到[0,1]。對于隱藏層的激活函數選擇雙曲正切函數 tanh,輸出層的激活函數選擇 softmax,損失函數選擇均方差 mean_squared_error,優化器選擇隨機梯度優化算法 SGD[5]。
使用 Tenserflow 中的 Keras 接口,通過面陣相機取出精加工面與粗加工面的火箭發動機表面圖像各 500 組,將樣本以 6:3:1 的方式劃分為訓練集、驗證集與測試集。通過 SVM 分類器[6-7],KNN 分類器[8-9],貝葉斯分類器[10],隨機森林分類器[11],以及傳統 FNN 網絡分類器[12]訓練模型,其模型在測試集的精確度如表 2 所示。
如表 2 所示,本文設計的雙路 FNN 網絡的精度最高,達到了 98.8%。通過雙路 FNN 網絡將待測圖片分為了粗加工面與精加工面兩類,為待測圖片的縫隙邊緣提取,提供了便利。
2 圖像邊緣提取
2.1 精加工面預處理
固體火箭發動機殼體內表面精加工圖像灰度值三維圖如圖 6(a)所示,從圖像中可以看出,精加工面在縫隙的左側較為平滑,灰度值趨于平穩,而縫隙的右測,部分 Y 方向的像素值變化明顯。這是因縫隙兩側的殼體材料不同所導致。在縫隙的右側,由于機械加工會產生部分刀花。為保證精度要求,通過連通域分析,設定面積閾值 K,濾去刀花。
首先通過 Otsu[13]閾值分割方法對圖像進行分割,將圖像二值化,再將圖像進行連通域分析,并標記如圖 5。
圖 5 中每一個顏色表示為一個連通域,計算每一個連通域的面積,設定閾值 K,將面積值小于 K 的連通域的像素點置為 255。其算法如算法 1 所示:
算法 1 中 M 為連通域集合,K 為選定的面積閾值, f(x,y)為連通域里面的像素值。使用該方法濾去刀花后,固體火箭發動機殼體內表面精加工圖像灰度值三維圖如圖 6(b)所示。
如圖 6(b)所示,通過連通域標記并濾去刀花后,縫隙的左右兩側像素值都顯得平滑,使縫隙更加明顯。
2.2 粗加工面預處理
固體火箭發動機殼體內表面粗加工圖像灰度值三維圖如圖 7(a)所示,圖中粗加工面在縫隙的右側和精加工面的表面結構是一致的,而在縫隙的左側圖像的像素值是雜亂無章的。這是由于相機采圖采集到粗加工面導致。由于左側聯通域的面積不確定性較高,無法通過設定面積閾值將其濾去。觀察左側,不難看出左側圖像的灰度值分布較為混亂,所以通過計算圖像 X 方向的信息熵將其濾去。
圖像信息熵表征了圖像中平均信息量的多少,在圖像中表示灰度值的混亂度。圖像的一維熵表示圖像中灰度分布的聚集特征所包含的信息量。計算圖像的每一列的信息熵,通過設定閾值 K,通過與閾值 K 比較判定該列屬于粗糙面。若判定為真,將該列像素全部置為 255。圖像的一維信息熵計算公式如式(9)所示: 255 0 log i i i H p p ??? (9) 式中 pi表示灰度值為 i 的值占該列像素灰度值的比例。H 表示一維信息熵。通過信息熵判定后,得到粗加工圖像灰度值三維圖如圖 7(b)所示:
通過信息熵判定濾去黑斑,粗加工表面形貌接近精加工表面,在對粗加工表面進行連通域濾去刀花,使縫隙的邊緣清晰可見,便于提取。
2.3 圖像縫隙提取
待測圖像分類并預處理之后,通過 Otsu 算法將圖像二值化。將圖像以 y 方向劃分為 64 個線像素。經二值化處理后,縫隙的部分在圖像中的值為 0。縫隙計算方法的偽代碼如算法 2 所示。首先統計每一行線像素中像素值為 0 的個數。通過設定閾值 threshold1 和 threshold2 濾除由系統誤差導致的縫隙過大或過小的情況。最后返回像素個數的均值[14]。
3 實驗標定
3.1 視覺檢測系統
待測固體火箭發動機殼體直徑為 120mm,固體火箭該發動機殼體勻速旋轉,系統將連續采集多組小樣本圖像,樣本圖像尺寸為 0.76mm×5mm,降低了固體火箭發動機殼體曲率對縫寬測量帶來的非線性誤差。視覺測量系統工作裝置如圖 8 所示。
圖中,通過氣缸的工作將發動機固定住,并且將內窺鏡伸到工作位置,圖像通過內窺鏡傳到相機,再通過相機傳輸到上位機處理。
硬件部分,相機采用圖像采集設備由高分辨率 CCD 黑白相機型號為 MER-1070-10GM,光源選擇 8mm 同軸 LED 點光源,型號 HY-D3520,鏡頭選用千萬像素級別 25mm 定焦鏡頭,型號為 WP-10M2514-C。經過多次試驗,測得最佳相機參數為:鏡頭工作距離為 110~130mm;光圈 F 為 6~8;相機曝光時間為 7000μs;圖像采集幀率為 14Hz。
軟件部分,神經網絡通過 Tensorflow 的 Keras 編程接口,通過手動獲取數據集,訓練導出模型 model 文件。內縫計算在 VC++環境下實現。
3.2 縫寬測量
為了驗證本方法的有效性,針對兩種情況,由專業檢測人員利用塞尺各得到 15 組不同縫寬值。視覺系統計算值與人工測量數據如表 3 所示。
以表 3 中數據作為基準,通過 RANSAC[15]算法,將得到的視覺計算值與人工測量值進行擬合。擬合結果如圖 9 所示。
由于固體火箭發動機殼體內表面粗加工面發生了漫反射,導致相同光照條件下,縫隙圖像較精加工面顯得更窄。與此同時,信息熵判定濾去粗糙面時亦會使縫隙變窄。導致粗加工面的圖像擬合直線的權重略低于精加工面的圖像權重。最終得到粗加工面與精加工面的視覺測量修正式如式(10): =1.875 * +0.08 =1.628 * +0.05 Y X Y X ?????粗 粗精 精 (10) 式中 X,Y 分別為標定前和標定后的縫寬。在固體火箭發動機殼體旋轉一周的過程中,工業相機勻速采集 60 張縫隙圖像。計算 60 張圖像縫寬修正值的期望,將期望作為視覺系統輸出的最終修正值。在[0.1,0.6]之間取出 15 位專業人士檢測數據,與視覺系統輸出的最終修正值進行誤差分析,分析結果如表 4 所示。
表 4 中的結果顯示專業檢測人員利用塞尺測量值與視覺修正值的最大測量誤差均小于 0.02mm,說明本文算法可以滿足縫寬質量檢測的需要。
4 結 論
針對固體火箭發動機殼體內表面縫隙縫寬測量問題,提出了一種基于雙路 FNN 網絡的火箭發動機殼體內縫檢測方法。該方法通過 CCD 相機采集固體火箭發動機殼體內表面縫隙圖像。通過雙路 FNN 網絡將其分為精加工面和粗加工面兩種情況。分類精度達到 98.8%。并將精加工面、粗加工面的圖像經過圖像處理除去噪聲。在通過邊緣提取定位獲得縫寬值,最后通過標定消除系統誤差得到縫隙的實際寬度。對 0.1mm~0.6mm 的縫隙進行實驗。結果表明,該方法的誤差在 0.02mm 以內,為產品的質量和可靠性提供了重要保障。
論文指導 >
SCI期刊推薦 >
論文常見問題 >
SCI常見問題 >