opencv - OpenCV 中 SimpleBlobDetector 的 minRepeatability 参数有什么用?

标签 opencv

在OpenCV的SimpleBlobDetector中有一个minRepeatability参数。这个参数有什么用。如果我将它从 1 变为 20,它会如何影响 blob 检测?

最佳答案

相关代码在blobdetector.cpp中.

detect 函数(唯一使用minRepeatability 的函数):

  1. 在灰度图像上找到不同阈值(从 minThresholdmaxThresholdthresholdStep)的 Blob 中心
  2. 如果在不同的阈值(在 minDistBetweenBlobs 内)找到相同的 blob 中心,则它(基本上)增加该 blob 的计数器。
  3. 如果每个 blob 的计数器 >= minRepeatability,则它是一个稳定 blob,并生成一个KeyPoint,否则该 blob 是丢弃。

minRepeatability 是 Blob 在灰度图像上跨不同阈值时稳定的方式。

默认值为:

thresholdStep = 10;
minThreshold = 50;
maxThreshold = 220;
minRepeatability = 2;
minDistBetweenBlobs = 10;

minRepeatability 的最大有效值为:(maxThreshold - minThreshold)/thresholdStep,否则每个 blob 都将被丢弃。最小有效值为 1,这意味着将保留所有 blob 并提供一个 KeyPoint

关于opencv - OpenCV 中 SimpleBlobDetector 的 minRepeatability 参数有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32973537/

相关文章:

python - 优化遍历 numpy 数组

java - 使用 javaCV 去除背景的最佳方法是什么?

multithreading - 用于基于 opencv 的图像处理的基于信号量的同步

python - RANSAC 算法在 cv2.FindHomography 中使用哪些内点来查找单应性矩阵?

objective-c - 我将如何在 objC 中实现 SURF?

python - 为什么 opencv3 需要 libavcodec56 而 opencv2 需要 libavcodec57

python-3.x - 将PNG PIL图像转换为OpenCV图像用黑色背景替换透明

python - OpenCV 保存图像显着增加了 .tif 文件的大小

c++ - 如何让程序等到我移动棋盘

python - 如何在Python中使用OpenCV查找图片上的最大矩形?