張 巖 趙玉濤 李光旭 鄭洲洲 張 森
(青島科技大學(xué)機(jī)電工程學(xué)院 青島 266061)
圖像邊緣通常是指其周圍像素灰度急劇變化的那些像素的集合,集中了圖像的大部分信息,是圖像最基本的特征之一。邊緣檢測(cè)在圖像處理、圖像分析和計(jì)算機(jī)視覺(jué)領(lǐng)域等方面有著重要的研究意義,廣泛應(yīng)用于圖像分割[1]、動(dòng)作分析[2]、物體識(shí)別[3]、視覺(jué)跟蹤[4]和工業(yè)檢測(cè)[5]等領(lǐng)域。傳統(tǒng)邊緣檢測(cè)方法,如Roberts算子[6]、Sobel算子[7]、Prewitt算子[8]、LoG(Laplacian of Gaussian)算子[9]和Canny算子[10]等,主要通過(guò)微分算子計(jì)算像素階躍性變化,通過(guò)對(duì)灰度躍變的分析來(lái)確定圖像中的邊緣。隨著機(jī)器學(xué)習(xí)技術(shù)的快速發(fā)展,基于統(tǒng)計(jì)機(jī)器學(xué)習(xí)的方法[29~31,34~35,37~40]被引入圖像輪廓和邊緣檢測(cè)中,此類方法通常采用卷積或類似卷積對(duì)數(shù)字圖像進(jìn)行灰度分析來(lái)確定圖像的邊緣。然而,這些方法仍無(wú)法有效地提取受復(fù)雜圖像內(nèi)容影響的語(yǔ)義信息[11]。CNN(Convolutional Neural Network)在計(jì)算機(jī)視覺(jué)領(lǐng)域上取得了重大進(jìn)展,如圖像識(shí)別[12~13],對(duì)象檢測(cè)[14~15],語(yǔ)義分割[16~17]等。CNN具有自動(dòng)提取高質(zhì)量圖像語(yǔ)義信息的能力,在圖像邊緣檢測(cè)方面已經(jīng)提出了一系列基于 CNN 的邊緣檢測(cè)器[11,52,54~55,57~58]。
基于經(jīng)典差分的邊緣檢測(cè)通過(guò)梯度算子能夠識(shí)別具有亮度變化的像素位置?;谖⒎值倪吘墮z測(cè)方法僅以強(qiáng)度的對(duì)比度來(lái)檢測(cè)邊緣,因此它們普遍存在噪聲敏感性的缺點(diǎn),在紋理區(qū)域中有很明顯的邊緣響應(yīng)。僅使用梯度信息進(jìn)行邊緣檢測(cè)也會(huì)導(dǎo)致圖像的內(nèi)部邊緣,這就是造成圖像噪聲的原因。其主要致力于研究多分辨率分析,亞像素定位和確定滯后閾值,來(lái)提高其邊緣檢測(cè)的檢測(cè)性能?;诮y(tǒng)計(jì)學(xué)習(xí)的邊界檢測(cè)采用監(jiān)督學(xué)習(xí)算法來(lái)對(duì)邊緣和非邊緣像素進(jìn)行分類,可以抑制在紋理區(qū)域中廣泛出現(xiàn)的內(nèi)部邊緣,比傳統(tǒng)邊緣檢測(cè)算法更加精確。并且通過(guò)學(xué)習(xí)檢測(cè)到的邊緣更接近人類視覺(jué)感知到的圖像邊緣。基于CNN的邊緣檢測(cè)方法能夠融合圖像邊緣的多級(jí)信息,從而提取更豐富的特征,并且這些特征可以在不同級(jí)別之間直接進(jìn)行信息交互。將更有效的深度學(xué)習(xí)網(wǎng)絡(luò)架構(gòu)運(yùn)用到邊緣檢測(cè)成為目前一個(gè)新的研究領(lǐng)域。
本文根據(jù)兩類邊緣檢測(cè)方法原理的不同,將其分為基于差異化的邊緣檢測(cè)、基于統(tǒng)計(jì)學(xué)習(xí)的邊緣檢測(cè)和基于CNN的邊緣檢測(cè)分別進(jìn)行分析討論。
傳統(tǒng)邊緣檢測(cè)算法通常通過(guò)對(duì)鄰域內(nèi)像素灰度求一階導(dǎo)數(shù)、二階導(dǎo)數(shù)及梯度來(lái)實(shí)現(xiàn),這些計(jì)算經(jīng)過(guò)化簡(jiǎn)的結(jié)果稱為算子,算子表示一種操作符號(hào),同時(shí)也表示一種運(yùn)算規(guī)則。邊緣大致可以分為階梯狀邊緣、脈沖狀邊緣和屋頂裝邊緣。階梯狀和脈沖狀邊緣兩邊的像素值呈階躍性變化,而屋頂狀邊緣的灰度值是逐漸變化的,其邊緣在灰度值變化的轉(zhuǎn)折處,如圖1所示。
圖1 圖像邊緣特性
邊緣檢測(cè)的結(jié)果常用灰度圖或者二值圖來(lái)表示,源圖像中的邊緣部分用灰度較高的像素表示,而沒(méi)有邊緣的部分在灰度圖中顯示為黑色或灰色。邊緣檢測(cè)結(jié)果圖中的灰度值可以直接通過(guò)算子計(jì)算原圖像中對(duì)應(yīng)像素的灰度差分來(lái)得到。幾乎所有的邊緣檢測(cè)思想均是以像素灰度差分為基礎(chǔ)的。在實(shí)現(xiàn)時(shí),由于灰度差分的結(jié)果通常較小,直接轉(zhuǎn)換為灰度圖會(huì)使檢測(cè)結(jié)果模糊,可以使用閾值因子對(duì)差分結(jié)果進(jìn)行縮放,從而得到清晰的邊緣圖像。如圖2所示。
圖2 灰度圖與雙閾值后的圖像
表1 邊緣檢測(cè)方法分類
根據(jù)邊緣檢測(cè)方法原理的不同,將其分為基于差異化和基于機(jī)器學(xué)習(xí)的方法。其中,機(jī)器學(xué)習(xí)包括統(tǒng)計(jì)學(xué)習(xí)和卷積神經(jīng)網(wǎng)絡(luò)。邊緣梯度的輸出通常用作基于學(xué)習(xí)的方法輸入。具體分類如表1所示。
3.1.1 梯度算子
一階微分邊緣算子也稱為梯度邊緣算子,如圖3(a)所示Prewitt算子模板和如圖3(b)所示Sobel算子模板,它利用了圖像在邊緣處的階躍性,即圖像梯度在邊緣區(qū)的極大值的特性進(jìn)行邊緣檢測(cè)。梯度矢量的大小決定邊緣信息的強(qiáng)度,其方向決定了邊緣信息的趨勢(shì)。二階微分邊緣檢測(cè)算子是利用圖像在邊緣處的階躍性導(dǎo)致圖像二階微分在邊緣處出現(xiàn)零值這一特性進(jìn)行邊緣檢測(cè)的,該算子稱為拉普拉斯算子,如圖3(c)所示算子模板。使用二階微分算子檢測(cè)邊緣的方法較為簡(jiǎn)單,但它對(duì)噪聲十分敏感,同時(shí)也不提供邊緣方向的信息。為了實(shí)現(xiàn)對(duì)噪聲的抑制,Marr提出了高斯拉普拉斯(LoG)的方法[9],LoG采用高斯函數(shù)作為低通濾波器對(duì)圖像進(jìn)行平滑。方向性差異,如OE(Oriented Energy)[18]采用一些不同方向的濾波器來(lái)獲得亮度變化。在文獻(xiàn)[6]、[8]中提出的早期邊緣檢測(cè)算子,為了抑制噪聲的干擾,在使用高斯濾波器時(shí)為了獲取最佳的整體邊緣檢測(cè)性能會(huì)丟失一部分邊緣信息。基于差異化的邊緣檢測(cè)檢測(cè)過(guò)程簡(jiǎn)單,但對(duì)噪聲敏感,因此很少獨(dú)立地用于識(shí)別邊緣。較傳統(tǒng)一階、二階差分邊緣檢測(cè)算法相比,基于三階差分濾波器模板的邊緣檢測(cè)算法對(duì)圖像邊緣和細(xì)節(jié)信息的增強(qiáng)效果,因此能夠得到更多的圖像邊緣信息[19]。
圖3 基于區(qū)分的邊緣檢測(cè)算子模板
3.1.2 Canny算子
John Canny等人在對(duì)已有邊緣檢測(cè)算法進(jìn)行系統(tǒng)總結(jié)的基礎(chǔ)上,提出了經(jīng)典的Canny邊緣檢測(cè)算子[10]。在對(duì)信號(hào)和濾波器做出一定假設(shè)條件下,利用數(shù)值計(jì)算方法求出最優(yōu)濾波器,并對(duì)各種濾波的性能進(jìn)行比較。首先,用二維高斯模板進(jìn)行卷積以消除雜點(diǎn),通過(guò)一維偏導(dǎo)數(shù)的有限差分來(lái)計(jì)算梯度的幅值和方向;其次,對(duì)梯度幅值的非極大值進(jìn)行抑制,用雙閾值算法檢測(cè)和連接邊緣;最后,利用多尺度綜合技術(shù)對(duì)結(jié)果進(jìn)行優(yōu)化。Canny邊緣檢測(cè)算子因其優(yōu)異的檢測(cè)效果和對(duì)受白噪聲影響的階躍型邊緣的最優(yōu)性能仍在廣泛應(yīng)用。文獻(xiàn)[20]提出了一個(gè)基于Canny的改進(jìn)算法,該算法的邊緣連接性較強(qiáng),不僅保留了傳統(tǒng)Canny算法的優(yōu)越性,而且檢測(cè)結(jié)果能夠保留更加完整、全面的圖像細(xì)節(jié)信息。此外,在文獻(xiàn)[21]中將改進(jìn)的Canny算法應(yīng)用于圖像分割,不僅能夠消除復(fù)雜背景圖像在邊緣過(guò)程中的影響檢測(cè)和字符分割,還可以獲得準(zhǔn)確的邊緣位置和良好的分割效果。
3.1.3 其他
由于人類視覺(jué)是多分辨率的,多分辨率邊緣檢測(cè)主要通過(guò)整合不同尺度的邊緣響應(yīng),利用高斯平滑與邊緣跟蹤相結(jié)合來(lái)檢測(cè)多尺度的邊緣?;谛〔ǚ治隼碚摰腟hearlet變換[22]創(chuàng)建了多尺度方向的圖像表示,可用于定位不同尺度圖像的不連續(xù)性。根據(jù)人類視覺(jué)模型能夠自動(dòng)選擇最合適的邊緣檢測(cè)尺度的特性[23],采用多尺度自適應(yīng)各向異性擴(kuò)散方程對(duì)圖像進(jìn)行平滑,即去除了較高密度脈沖信號(hào)又能更好地保留邊緣輪廓信息,從而獲得較理想的邊緣輪廓[24]。閾值選擇對(duì)于二值化的邊緣響應(yīng)至關(guān)重要。Canny邊緣檢測(cè)中使用的閾值處理有助于生成完整且連續(xù)的邊緣曲線。在所選區(qū)域內(nèi)使用梯度直方圖來(lái)得到高閾值或低閾值,確定滯后閾值并構(gòu)造邊緣點(diǎn)的子集[25]。亞像素邊緣檢測(cè)的主要目標(biāo)在于提高邊緣的定位精度。實(shí)驗(yàn)證明,多重插值在亞像素邊緣定位中發(fā)揮著重要作用[26]。文獻(xiàn)[27]通過(guò)在感興趣的區(qū)域中計(jì)算矩陣,以構(gòu)建用于亞像素級(jí)精度的模型。此外,色彩邊緣檢測(cè)也得到人們的進(jìn)一步研究,顏色模型與邊緣確定技術(shù)相結(jié)合應(yīng)用于顏色邊界的檢測(cè)[28]。
3.1.4 討論
基于經(jīng)典差分的邊緣檢測(cè)方法,通過(guò)梯度算子來(lái)識(shí)別亮度變化的像素位置,這些梯度算子現(xiàn)在仍然被廣泛使用?;谖⒎值倪吘墮z測(cè)方法利用對(duì)比度的強(qiáng)度進(jìn)行檢測(cè),因此它們普遍存在噪聲敏感的缺點(diǎn)。例如,邊緣響應(yīng)若在紋理區(qū)域中僅使用梯度信息可能導(dǎo)致內(nèi)部產(chǎn)生噪聲。作為進(jìn)一步的圖像表示的低級(jí)預(yù)處理,Canny邊緣檢測(cè)成為生成連接單響應(yīng)邊被廣泛應(yīng)用。
目前,基于差異化的邊緣檢測(cè)主要涉及三個(gè)重要問(wèn)題,分別是亞像素邊緣檢測(cè)、多尺度邊緣分析和滯后閾值處理。亞像素邊緣檢測(cè)是為了提高定位精度,多尺度邊緣分析和滯后閾值處理是為了提高檢測(cè)精度。
3.2.1 基于統(tǒng)計(jì)學(xué)習(xí)的框架
基于差異化的邊緣檢測(cè)側(cè)重于檢測(cè)圖像灰度的階躍性變化,但它在紋理區(qū)域產(chǎn)生粗糙的邊緣響應(yīng),需要抑制由紋理引起的內(nèi)部邊緣以獲得不同區(qū)域之間的邊界。BSDS(Berkeley Segmentation Data?sets and Benchmarks)將人工標(biāo)記的自然圖像邊界包含在數(shù)據(jù)集中。通過(guò)手動(dòng)標(biāo)記的邊界圖像作為神經(jīng)網(wǎng)絡(luò)訓(xùn)練圖像,建立基于統(tǒng)計(jì)學(xué)習(xí)的邊緣檢測(cè)框架,提取多個(gè)低級(jí)圖像特征并將其組合到模型中以進(jìn)行邊緣響應(yīng)的訓(xùn)練,從而將邊緣點(diǎn)與平滑區(qū)域區(qū)分開(kāi)。我們列出了基于統(tǒng)計(jì)學(xué)習(xí)的邊緣檢測(cè)方法,其學(xué)習(xí)框架的框架如圖4所示。
圖4 基于統(tǒng)計(jì)學(xué)習(xí)的邊界檢測(cè)框架
3.2.2 基于邊界概率的多尺度邊緣檢測(cè)
Pb(邊界概率)[29]邊緣檢測(cè)在多個(gè)局部特征中提取亮度梯度、紋理梯度和顏色梯度,應(yīng)用Logistic回歸來(lái)組合這些線索的距離,并學(xué)習(xí)預(yù)測(cè)邊緣響應(yīng)的判別模型。由于邊緣響應(yīng)與尺度相關(guān),因此提出了基于Pb的多尺度邊緣檢測(cè)器[30~31]。與基于微分的邊緣檢測(cè)類似,不同尺度邊緣的組合和定位是目前要解決的兩個(gè)重要問(wèn)題。MS-Pb[30]集成了 Pb[29]的多尺度邊緣響應(yīng)、附加定位和相對(duì)對(duì)比度信息,以確定多尺度的圖像邊緣。附加定位指在各個(gè)尺度上從像素到最接近的峰值之間的Pb響應(yīng)距離,相對(duì)對(duì)比度表明局部區(qū)域的歸一化邊緣響應(yīng)程度。
gPb(全局邊界概率)[31~32]將三個(gè)尺度的Pb邊緣響應(yīng)和全局信息線性地組合進(jìn)行輪廓檢測(cè)。多尺度圖像被組合成一個(gè)能夠確定像素之間相似性的親和矩陣。譜聚類用于全局計(jì)算與輪廓信息對(duì)應(yīng)的親和矩陣的特征向量[33]。tPb(基于紋理的邊界概率)[34]使用隨機(jī)放置的窗口中紋理變化的平均值來(lái)估計(jì)邊緣響應(yīng)。Pb邊緣特征被納入Any Boost分類器,其基于F-measure的優(yōu)化標(biāo)準(zhǔn)(即F-measure Boosting)用于邊界檢測(cè)[35]。
3.2.3 生成字典單詞的邊緣檢測(cè)
除了先前定義的通道進(jìn)行對(duì)比之外,也可以將現(xiàn)有的特征描述符(例如,Haar小波和SIFT[36])應(yīng)用為字典單詞,并將它們納入到用于預(yù)測(cè)邊緣響應(yīng)的分類器中?;跊Q策樹(shù)概率提升的檢測(cè)方法(BEL)[37]利用Boosting決策樹(shù)順序選擇在不同的位置和尺度上生成的通用特征(例如,DoG響應(yīng)和Haar小波的直方圖),構(gòu)建用于邊緣檢測(cè)的判別模型。此外,基于隨機(jī)決策樹(shù)的檢測(cè)方法(SFE)[38]將顏色和梯度通道以及成對(duì)差異輸入分類器,建立映射結(jié)構(gòu)化的的離散空間標(biāo)簽,每個(gè)結(jié)構(gòu)化標(biāo)簽標(biāo)記補(bǔ)丁內(nèi)的邊緣像素,最終隨機(jī)森林的聚合引起邊緣響應(yīng)?;?BEL[37]和 SFE[38]的邊緣檢測(cè)方法均具有相對(duì)低的計(jì)算成本,并能夠?qū)⒆詣?dòng)生成字典單詞作為邊緣概率輸入到確定的分類器中。例如,將稀疏編碼表示應(yīng)用于生成邊緣響應(yīng)的字典單詞。在文獻(xiàn)[39]中,使用判別稀疏編碼算法來(lái)學(xué)習(xí)圖像的稀疏表示,訓(xùn)練線性分類器來(lái)組合稀疏編碼的多尺度重建誤差并獲得邊緣響應(yīng)。SCG(稀疏代碼梯度)檢測(cè)[40]使用稀疏編碼自動(dòng)生成通用特征,并且支持向量機(jī)(SVM)分類用于學(xué)習(xí)模型以區(qū)分邊緣和非邊緣。
3.2.4 邊緣跟蹤和輪廓分組
邊緣跟蹤主要是鏈接孤立和待識(shí)別的邊緣點(diǎn)。輪廓分組利用全局信息改善邊界檢測(cè)性能,從而能夠獲得連續(xù)的曲線和封閉的區(qū)域邊界。在輪廓分組中需要考慮分散邊緣片段的空間關(guān)系,在輪廓分組模型中使用諸如鄰近度和連續(xù)性的Gesalt因子。圖模型已廣泛應(yīng)用于分組因子的制定,比如將基于圖模型的學(xué)習(xí)算法用于訓(xùn)練邊緣片段的空間和共現(xiàn)關(guān)系。在文獻(xiàn)[35]中探索了歸一化的輪廓顯著性,并將輪廓分組用于解決離散優(yōu)化問(wèn)題。馬爾可夫隨機(jī)場(chǎng)和條件隨機(jī)場(chǎng)(CRF)模型[41~42]是廣泛應(yīng)用的分割技術(shù),用于捕獲相鄰輪廓之間的相互作用并建立輪廓連接。順序貝葉斯框架則是對(duì)邊緣片段進(jìn)行分組,在文獻(xiàn)[43]中,原始邊緣片段通過(guò)形狀信息被分類為邊緣,在離線步驟中學(xué)習(xí)了多種邊緣類型的檢驗(yàn)和判定,為輪廓元素分組構(gòu)造了粒子濾波框架。
邊緣跟蹤和輪廓分組是生成連續(xù)邊緣線或曲線的步驟。邊緣跟蹤是在將孤立的邊緣點(diǎn)連接到邊緣線或曲線,輪廓分組則是獲得不同對(duì)象之間的邊界。連接和分組邊緣對(duì)于對(duì)象識(shí)別和圖像理解有重要作用,從連接邊緣的分析中能夠直接獲取形狀信息。因此,Canny和Pb邊緣檢測(cè)器的響應(yīng)被廣泛用作具有形狀的對(duì)象類識(shí)別的基礎(chǔ),其中檢測(cè)到的響應(yīng)被視為目標(biāo)邊界信息,準(zhǔn)確度和精密度是評(píng)估邊緣檢測(cè)性能的重要指標(biāo)。
3.3.1 CNN網(wǎng)絡(luò)構(gòu)架
有四種基本的CNN,包括廣泛用于計(jì)算機(jī)視覺(jué) 的 VGGNet[44],GoogLeNet[45],ResNet[46]和DenseNet[47]。其中,VGGNet和 GoogLeNet分別有16層和22層,由于VGGNet具有簡(jiǎn)單和多級(jí)的網(wǎng)絡(luò)架構(gòu),而且對(duì)其他數(shù)據(jù)集具有良好的泛化能力。因此它廣泛用于邊緣檢測(cè)[52,54,56~57]。ResNet是一種極其深入的網(wǎng)絡(luò)結(jié)構(gòu),在數(shù)據(jù)集上能夠?qū)崿F(xiàn)比VGG?Net更好的檢測(cè)性能。DenseNet擁有一個(gè)更復(fù)雜的卷積網(wǎng)絡(luò)架構(gòu),它直接連接到密集塊內(nèi)的每個(gè)前層,因此它在圖像分類方面比VGGNet和ResNet的速度慢。另外,HybridNet[48]是一種混合卷積網(wǎng)絡(luò),以VGGNet和ResNet作為兩個(gè)基本卷積網(wǎng)絡(luò),將VGGNet的低級(jí)層和ResNet的高級(jí)層組合在一起,使用 VGGNet的 conv1_2,conv2_2和 conv3_3提取低級(jí)功能,使用ResNet的res3d,res4f和res5c的高級(jí)層作為輔助分支的基礎(chǔ)層。HybridNet的架構(gòu)如圖5所示。
圖5 混合卷積網(wǎng)絡(luò)HybridNet的架構(gòu)
3.3.2 基于CNN的邊緣檢測(cè)器
一些早期基于CNN的方法利用最后的完全連接層作為對(duì)邊緣和非邊緣像素進(jìn)行分類。為了融合多級(jí)信息,有兩種典型的CNN架構(gòu),完全卷積網(wǎng)絡(luò)(FCN)[51]和整體嵌套網(wǎng)絡(luò)(HED)[52]。FCN最初設(shè)計(jì)用于語(yǔ)義分割,并且在邊緣檢測(cè)方面也實(shí)現(xiàn)了高性能。該方法首先從最后一層CNN產(chǎn)生概率圖,然后通過(guò)將概率圖與從較低級(jí)別特征逐級(jí)產(chǎn)生的概率圖相加來(lái)更新概率圖。HED是一種比FCN更有效的邊緣檢測(cè)架構(gòu),它結(jié)合了以并行方式生成的多個(gè)概率圖來(lái)融合多級(jí)信息。FCN和HED都以基于概率圖的方式融合多級(jí)信息。但是,在這些方法中,不同級(jí)別的特征不能直接進(jìn)行交互。
最新的邊緣探測(cè)器利用更深的CNN,可以自動(dòng)提取圖像中的多級(jí)特征。Ganin和Lempitsky提出了第一個(gè)基于 CNN 的邊緣檢測(cè)器 N4-Fields[53],它采用CNN來(lái)提取圖像塊的特征,并使用最近鄰點(diǎn)將提取的特征與邊緣塊的預(yù)定義特征進(jìn)行匹配。沉等人[54]將邊緣檢測(cè)作為分類問(wèn)題,并將每個(gè)圖像塊分類為若干預(yù)定義形狀類別之一。Bertasius等人[55]提出了一種級(jí)聯(lián)邊緣檢測(cè)器,首先使用結(jié)構(gòu)化邊緣(SE)[56]生成候選輪廓點(diǎn),并采用CNN生成最終邊緣圖。這些早期基于CNN的方法主要預(yù)測(cè)補(bǔ)丁到類范例中的邊緣圖。謝等[52]提出了一種新穎的方法,即整體嵌套網(wǎng)絡(luò)(HED),以圖像到圖像的方式檢測(cè)邊緣。HED是一種多尺度網(wǎng)絡(luò),它結(jié)合了多個(gè)側(cè)面輸出,能夠融合圖像多級(jí)信息,并以極快的速度預(yù)測(cè)邊緣圖。楊等[57]將邊緣檢測(cè)擴(kuò)展到物體輪廓檢測(cè),旨在檢測(cè)更高級(jí)別的物體輪廓。他們還提出了一種新穎的架構(gòu),可以通過(guò)編碼器-解碼器網(wǎng)絡(luò)來(lái)檢測(cè)物體輪廓。Maninis等[58]提出了一種基于ResNet的HED式邊緣探測(cè)器,用于預(yù)測(cè)輪廓的強(qiáng)度和方向。這是一種基于概率圖的方法。在文獻(xiàn)[48]中提出了一種新的基于CNN的網(wǎng)絡(luò)構(gòu)架,使用VGGNet(16層)和ResNet(50層)作為基本CNN構(gòu)架來(lái)執(zhí)行邊緣檢測(cè),它以基于特征圖的方式融合多層信息,并生成高質(zhì)量的混合卷積特征(HCF),用于檢測(cè)圖像到圖像中的邊緣,沒(méi)有任何后期處理的方式。同時(shí),添加一個(gè)輔助分支,以幫助主分支提取強(qiáng)大的高級(jí)功能。并且提取的豐富特征可以在不同級(jí)別之間直接進(jìn)行信息交互,如圖5所示。
3.3.3 討論
基于學(xué)習(xí)的邊緣檢測(cè)是一個(gè)值得我們關(guān)注的熱點(diǎn)。伯克利分割數(shù)據(jù)集和基準(zhǔn)的出現(xiàn)推動(dòng)了它的發(fā)展。邊緣檢測(cè)被建模為分類邊界點(diǎn)的分類問(wèn)題,使用統(tǒng)計(jì)學(xué)習(xí)算法和多圖像數(shù)據(jù)集來(lái)構(gòu)建用于確定邊緣響應(yīng)的模型?;趥鹘y(tǒng)學(xué)習(xí)的方法可以利用多個(gè)圖像進(jìn)一步訓(xùn)練,通過(guò)邊緣檢測(cè)器和距離函數(shù)公式來(lái)測(cè)量顏色、紋理、亮度通道中的區(qū)域差異。分類算法用于組合多個(gè)距離測(cè)量,由于距離測(cè)量與邊界點(diǎn)直接相關(guān),因此簡(jiǎn)單的線性算法就能滿足性能需求?,F(xiàn)有實(shí)驗(yàn)表明,通過(guò)平均成對(duì)子窗口中的紋理距離,也可以實(shí)現(xiàn)相當(dāng)?shù)男阅堋F渌趯W(xué)習(xí)的方法將自動(dòng)生成的字典單詞(即稀疏代碼、密集定義的Haar特征、成對(duì)比較特征)饋送到分類器中。在某些情況下,需要使用分類算法(例如Boosting和隨機(jī)森林)來(lái)選擇有效的字典單詞,選擇簡(jiǎn)單的計(jì)算字典單詞可以減少計(jì)算量。
這些方法仍無(wú)法有效地提取受復(fù)雜圖像內(nèi)容影響的語(yǔ)義信息。為了提高性能,基于卷積神經(jīng)網(wǎng)絡(luò)的邊緣檢測(cè)方法利用基本CNN網(wǎng)絡(luò)構(gòu)架的優(yōu)勢(shì),能夠融合圖像邊緣的多級(jí)信息,從而提取更豐富的特征。同時(shí),從VGGNet和ResNet開(kāi)發(fā)的混合卷積網(wǎng)絡(luò),利用網(wǎng)絡(luò)各自的優(yōu)勢(shì),以基于特征圖的方式有效地融合多級(jí)信息,并產(chǎn)生高質(zhì)量的混合卷積特征,用于圖像到圖像的邊緣檢測(cè)。
視覺(jué)特征檢測(cè)的評(píng)估非常重要,雖然可以通過(guò)人工觀察直觀地評(píng)估視覺(jué)特征檢測(cè)[49],但它不具備大規(guī)模數(shù)據(jù)庫(kù)的功能。邊緣檢測(cè)一般需要對(duì)檢測(cè)精度、定位誤差和計(jì)算效率這三個(gè)標(biāo)準(zhǔn)進(jìn)行評(píng)估。計(jì)算效率可以通過(guò)檢測(cè)時(shí)間成本來(lái)衡量;定位誤差可以從二維空間中的誤差距離進(jìn)行計(jì)算;檢測(cè)精度的測(cè)量是多種多樣的,其關(guān)鍵思想是找到對(duì)應(yīng)關(guān)系。不同之處在于對(duì)應(yīng)的定義,第一種對(duì)應(yīng)指基于將檢測(cè)到的響應(yīng)與人類標(biāo)記的實(shí)況相匹配,第二種指匹配相關(guān)圖像中檢測(cè)到的響應(yīng)。
圖6 人工標(biāo)記(Human)的標(biāo)準(zhǔn)圖像邊緣
BSDS用于評(píng)估邊緣檢測(cè)[50]。該數(shù)據(jù)集的早期版本包含300個(gè)圖像,具有200個(gè)訓(xùn)練圖像和100個(gè)測(cè)試圖像。之后又添加了200個(gè)地測(cè)試圖像,數(shù)據(jù)集總共擴(kuò)展到500個(gè)圖像。為每個(gè)圖像提供5~10個(gè)帶有分?jǐn)?shù)的帶標(biāo)記的邊界,并提供公共基準(zhǔn),基準(zhǔn)測(cè)試的目標(biāo)是為算法的邊界生成分?jǐn)?shù)。通過(guò)發(fā)現(xiàn)檢測(cè)到的邊緣響應(yīng)與人工標(biāo)記(Human)的真實(shí)圖像邊緣之間的對(duì)應(yīng)關(guān)系來(lái)實(shí)現(xiàn)邊緣檢測(cè)的評(píng)估,如圖6所示。典型的BSDS數(shù)據(jù)庫(kù)為每個(gè)圖像提供幾個(gè)人工標(biāo)記的邊界圖,附加實(shí)值(F-measure)測(cè)量的參數(shù)曲線用于評(píng)估邊緣檢測(cè)性能[59]。利用固定閾值,可以通過(guò)邊緣檢測(cè)方法獲得二進(jìn)制檢測(cè)響應(yīng),檢測(cè)到的響應(yīng)與人工標(biāo)記的真實(shí)邊界匹配。
真陽(yáng)性Ntp被定義為匹配響應(yīng)的數(shù)量。假陽(yáng)性Nfp定義為檢測(cè)到的響應(yīng)的數(shù)量,其不能與人工標(biāo)記圖像相匹配。假設(shè)有Np個(gè)標(biāo)記的邊緣點(diǎn)。精度(Precision)定義為真陽(yáng)性與所有檢測(cè)到的響應(yīng)數(shù)之間的比率?;貞洠≧ecall)是確定真陽(yáng)性和人工標(biāo)記的真實(shí)邊界之間的比例。
當(dāng)存在多個(gè)實(shí)況圖時(shí),二進(jìn)制檢測(cè)到的響應(yīng)與每個(gè)人類標(biāo)記的邊界圖匹配。回憶(Recall)定義為通過(guò)匹配每個(gè)地圖獲得的召回率的平均值。假陽(yáng)性被定義為檢測(cè)到的響應(yīng)的數(shù)量,其不能與任何人類標(biāo)記的真實(shí)邊緣匹配。通過(guò)式(1)、(2)進(jìn)一步計(jì)算,得到更高精度和召回率的檢測(cè)。常用的F-measure定義為
0<α<1是平衡精確度(P)和回憶(R)重要性的權(quán)重,通常α=0.5,即F=2P*R(/R+P)。我們將算法的精確回憶曲線中最大的F-measure值作為其匯總統(tǒng)計(jì)量,如圖7所示。此外,在文獻(xiàn)[60~61]中,還提出其他邊緣檢測(cè)的測(cè)量評(píng)估方法。
圖7 邊界基準(zhǔn)算子在Berkeley分割數(shù)據(jù)集(BSDS500)基準(zhǔn)上的精確度-回憶曲線
表2 邊緣檢測(cè)方法及其數(shù)據(jù)測(cè)量
我們列出了表2中代表性方法的最大F-mea?sure。從表中可以發(fā)現(xiàn),傳統(tǒng)基于梯度的邊緣檢測(cè)算子Roberts、Sobel、Prewitt在BSDS300數(shù)據(jù)集上實(shí)現(xiàn)的F-measure值約為0.48,Canny邊緣檢測(cè)的F-measure為0.58。而通過(guò)基于統(tǒng)計(jì)學(xué)習(xí)的方法,F(xiàn)-measure從0.63變化到0.74。通過(guò)gPb[31]和SCG[40]獲得具有灰度信息的最高F-measure值為0.74。根據(jù) BEL[37],gPb[31]和 SCG[40]提供的經(jīng)驗(yàn)評(píng)估及顏色信息的整合將F-measure值提升約0.02~0.03?;趖Pb邊緣響應(yīng)預(yù)測(cè)和基于順序標(biāo)記的邊緣鏈接,在BSDS500數(shù)據(jù)集上的最高F-measure值為0.74[34]。此外,SFE算法的BSDS500數(shù)據(jù)集的最高F-mea?sure值為0.74[38]。因此,基于統(tǒng)計(jì)學(xué)習(xí)的邊界檢測(cè)比基于差異化的邊緣檢測(cè)更加精確。除了測(cè)量精度,計(jì)算效率也是評(píng)估的一個(gè)關(guān)鍵問(wèn)題。在所有基于學(xué)習(xí)的方法中,只有 SFE[38]是實(shí)時(shí)的。BEL[37]和SFE[38]是基于通用描述符和特征選擇分類算法(即用于BEL的Boosting和用于SFE的隨機(jī)森林),它們具有相對(duì)低的計(jì)算成本,但該算法不適用于基于稀疏碼計(jì)算的SCG[40]。SFE是計(jì)算成本最高的方法[38],其全局信息和邊緣鏈接的整合雖然增加了F-mea?sure值,但計(jì)算時(shí)間也增加了。
早期基于CNN的邊緣檢測(cè)器,包括N4-Fields[53],DeepContour[54]和 DeepEdge[55],主要預(yù)測(cè)補(bǔ)丁到類范例中的邊緣,以及最近的基于CNN的方法,如HFL[62],HED[52],CEDN[57]等等,以圖像到圖像的方式推斷圖像邊緣,以圖像到圖像方式執(zhí)行的方法擁有更大的感受域、多級(jí)的CNN特征以及完全卷積的網(wǎng)絡(luò)架構(gòu)[52]。HCF[48]利用一種新的卷積網(wǎng)絡(luò),以基于特征圖的方式有效地融合多級(jí)信息,并產(chǎn)生高質(zhì)量的混合卷積特征。同時(shí)從VGGNet和ResNET開(kāi)發(fā)的HybridNet中提取高級(jí)和低級(jí)功能。通過(guò)人工標(biāo)記邊緣獲得的理想F-measure值為0.803。因此,HCF能夠達(dá)到0.806的F-measure值,優(yōu)于人類標(biāo)注的邊緣。
因此我們可以得出,與基于差異的方法相比,由于基于差異化的邊緣檢測(cè)沒(méi)有區(qū)分紋理邊緣,基于統(tǒng)計(jì)學(xué)習(xí)的邊緣檢測(cè)可以實(shí)現(xiàn)更好的檢測(cè)效果。而基于CNN的邊緣檢測(cè)通過(guò)深度學(xué)習(xí)檢測(cè)到的邊緣更接近人類視覺(jué)感知到的圖像邊緣,最新的深度學(xué)習(xí)檢測(cè)方法甚至優(yōu)于人類標(biāo)注的邊緣。
邊緣檢測(cè)通常用作其他視覺(jué)任務(wù)的基礎(chǔ)技術(shù),因此應(yīng)該簡(jiǎn)單有效。所提出的方法應(yīng)符合這一目的,使其更容易參與其他視覺(jué)系統(tǒng)。我們應(yīng)當(dāng)將新方法、新觀念和先進(jìn)有益的成果引入圖像邊緣檢測(cè)的領(lǐng)域,促進(jìn)邊緣檢測(cè)的進(jìn)一步發(fā)展。
從研究現(xiàn)狀來(lái)看,首先,我們需要為蓬勃發(fā)展的計(jì)算機(jī)視覺(jué)應(yīng)用設(shè)計(jì)更有效的邊緣檢測(cè)方法。整合有效的學(xué)習(xí)邊緣檢測(cè)方法能夠在檢測(cè)精度和檢測(cè)速度上取得平衡。再者,我們應(yīng)考慮擴(kuò)展所提出的方法以實(shí)現(xiàn)更快的速度。在新的數(shù)據(jù)集上探索和設(shè)計(jì)新的CNN構(gòu)架,能夠在提取高質(zhì)量的高級(jí)和低級(jí)特征之間取得良好的折衷,并開(kāi)發(fā)能夠進(jìn)行實(shí)時(shí)檢測(cè)的方法。