学习OpenCV——通过KeyPoints进行目标定位

本文介绍了如何利用OpenCV中的ORB特征点和描述子进行目标定位,包括特征点检测、相机图像处理、匹配优化、单应性变换矩阵计算以及最终的目标定位。虽然SIFT和SURF效果更佳,但可能涉及商业使用限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目前的AR应用基本都是基于marker的比较多,但是不依靠marker首先要完成的定位工作。这篇文章主要描述,使用特征点进行检测和定位的问题(其中包含一些matching优化方式,具体请参考:学习OpenCV——KeyPoint Matching 优化方式)。

本篇采用ORB特征点和ORB特征描述子(可以采用SIFT或SURF特征,效果更好,但是OpenCV官方什么提过,SIFT和SURF不能用于商业用途,使用前需声明initModule_nonfree();且速度会慢一些

  效果 FPS
SIFT 检测效果:优,尺度不变性:优,旋转不变性:优 5.5
SURF 检测效果:良,尺度不变性:良,旋转不变性:良 11.0
ORB 检测效果:差,尺度不变性:差,旋转不变性:良 30.0

步骤:

1. 目标图特征点检测和描述子计算;

2. 打开camera采集图像,并计算特征点及描述子;

3. 进行特征点匹配,采用KNN或Cross-check方式;

4. 寻找单应性变换矩阵,并通过单应性变换矩阵进行进一步优化,去除伪匹配;

5. 通过单应性变换矩阵进行目标定位。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值