首頁(yè)人工智能技術(shù)資訊正文

什么是ORB算法?【OpenCV教程】

更新時(shí)間:2021-07-30 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班


1. ORB算法原理

SIFT和SURF算法是受專利保護(hù)的,在使用他們時(shí)我們是要付費(fèi)的,但是ORB(Oriented Fast and Rotated Brief)不需要,它可以用來對(duì)圖像中的關(guān)鍵點(diǎn)快速創(chuàng)建特征向量,并用這些特征向量來識(shí)別圖像中的對(duì)象。


2. ORB算法流程

ORB算法結(jié)合了Fast和Brief算法,提出了構(gòu)造金字塔,為Fast特征點(diǎn)添加了方向,從而使得關(guān)鍵點(diǎn)具有了尺度不變性和旋轉(zhuǎn)不變性。具體流程描述如下:

構(gòu)造尺度金字塔,金字塔共有n層,與SIFT不同的是,每一層僅有一幅圖像。第s層的尺度為:

ORB算法01

$$\sigma_0$$是初始尺度,默認(rèn)為1.2,原圖在第0層。

ORB算法02

第s層圖像的大小:

ORB算法03

在不同的尺度上利用Fast算法檢測(cè)特征點(diǎn),采用Harris角點(diǎn)響應(yīng)函數(shù),根據(jù)角點(diǎn)的響應(yīng)值排序,選取前N個(gè)特征點(diǎn),作為本尺度的特征點(diǎn)。

計(jì)算特征點(diǎn)的主方向,計(jì)算以特征點(diǎn)為圓心半徑為r的圓形鄰域內(nèi)的灰度質(zhì)心位置,將從特征點(diǎn)位置到質(zhì)心位置的方向做特征點(diǎn)的主方向。

計(jì)算方法如下:

ORB算法04

質(zhì)心位置:

ORB算法05

主方向:
ORB算法06

為了解決旋轉(zhuǎn)不變性,將特征點(diǎn)的鄰域旋轉(zhuǎn)到主方向上利用Brief算法構(gòu)建特征描述符,至此就得到了ORB的特征描述向量。

《圖像處理OpenCV入門教程》課程導(dǎo)讀

加QQ:2217622915,獲取《圖像處理OpenCV入門教程》全套視頻教程+筆記+源碼。



猜你喜歡:

猜你喜歡:

OpenCV讀取視頻的方法?

OpenCV是干什么的?

OpenCV圖像疊加和圖像混合

認(rèn)識(shí)聚類算法

黑馬程序員人工智能培訓(xùn)課程

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!