【问题标题】:What is the use of minRepeatability parameter of SimpleBlobDetector in OpenCV?OpenCV中SimpleBlobDetector的minRepeatability参数有什么用?
【发布时间】:2015-10-07 02:32:01
【问题描述】:

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

【问题讨论】:

    标签: opencv


    【解决方案1】:

    相关代码在blobdetector.cpp

    detect 函数(唯一使用minRepeatability):

    1. 在灰度图像上找到不同阈值的斑点中心(从minThresholdmaxThresholdthresholdStep
    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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-19
      • 2011-12-25
      • 1970-01-01
      • 2013-06-14
      • 1970-01-01
      • 2019-06-21
      • 2018-09-07
      • 1970-01-01
      相关资源
      最近更新 更多