999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MATLAB的Canny圖像邊緣檢測優(yōu)化與實現(xiàn)

2022-11-03 09:22:26藺玉珂楊敏賀中屏曹華王家麒
現(xiàn)代信息科技 2022年17期

藺玉珂,楊敏,賀中屏,曹華,王家麒

(重慶電子工程職業(yè)學(xué)院,重慶 401331)

0 引 言

圖像識別是計算機對圖像進(jìn)行處理、分析和提取信息,并識別到不同模式不同目標(biāo)或物體的技術(shù),對質(zhì)量較差的圖像也可以進(jìn)行一系列增強和重建,能夠有效提高圖像質(zhì)量。圖像識別的第一步往往是邊緣識別,即一個區(qū)域的結(jié)束和另一個新區(qū)域的開始,反映圖像特征的不連續(xù)性。

19世紀(jì)60年代初至80年代末,圖像邊緣識別理論正處于發(fā)展的黃金時期。20世紀(jì)70年代初,Prewitt 和Kirsch開始研究定向邊緣識別技術(shù)。1977年Robinson 還對 Prewitt和 Kirsch 的相關(guān)研究成果進(jìn)行了總結(jié)和概括。在1980年,Marr 提出了LoG 算法,可以通過引入高斯濾波器來降低對噪聲的影響。1986年,偉大的美國算法物理學(xué)家John Canny,提出了后來被稱為Canny 原則的邊緣識別三原則。

呂哲提出了一個經(jīng)過改進(jìn)的Canny 算法,主要改變了梯度方向檢測方式和連通性。對于高環(huán)境光和低強度邊緣的定向測量,能夠有效地抑制在高環(huán)境光影響下的峰值信噪比,同時邊緣細(xì)節(jié)也被保持,但高自動調(diào)節(jié)的閾值會對邊緣細(xì)節(jié)測量結(jié)果產(chǎn)生一定的負(fù)面影響。因此,羅濤通過對高、低閾值的選取,并提供了一個更完善的高自適應(yīng)閾值Canny測量算法,克服了人為因素引起的測量邊緣損壞和邊緣誤差的問題,但在彩色畫面檢測和試驗的過程中,仍有部分受損的邊緣存在。Deng對傳統(tǒng)的Sobel 算子進(jìn)行了改進(jìn),為圖像的開閉運算引入Sobel 算法,然后分別使用改進(jìn)的小波變換算法、Sobel 算法、Canny 算法和Prewitt 算法對圖像邊緣進(jìn)行識別。最后,根據(jù)定義的圖像融合算法,對各種方法得到的圖像邊緣進(jìn)行融合,得到最終的識別結(jié)果,使得邊緣提取結(jié)果完整,定位精度高。

圖像邊緣是圖像最基本也是最重要的特征,提高圖像識別率主要有兩種方式:一是提高硬件的識別率,二是提高軟件的識別率。目前提高硬件識別率存在許多困難,而后者利用現(xiàn)有技術(shù)可以解決,所以從軟件上來提高識別率的意義較大。

目前,實現(xiàn)圖像邊緣識別的軟件和算法有很多,但學(xué)者們?nèi)栽趯ふ腋ㄓ?、更高效的邊緣識別算法。其中最具代表性的四種檢測算法分別是基于形態(tài)學(xué)的、基于小波變換和小波包的、基于模糊理論的,以及基于分形幾何的邊緣識別算法。

除上述算法外,還有一些邊緣識別算子的經(jīng)典方法,如Roberts 算子和Sobel 算子、Canny 算子等。Canny 算子利用尋找(,)上的梯度的局部最大值來找到強邊緣,梯度強度也可以由高斯濾波器的微分來估計,使用兩個閾值識別到強邊緣和弱邊緣,并且假設(shè)它們都被連接到強邊緣,這樣就在輸出中只包括弱邊緣。

1 圖像處理設(shè)計步驟

在獲取原始圖像的數(shù)據(jù)區(qū)域指針后,需要經(jīng)過灰度化、高斯濾波、像素梯度計算等一系列操作之后,最終得到邊緣識別效果圖。

