【图像】尺度不变特征变换算法(SIFT)
SIFT(Scale-Invariant Feature Transform),中文含義就是尺度不變特征變換。自1999年由David Lowe提出以后被廣泛的應(yīng)用于CV的各種領(lǐng)域:圖像識(shí)別,圖像檢索,3D重建等等,可謂無(wú)人不知無(wú)人不曉。
由于在此之前的目標(biāo)檢測(cè)算法對(duì)圖片的大小、旋轉(zhuǎn)非常敏感,而SIFT算法是一種基于局部興趣點(diǎn)的算法,因此不僅對(duì)圖片大小和旋轉(zhuǎn)不敏感,而且對(duì)光照、噪聲等影響的抗擊能力也非常優(yōu)秀,因此,該算法在性能和適用范圍方面較于之前的算法有著質(zhì)的改變。這使得該算法對(duì)比于之前的算法有著明顯的優(yōu)勢(shì),所以,一直以來(lái)它都在目標(biāo)檢測(cè)和特征提取方向占據(jù)著重要的地位。
它的步驟可以主要分兩步:1)特征點(diǎn)檢出 keypoint localisation,2)特征點(diǎn)描述 feature description。
特征點(diǎn)檢出
主要是用了高斯差分函數(shù)(DoG),就是把圖像做不同程度的高斯模糊blur,平滑的區(qū)域或點(diǎn)肯定變化不大,而紋理復(fù)雜的比如邊緣,點(diǎn),角之類區(qū)域肯定變化很大,這樣變化很大的點(diǎn)就是特征點(diǎn)。當(dāng)然為了找到足夠的點(diǎn),還需要把圖像放大縮小幾倍(Image Pyramids)來(lái)重復(fù)這個(gè)步驟找特征點(diǎn)。其實(shí)DoG并不是Lowe提出的,很久以前就有了,讀過(guò)SIFT專利的人都知道,SIFT的專利里面也不包括這部分??纱嫣卣鼽c(diǎn)檢出還有很多其他方法如MSER等。
特征點(diǎn)描述
就是一個(gè)簡(jiǎn)單版的HOG,即以檢出的特征點(diǎn)為中心選16x16的區(qū)域作為local patch,這個(gè)區(qū)域又可以均分為4x4個(gè)子區(qū)域,每個(gè)子區(qū)域中各個(gè)像素的梯度都可以分到8個(gè)bin里面,這樣就得到了4x4x8=128維的特征向量。特征點(diǎn)檢出以后還需要一個(gè)很重要的步驟就是歸一化,計(jì)算這個(gè)patch的主方向,然后根據(jù)這個(gè)主方向把patch旋轉(zhuǎn)到特定方向,這樣計(jì)算的特征就有了方向不變性,也需要根據(jù)patch各像素梯度大小把patch縮放到一定的尺度,這樣特征就有了尺度不變性。
方向分配
根據(jù)圖像的圖像,可以為每個(gè)關(guān)鍵定指定一個(gè)基準(zhǔn)方向,可以相對(duì)于這個(gè)指定方向表示關(guān)鍵點(diǎn)的描述符,從而實(shí)現(xiàn)了圖像的旋轉(zhuǎn)不變性。 關(guān)鍵點(diǎn)的尺度用于選擇尺度最接近的高斯平滑圖像,使得計(jì)算是以尺度不變的方式執(zhí)行,對(duì)每個(gè)圖像?,分別計(jì)算它的梯度幅值和梯度方向, ? ? 然后,使用方向直方圖統(tǒng)計(jì)關(guān)鍵點(diǎn)鄰域內(nèi)的梯度幅值和梯度方向。將0~360度劃分成36個(gè)區(qū)間,每個(gè)區(qū)間為10度,統(tǒng)計(jì)得出的直方圖峰值代表關(guān)鍵點(diǎn)的主方向。
猜你喜歡:👇🏻
?【圖像】Dog(高斯差分)檢測(cè)角點(diǎn)
?【總結(jié)】一文了解所有的機(jī)器學(xué)習(xí)評(píng)價(jià)指標(biāo)
?基于小波變換的圖像邊緣檢測(cè)(matlab祖?zhèn)鞔a注釋)
總結(jié)
以上是生活随笔為你收集整理的【图像】尺度不变特征变换算法(SIFT)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: mysql5.6.28安装_mysql5
- 下一篇: win7屏保时间设置_论如何优雅的设置手