亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        改進(jìn)Canny 算法在編織布疵點(diǎn)邊緣檢測(cè)中的應(yīng)用

        2021-04-08 10:27:28閆偉偉孫宏昌張樹剛田東閣蔣永翔
        關(guān)鍵詞:檢測(cè)

        閆偉偉,孫宏昌,張 廷,張樹剛,田東閣,蔣永翔

        (1.天津職業(yè)技術(shù)師范大學(xué)機(jī)器人及智能裝備研究所,天津 300222;2.呼倫貝爾職業(yè)技術(shù)學(xué)院,呼倫貝爾 021000;3.天津亞東智鑫科技有限公司,天津 300380)

        塑料編織袋廣泛應(yīng)用于各行各業(yè),因其具有較好的拉伸性能,可承載并有效保護(hù)質(zhì)量較大的產(chǎn)品,滿足了消費(fèi)者的使用需求。目前,傳統(tǒng)的編織布原料破損檢測(cè)主要依靠人工識(shí)別[1],檢測(cè)效率低下、誤判率高,檢測(cè)人員長(zhǎng)期視力集中易導(dǎo)致眼睛疲勞以及引發(fā)職業(yè)病。因此,在編織布檢測(cè)流程中應(yīng)用機(jī)器視覺檢測(cè)技術(shù)十分必要。

        破損編織布圖像中背景與缺陷邊緣、缺陷與缺陷邊緣特征是檢測(cè)破損的關(guān)鍵特征[2],因此在機(jī)器視覺技術(shù)中通常會(huì)引入圖像邊緣檢測(cè)技術(shù)。在圖像邊緣檢測(cè)中常用的一階邊緣檢測(cè)算子有:Roberts 算子[3]、Prewitt 算子[4]、Sobel 算子[5]、Scharr 算子[6]等;二階的邊緣檢測(cè)算子有:Laplacian 算子[7]、LoG 算子[8]、Canny 算子[9]等,這些算子的原理都是將圖像與特定大小的模板進(jìn)行卷積處理。上述算法簡(jiǎn)單,實(shí)用性強(qiáng),其中Canny 算子因其檢測(cè)精度高、信噪比高等優(yōu)勢(shì)在圖像處理領(lǐng)域中應(yīng)用廣泛。但由于Canny 算子中的高低閾值需要人為設(shè)定,過高的高閾值會(huì)導(dǎo)致邊緣斷裂,出現(xiàn)邊界不連續(xù)的情況而丟失邊緣細(xì)節(jié)信息;反之,過低的低閾值會(huì)出現(xiàn)偽邊緣。當(dāng)圖像光照情況發(fā)生變化時(shí),圖像整體灰度分布隨之變化,導(dǎo)致高低閾值需進(jìn)行相應(yīng)地修改,因此傳統(tǒng)Canny 算子在閾值的確定上缺乏實(shí)時(shí)性和自適應(yīng)性[10]。針對(duì)上述問題,文獻(xiàn)[11]提出了結(jié)合雙重Otsu 方法進(jìn)行高低閾值確定的算法,文獻(xiàn)[12]使用迭代閾值分割法和改進(jìn)Otsu 算法以選取高低閾值,實(shí)現(xiàn)邊緣檢測(cè)連接,文獻(xiàn)[13]利用梯度直方圖選取閾值。以上方法雖然提高了邊緣提取的檢測(cè)精度,但并沒有改善算法的自適應(yīng)性。本文提出一種改進(jìn)Canny 算法,旨在提高Canny 算子在織物疵點(diǎn)邊緣檢測(cè)中的準(zhǔn)確性和自適應(yīng)性。

        1 Canny 邊緣檢測(cè)算法

        傳統(tǒng)的Canny 邊緣檢測(cè)算法最初由John F.Canny提出,并設(shè)定了信噪比準(zhǔn)則、定位精度準(zhǔn)則、單一邊緣響應(yīng)準(zhǔn)則[14]來提高邊緣檢測(cè)精度。為滿足這3 條準(zhǔn)則,John F.Canny 在一階微分算子的基礎(chǔ)上,增加了2 項(xiàng)改進(jìn),即非極大值抑制和雙閾值。多邊緣響應(yīng)、邊緣的定位精度利用非極大值抑制來控制;雙閾值能減少邊緣的漏檢率。其檢測(cè)流程如圖1 所示。

        圖1 傳統(tǒng)Canny 邊緣檢測(cè)算法流程

        (1)利用二維線性高斯濾波器對(duì)目標(biāo)圖像進(jìn)行去噪。二維高斯函數(shù)與圖像進(jìn)行卷積處理以達(dá)到平滑圖像的效果,二維高斯函數(shù) G(x,y)為

        高斯函數(shù)與目標(biāo)圖像卷積公式為

        式中:σ 為高斯函數(shù)的標(biāo)準(zhǔn)差,其大小可以控制圖像的平滑程度;R(x,y)為高斯函數(shù)與輸入圖像進(jìn)行卷積處理之后的圖像;f(x,y)為輸入圖像;“*”代表卷積運(yùn)算。

        為提高運(yùn)算效率,可以將高斯函數(shù)轉(zhuǎn)化為高斯濾波模板[15],再與輸入圖像做卷積運(yùn)算得到平滑后的圖像。

        (2)計(jì)算梯度幅值和方向,利用Sobel 梯度模板[16]分別計(jì)算去噪后的圖像在像素點(diǎn)(x,y)處x 和y 方向上的偏導(dǎo)數(shù)。

        其在x 方向上的偏導(dǎo)數(shù)Ix為

        在y 方向上的偏導(dǎo)數(shù)Iy為

        式中:R(x,y)為像素點(diǎn)(x,y)處的像素值。

        則利用二范數(shù)計(jì)算其梯度幅值O 所得

        其梯度方向?yàn)?/p>

        (3)非極大值抑制(NMS)[17]旨在盡可能保留圖像灰度梯度幅值變化最大的點(diǎn),盡可能地抑制該范圍內(nèi)的干擾值,提高邊緣定位的準(zhǔn)確度。非極大值抑制的具體實(shí)現(xiàn)方法為:遍歷圖像的每一個(gè)像素點(diǎn),如果像素點(diǎn)R(x,y)處像素的梯度值不大于該梯度方向上相鄰2 個(gè)像素點(diǎn)的梯度值,則把點(diǎn)R(x,y)標(biāo)記為非邊緣點(diǎn);反之,像素點(diǎn)R(x,y)則被標(biāo)記為候選邊緣點(diǎn)。

        (4)滯后閾值化,人工確定1 個(gè)高閾值Th和1 個(gè)低閾值Tl,分別對(duì)經(jīng)過非極大值抑制處理之后的梯度圖做二值化處理,然后對(duì)邊緣點(diǎn)進(jìn)行選取和連接,具體方法為:掃描圖像的像素點(diǎn)(x,y),如果該點(diǎn)像素梯度值大于高閾值,則點(diǎn)(x,y)為邊緣像素;如果該點(diǎn)像素梯度值小于低閾值,則該點(diǎn)認(rèn)定為非邊緣點(diǎn);若像素點(diǎn)的梯度值處于高、低閾值之間,則進(jìn)一步檢查像素點(diǎn)(x,y)的 3 × 3 鄰域,如果在像素 3 × 3 的鄰域內(nèi)有梯度大于 Th的像素(x,y),則(x,y)為邊緣像素點(diǎn),否則視為非邊緣像素。

        2 改進(jìn)的Canny 邊緣檢測(cè)算法

        從上述Canny 邊緣檢測(cè)算子的檢測(cè)流程可以看出,由于進(jìn)行邊緣檢測(cè)和連接時(shí)所依據(jù)的高低閾值是人工設(shè)定的,因此對(duì)整幅編織布圖像進(jìn)行邊緣檢測(cè)時(shí)無法估計(jì)局部特征信息,隨著設(shè)定值的不同,所檢測(cè)物體的輪廓信息出現(xiàn)檢測(cè)出假邊緣或邊緣斷裂等情況,無法實(shí)現(xiàn)自適應(yīng)。另外,人工設(shè)定閾值會(huì)因經(jīng)驗(yàn)不同而產(chǎn)生誤差。針對(duì)傳統(tǒng)Canny 算子存在的不足,本文運(yùn)用雙重基本全局閾值分割算法[18],根據(jù)實(shí)時(shí)的光照環(huán)境變化自適應(yīng)地確定合適的高閾值和低閾值。改進(jìn)后的Canny 算法流程如圖2 所示。

        圖2 改進(jìn)Canny 算法流程

        2.1 基本全局閾值分割算法

        在一個(gè)灰度等級(jí)為L(zhǎng)(一般L=256)的圖像中,設(shè)有nm個(gè)灰度值為m 的像素,n 表示像素總個(gè)數(shù),其中n=n0+n1+…+nL-1,灰度圖像中灰度值m 像素點(diǎn)出現(xiàn)的概率用 p(m)表示,則

        其中,p(0)+p(1)+ … +p(L-1)=1,用初始閾值T0將圖像中的像素灰度值分成C0和C1兩大類,即C0={0,1,...,T0},C1={T0+1,T0+2…,L-1}。

        對(duì)于初始閾值T0的設(shè)置,可以先找出圖像中灰度最大的值hmax和灰度最小的值hmin,令T0為灰度最大的值hmax和灰度最小的值hmin的均值,這樣可以減少計(jì)算量,則有

        則C0和C1的分布概率分別為ω0和ω1

        式中:ω0為 C0的分布概率;ω1為 C1的分布概率,且ω0+ω1=1。

        C0部分像素點(diǎn)的灰度均值φ0(T)為

        C1部分像素點(diǎn)的灰度均值φ1(T)為

        對(duì)φ0(T)與φ1(T)求均值,有

        其中,T1是經(jīng)過一次迭代所得的一個(gè)閾值。

        2.2 Canny算子結(jié)合雙重基本全局閾值分割算法

        由上述對(duì)基本全局閾值分割算法的介紹可知,雙重基本全局閾值分割算法是先對(duì)梯度圖像賦予一個(gè)初始閾值T0,第一步使用上述方法獲取一個(gè)新的閾值T1,然后將T0和T1進(jìn)行比較,如果二者相等或是二者之差在一個(gè)允許的范圍內(nèi),返回T1,此時(shí)所得到的新閾值T1即為最優(yōu)閾值,將其設(shè)置為高閾值Th;否則繼續(xù)進(jìn)行迭代,直到相鄰2 次得到的閾值之差為0 或者在一個(gè)允許的范圍時(shí),終止迭代,最終得到最優(yōu)閾值。第二步在[0,Th]之間再次使用全局閾值分割法得到另一個(gè)最優(yōu)閾值,將其設(shè)置為低閾值,此時(shí)得到的高閾值和低閾值即可作為滯后閾值化操作所需的閾值。

        3 實(shí)驗(yàn)結(jié)果與分析

        為驗(yàn)證上述理論分析的可行性和有效性,在Python 3.7.0 環(huán)境下配置開源計(jì)算機(jī)視覺函數(shù)庫OpenCV4.2.0版本進(jìn)行測(cè)試。傳統(tǒng)Canny 檢測(cè)算法直接調(diào)用edge=cv2.Canny(image,threshold1,threshold2),image 為經(jīng)過灰度變換后的灰度圖像,threshold1、threshold2 分別為設(shè)定的低閾值和高閾值,edge 為檢測(cè)出的圖像邊緣二值圖。改進(jìn)后的算子中的高低閾值是經(jīng)過2 次全局閾值分割方法多次迭代得到的,不需人為設(shè)定。

        選取多幅不同缺陷類型的圖像對(duì)本文改進(jìn)算子和傳統(tǒng)算子的檢測(cè)效果進(jìn)行對(duì)比,其中傳統(tǒng)算法與改進(jìn)算法所用的高斯濾波模板大小均為3×3,標(biāo)準(zhǔn)差σ=1.4,計(jì)算梯度用一階Sobel 梯度模板,由于圖像整體灰度較低,傳統(tǒng)算法雙閾值中高閾值選擇為30,低閾值為15。

        圖3 為有瑕疵編織布的原圖,改進(jìn)算法所得閾值與傳統(tǒng)方法確定的閾值對(duì)比結(jié)果如表1 所示。從表1可以看出,改進(jìn)Canny 算法確定的閾值能根據(jù)圖像灰度分布自適應(yīng)確定高低閾值,提高了算法的自適應(yīng)性。兩種算法在處理同一幅圖像時(shí),采用改進(jìn)的方法多于傳統(tǒng)方法,這是因?yàn)樵诖_定Canny 算子的最優(yōu)閾值時(shí)需要額外的計(jì)算量,這就使得算法在時(shí)間復(fù)雜度上有一定的提高。

        圖3 瑕疵編織布原始圖像

        表1 編織布圖閾值比較

        采用改進(jìn)Canny 算法和傳統(tǒng)Canny 算法分別對(duì)其處理后,編織布圖檢測(cè)出的瑕疵邊緣像素占圖像整體像素比例情況如表2 所示。從表2 可以看出,改進(jìn)的Canny 邊緣檢測(cè)算法能檢測(cè)出更多的瑕疵邊緣像素。

        表2 編織布圖檢出邊緣像素占比 %

        傳統(tǒng)Canny 算法和改進(jìn)Canny 算法的檢測(cè)結(jié)果分別如圖 4 和圖 5 所示。由圖 4(a)、圖 5(a)中的標(biāo)記處可以看出,改進(jìn)方法檢測(cè)出破損編織布瑕疵的邊緣細(xì)節(jié)更多。由圖4(b)、圖5(b)小破損瑕疵可以看到,傳統(tǒng)算法對(duì)于編織布小破損情況下的檢測(cè)情況明顯不如改進(jìn)后的算法。圖5 中的打結(jié)和跳線瑕疵圖可以看出,改進(jìn)的算法邊緣檢測(cè)和連接的效果更好,這也為后續(xù)疵點(diǎn)檢測(cè)和打標(biāo)機(jī)標(biāo)記瑕疵布料提供了依據(jù)。

        圖4 傳統(tǒng)Canny 算法檢測(cè)圖

        圖5 改進(jìn)Canny 算法檢測(cè)圖

        4 結(jié) 語

        本文在傳統(tǒng)Canny 算子確定高閾值和低閾值的步驟中應(yīng)用2 次全局閾值分割方法,解決了其邊緣檢測(cè)算子在確定高低閾值方面自適應(yīng)能力差的問題。該算法能夠根據(jù)圖像整體灰度分布自適應(yīng)地確定合適的閾值,無需人為操作。實(shí)驗(yàn)結(jié)果表明,本算法檢測(cè)出的邊緣像素明顯增多,在邊緣像素連接方面的效果更好,而且能在一定程度上抑制假邊緣,提高了Canny算子在織物疵點(diǎn)邊緣檢測(cè)上的自適應(yīng)性。同時(shí),由于低閾值也是由算法根據(jù)圖像灰度分布計(jì)算得到的,因此能夠減少偽邊緣的產(chǎn)生,保證了后續(xù)疵點(diǎn)檢測(cè)和標(biāo)記的準(zhǔn)確性。本文的算法在自適應(yīng)性、邊緣檢測(cè)和連接方面相比傳統(tǒng)算法具有一定的優(yōu)勢(shì),但在檢測(cè)時(shí)間方面耗時(shí)比傳統(tǒng)算法長(zhǎng),對(duì)檢測(cè)效率有一定的影響,今后仍需進(jìn)一步研究。

        猜你喜歡
        檢測(cè)
        QC 檢測(cè)
        “不等式”檢測(cè)題
        “一元一次不等式”檢測(cè)題
        “一元一次不等式組”檢測(cè)題
        “幾何圖形”檢測(cè)題
        “角”檢測(cè)題
        “有理數(shù)的乘除法”檢測(cè)題
        “有理數(shù)”檢測(cè)題
        “角”檢測(cè)題
        “幾何圖形”檢測(cè)題
        国产男女无遮挡猛进猛出| 荡女精品导航| 欧美成人在线A免费观看| 国产一级黄色录像| 日本加勒比一区二区在线观看| 亚洲熟女天堂av一区二区三区| 性人久久久久| 国产在视频线精品视频| 88国产精品视频一区二区三区| 国产一品道av在线一二三区| 中国人妻沙发上喷白将av| 一级内射免费观看视频| 亚洲精品中文字幕一区二区| 日日摸天天碰中文字幕你懂的| 女人被弄到高潮的免费视频| 人妻少妇邻居少妇好多水在线 | 中文字幕日本av网站| 精品国品一二三产品区别在线观看| 久久人妻少妇嫩草av蜜桃| 欧美精品中文字幕亚洲专区| 99久久国产一区二区三区| 久久av粉嫩一区二区| 精品国产一区二区三区2021| 三年片大全在线观看免费观看大全| 福利片福利一区二区三区| 亚洲精品区二区三区蜜桃| 中文字幕本久久精品一区| 极品新婚夜少妇真紧| 精品不卡久久久久久无码人妻| 久久精品国产亚洲av蜜桃av| 国产偷国产偷亚洲综合av| 午夜免费视频| 国产一品道av在线一二三区| 中文字幕日本韩国精品免费观看| 国产一区二区三区的区| 亚洲 欧美 综合 在线 精品| 中文在线8资源库| 亚洲av无码片在线播放| 国产精品视频白浆免费看| 少妇高潮太爽了在线视频| 两个人看的www高清视频中文|