OpenCV--SIFT算法检测特征点
生活随笔
收集整理的這篇文章主要介紹了
OpenCV--SIFT算法检测特征点
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
代碼選自:http://blog.csdn.net/zhaocj/article/details/42124473
SIFT算法是用來(lái)檢測(cè)圖像中特征點(diǎn)的,
代碼如下:
opencv版本:2.4.9
?
#include "opencv2/opencv.hpp" #include "opencv2/imgproc/imgproc.hpp" #include "opencv2/features2d/features2d.hpp" #include "opencv2/nonfree/nonfree.hpp"using namespace cv;int main() {Mat img = imread("test.jpg");SIFT sift;//實(shí)例化SIFT類(lèi),如果代碼改為SIFT sift(100);則只檢測(cè)100個(gè)特征點(diǎn)vector<KeyPoint> key_points;//特征點(diǎn)Mat descriptors, mascara;Mat output_img;//輸出圖像矩陣sift(img, mascara, key_points, descriptors);//執(zhí)行sift運(yùn)算//在輸出圖像上繪制特征點(diǎn)drawKeypoints(img, //輸入圖像key_points, //特征點(diǎn)矢量output_img, //輸出圖像Scalar::all(-1), //繪制特征點(diǎn)的顏色, 隨機(jī)顏色//以特征點(diǎn)為中心畫(huà)圓,圓半徑表示特征點(diǎn)的大小,直線(xiàn)表示特征點(diǎn)的方向DrawMatchesFlags::DRAW_RICH_KEYPOINTS);namedWindow("SIFT");imshow("SIFT",output_img);waitKey(0);return 0; }?
?
運(yùn)行結(jié)果如下:
?
總結(jié)
以上是生活随笔為你收集整理的OpenCV--SIFT算法检测特征点的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: tensorrt基础知识+torch版l
- 下一篇: 如何通俗理解计算机视觉、计算机图形、图像