find.keypoint和模板匹配
-
find.keypoint和模板匹配哪个准确度更高,他们的缺点和优点分别是什么,
-
还有为什么我在例程keypoints_1的find.keypoint的函数中加了ROI之后会提示错误
其他都没有改动
-
模板匹配采用的是ncc算法,只能匹配与模板图片大小和角度基本一致的图案。局限性相对来说比较大,视野中的目标图案稍微比模板图片大一些或者小一些就可能匹配不成功。
模板匹配适应于摄像头与目标物体之间距离确定,不需要动态移动的情况。比如适应于流水线上特定物体的检测,而不适应于小车追踪一个运动的排球(因为运动的排球与摄像头的距离是动态的,摄像头看到的排球大小会变化,不会与模板图片完全一样)。
特征点检测(find.keypoint): 如果是刚开始运行程序,例程提取最开始的图像作为目标物体特征,kpts1保存目标物体的特征。默认会匹配目标特征的多种比例大小和角度,而不仅仅是保存目标特征时的大小角度,比模版匹配灵活。
特征点检测,也可以提前保存目标特征,之前是不推荐这么做的,因为环境光线等原因的干扰,可能导致每次运行程序光线不同特征不同,匹配度会降低。但是最新版本的固件中,增加了对曝光度、白平衡、自动增益值的调节,可以人为的定义曝光值和白平衡值,相对来说会减弱光线的干扰。也可以尝试提前保存目标特征。
参考教程:
-
@gloria 上面的错误是因为,你设置了roi之后,最开始运行程序时没有找到需要识别保存的目标特征。
你可以修改一下程序,用if语句判断,如果找到了目标特征,再调用draw_keypoints()这个函数。
-
@yuan 请问特征点检测使用的是哪种算法?有没有具体的参考文献,谢谢
-
@face FAST/AGAST算法