最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

opencv3/C++ 實(shí)現(xiàn)SURF特征檢測

 更新時(shí)間:2019年12月12日 08:33:00   作者:阿卡蒂奧  
今天小編就為大家分享一篇opencv3/C++ 實(shí)現(xiàn)SURF特征檢測,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧

SURF即Speeded Up Robust Features加速魯棒特征;

SURF可以用于對象定位和識別、人臉識別、3D重建、對象跟蹤和提取興趣點(diǎn)等。

工作原理:

1、選擇圖像中POI(Points of Interest) Hessian Matrix;

2、在不同的尺度空間發(fā)現(xiàn)關(guān)鍵點(diǎn),非最大信號壓制;

3、發(fā)現(xiàn)特征點(diǎn)方法、旋轉(zhuǎn)不變性要求;

4、生成特征向量;

類SURF中成員函數(shù)create()參數(shù)說明:

static Ptr<SURF> create(
double hessianThreshold=100,//SURF中使用的hessian關(guān)鍵點(diǎn)檢測器的閾值
int nOctaves = 4, //關(guān)鍵點(diǎn)檢測器將使用的金字塔組數(shù)量
int nOctaveLayers = 3,//高斯金字塔每個(gè)組內(nèi)圖像的層數(shù)
bool extended = false, //擴(kuò)展描述符標(biāo)志(true使用擴(kuò)展的128個(gè)元素的描述符,false使用64個(gè)元素的描述符)
bool upright = false//旋轉(zhuǎn)的特征標(biāo)志(true不計(jì)算方向,false計(jì)算方向)
);

函數(shù)detect()用來檢測圖像或圖像集中的關(guān)鍵點(diǎn)。

基類Feature2D中成員函數(shù)detect()參數(shù)說明:

void detect( 
InputArray image,//圖像
CV_OUT std::vector<KeyPoint>& keypoints,//檢測到的關(guān)鍵點(diǎn),(在圖像集中關(guān)鍵點(diǎn)[i]是在圖像[i]中檢測到的一組關(guān)鍵點(diǎn))
InputArray mask=noArray() //指定在哪里尋找關(guān)鍵點(diǎn)的掩碼(必須是在感興趣區(qū)域中具有非零值的8位整數(shù)矩陣)
);

函數(shù)drawKeypoints()的參數(shù)說明:

void drawKeypoints( 
InputArray image, //源圖像
const std::vector<KeyPoint>& keypoints, //來自源圖像的關(guān)鍵點(diǎn)
InputOutputArray outImage,//輸出圖像
const Scalar& color=Scalar::all(-1), //關(guān)鍵點(diǎn)的顏色
int flags=DrawMatchesFlags::DEFAULT //設(shè)置繪圖功能的標(biāo)志
);

函數(shù)drawKeypoints()用來繪制關(guān)鍵點(diǎn)。

SURF特征檢測示例:

#include<opencv2/opencv.hpp>
#include<opencv2/xfeatures2d.hpp>
using namespace cv;
using namespace cv::xfeatures2d;

Mat src;
int minHessian = 50;
void trackBar(int, void*);
int main()
{
 src = imread("E:/image/image/bdb.jpg");
 if (src.empty())
 {
  printf("can not load image \n");
  return -1;
 }
 namedWindow("input", WINDOW_AUTOSIZE);
 imshow("input", src);

 namedWindow("output", WINDOW_AUTOSIZE);
 createTrackbar("minHessian","output",&minHessian, 500, trackBar);

 waitKey(0);
 return 0;
}


void trackBar(int, void*)
{
 Mat dst;
 // SURF特征檢測
 Ptr<SURF> detector = SURF::create(minHessian);
 std::vector<KeyPoint> keypoints;
 detector->detect(src, keypoints, Mat());
 // 繪制關(guān)鍵點(diǎn)
 drawKeypoints(src, keypoints, dst, Scalar::all(-1), DrawMatchesFlags::DEFAULT);
 imshow("output", dst);
}

