91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3KB
    文件類型: .cpp
    金幣: 1
    下載: 0 次
    發布日期: 2023-12-19
  • 語言: C/C++
  • 標簽: SIFT??opencv??

資源簡介

一個cpp文件。 功能:利用opencv庫對SIFT角點進行提取,并進行匹配,最后畫出匹配示意圖。程序邏輯簡單,可以在內部自由改動。

資源截圖

代碼片段和文件信息

#include???
#include???
#include?“opencv2/core.hpp“??
#include?“opencv2/core/utility.hpp“??
#include?“opencv2/core/ocl.hpp“??
#include?“opencv2/imgcodecs.hpp“??
#include?“opencv2/highgui.hpp“??
#include?“opencv2/features2d.hpp“??
#include?“opencv2/calib3d.hpp“??
#include?“opencv2/imgproc.hpp“??
#include“opencv2/flann.hpp“??
#include“opencv2/xfeatures2d.hpp“??
#include“opencv2/ml.hpp“??

using?namespace?std;?
using?namespace?cv;?
using?namespace?xfeatures2d;
using?namespace?cv::ml;

int?main(int?argc?char**?argv)?
{?

Mat?ab;
a?=?imread(“A.jpg“?0);?//讀取要匹配的兩張圖像?
b?=?imread(“B.jpg“?0);
vector?matches;??????//DMatch是用來描述匹配好的一對特征點的類,包含這兩個點之間的相關信息 ??????????????????????
vector?key1key2;?????//關鍵點容器
Mat?cd;???//sift描述子
Ptr?sift?=?xfeatures2d::SIFT::create(0?3?0.04?10);?//創建sift對象
BFMatcher?matcher;?????????//實例化一個暴力匹配器

sift->detectAndCompute(a?noArray()?key1?c);????//給描述子賦值
sift->detectAndCompute(b?noArray()?key2?d);?
matcher.match(c?d?matches);?????????????//匹配,數據來源是特征向量,結果存放在DMatch類型里面?

??????????????????????????????????????????//sort函數對數據進行升序排列
sort(matches.begin()?matches.end());?????//篩選匹配點,根據match里面特征對的距離從小到大排序
vector

評論

共有 條評論