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”将该位置标记为不关心,并将被忽略。

如果更改了 operator 的输入 kernel 大小,系数也会随之更改。 请在更改输入 kernel 大小后检查系数。

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

使用示例

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

  • “Hit or Miss”

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