日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

计算机视觉之一:特征检测

發布時間:2025/3/17 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 计算机视觉之一:特征检测 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

計算機視覺之一:特征檢測

?

主要內容:

1、一個例子解釋為什么要進行特征檢測

2、圖像特征

3、點特征檢測:Harris角點、MOPS、SIFT

4、邊緣檢測:一階微分算子、二階微分算子、Canny算子

?

一、為什么要檢測特征?

舉一個例子:全景圖像拼接,給定兩張圖像,如何拼接成一張大圖?

步驟一:檢測特征點

步驟二:匹配特征點

步驟三:圖像適配

二、圖像的特征有哪些?

計算機視覺中常用的圖像特征包括:點、邊緣、直線、曲線等

三、點特征檢測

1、點特征的優勢:

點特征屬于局部特征,對遮擋有一定魯棒性;

通常圖像中可以檢測到成百上千的點特征,以量取勝;

點特征有較好的辨識性,不同物體上的點容易區分;

點特征提取通常速度很快;

2、什么是好的點特征?

考慮圖像上的一個小窗口,當窗口位置發生微小變化時,窗口圖像如何變化?

很明顯,從下圖可以看出,角點是一個好的點特征,因為它沿任意方向移動,窗口的灰度變化明顯,所以它可以作為一個特征來進行區分和辨別

3、點特征的數學表達

?????

  • 假設窗口W發生位置偏移(u,v);
  • 比較偏移前后窗口中每一個像素點的灰度變化值;
  • 使用誤差平方和定義誤差函數E(u,v)

?????????

?????? 不同位置點計算得到的E(u,v)如下圖所示,E(u,v)值隨著u、v變化的效果圖,可以看出,平坦區域(如天空)的灰度變化不大(下圖3),邊緣區域沿著邊緣方向的灰度變化.

也很小(下圖2),只有角點處的灰度變化稍微劇烈一點(下圖1)

  誤差函數E(u,v):

將I(u,v)進行Taylor展開:

進一步展開,寫成:

H稱為自相關矩陣,是H的2個特征值,E(u,v)的變化如下圖所示:

根據H的2個特征值大小對圖像點進行分類:

角點應該滿足的基本性質:最小特征值盡量大

角點響應:

比更有效的角點響應函數:

四、點特征檢測:Harris角點

  • 算法步驟:

  • 將原圖像I使用w(x,y)進行卷積,并計算圖像梯度Ix與Iy;
  • 計算每個圖像點的自相關矩陣H;
  • 計算角點響應;
  • 選擇R大于閾值且為局部極大值的點作為角點。
    • Harris角點改進:

    Harris檢測子獲得的角點可能在圖像上分布不均勻(對比度高的區域角點多)

    改進方法:Adaptive non-maximal suppression(ANMS),只保留半徑r內角點響應比其他點大10%的點作為角點。(Brown,Szeliski and Winder,2005)

    • Harris角點的性質:

    1.?? 旋轉不變:

    橢圓轉過一定角度但是其形狀保持不變(特征值保持不變)

    2.?? 光照變化不變:

    只使用了圖像導數,對于光照線性變化不變

    3.?? 對比度變化部分不變:

    4.?? 對于圖像尺度變化不具有不變性:

    五、點特征檢測:MOPS

    MOPS:Multi-scale oriented patches

    尺度不變:在多層圖像金字塔上檢測角點,在同一層進行匹配

    MOPS局限:待匹配的圖像需要尺度近似

    六、點特征檢測:SIFT

    Scale Invariant Feature Transform (SIFT)(Lowe,2004)

    主要內容:

    1.SIFT算法特點

    2.SIFT算法流程

    3.SIFT算法的具體步驟

    4.SIFT點的特點

    ?

    1、SIFT算法的特點:

    • 不變性:

    ——對圖像的旋轉和尺度變化具有不變性;

    ——對三維視角變化和光照變化具有很強的適應性;

    ——局部特征,在遮擋和場景雜亂時仍保持不變性;

    • 辨別力強:

    ——特征之間相互區分的能力強,有利于匹配;

    • 數量較多:

    ——一般500*500的圖像能提取約2000個特征點。

    2、SIFT算法的流程:

    在高斯差分(Difference of Gaussian,DOG)尺度空間中提取極值點并進行優化,從而獲取特征點。

    3、SIFT算法點檢測的具體步驟:

    ——構建尺度空間;

    ——構造高斯差分尺度空間;

    ——DoG尺度空間極值點檢測;

    ——特征點精確定位;

    ——去除不穩定點;

    • 構建尺度空間:模擬圖像數據的多尺度特征

    ????????

    其中是尺度可變高斯函數

    尺度參數決定圖像的平滑程度,大尺度對應圖像的概貌特征,小尺度對應圖像的細節特征

    • 構造高斯差分尺度空間(Difference of Gaussian,DOG)

    為了在尺度空間中檢測穩定的關鍵點,構造高斯差分尺度空間

    使用DOG的幾個理由:

    ? ? ? ? ? 1. ? 計算效率高:高斯卷積,減法;

    ?? 2.?? 高斯差分是對尺度歸一化LoG的一個很好的近似,而尺度歸一化的LoG空間具有真正的尺度不變性(Lindegerg 1994);

    ?? 3.? 實驗比較表明,從尺度歸一化LoG空間中提取的圖像特征的尺度穩定性最好,優于梯度、Hessian或Harris角點函數。

    DoG尺度空間:

    • DoG尺度空間極值點檢測:

    一個點和它同尺度的8個相鄰點以及上下相鄰尺度對應的9×2個點共26個點比較,以確保在尺度空間和二維圖像空間都檢測到極值點。
    一個點如果在DOG尺度空間的26個領域中是最大或最小值時,就認為該點是圖像在該尺度下的一個特征點。
    一個特征點是在三維尺度空間的局部極值點。

    • 特征點精確定位:

    一個特征點是在三維尺度空間的局部極值點。但(x,y)為整數像素,為離散尺度,需要對DoG空間擬合進行特征點精確定位。

    將的特征點處二階Taylor展開:

    對上式求導,并令其為0,得到精確的位置(偏移量):

    若中的三個變量任意一個偏移量大于0.5,說明精確極值點更接近于另一個特征點,則更換特征點重復上述精確定位流程。

    • 去除不穩定特征點:

    ——去除對比度低的點:

    計算極值點取值,若,則保留該特征點,否則丟棄。

    ——去除邊緣點:

    DoG算子會產生較強的邊緣響應,利用Harris檢測子判斷。

    若,則保留該特征點,否則丟棄。

    4、SIFT點的特點:

    • 視角和旋轉變化不變性:

    • 光照不變性:

    • 尺度不變性:

    七、點特征檢測:小結

    • 根據自相關矩陣特征值檢測角點(Harris); Harris角點具有旋轉、光照不變性,但不具有尺度不變性。
    • 高斯差分尺度空間中檢測尺度不變特征點(SIFT); SIFT具有尺度不變性。
    • Harris與SIFT的機理不同,因此可以聯合使用,互為補充。

    八、邊緣檢測

    主要內容:

    1.圖像梯度

    2.一階微分算子

    3.二階微分算子

    4.Canny算子

    1、為什么要檢測邊緣?

    一個例子:基于邊緣的圖像編輯

    2、圖像邊緣的產生

    物體的邊界、表面方向的改變、不同的顏色、光照明暗的變化

    3、邊緣檢測——圖像梯度

    圖像梯度的定義:??

    水平梯度:

    垂直梯度:

    圖像梯度指向灰度變化最快的方向:

    梯度幅值表示邊緣的強弱:

    邊緣是一階倒數的極大值點:

    4、邊緣檢測——一階微分算子

    使用差分近似一階微分算子:

    直接對圖像使用差分容易受到噪聲影響:

    解決方法:先平滑,再微分

    由,可將平滑和微分合為一個算子

    二維高斯微分:

    實際應用中:對二維高斯微分進行數值近似:Prewitt算子、Sobel算子

    Prewitt算子:去噪+ 增強邊緣

    Sobel算子:去噪+ 增強邊緣(給四鄰域更大的權重)

    使用一階微分算子提取邊緣流程:
    1. 使用Prewitt或Sobel算子對圖像進行卷積;
    2. 將梯度幅值大于閾值的點標記為邊緣;
    3. (optional)將邊緣細化為一個像素寬度。

    5、邊緣檢測——二階微分算子

    如果不使用細化,如何獲得單像素寬度邊緣?

    邊緣是一階倒數的極大值點

    邊緣是二階倒數的過零點
    注意:僅僅等于0不夠,常數函數也為0,必須存在符號改變

    對平滑圖像做二階微分:

    二維高斯微分:

    Laplacian of Gaussian (LoG)算子:首先用Gauss函數對圖像進行平滑,抑制噪聲,然后對經過平滑的圖像使用Laplacian算子
    LoG算子等效于:Gaussian平滑+ Laplacian二階微分

    LoG因其形狀,也稱為Mexican hat

    LoG算子與一階微分算子的比較:

    LoG算子的特點:
    ? 正確檢測到的邊緣:單像素寬度,定位準確;
    ? 形成許多封閉的輪廓,這是一個主要問題;
    ? 需要更加復雜的算法檢測過零點。

    6、邊緣檢測——Canny算子

    • Canny算子是最常用的邊緣檢測算子
    • Canny算子是一階微分算子,但是一個優化的方案
      -單像素寬度
      -噪聲抑制
      -邊緣增強
      -邊緣定位
      J.Canny, “A Computational Approach to Edge Detection”, IEEE Trans. on PAMI, 8(6),1986.
      18482 cites
    • Canny算子基本流程

    (1)高斯平滑濾波器卷積

    (2)使用一階有限差分計算偏導數的兩個陣列

    相當于與模板進行卷積運算:

    當然也可以使用高斯微分算子(Prewitt或Sobel)直接與卷積計算和

    (3)邊緣幅值和邊緣方位角

    M代表梯度幅值的大小,在存在邊緣的圖像位置處,
    M的值變大,圖像的邊緣特征被“增強”。

    (4)梯度非極大值抑制

    局部極值周圍存在相近數值的點:

    非極大值抑制(NMS:Non-Maxima Suppression)
    主要思想:

    由梯度幅值圖像,僅保留極大值(嚴格地說,保留梯度方向上的極大值點)。

    具體過程:

    1.初始化;

    2.對于每個點,在梯度方向和反梯度方向各找n個像素點。若不是這些點中的最大點,則將置零,否則保持不變。

    • 在梯度方向的沿線上檢測該點是否為局部極大值;
    • 簡化的情形,只使用4個方向:【0,45,90,135】;
    • 得到的結果包含邊緣的寬度為1個像素;

    (5)對NMS結果進行閾值二值化—雙閾值檢測

    • 使用大的閾值,得到:
      -少量的邊緣點
      -許多空隙
    • 使用小的閾值,得到:
      -大量的邊緣點
      -大量的錯誤檢測

    兩個閾值T1,T2:T2 >> T1

    由T1得到,低閾值邊緣圖:更大的誤檢測率
    由T2得到,高閾值邊緣圖:更加可靠

    (6)邊緣連接
    1. 將中相連的邊緣點輸出為一幅邊緣圖像;
    2. 對于中每條邊,從端點出發在中尋找其延長的部分,直至與中另外一條邊的端點相連,否則認為中沒有它延長的部分;
    3. 將作為結果輸出。

    Canny算子流程效果圖:

    ? Canny算子的優點
    -參數較少
    -計算效率
    -得到的邊緣連續完整
    ? 參數的選擇
    -Gauss濾波的尺度
    -雙閾值的選擇(LOW=HIGH*0.4)

    Canny算子的處理效果:

    九、總結

    ? 根據自相關矩陣特征值檢測角點(Harris);
    ? 高斯差分尺度空間中檢測尺度不變特征點(SIFT);
    ? 一階高斯微分算子(Prewitt、Sobel)極值檢測邊緣;
    ? 二階高斯微分算子(LoG)過零點檢測邊緣;
    ? 非極大值抑制+雙閾值檢測邊緣(Canny)。

    十、特征檢測參考文獻

    ? Harris, C. and Stephens, M. J. A combined corner and edge detector. In Alvey Vision Conference, 1988.
    ? Lowe, D. G. Distinctive image features from scale-invariant keypoints. International Journal of Computer Vision, 60(2):91–110, 2004.
    ? Canny, J. A computational approach to edge detection. IEEE Transactions onPAMI, 8(6):679–698, 1986.
    ? Tuytelaars, T. and Mikolajczyk, K. Local Invariant Feature Detectors: A Survey. Foundations and Trends in Computer Graphics and Vision, 3(3): 177–280, 2007.

    與50位技術專家面對面20年技術見證,附贈技術全景圖

    總結

    以上是生活随笔為你收集整理的计算机视觉之一:特征检测的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。