小編給大家分享一下C++ OpenCV特征提取之如何實(shí)現(xiàn)Brisk特征檢測(cè)與匹配,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)張家口免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了近1000家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
前言
BRISK是BRIEF描述子的一種改進(jìn),相比于BRIEF特征,它具有旋轉(zhuǎn)不變性、尺度不變性和對(duì)噪聲的魯棒性。幾個(gè)特征檢測(cè)的速度比較:SIFT>SURF>BRISK>FREAK>ORB,在對(duì)有較大模糊的圖像配準(zhǔn)時(shí),BRISK算法在其中表現(xiàn)最為出色。
Brisk特征介紹
構(gòu)建尺度空間
特征點(diǎn)檢測(cè)
FAST9-16尋找特征點(diǎn)
特征點(diǎn)定位
關(guān)鍵點(diǎn)描述子
代碼演示
我們?cè)傩陆ㄒ粋€(gè)項(xiàng)目名為opencv--brisk,按照配置屬性(VS2017配置OpenCV通用屬性),然后在源文件寫入#include和main方法,這里因?yàn)槲覀兛隙茏x到圖片,所以我都省略了一些判斷的語(yǔ)句,詳細(xì)的判斷圖片是否讀取成功的可以看以前的例子里面。
Brisk檢測(cè)
我們先來(lái)做一下Brisk的檢測(cè),檢測(cè)這里代碼比較簡(jiǎn)單,先用以前的test3的圖片進(jìn)行檢測(cè)看看效果,下面的檢測(cè)代碼。
然后我們看一下運(yùn)行的效果
要以看到特征點(diǎn)都檢測(cè)出來(lái)了,感覺(jué)效果比起SIFT和SURF都要好一點(diǎn)。下面我們?cè)僮鲆幌绿卣鞯钠ヅ洹?/p>
Brisk匹配
做匹配的話我們還是用前面的對(duì)應(yīng)的兩個(gè)圖片test8和test7,接下來(lái)我們就來(lái)修改代碼
首先修改加載的圖片
然后重新定義keypoints進(jìn)行檢測(cè)
再進(jìn)行Match的匹配
接下來(lái)尋找最好的Match Point
在新圖上繪制goodMatch并顯示出來(lái)
接下來(lái)我們看一下運(yùn)行的效果
以上是“C++ OpenCV特征提取之如何實(shí)現(xiàn)Brisk特征檢測(cè)與匹配”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!