Operator Histogram

Operator Library: Accumulator

该算子用于计算输入图像 I 的强度直方图,并在输出 O 处输出结果。根据 AutoSync 参数的选项,按每行或每帧计算直方图。输出结果不是结果的可视化,而是直方图值的列表。

  • AutoSync = EoF 会为整帧生成一个高度为 1 的直方图图像。
  • AutoSync = EoL 会生成与输入图像高度相同的直方图图像,即分别针对每个输入图像行计算直方图。

直方图本身由 2^(InputBitWidth) 个元素组成。每个元素是每个色调值的像素数。直方图输出处的第一个像素是色调值为零的像素数。

Histogram 算子使用内部 Memory 来存储中间直方图结果。只要算子处于忙碌状态,就会阻塞输入以防止新数据到达。以下情况会导致输入被阻塞:

  • 处理输入帧或输入行:在处理输入帧或输入行时,算子将中间直方图结果存储在其内部 Memory 中。当输入帧(AutoSync = EoF)或输入行(AutoSync = EoL)完成时,将读取内部 Memory 以获取生成的直方图数据。在读出阶段,输入被阻塞。因此,较小的输入图像和基于行的直方图输出(AutoSync = EoL)会显著降低输入带宽。

  • 系统启动或重置后的初始化:在系统启动或重置后,内部 Memory 会初始化为零。在此初始化过程中,算子处于忙碌状态,并且输入被阻塞,以确保不会接收到新数据。

I/O Property

Property 值
Operator Type M
Input Link I,图像输入
Output Link O,数据输出

Supported Link Format

Link Parameter Input Link I Output Link O
Bit Width [1, 16] auto1
Arithmetic unsigned as I
Parallelism any as I
Kernel Columns 1 as I
Kernel Rows 1 as I
Img Protocol VALT_IMAGE2D as I
Color Format VAF_GRAY as I
Color Flavor FL_NONE as I
Max. Img Width any auto2
Max. Img Height any auto3

1

输出 Bit Width 取决于最大图像尺寸链路 Property 以及参数 AutoSync 的设置。

对于 AutoSync = EoF,输出 Bit Width 为

对于 AutoSync = EoL,输出 Bit Width 为

输出 Bit Width 不得超过 64 Bit。

2

输出图像宽度由输入 Bit Width 决定。输入图像的每个可能像素值都由输出图像的像素表示。

3

对于参数 AutoSync = EoF,输出图像高度为 1。对于参数 AutoSync = EoL,输出图像高度等于输入图像高度。

参数

AutoSync
键入 static 参数
默认 EoL
范围 {EoL, EoF}

此参数用于选择是每行输出一个直方图(设置 EoL)还是每帧输出一个直方图(设置 EoF)。请注意该参数对输出 Bit Width 的影响。输出 Bit Width 不得超过 64 Bit。

使用示例

以下示例展示了 Histogram 算子的使用: