cv2.goodFeaturesToTrack()函数

本文详细介绍了OpenCV中的cv2.goodFeaturesToTrack()函数,该函数用于检测图像中的角点。文章解释了C++和Python版本的函数用法,包括输入参数如image、maxCorners、qualityLevel等,以及输出参数corners的含义。

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

cv2.goodFeaturesToTrack()函数是用来跟踪检测图像中的角点
这里介绍的是C++中的用法

 void goodFeaturesToTrack( InputArray image, OutputArray corners,
                                         int maxCorners, double qualityLevel, double 
                                         minDistance,                                     
                                         InputArray mask=noArray(), int blockSize=3,                                    
                                          bool useHarrisDetector=false, double k=0.04 );

Python的用法是

corners=cv.goodFeaturesToTrack(image, maxCorners, qualityLevel, minDistance[, corners[, mask[, blockSize[, useHarrisDetector[, k]]]]])
corners=cv.goodFeaturesToTrack(image, maxCorners, qualityLevel, minDistance, mask, blockSize, gradientSize[, corners[, useHarrisDetector[, k]]])

从函数的定义中可以知道,
输入的参数分别是:

  1. image: 输入图像,是八位的或者32位浮点型,单通道图像,所以有时候用灰度图
  2. maxCorners: 返回最大的角点数,是最有可能的角点数,如果这个参数不大于0,那么表示没有角点数的限制。
  3. qualityLevel: 图像角点的最小可接受参数,质量测量值乘以这个参数就是最小特征值,小于这个数的会被抛弃。
  4. minDistance: 返回的角点之间最小的欧式距离。
  5. mask: 检测区域。如果图像不是空的(它需要具有CV_8UC1类型和与图像相同的大小),它指定检测角的区域。
  6. blockSize: 用于计算每个像素邻域上的导数协变矩阵的平均块的大小。
  7. useHarrisDetector:选择是否采用Harris角点检测,默认是false.
  8. k: Harris检测的自由参数。

输出参数:

1.corners: 输出为角点。

部分参考来源:
https://docs.opencv.org/4.1.0/dd/d1a/group__imgproc__feature.html#ga1d6bb77486c8f92d79c8793ad995d541

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值