您的位置:首页 > 编程语言 > Python开发

OpenCV-Python 特征点检测 (含SIFT/SURF/ORB/KAZE/FAST/BRISK/AKAZE)

2018-03-30 15:18 3803 查看
对于OpenCV-Python,OpenCV2.x和OpenCV3.x的函数使用方式有很大不同。网上很多教程都还是基于OpenCV2.x,此版本已经逐渐被弃用。


Open3.x-Python 特征点检测方法

对于OpenCV3.x-Python,特征点检测及显示方法如下:

#
OpenCV3.x-Python

# 注意有_create()后缀

function = cv2.Function_Name_create()

keypoints = function.detect(img, None)

# 注意显示之前要先将img2初始化

img2 = img.copy()

img2 = cv2.drawKeyPoints(img, keypoints, color=(0,255,0))

[注意1]:对于OpenCV3.x-Python,还要在Function_Name后加上_create后缀。其实这一点在opencv_doc中具体的函数python使用方法中已经注明了。

[注意2]:对于OpenCV3.x-Python,若要显示检测的特征点,需要初始化img2,才能正常显示。这里可以先使用img2 = img.copy()完成拷贝初始化。
因为版本不同新手学习的时候肯定也会跟我一样,用原来的以前教程的代码运行不了,所以在此提醒新手,OpenCV2.X 和 OpenCV3.X
此部分内容有比较大的不同,详细介绍可以查看下面大神的文章。
https://blog.csdn.net/amusi1994/article/details/79591205
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息