在c++中goodFeaturesToTrack参数详解
时间: 2024-03-02 10:54:33 浏览: 34
在使用cv::goodFeaturesToTrack()函数时,需要设置一些参数来控制角点检测的效果。下面是各参数的详细解释:
```c++
void cv::goodFeaturesToTrack(
InputArray image, // 输入图像,可以是8位或32位浮点型灰度图像
OutputArray corners, // 输出的角点坐标
int maxCorners, // 最多检测的角点数目
double qualityLevel, // 质量水平阈值,取值范围为[0,1],越大表示检测到的角点越准确
double minDistance, // 角点间最小距离,小于该距离的角点会被忽略
InputArray mask = noArray(), // 可选的掩膜图像,检测角点的区域
int blockSize = 3, // 计算角点响应函数时使用的窗口大小
bool useHarrisDetector = false, // 是否使用Harris角点检测算法,如果为false则使用Shi-Tomasi角点检测算法
double k = 0.04 // Harris角点检测算法的k值,取值范围为[0,04,0.06]
)
```
其中,前两个参数image和corners均为必选参数,表示输入图像和输出的角点坐标;maxCorners表示最多检测的角点数目;qualityLevel表示质量水平阈值,越大表示检测到的角点越准确;minDistance表示角点间最小距离,小于该距离的角点会被忽略;mask为可选的掩膜图像,用于指定检测角点的区域;blockSize表示计算角点响应函数时使用的窗口大小;useHarrisDetector表示是否使用Harris角点检测算法,如果为false则使用Shi-Tomasi角点检测算法;k表示Harris角点检测算法的k值,取值范围为[0.04,0.06]。