1.1 灰度化

Canny 算法通常處理的圖像往往都是灰度圖像,而在實際應(yīng)用中通常使用彩色畫面,所以一般先進(jìn)行灰度化,將彩色畫面變成灰度圖像。以RGB 格式的彩圖為例,通?;叶然褂玫墓绞牵?/p>

注意,在程序設(shè)計時一般按照圖像格式中RGB的順序,一般是BGR,但MATLAB 等軟件支持把輸入的彩色圖像直接轉(zhuǎn)換為灰度圖像,因而可跳過這個操作。

1.2 高斯濾波去噪

任何邊緣識別算法在未經(jīng)處理的原始圖片信號上都不能得到很好地處理效果,所以首先是對原始圖片信息與高斯mask 做卷積,得到新的圖像信息與原始圖像形一樣有很細(xì)微的模糊度(blurred)。這樣一來,圖像噪聲在經(jīng)過高斯平滑的圖像上就基本沒有影響。

對圖像高斯濾波可以進(jìn)行去噪,對圖像高斯濾波的實現(xiàn)也可以用一維高斯核分別進(jìn)行二次加權(quán)的運算實現(xiàn),也就是先一維X向卷積運算,所得的結(jié)果再一維Y向卷積高斯濾波,使用的高斯核可以是有X 和Y 兩維的高斯函數(shù),且兩個維度上標(biāo)準(zhǔn)差一般取相同,形式為:

一維高斯函數(shù):

高斯濾波法,即是即通過在某一尺度上的二維高斯核,與像素進(jìn)行卷積。因為數(shù)位影像的基本數(shù)據(jù)形式為離散矩陣,所以高斯核就是對連續(xù)高斯函數(shù)的離散化處理,可通過對高斯面體進(jìn)行離散采樣后的歸一化而得出。所以,邊長為3×3,其標(biāo)準(zhǔn)差為一的高斯核為:

在確定高斯核后,將其與圖像進(jìn)行離散卷積即可。利用高斯濾波器與圖像進(jìn)行卷積,以平滑圖像,并消除噪音影響。高斯濾波器的核心位置為×(為奇數(shù))。濾波器核心位為,高斯濾波器核的產(chǎn)生方式為:

經(jīng)過高斯去噪處理過的lena 圖與原圖對比,如圖1所示。

圖1 高斯去噪效果圖

1.3 用一階偏導(dǎo)的有限差分來計算梯度的幅值和方向

利用Sobel 算子的像素梯度,Sobel 算子中有兩個3×3的矩陣,分別是SS。前者用于計算圖像方向像素梯度矩陣G,而后者則用于計算圖像方向像素梯度矩陣的G

其中,為灰度圖像矩陣,且此處的*表示互相關(guān)運算(卷積運算可視為將卷積核旋轉(zhuǎn)180°后的互相關(guān)運算)。需要說明的是,圖像矩陣坐標(biāo)系原點在左上方,且正方向為從左往右,正方向為下往上。則由以下公式可計算得到梯度強度矩陣G(,)。

使用Sobel 算子的梯度處理lena 圖,沒有加閾值,效果如圖2所示。

圖2 Sobel 算子的梯度處理lena 圖

1.4 對梯度幅值進(jìn)行非極大值抑制

非極大值抑制是一個邊緣的細(xì)化方法,通常可看作不只有一個像素寬度,而是多個像素長度的漸變邊緣。正如我們所說,Sobel 算子的邊緣通常既粗又亮,從圖2中的Sobel 結(jié)果就可以知道。但是,梯度彌散圖也是“模糊”的,所以在實際具體操作中,邊緣通常只有一個很精確的節(jié)點之寬,而非極大值抑制可以保持局部的最大梯度值變化并抑制所有其他局部梯度值變化,這也就意味著只保護梯度變化中最尖端的地方。

若在當(dāng)前點的梯度強度與相同方向上其他點的梯度強度相比最大,則保持在該值。否則,設(shè)置為零。如與當(dāng)前點垂直上升約九十度,則必須在垂直方向上與其正上方和正下方的圖像進(jìn)行對比。

