OpenCV学习(78)

本文介绍了亚像素级角点检测的重要性,特别是在几何测量中的应用。通过OpenCV的cornerSubPix()函数,可以实现角点位置的亚像素级精度。该函数利用点积为0的原理寻找角点,通过求解方程组确定精确位置。在示例中,展示了如何使用goodFeaturesToTrack()检测角点,然后用cornerSubPix()进行亚像素级精确定位,最后输出并显示了检测结果。

绝点检测(3):亚像素级角点检测

一,背景概述;

二,寻找亚像素角点: cornerSubPix()函数;

三,综合示例:亚像素级角点检测;

一,背景概述

       若我们进行图像处理的目的不是提取用于识别的特征点而是进行几何测量,这通常需要更高的精度,而函数 goodFeaturesToTrack()只能提供简单的像素的坐标值,也就是说,有时候会需要实数坐标值而不是整数坐标值。
       亚像素级角点检测的位置在摄像机标定、跟踪并重建摄像机的轨迹,或者重建被跟踪目标的三维结构时,是一个基本的测量值。
      下面我们将讨论如何将所求得的角点位置精确到亚像素级精度。一个向量和与其正交的向量的点积为0,角点则满足如图10.11所示情况。
 

        其中,(a)点p附近的图像是均匀的,其梯度为0;(b)边缘的梯度与沿边缘方向的q-p 向量正交。在图中的两种情况下,p点梯度与q-p向量的点积均为0。
         图10.11中,我们假设起始角点q在实际亚像素级角点的附近。检测所有的q-p向量。若点p位于一个均匀的区域,则点p处的梯度为0。若q-p向量的方向与边缘的方向一致,则此边缘上p点处的梯度与q-p向量正交,在这两种情况下,p点处的梯度与q-p向量的点积为0。我们可以在p点周围找到很多组梯度以及相关的向量q-p,令其点集为0,然后可以通过求解方程组,方程组的解即为角点q的亚像素级精度的位置,也就是精确的角点位置。
         OpenCV为

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值