以上這篇opencv3/C++ 實(shí)現(xiàn)SURF特征檢測就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • C語言安全之?dāng)?shù)組長度與指針實(shí)例解析

    C語言安全之?dāng)?shù)組長度與指針實(shí)例解析

    這篇文章主要介紹了C語言安全之?dāng)?shù)組長度與指針,需要的朋友可以參考下
    2014-07-07
  • C++?ffmpeg實(shí)現(xiàn)將視頻幀轉(zhuǎn)換成jpg或png等圖片

    C++?ffmpeg實(shí)現(xiàn)將視頻幀轉(zhuǎn)換成jpg或png等圖片

    有時(shí)播放實(shí)時(shí)流的時(shí)候有截圖的需求,需要將解碼出來的圖片保存本地或上傳服務(wù)器,這時(shí)就需要將avframe中的數(shù)據(jù)編碼成png、jpg等格式的圖片,我們使用ffmpeg的相關(guān)編碼器就可以實(shí)現(xiàn)功能,下面就來講講具體實(shí)現(xiàn)方法吧
    2023-03-03
  • C語言鏈表與單鏈表詳解

    C語言鏈表與單鏈表詳解

    鏈表是一種物理存儲(chǔ)結(jié)構(gòu)上非連續(xù)、非順序的存儲(chǔ)結(jié)構(gòu),數(shù)據(jù)元素的邏輯順序是通過鏈表中的指針鏈接次序?qū)崿F(xiàn)的,本章帶你詳細(xì)了解鏈表與單鏈表
    2022-02-02
  • 如何調(diào)用C標(biāo)準(zhǔn)庫的exit函數(shù)詳解

    如何調(diào)用C標(biāo)準(zhǔn)庫的exit函數(shù)詳解

    這篇文章主要給大家介紹了關(guān)于如何調(diào)用C標(biāo)準(zhǔn)庫的exit函數(shù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • 關(guān)于C++11的統(tǒng)一初始化語法示例詳解

    關(guān)于C++11的統(tǒng)一初始化語法示例詳解

    C++之前的初始化語法很亂,有四種初始化方式,而且每種之前甚至不能相互轉(zhuǎn)換,但從C++11出現(xiàn)后就好了,所以這篇文章主要給大家介紹了關(guān)于C++11的統(tǒng)一初始化語法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。
    2017-10-10
  • 詳解C++中的函數(shù)調(diào)用和下標(biāo)以及成員訪問運(yùn)算符的重載

    詳解C++中的函數(shù)調(diào)用和下標(biāo)以及成員訪問運(yùn)算符的重載

    這篇文章主要介紹了詳解C++中的函數(shù)調(diào)用和下標(biāo)以及成員訪問運(yùn)算符,講到了這些二元運(yùn)算符使用的語法及重載,需要的朋友可以參考下
    2016-01-01
  • c++利用windows函數(shù)實(shí)現(xiàn)計(jì)時(shí)示例

    c++利用windows函數(shù)實(shí)現(xiàn)計(jì)時(shí)示例

    這篇文章主要介紹了c++利用windows函數(shù)實(shí)現(xiàn)計(jì)時(shí)示例,需要的朋友可以參考下
    2014-05-05
  • c++學(xué)習(xí)之構(gòu)造函數(shù)

    c++學(xué)習(xí)之構(gòu)造函數(shù)

    類多么重要我就不多說了,只講講學(xué)習(xí),因?yàn)閭€(gè)人認(rèn)為類的學(xué)習(xí)無論從概念的理解還是實(shí)際代碼的編寫相對其他C兼容向的代碼都是比較有難度的, 對于以前學(xué)C 的人來說這才是真正的新概念和內(nèi)容,STL其實(shí)還比較好理解,不就是一個(gè)更大的函數(shù)庫和代碼可以使用嘛。
    2015-06-06
  • C++實(shí)現(xiàn)寢室衛(wèi)生管理系統(tǒng)

    C++實(shí)現(xiàn)寢室衛(wèi)生管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)寢室衛(wèi)生管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • C語言中常見的六種動(dòng)態(tài)內(nèi)存錯(cuò)誤總結(jié)

    C語言中常見的六種動(dòng)態(tài)內(nèi)存錯(cuò)誤總結(jié)

    學(xué)習(xí)過C語言中的動(dòng)態(tài)內(nèi)存函數(shù),例如【malloc】、【calloc】、【realloc】、【free】,那它們在使用的過程中會(huì)碰到哪些問題呢,本本文我們一起來探討下,感興趣的朋友跟著小編一起來看看吧
    2023-11-11

最新評論

堆龙德庆县| 瑞金市| 茌平县| 永寿县| 鄂托克前旗| 前郭尔| 玛纳斯县| 浦东新区| 黔西县| 个旧市| 巍山| 瑞昌市| 建水县| 塘沽区| 岐山县| 宜君县| 额济纳旗| 扎赉特旗| 夏津县| 香河县| 佛山市| 扶余县| 炉霍县| 察雅县| 乐安县| 德兴市| 禹州市| 芦溪县| 中牟县| 镇宁| 柘荣县| 姜堰市| 肃宁县| 班玛县| 宾川县| 天全县| 灵璧县| 衡阳市| 江华| 苗栗县| 奉化市|