肖夢輝,李軍成,彭秧錫
一種陶瓷瓶內(nèi)壁裂紋檢測算法
肖夢輝1,李軍成1,彭秧錫2
(1. 湖南人文科技學(xué)院 數(shù)學(xué)與金融學(xué)院,湖南 婁底 417000;2. 湖南人文科技學(xué)院 材料與環(huán)境工程學(xué)院;精細陶瓷與粉體材料湖南省重點實驗室,湖南 婁底 417000)
為了準確地對陶瓷瓶內(nèi)壁進行裂紋檢測,提出了一種基于數(shù)字圖像處理技術(shù)的陶瓷瓶內(nèi)壁裂縫檢測算法。首先對所獲取的陶瓷瓶內(nèi)壁圖片進行光照和去噪處理,并利用圖像增強提高陶瓷瓶內(nèi)壁圖像的對比度;然后通過圖像分割和連通域算法標記各連通域;最后通過對連通域進行檢測來判斷是否為裂紋,并將檢測出的裂紋進行定位。仿真實驗結(jié)果表明,所提出的算法能準確地檢測出條形裂紋、橫向裂紋、縱向裂紋等常見的陶瓷瓶內(nèi)壁裂紋。
陶瓷瓶;內(nèi)壁;裂紋檢測;裂紋定位;圖像處理
裂紋廣泛存在金屬零部件、混凝土建筑物、玻璃與陶瓷制品等結(jié)構(gòu)物中,一旦裂紋發(fā)展到容易被人眼發(fā)現(xiàn)時,往往會造成較為嚴重的后果。因此,對裂紋進行準確有效地檢測一直以來都是工業(yè)、工程領(lǐng)域重要的研究課題。例如,胡世昆[1]基于數(shù)字圖像處理技術(shù)比較了不同算法進行路面裂紋檢測的效果;楊舒曼[2]對精密鑄件裂紋圖像連通區(qū)域進行幾何特征計算,選取圓形度作為檢測缺陷的特征參數(shù),并通過設(shè)置圓形度閾值實現(xiàn)了精密鑄件裂紋的檢測;孫文雅等[3]在對管道圖像進行邊緣檢測的基礎(chǔ)上利用閾值分割得到二值化裂紋圖像,再進行去噪和連通域的標記實現(xiàn)管道裂縫的檢測;Zhu等[4]進行了高溫下疲勞裂紋擴展的測試和評估,旨在評估在室溫和高溫下承受疲勞載荷的金屬合金的裂紋擴展性能和剩余壽命;Tong等[5]在標準緊湊型拉伸試樣的模型材料裝卸過程中,現(xiàn)場測量了裂紋尖端后面選定位置處的表面裂紋開口位移以及裂紋尖端之前近尖端位移和應(yīng)變的演變; Piombo等[6]研究了中心裂紋對石墨烯力學(xué)性能的影響,在石墨烯片的中心考慮了8個不同的裂紋并且繪制了具有不同拉伸應(yīng)變速率的缺陷石墨烯片的應(yīng)力-應(yīng)變曲線;Lepore等[7]分析模擬了攪拌摩擦焊接樣品中的疲勞裂紋擴展;Rodriguez等[8]研究了混凝土構(gòu)件的剪切裂縫模式,提出了一種獲得混凝土構(gòu)件中剪切裂紋模式的實驗方法;等等。由此可見,裂紋檢測問題的研究幾乎已經(jīng)滲透到工業(yè)、工程所有領(lǐng)域中。
因陶瓷具有原材料采集方便、燒制快捷、實用衛(wèi)生、價格低廉等特點,陶瓷制品已成為人們?nèi)粘I钪械囊环N常見物品。為了滿足人們的不同需求,陶瓷的種類也變得多樣化。由于陶瓷自身的物理結(jié)構(gòu)性質(zhì)在生產(chǎn)過程中容易產(chǎn)生裂紋,而陶瓷裂紋的存在一直困擾著陶瓷產(chǎn)業(yè)的經(jīng)濟效益和生產(chǎn)率的提高。因此,對陶瓷制品,特別是對電子陶瓷產(chǎn)品進行裂紋檢測,一直以來都是重要的研究課題。為了實現(xiàn)對陶瓷制品的無接觸裂紋檢測,國內(nèi)外學(xué)者提出了許多方法。其中,利用數(shù)字圖像處理技術(shù)進行陶瓷制品的裂紋檢測成為一種主要的手段。例如,張軍等[9]首先使用自適應(yīng)形態(tài)學(xué)進行圖像預(yù)處理,然后通過小波變換和形態(tài)學(xué)融合的差影法實現(xiàn)瓷磚的裂紋檢測;于彬[10]首先對采集的陶瓷瓶圖像進行降噪處理,然后計算出二值化圖像的周長和面積,最后利用圓形度的指標來判斷陶瓷瓶是否存在裂紋;張力等[11]首先對陶瓷瓶圖像進行光補償和平滑處理,然后圖像二值化將裂紋和背景分離開,最后通過圓形度公式計算圓形度判斷陶瓷瓶是否為裂紋;等等。
雖然目前已有文獻對陶瓷制品裂紋檢測進行了研究,但鮮有文獻討論陶瓷瓶內(nèi)壁的裂紋檢測問題。然而,在陶瓷瓶的生產(chǎn)過程中,流水線上的陶瓷瓶內(nèi)壁經(jīng)常會出現(xiàn)裂紋,而帶有裂紋的陶瓷瓶一旦有液體裝入,非常容易引發(fā)破裂、泄露等危險。因此,對陶瓷瓶內(nèi)壁進行裂紋檢測具有非常重要的現(xiàn)實意義。為此,本文提出了一種基于數(shù)字圖像處理技術(shù)的陶瓷瓶內(nèi)壁裂紋檢測算法,實現(xiàn)對陶瓷瓶內(nèi)壁是否存在裂紋的準確檢測。
隨著計算機軟硬件的發(fā)展以及數(shù)字圖像處理技術(shù)的不斷進步,使得利用計算機準確的自動識別目標物圖像是否存在裂紋成為現(xiàn)實。利用計算機自動識別目標物圖像的裂紋,不僅可以提高檢測裂紋的速率,而且在一定程度上消除了人們的主觀意識導(dǎo)致檢測的錯誤,提高了生產(chǎn)效率。
為了對陶瓷瓶內(nèi)壁圖像是否存在裂紋進行準確的檢測,本文基于數(shù)字圖像處理技術(shù)設(shè)計的一種用于陶瓷瓶內(nèi)壁裂紋檢測的算法,算法流程如圖1所示。
圖1 陶瓷瓶內(nèi)壁裂紋檢測算法流程
在陶瓷瓶內(nèi)壁圖像的采集過程中,由于受到物體之間相互遮擋以及環(huán)境光照條件多變等因素的影響,常常會使得場景的光照不均勻。主要表現(xiàn)為陶瓷瓶內(nèi)壁圖像中亮的區(qū)域光線過強,而暗的區(qū)域光線照度不夠,從而導(dǎo)致陶瓷瓶內(nèi)壁圖像中一些重要的細節(jié)信息無法顯示甚至被掩蓋掉,使得陶瓷瓶內(nèi)壁圖像的視覺效果和應(yīng)用價值被嚴重影響。因此,對獲取的陶瓷瓶內(nèi)壁圖像進行光照處理,降低光照不均勻?qū)D像中裂紋識別的影響程度,保護圖像中重要的細節(jié)信息,為裂紋的后續(xù)檢測奠定了良好的基礎(chǔ)。本文采用基于伽馬函數(shù)的光照不均勻圖像自適應(yīng)校正算法[12]對陶瓷瓶內(nèi)壁圖像進行光照處理,算法步驟為:
Step1:利用多尺度高斯函數(shù)提取出場景的光照分量。
Step2:構(gòu)造一種伽馬函數(shù)。
將陶瓷瓶內(nèi)壁圖像進行光照處理后,再對圖像進行灰度化,然后對灰度圖像進行二次光照處理。對陶瓷瓶內(nèi)壁灰度圖像的光照處理算法步驟為:
Step1:首先找出灰度圖像的最大灰度值和最小灰度值。
Step2:計算兩者的差并除以255作為整幅圖像的亮度倍數(shù)。
Step3:循環(huán)遍歷圖像,設(shè)置一個3×3的鄰域,計算鄰域內(nèi)的最小值,然后用灰度圖像的當(dāng)前像素值減去鄰域內(nèi)的灰度圖像素最小值并乘以整體亮度倍數(shù),最后將該值賦予灰度圖像的當(dāng)前像素值作為新的像素值,計算式為:
式中,max()為灰度圖像最大值;min()為灰度圖像最小值;為鄰域;(,)為灰度圖像的當(dāng)前像素值;min()為鄰域內(nèi)灰度圖像的最小值;(,)為處理后的像素值。
在獲取陶瓷瓶內(nèi)壁裂紋圖像時難免會混入噪聲,從而影響裂紋的識別,需要對陶瓷瓶內(nèi)壁圖像進行去噪處理。由于中值濾波器具有去除噪聲的同時能夠很好地保護圖像邊緣的這一特征;高斯濾波則可以降低圖像之中的存在的高斯噪聲,同時也可以得到較好的圖像邊緣特征。因此,本文采取中值濾波和高斯濾波對陶瓷瓶內(nèi)壁圖像進行去噪處理。
二維中值濾波的輸出公式為:
式中,(,)為輸出圖像;(,)為輸入圖像;為濾波模板。選取窗口模板大小為(2×+1)×(2×+1),高斯濾波模板中各個元素值的計算式為:
式中,為標準差;為核矩陣維數(shù)。這樣計算出來的模板有小數(shù)和整數(shù)兩種形式,小數(shù)形式的模板是直接計算得到的值,沒經(jīng)過任何處理;整數(shù)形式的模板,則需要進行歸一化處理,將模板左上角的值歸一化為1。使用整數(shù)模板時,需要在模板前加一個權(quán)值,權(quán)值取為模板系數(shù)和的倒數(shù),即取為:
陶瓷瓶內(nèi)壁圖像經(jīng)過初始去噪處理后,再經(jīng)過勻光處理,然后使用中值和均值混合濾波器[13]對圖像進行處理,算法步驟為:
Step1:選取3×3的鄰域窗口,將鄰域內(nèi)的所有像素值進行排序,找到鄰域內(nèi)的像素值的中值;
Step2:將該中值賦給排序后的前三個值和后三個值。
Step3:對鄰域內(nèi)的所有像素值求像素的平均值。
Step4:將該平均值賦予當(dāng)前的像素值作為新的像素值。
Step5:重復(fù)以上步驟,直至遍歷完圖像。
通過對獲取的陶瓷瓶內(nèi)壁圖像進行增強處理,可以增強圖像的對比度,使得圖像中的裂縫變得清晰,方便后續(xù)的裂紋檢測。對陶瓷瓶內(nèi)壁圖像進行增強處理的算法步驟為:
Step1:計算出整個圖像中所有的像素點的均值MES。
Step2:計算出當(dāng)前的像素點與其八鄰域內(nèi)的均值MEA,則增強的倍數(shù)=MES/MEA。
Step4:若當(dāng)前像素點鄰域內(nèi)的均值大于圖像所有像素點的均值,則為判斷該像素點與裂紋點無關(guān)。大于1,那么將會使鄰域內(nèi)圖像像素點增大,使得該鄰域內(nèi)的圖像視覺上感覺變亮。若當(dāng)前像素點鄰域的均值小于圖像所有像素點的均值,則判斷當(dāng)前像素點可能與裂紋有關(guān)。小于1,那么將會使該鄰域內(nèi)像素點變小,使得該鄰域內(nèi)的圖像視覺上感覺變暗。通過該操作可以增大圖像的對比度,凸顯圖像中存在的裂紋。
1.4.1 閾值分割
對經(jīng)過上述處理后的陶瓷瓶內(nèi)壁圖像進行閾值分割,將圖像分為背景和前景兩部分。本文采用閾值迭代法[14]對陶瓷瓶內(nèi)壁圖像進行分割,算法步驟為:
Step1:設(shè)置參數(shù)0,設(shè)定一個初始閾值1。
Step2:使用設(shè)置的初始閾值分割圖像,將圖像分割為大于初始閾值和小于等于初始閾值的兩部分圖像。
Step4:如果2與1的差的絕對值大于設(shè)置的參數(shù),將2賦值給1,然后重復(fù)Step2—Step4,直到獲得最優(yōu)閾值;反之,2就為最優(yōu)閾值。
1.4.2 邊緣檢測
邊緣檢測的實質(zhì)是采用某種算法來提取出圖像中對象與背景間的交界線。本文采取Canny算子[15]對上述處理后的陶瓷瓶內(nèi)壁圖像進行邊緣檢測,步驟為:
Step1:對輸入的圖像進行高斯平滑。
Step2:計算梯度幅度和方向來確定每一點的邊緣強度和方向。
Step3:根據(jù)梯度方向,對梯度幅度進行非極大值抑制。
Step4:使用雙閾值處理和連接邊緣。
1.5.1 連通域檢測與形態(tài)學(xué)處理
對圖像進行邊緣檢測之后,再對圖像進行連通域的標記及處理。連通域標記算法[20]步驟為:
Step1:按照從左到右,從上到下的順序依次遍歷二值圖像,如果該點值為1(白色)且未被標記,則對該點進行標記,并以該點為中心點,掃描其四鄰域。
Step2:若發(fā)現(xiàn)四鄰域內(nèi)存在白色且未被標記的點,則對該點進行標記并掃描其四鄰域。
Step3:返回Step2,直到不存在滿足情況的點,則該連通塊搜索結(jié)束。
Step4:返回Step1,直至遍歷完二值圖像,則所有連通塊搜索結(jié)束。
另外,陶瓷瓶內(nèi)壁圖像進行二值化處理之后,圖像會存在裂紋的不連續(xù)情況,此時還需對圖像進行開運算和閉運算以及腐蝕和膨脹等操作將裂紋變得連續(xù)。
1.5.2 裂紋檢測與定位
對于陶瓷瓶內(nèi)壁裂紋圖像來說,其面積只與裂紋的邊緣有關(guān),與圖像內(nèi)部的灰度級變化無關(guān)。計算裂紋面積最簡單的一種方法是統(tǒng)計裂紋邊界及內(nèi)部像素點的個數(shù)。
判斷陶瓷瓶內(nèi)壁是否存在裂紋的步驟為:
Step1:周長是連通域邊緣像素點的個數(shù)的集合,面積是連通域內(nèi)所有像素點的集合。若周長小于面積,則判斷該連通域不是裂紋。
Step2:連通域的周長大于其面積,計算出該連通域的圓形度,設(shè)置閾值為3。若運行度大于或等于閾值,則該連通域被認為是裂紋,否則不是裂紋。
在上述步驟中,連通域面積的計算方法為:遍歷每個連通域,計算出各連通域像素點的個數(shù)作為圖像的面積。連通域周長的計算方法為:對每個連通域求出邊界,然后對裂紋的邊界進行遍歷,計算邊界像素點的個數(shù)作為圖像的周長。圓形度的計算公式為[21]:
式中,為連通域的周長;為連通域的面積;C為圓形度。
對檢測的裂紋進行定位,算法步驟為:
Step1:對得到的二值化圖像的每個連通域分別進行全局的掃描。
Step2:對圖像進行從上到下的掃描,記錄第一個白色像素點的位置為(1,1)。
Step3:對圖像進行從下到上的掃描,記錄第一個白色像素點的位置為(2,2)。
Step4:對圖像進行從左到右的掃描,記錄第一個白色像素點的位置為(3,3)。
Step5:對圖像進行從右到左的掃描,記錄第一個白色像素點的位置為(4,4)。
Step8:每次定位的一條裂紋將其存儲到一個矩陣中,最終組成一幅定位出所有裂紋的圖像。
選取三幅帶有裂紋的陶瓷內(nèi)壁圖像進行仿真實驗,如圖2所示。
圖2 實驗圖像
分別對幅實驗圖像進行光照處理,降低光照對識別裂紋的影響。進行光照處理后的結(jié)果如圖3和圖4所示。
圖3 伽馬函數(shù)校正后的圖像
圖4 灰度光照處理后的圖像
對所有的實驗圖像進行兩次光照處理后,已經(jīng)能夠看出明顯的裂紋輪廓。但是,圖像中存在大量的噪聲,需要對圖像進行去噪處理,去噪處理后的圖像如圖5所示。
圖5 去噪后的圖像
對圖像進行去噪后,雖然去除了圖像中存在的大量噪聲。但是,圖像中的花紋背景以及圖像的亮暗分界線也會被顯示出來。因此,需要對圖像進行增強處理提高圖像的對比度,增強后的圖像如圖6所示。
圖6 增強處理后的圖像
進行圖像增強后的圖像已經(jīng)能夠明顯看出裂紋,但此時的圖像為double型,需要對圖像進行圖像分割,將圖像分為背景和前景兩部分,圖像分割后的結(jié)果如圖7和圖8所示。
圖7 閾值分割后的圖像
圖8 Canny算子邊緣檢測結(jié)果
進行閾值分割后的圖片出現(xiàn)一些間斷,以及邊緣部分出現(xiàn)孤立“白點”的現(xiàn)象,對這些現(xiàn)象進行形態(tài)學(xué)處理和連通域處理并通過設(shè)置的裂紋判斷算法檢測和處理裂紋。進行裂紋檢測時,計算得到三幅實驗圖像的連通域的屬性表分別如表1—表3所示,裂紋檢測結(jié)果如圖9所示。
表1 圖像1的連通域?qū)傩?/p>
Tab.1 Connected domain attribute of image 1
表2 圖像2的連通域?qū)傩?/p>
Tab.2 Connected domain attribute of image 2
表3 圖像3的連通域?qū)傩?/p>
Tab.3 Connected domain attribute of image 3
圖9 裂紋檢測結(jié)果
最后,對裂紋進行定位,結(jié)果如圖10所示。
圖10 裂紋定位結(jié)果
通過對陶瓷內(nèi)壁中帶有較淺花紋的縱向裂紋圖像、光照不均勻的縱向裂紋圖像、帶有淺花紋的橫向裂紋圖像等進行仿真實驗,發(fā)現(xiàn)本文提出的算法能夠去除帶有光照不均而導(dǎo)致的光暗分界線,也能夠消除邊緣旁邊出現(xiàn)的孤立點。換言之,本文提出的算法能夠較好地檢測出條形裂紋、橫向裂紋、縱向裂紋。但是,該算法對于網(wǎng)狀裂紋檢測效果有待提高。
本文提出了一種基于數(shù)字圖像處理技術(shù)的陶瓷內(nèi)壁圖片裂紋檢測算法。算法主要包括光照處理、圖像去噪、圖像增強、圖像分割、裂紋檢測與定位等環(huán)節(jié)。通過仿真實驗結(jié)果可知,本文提出的算法能準確地檢測出陶瓷瓶內(nèi)壁存在的裂紋,特別對條形裂紋、橫向裂紋、縱向裂紋的檢測具有較好的效果,為陶瓷瓶制品的檢測提供了一種有效方法。
[1] 胡世昆. 基于數(shù)字圖像處理技術(shù)的路面裂縫檢測算法研究[D]. 南京郵電大學(xué), 2012.
[2] 楊舒曼. 基于圖像處理的精密鑄件裂紋檢測系統(tǒng)研究[D]. 太原科技大學(xué), 2017.
[3] 孫文雅, 李天劍, 黃民, 等.基于圖像處理的管道裂縫檢測[J]. 制造業(yè)自動化, 2012, 34(1): 36-39.
[4] Zhu Y T, Xiong J J, Lv Z Y, et al. Testing and evaluation for fatigue crack propagation of Ti-6Al-4V/ELI and 7050-T7452 alloys at high temperatures [J]. Chinese Journal of Aeronautics, 2018, 31(6): 1388-1398.
[5] Tong J, Alshammrei S, Wigger T, et al. Full-field characterization of a fatigue crack: crack closure revisited [J]. Fatigue & Fracture of Engineering Materials & Structures, 2018, 41(10): 2130-2139.
[6] Piombo A, Dragoni M. A model for crack initiation in solidifying lava [J]. Journal of Geophysical Research: Solid Earth, 2018, 123(10): 8445-8458.
[7] Lepore M A, Maligno A J, Berto F. Crack closure in friction stir weldment using non-linear model for fatigue crack propagation [J]. Fatigue & Fracture of Engineering Materials & Structures, 2019, 42(11): 2596-2608.
[8] Rodriguez G, Casas J R, Villalba S. Shear crack pattern identification in concrete elements via distributed optical fibre grid [J]. Structure and Infrastructure Engineering, 2019, 15(12): 1630-1648.
[9] 張軍, 張海云, 趙玉剛,等.基于機器視覺的瓷磚裂紋檢測[J]. 包裝工程, 2018, 39(9): 146-150.
[10] 于彬. 基于數(shù)字圖像處理的陶瓷瓶裂紋檢測研究[D]. 武漢理工大學(xué), 2007.
[11] 張力, 吳敏綱, 李昱. 數(shù)字圖像處理在陶瓷瓶裂紋檢測的應(yīng)用研究[J]. 福建電腦, 2017, 33(7): 134-166.
[12] 劉志成, 王殿偉, 劉穎, 等. 基于二維伽馬函數(shù)的光照不均勻圖像自適應(yīng)校正算法[J]. 北京理工大學(xué)學(xué)報, 2016, 36(2): 191-196.
[13] 李康. 一種改進濾波算法的研究與應(yīng)用——腦部CT醫(yī)學(xué)圖像去噪方法研究[J]. 科技與創(chuàng)新, 2016(16): 108-110.
[14] 孫貴忠. 數(shù)字圖像處理基礎(chǔ)與實踐(MATLAB版)[M]. 北京: 清華大學(xué)出版社, 2016.
[15] 余承樂, 柳炳祥. 基于IMP-Canny算子的古陶瓷裂紋檢測研究[J]. 陶瓷學(xué)報, 2017, 38(1): 103-107.
[16] 何立風(fēng), 高啟航, 趙曉, 等. 一種二值圖像物體形狀特征計算方法[J]. 陜西科技大學(xué)學(xué)報, 2018, 36(1): 143-147.
[17] 牛立聰, 孫香花, 左曉寶. 基于Matlab圖像處理的砂石顆粒圓形度計算方法[J]. 混凝土, 2012, 1: 10-12.
A Detection Algorithm for Inner Wall Crack of Ceramic Bottles
XIAO Menghui1, LI Juncheng1, PENG Yangxi2
(1. College of Mathematics and Finance, Hunan University of Humanities, Science and Technology, Loudi, 417000, Hunan, China; 2. Hunan Provincial Key Laboratory of Fine Ceramics and Power Materials, College of Materials and Environmental Engineering, Hunan University of Humanities, Science and Technology, Loudi, 417000, Hunan, China)
In order to detect the crack on the inner wall of ceramic bottles accurately, a crack detection algorithm based on digital image processing technology is proposed. Firstly, the images of the inner wall of the ceramic bottles are illuminated and denoised, and the contrasts of the images of the inner wall of the ceramic bottles are improved by image enhancement. Then, the connected regions are marked by image segmentation and connected region algorithm. Finally, the connected regions are detected to determine whether they are cracks, and the detected cracks are located. The simulation results show that the proposed algorithm can accurately detect the cracks on the inner wall of ceramic bottles, such as strip cracks, transverse cracks and longitudinal cracks which are the common types of crack.
ceramic bottle; inner wall; crack detection; crack location; image processing
TQ174.79
A
1006-2874(2020)04-0043-06
10.13958/j.cnki.ztcg.2020.04.010
2020?03?19。
2020?03?21。
婁底市應(yīng)用技術(shù)研究與開發(fā)項目和湖南省科技計劃項目(2016TP1028)資助。
李軍成,男,博士,教授。
2020?03?19.
2020?03?21.
LI Juncheng, male, Ph.D., Professor.
lijuncheng82@126.com