非最大像素梯度抑制的目的是消除邊緣識別引起的雜散響應(yīng),即邊緣被“細(xì)化”?;巨k法是把當(dāng)前像素點的梯度強度,和鄰近像素點沿正梯度方向的梯度強度加以對比。如果是最大值(即極值),則保留在該像素的邊緣位置;如果沒有最大值,則會被抑制,不被視為邊緣點。為了更精確的計算,通常在梯度方向上的兩個相鄰像素之間使用線性插值來獲得待比較像素的梯度。

圖3 像素梯度方向線性插值示意圖

像素的鄰接可分成四大區(qū)域,而每個區(qū)域都有左右兩個部分。假設(shè)中心像素在向的梯度強度為(,),方向梯度強度為(,),梯度強度為G(,),則梯度方向所屬的區(qū)域可以根據(jù)(,)或者(,)的正負(fù)和來確定。然后,根據(jù)其像素和其像素梯度方向與相鄰點的像素梯度彌散值進(jìn)行線性插值得出正負(fù)梯度方向的兩個梯度強度(,)和(,)。

另外三個區(qū)域的計算方法相同,若G(,)=G(,)=0,說明像素點無像素梯度,則為非邊緣。將梯度角離散化為圓的四個扇區(qū)之一,再使用3×3 窗口進(jìn)行抑制操作,這些扇區(qū)標(biāo)記為0 到3,對應(yīng)于3×3 鄰域有著四種可能組合。在每一點,將鄰域的中心像素與沿梯度線的兩個像素進(jìn)行比較,如果的梯度不大于沿梯度線的兩個相鄰像素的梯度,則令(,)=0。非極大值處理結(jié)果如圖4所示。

圖4 非極大值抑制結(jié)果圖

定義梯度強度的最高閾值與最低閾值,在梯度強度的最低閾值的像素點被抑制,因此也可以看成為邊緣點,在最高閾值之下的每個像素點將被分類為強邊緣,并保持為邊緣點狀態(tài)。而那些介于高閾值與低閾值之間的像素點則被認(rèn)定為弱邊緣,仍有待進(jìn)一步處理。通過檢測弱邊緣圖像及其8 個鄰近圖像,能夠通過它和強邊緣的聯(lián)系來確定是否為真實邊緣。一般可以定義,只要鄰域圖像之一為強邊緣圖像,就能夠把弱邊緣保留到強邊緣點,即真實邊緣點。

1.5 雙閾值算法和連接邊緣

目前減少“假邊緣”數(shù)量最常用的方法是雙閾值算法,對[,]使用一個閾值,為低于閾值的點分配為零,解決方法就是采用雙閾值算法。雙閾值算法對非最大值的抑制圖像使用高低閾值MinVal 和MaxVal,若2 倍的MinVal 大約等于MaxVal,則即可獲得兩個閾值的邊緣像素MaxVal[,]和MaxVal[,]。因為圖像MaxVal[,]是利用較高的閾值而獲得的,故包含的“假邊緣”相對較小,但存在著不連續(xù)點(非封閉邊緣)。雙閾值方法將邊緣和像素之間從MaxVal[,]中的輪廓連接起來,到達(dá)輪廓端點后,雙閾值算法將MaxVal[,]的8 個相鄰點與邊緣輪廓連接起來,得到新邊緣,在MinVal[,]內(nèi)繼續(xù)收集邊緣,直到MaxVal[,]被完整連接。

2 實驗結(jié)果與分析

在MATLAB 環(huán)境下對實現(xiàn)了基于Canny 算子的邊緣檢測,并與MATLAB 內(nèi)置的Canny 邊緣檢測API 進(jìn)行了對比實驗,如圖5所示,其中“Lena”為計算機視覺領(lǐng)域的常用測試圖片。

圖5 Canny 算子邊緣識別處理Lena 圖

