Operator HitOrMiss

Operator Library: Filter

HitOrMiss operator 用于对二值图像执行形态学击中命中(hit-or-miss)操作,可用于识别结构或对象。 输入是一个 kernel 流(例如参见 FIRkernelNxM)。 输出 link 提供中心像素的计算值。 击中命中操作的结构元素由可参数化的矩阵给出。 该矩阵的大小与输入 kernel 相同。

如果像素的 kernel 邻域与参数 StructElement 中定义的模式完全匹配,则像素的输出设置为“1”。 如果有一个或多个不匹配,则输出设置为“0”。 使用参数 StructElement 定义的搜索模式可以为 0 或 1 以定义匹配。 此外,也允许使用值 -1。它为结构元素中忽略的部分定义了一个不关心(don't care)值。 如果搜索模式中的所有值都是“-1”,则行为取决于 StructElement 的静态/动态 Property。 在静态情况下,结果将始终为“未命中(miss)”。在动态情况下,结果将始终为“击中(hit)”。

让我们来看一个例子。给定以下结构元素。

我们将把它与以下图像 I 进行匹配

如果我们使结构元素与图像匹配,则输出 O 为

若要生成所需的输入 kernel,请使用诸如 FIRkernelNxM、 LineNeighboursNx1 或 PixelNeighbours1xM 等 operator。

I/O Property

Property 值
Operator Type O
Input Link I,kernel 输入
Output Link O,数据输出

Supported Link Format

Link Parameter Input Link I Output Link O
Bit Width 1 as I
Arithmetic unsigned as I
Parallelism any as I
Kernel Columns any 1
Kernel Rows any 1
Img Protocol {VALT_IMAGE2D, VALT_LINE1D, VALT_PIXEL0D} as I
Color Format VAF_GRAY as I
Color Flavor FL_NONE as I
Max. Img Width any as I
Max. Img Height any as I

参数

StructElement
键入 静态/动态读写参数
默认 -1
范围 {-1, 0, 1}

此参数定义结构元素的形状。

  • 结构元素中的“0”必须与相应 kernel 输入中的“0”匹配。

  • 结构元素中的“1”必须与相应 kernel 输入中的“1”匹配。

  • 结构元素中的“-1”将该位置标记为不关心,并将被忽略。

If the input kernel size of the operator is changed, the coefficients will also change. Check the coefficients after changing the input kernel size.

如果该参数设置为 Static,则在设计时选择这些值。 如果该参数设置为 Dynamic,则可以在运行时更改这些值。 运行时更改会立即生效,它们不会同步到帧结束或行结束。

使用示例

以下示例展示了 HitOrMiss operator 的用法:

  • “Hit or Miss”

    示例 - 该实现可以检测二值图像中的四个简单模式。 对于每个匹配项,输出将设置为 1。