跳转到内容

SwisTrack/Components/BlobDetectionTwoColors

来自 Wikibooks,开放世界中的开放书籍

该组件检测由彩色图像上两个 Blob(不同颜色)组成的标记。粒子位置是两个 Blob 中心之间的点,而粒子方向指向颜色 1。

对于两种颜色,算法首先选择所有落在 RGB 颜色空间中以下立方体内的像素



其中 表示参考颜色,而 是相应通道的阈值。在第二步中,算法对阈值化图像应用 Blob 检测。颜色减去图像和阈值化图像都可以可视化。

一旦提取了两种颜色的 Blob,就将不同颜色的紧密相邻的 Blob 合并成粒子。

文件:SwisTrack TwoColorBlobs.png

具有由两种不同颜色 Blob 组成的标记的彩色图像。两种颜色都需要与背景中出现的任何颜色有足够的差异。(背景减去组件或遮罩组件可能有助于去除不需要的区域。)

文件:SwisTrack TwoColorParticles.png

粒子,中心位于两个 Blob 之间,方向指向颜色 1 的 Blob。

最大粒子数

[编辑 | 编辑源代码]

要检测的最大粒子数量。请注意,算法首先检测如此多的红色和绿色 Blob,然后匹配它们。因此,如果您的图像中存在红色或绿色区域(不是标记的一部分),您应该选择一个略高于您部署的标记数量的粒子数量。

最大距离

[编辑 | 编辑源代码]

红色 Blob 中心和绿色 Blob 中心之间的最大距离。彼此距离更远的 Blob 被认为不是同一个标记的一部分。

此距离还用于消除红色或绿色 Blob 附近的杂散 Blob。更准确地说,在任何此直径(不是半径)的圆盘内,只检测到最大的红色(或绿色)Blob。

输出参数

[编辑 | 编辑源代码]

输出 Blob 的参数可以选择为第一个彩色 Blob 的参数、第二个参数,或者它们的组合(例如,面积相加,中心平均等)。

颜色 1 和 2

[编辑 | 编辑源代码]

参考颜色 (,参见上文描述)。

阈值 R、G 和 B(针对颜色 1 和 2)

[编辑 | 编辑源代码]

阈值 (参见上文描述)。

按面积选择(针对颜色 1 和 2)

[编辑 | 编辑源代码]

选中此选项以根据斑点面积进行斑点选择。

最小斑点大小(针对颜色 1 和 2)

[编辑 | 编辑源代码]

要选择的斑点的最小像素面积。

最大斑点大小(针对颜色 1 和 2)

[编辑 | 编辑源代码]

要选择的斑点的最大像素面积。

按紧凑度选择(针对颜色 1 和 2)

[编辑 | 编辑源代码]

选中此选项以根据斑点的紧凑度进行斑点选择。

最小紧凑度(针对颜色 1 和 2)

[编辑 | 编辑源代码]

要选择的斑点的最小紧凑度(0..1)。

最大紧凑度(针对颜色 1 和 2)

[编辑 | 编辑源代码]

要选择的斑点的最大紧凑度(0..1)。

华夏公益教科书