<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Matlab 圖像—邊緣檢測算法及效果演示

          共 1359字,需瀏覽 3分鐘

           ·

          2022-11-21 22:06

          點(diǎn)擊下方卡片,關(guān)注“新機(jī)器視覺”公眾號

          重磅干貨,第一時間送達(dá)

          來源:古月居

          邊緣檢測


          在圖像中,邊緣是一條曲線,其走勢與圖像中強(qiáng)度快速變化的路徑一致。邊緣通常與場景中目標(biāo)的邊界相關(guān)聯(lián)。邊緣檢測用于確定圖像中的邊緣。


          要尋找邊緣,您可以使用 edge 函數(shù)。此函數(shù)使用以下兩個標(biāo)準(zhǔn)之一來尋找圖像中強(qiáng)度迅速變化的位置:


          • 強(qiáng)度的一階導(dǎo)數(shù)的模大于某個閾值的位置

          • 強(qiáng)度的二階導(dǎo)數(shù)有過零點(diǎn)的位置


          edge 提供幾個導(dǎo)數(shù)估算器,其中每個都實(shí)現(xiàn)以下定義之一。


          對于其中一些估算器,您可以指定運(yùn)算是否應(yīng)對水平邊緣、垂直邊緣敏感或?qū)烧叨济舾小?/p>


          edge 返回二值圖像,其中包含的 1 對應(yīng)于找到邊的位置,0 對應(yīng)于其他位置。


          edge 提供的最強(qiáng)大的邊緣檢測方法是 Canny 方法。Canny 方法與其他邊緣檢測方法的不同之處在于,它使用兩種不同閾值(用于檢測強(qiáng)邊緣和弱邊緣),并且僅當(dāng)弱邊緣連通到強(qiáng)邊緣時才在輸出中包括弱邊緣。


          因此,這種方法不太可能受到噪聲的影響,更可能檢測到真正的弱邊緣。


          檢測圖像中的邊緣


          此示例說明如何同時使用 Canny 邊緣檢測器和 Sobel 邊緣檢測器來檢測圖像中的邊緣。



          Matlab 代碼


          I = imread('coins.png');imshow(I);% 將 Sobel 和 Canny 邊緣檢測器同時應(yīng)用于圖像,并顯示它們以進(jìn)行比較。BW1 = edge(I,'sobel');BW2 = edge(I,'canny');figure;imshowpair(BW1,BW2,'montage')title('Sobel Filter                                   Canny Filter');


          代碼效果如下:


          邊緣算法:robert


          邊緣定位精度較高,對于陡峭邊緣且噪聲低的圖像效果較好,但沒有進(jìn)行平滑處理,沒有抑制噪聲的能力。


          BW1=edge(Img,'Roberts',0.16);


          邊緣算法:sobel prewitt


          進(jìn)行了平滑處理,對噪聲具有一定抑制能力,但容易出現(xiàn)多像素寬度。


          BW2=edge(Img,'Sobel',0.16);BW3=edge(Img,'Prewitt',0.16);


          邊緣算法:laplacian


          對噪聲較為敏感,使噪聲能力成分得到加強(qiáng),容易丟失部分邊緣方向信息,造成一些不連續(xù)的檢測邊緣,同時抗噪聲能力較差。


          邊緣算法:log


          抗噪聲能力較強(qiáng),但會造成一些尖銳的邊緣無法檢測到。


          BW5=edge(Img,'LOG',0.16);


          邊緣算法:canny


          最優(yōu)化思想的邊緣檢測算子,同時采用高斯函數(shù)對圖像進(jìn)行平滑處理,但會造成將高頻邊緣平滑掉,造成邊緣丟失,采用雙閾值算法檢測和連接邊緣。


          BW6=edge(Img,'Canny',0.16);


          效果對比



          還有一篇更加偏向于原理講解的文章:


          圖像邊緣檢測及提取方法總結(jié)(含Matlab代碼)

          https://blog.csdn.net/LemonXQ/article/details/79695641


          本文僅做學(xué)術(shù)分享,如有侵權(quán),請聯(lián)系刪文。

          —THE END—

          瀏覽 31
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  小泽玛利亚黑人初体验 | 99热综合在线 | 成人天堂一区二区三区精华液功效 | 蜜桃人妻无码AV天堂二区 | 久久ww |