為了達(dá)到更好的識別效果,在邊緣識別程序中調(diào)整濾波器參數(shù),在滯后閾值處理中調(diào)整高低閾值。MATLAB 的Canny 邊緣識別API 使用其默認(rèn)參數(shù),推測的高低閾值可以通過自適應(yīng)算法本身進(jìn)行計算。從圖5的識別效果可以看出,與API 相比,自己設(shè)計的Canny 識別程序提取了更多的詳細(xì)信息,同時也保留了更多的局部噪聲,API 提取的輪廓特征清晰,但局部失真嚴(yán)重。將默認(rèn)的高斯半徑修改為2,閾值保持不變,與原始圖像對比如圖6所示。從實驗過程中可以看出,Canny 算子對濾波參數(shù)的選擇和高低閾值的取值范圍還是比較很敏感,在實際應(yīng)用過程中需要反復(fù)調(diào)試。

圖6 Canny 高斯半徑為2

3 結(jié) 論

傳統(tǒng)的Canny 算法在邊緣提取和邊緣增強識別中存在優(yōu)勢,對細(xì)小的邊緣識別更清晰。通過優(yōu)化邊緣識別程序中濾波器參數(shù)和滯后閾值處理中的高低閾值參數(shù),對不同強度、不同類型噪聲的圖像進(jìn)行去噪實驗,通過實驗結(jié)果發(fā)現(xiàn),Canny 算子對參數(shù)取值范圍敏感,可以通過優(yōu)化參數(shù)得到更佳的圖片識別效果。

主站蜘蛛池模板: 欧美黄色网站在线看| 日韩高清欧美| 久久香蕉国产线| 欧美人在线一区二区三区| 深夜福利视频一区二区| 澳门av无码| 视频一区亚洲| 四虎亚洲国产成人久久精品| 精品三级网站| 日本欧美视频在线观看| 亚洲午夜福利精品无码不卡| 色综合a怡红院怡红院首页| 国产手机在线小视频免费观看| 黄色免费在线网址| 91福利免费| 亚洲欧美日韩成人在线| 欧美亚洲日韩不卡在线在线观看| 911亚洲精品| 特级精品毛片免费观看| 亚洲天堂网在线播放| 成人综合久久综合| 亚洲高清中文字幕| 日韩国产综合精选| 国产乱视频网站| 国产精品亚洲五月天高清| 国产视频a| 国产超碰一区二区三区| 欧美一区二区三区不卡免费| a级毛片毛片免费观看久潮| 精品夜恋影院亚洲欧洲| 久久99国产视频| 2021国产在线视频| 国产网友愉拍精品视频| 国产99在线| 69av免费视频| 欧美成人A视频| 高h视频在线| 亚洲第一国产综合| 国产区人妖精品人妖精品视频| 欧美无专区| 在线va视频| 国产精品免费p区| 亚洲 欧美 偷自乱 图片| 国产一级毛片yw| 国产呦精品一区二区三区下载| 天天躁日日躁狠狠躁中文字幕| 制服丝袜国产精品| 国产美女叼嘿视频免费看| 国产白丝av| 日韩国产欧美精品在线| 91久久偷偷做嫩草影院免费看| 国产精品欧美亚洲韩国日本不卡| 亚洲天堂日本| 波多野结衣一区二区三区四区视频| 亚洲无码电影| 嫩草国产在线| 亚洲AV无码精品无码久久蜜桃| 亚洲国产亚洲综合在线尤物| 青草国产在线视频| 欧美成人免费午夜全| 人人妻人人澡人人爽欧美一区| 日韩精品一区二区深田咏美| 欧美a在线视频| 久久99热这里只有精品免费看| 黄片一区二区三区| 免费无遮挡AV| 91系列在线观看| 日韩欧美综合在线制服| 香蕉国产精品视频| 广东一级毛片| 成人va亚洲va欧美天堂| 激情无码字幕综合| 成人综合在线观看| 国产精品亚洲专区一区| 亚洲视频无码| 一区二区日韩国产精久久| 国产日韩精品一区在线不卡| 国产一在线| 欧美亚洲国产日韩电影在线| 亚洲色图另类| 青青青国产视频| 欧美一区二区自偷自拍视频|