Feature Detector & Descriptor(一)

視頻地址

Why Extract Features?

  • Robot Localization
  • 3D object recognition
  • 圖像拼接,兩張圖拼成一個視角更大的圖

Advantages of Local Features

  • Locality:局部性(局部特徵,抗遮擋等干擾)
  • Quantity:數量較多(一張圖像中可能提取幾百幾千個)
  • Dintinctiveness:區別性比較好,畢竟要具有代表性,unique
  • Efficency:高效性(這個主要看提取原則)

The Feature Matching Problem

  1. 首先找到一個好的點
  2. 然後找到對應的點(再另一個變化的圖上)
  3. 總的來說就是兩個層面:檢測描述,且 invariant to transformation(拉伸、光照變化、轉換)。

Detection: What Makes a Good Feature?

Look for image regions that are unusual.

How to define "unusual"?

Harris conner detector.

這篇講Harris conner detector的也不錯。

由圖可知unique區域一般在什麼地方。再看下其數學定義,是一個關於u、v的函數。

注意,窗口移動的方向是很多的,不只垂直、水平(任意u、v方向移動)。窗口計算是SSD(對應元素相減求平方然後加起來,當然也可以加權,比如高斯加權)計算的。 

爲了分析方便,進行數學分析:

  • 假定(u,v)很小
  • 假定連續

上面那個推導並不難,主要是那個一階泰勒近似等價(推導的關鍵),那個是關鍵。牛逼。注意下面:

絕大多數信息在M裏面,分析M可以知能量函數的情況。


注意:A、B、C都是與一階導相關的,能量函數是一個二次曲面。

我們找個等高線的截面。解出來一個橢圓?

橢圓的長短軸是有物理含義的,分別對應矩陣M的特徵值的倒數成比例關係。長軸和小特徵值的倒數成比例關係。。自然。。。

特徵值對應的特徵向量的方向就是對應的橢圓的軸的方向。

短軸是能量增長最快的方向,長軸。。。

特徵向量~回憶一下:Ax = ax;(想想怎麼說?把矩陣A看成變換)

長短軸是一個區間(理解下這句話啥意思)。看上面的圖兩個特徵值都應該稍微大一些,這樣的話長軸和短軸都不會太長,那麼在各個方向變化應該都比較大。。。現在理解了麼?

兩個特徵值分別是能量增長最大、最小的方向!

非極大值抑制,這個怎麼理解?

局部最大搜索?

這個經常會用在物體檢測上~暫時先淺顯的理解下。

Feature Dector Invariance

  • 旋轉,是否還能檢測到?
  • 如果改變光照麼?
  • 尺度縮放呢?
  • 或者上面的變化的綜合呢?

接下來看看Harris corner的一些性質

  • Rotation Invariance 這裏需要從能量函數的物理意義入手。能量函數是一個二次曲面,我們截等高線的圖,然後分析兩根軸的長短來分析是否爲角點。R是不變的!
  • 加減像素值,也不影響響應值R,因爲M不變;乘除倍數,會有一定影響,但是問題不大,想想爲啥?因爲M變了,但是總體問題不大。
  • 但是Harris corner 不能解決尺度問題,因爲我們的window size是固定的。

如何解決尺度不變性問題?

思路:自動決定window size,根據圖像的內容?怎麼做?

譚平老師的拓展內容?

如何衡量Feature detector?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章