榮輝平 曹斌芳 魯洋陽 朱琰
湖南文理學院 物理與電子科學學院,湖南常德 415000
泡沫鎳是通過對鎳金屬進行一系列物理化學加工后得到的一種新型功能材料,作為車用電池的基材,泡沫鎳對電池性能的影響極大[1]。在生產過程中,由于原料、軋制設備、加工工藝(凈化、熱解和還原等)等方面因素,導致泡沫鎳表面出現污染,壓痕、折痕、鎳皮、裂紋、劃線、漏鍍等缺陷,這些缺陷嚴重影響最終成品的性能和質量,因此需要快速地檢測和識別泡沫鎳表面缺陷,為后續(xù)處理做準備。
泡沫鎳表面缺陷檢測與識別的關鍵是提取出能表征泡沫鎳缺陷的特征。近些年來,國內外很多學者研究并提出了多種圖像紋理特征提取方法,討論了基于紋理的缺陷識別方法[2-3]。其中不少學者采用灰度共生矩陣(Gray-Level Co-occurrence Matrix,GLCM)的統(tǒng)計方法實現對紋理特征的描述[4-5],但這種方法與人類視覺習慣差異性較大,且紋理描述不夠精確,同時巨大的計算量也成為其不可避免的缺點。
局部二值模式(Local Binary Pattern,LBP)是基于圖像區(qū)域結構特性出發(fā)的非參數算子,最先被Ojala等人提出用來協(xié)助衡量局部灰度對比度[6]。LBP算子具有灰度不變性和旋轉不變性,具有易理解、鑒別能力強、對光照和旋轉敏感度低的特點,常用來描述圖像局部紋理特征,揭示了局部灰度變化,并且具有計算量小的特點,已在相關領域獲得廣泛應用[7-8]。
本文主要研究基于LBP的泡沫鎳紋理特征提取方法。首先分析泡沫鎳材料的特點以及缺陷類型,其次研究LBP用于圖像紋理特征提取的方法,并對經典LBP、旋轉不變LBP以及均勻LBP進行了比較,最后通過實驗說明本文方法的有效性。
泡沫鎳生產過程中由于原料、軋制設備、加工工藝(凈化、熱解和還原等)等因素,會產生污染、壓痕、折痕、裂紋、劃線和漏鍍幾類缺陷。其中,污染指產品表面受油、塵、蚊蠅、爐膛內冷凝水等化學物質沾污而引起的局部顏色變化;壓痕指產品表面因碰撞、擠壓等導致的凹陷;折痕指產品受折壓經展平后出現的條形損傷,對光觀察不透光;刮傷指尖銳物在半成品表面劃過而留下縱向平直、深而細長的痕跡,側光感強。幾種典型的表面缺陷樣本如圖1所示。
泡沫鎳表面呈銀灰色的金屬光澤,形態(tài)類似于金屬海綿,質量上要求表面平整、無劃傷、無裂紋、無破損、無油污和無氧化。從不同缺陷的成因其表征可知,缺陷信息表現為復雜的紋理狀,因此有效地提取泡沫鎳紋理特征是缺陷識別的基礎。
在特征提取之前需要對圖像進行預處理,從而使圖像更加清晰。圖像預處理是為了凸顯需提取處理的目標,消滅多余信息,讓后續(xù)進一步檢測變得容易,并且最大可能地讓數據變得簡單,從而提高特征提取、識別分類的可靠性。
本文根據三種泡沫鎳表面缺陷圖的特點,采用巴特沃斯同態(tài)濾波收縮圖像亮度界線,增強圖像缺陷,同時抑制圖像無關背景,利用灰度變換加強畫面中明暗差異程度,凸顯目標細節(jié),優(yōu)化整體畫面,用均衡化方法提升畫面清晰度,再對圖像進行銳化,使圖像缺陷變得清晰,最后用小波去噪增強圖像缺陷信息,預處理后的圖像如圖2所示。
從三類缺陷圖像的預處理結果可以看出,在進行預處理后,污染和壓痕兩種缺陷圖中背景對缺陷的干擾較大,缺陷不夠突出,而刮傷圖像進行預處理后,能比較好地將背景和缺陷進行分離,重點突出了缺陷,達到了較好的效果。三種缺陷圖不同的預處理效果對于之后采用LBP紋理特征提取會產生不同的影響。
LBP算法的核心思維是利用紋理單元的概念,把圖像分為很多個窗口,以窗口中心點相鄰點的灰度值與中心灰度值之差和閾值比較做二值化處理,量化為0和1。然后根據順時針方向將這些值進行加權求和,得到該窗口的LBP編碼值,如式(1)所示。
其中,s(x) —符號函數;
gp—表示各個鄰域點的灰度像素值;
gc—表示紋理單元T的中心像素灰度值;
P—鄰域大小;
R—半徑。
為了打破LBP算子本身存在的無法提取大尺度紋理特征的局限性,Ojala等人對LBP算子進行了改進[6],提出了一種均勻模式的LBP算子,根據定義均勻模式表示二進制序列中的0和1之間的變換次數小于或等于2的模式。均勻模式包含了圖像的斑點、角點、線、邊緣等主要微模式。由于這些模式占據總模式的絕大多數,所以極大地降低了特征維數,維數由原來的2P減少到P(P-1)+3,可以在均勻LBP的基礎上引入旋轉不變性,進而繼續(xù)降低其維度,如此便得到旋轉不變的均勻二值模式:
表1 三種算子實際仿真維度
中的riu—旋轉不變均勻模式;
U(LBPP,R) —跳變次數小于或等于2的均勻模式。
觀察公式(2)可以知道,旋轉不變的均勻二值模式有P+2種取值可能,所有的非均勻模式都算在第P+2維中,前P+1維均為均勻模式。
根據以上分析,每個通過LBP算子提取的紋理圖像都有一個特征直方圖,橫坐標表示的是LBP模式值,縱坐標表示各個模式值的頻率。表1給出的是這三種模式在不同參數下實際仿真維度的比較。
通過上述分析,本文采用旋轉不變均勻LBP算子對泡沫鎳表面污染缺陷圖像進行特征參數提取,其中,參數設置為(P,R)=(8, 1),對經過預處理的泡沫缺陷圖像(圖2)進行特征提取,分別如圖3(a)、圖4(a)和圖5(a)所示,然后對上述紋理圖像進行分塊處理,得到的分割子圖像如圖3(b)、圖4(b)和圖5(b)所示,最后計算獲得每個小塊的特征直方圖,分別如圖3(c)、圖4(c)和圖5(c)所示。
從圖像提取到特征表達之后,一幅圖像可以使用一個固定維度的向量進行描述,特征提取完成以后,要對當前樣本圖像進行判別分類[3,9]。由于本文只是對LBP這一方法進行研究,接下來的分類及識別便不在這里展開。
本文研究了基于LBP算子的泡沫鎳表面缺陷特征提取方法,首先分析了泡沫鎳材料的特點以及缺陷類型,然后對泡沫鎳圖像進行預處理以及仿真。在預處理過程中,刮傷缺陷圖像處理的效果是最好的,其次是污染缺陷圖像和壓痕缺陷圖像,說明泡沫鎳表面缺陷的紋理在粗細、疏密方面有較大差別,然后研究局部二值模式(Local Binary Patterns,LBP)用于圖像紋理特征提取的方法,并對經典LBP、旋轉不變LBP以及均勻LBP進行了比較。通過實驗說明,旋轉不變的均勻LBP算子對泡沫鎳紋理特征的提取更有效,為進一步的缺陷識別奠定基礎。