图像处理中的矩

简短说明

文件: \examples\Processing\Geometry\ImageMoments\ImageMoments.va

默认平台: mE5-MA-VCL

简要说明

计算输入图像的图像矩方向和偏心率。

图像处理中的“矩”是指图像单像素强度的平均值。利用这些矩,可以识别图像中物体的物理属性,例如方向、偏心率、面积或质心。

方向

物体的方向 定义为 [Bur06] 创建 HDR 图像:

公式 24。


利用二阶中心矩:

公式 25。


通过定义

公式 26。


质心为

公式 27。


且原点矩

公式 28。


对应于物体的面积。 式中 g(x,y) 为数字灰度图像的灰度函数。

偏心率

物体的偏心率 e 可以通过 [Bur06] 进行计算

公式 29。


偏心率的结果范围在 0(圆形物体)到 1(细长物体)之间。

在 VisualApplets 中设计

在 VisualApplets 中,设计通过输出原始图像以及几何属性(例如面积、重心、方向和物体的偏心率)来实现。您可以在 \examples\Processing\Geometry\ImageMoments\ImageMoments.va 下找到该示例。 计算时选择了 4 的 Parallelism。 在 图 324,“基本设计结构” 中显示了带有注释的设计结构。

基本设计结构

图 324. 基本设计结构


通过矩(HierarchicalBox:)计算灰度图像的几何属性面积、重心、方向和偏心率 ImageMoments)。 这些属性附加到原始相机图像(AppendMomentsToImage). 在 图 325“ImageMoments 的内容” 中显示了 HierarchicalBox ImageMoments 的内容。原始矩 (对应于对象的面积) 和 以及重心 和中心矩 和 均根据上述公式实现。最后,根据这些结果计算图像对象的几何 Property 几何方向 (主轴方向和偏心率 $e$)。

ImageMoments 的内容

图 325。ImageMoments 的内容


在 图 326“HierarchicalBox orientation_theta 的内容” 和 图 327“HierarchicalBox eccentricity 的内容” 显示了 HierarchicalBoxes orientation_theta 和 eccentricity 的内容,并附带了对各个操作步骤的注释。方向 和偏心率 $e$ 是使用 根据 公式 24 和 公式 29中的值计算得出的。 为 ARCTAN 操作符的输入信号选择了 $R=7$ 的分辨率。

HierarchicalBox orientation_theta 的内容

图 326。HierarchicalBox orientation_theta 的内容


HierarchicalBox eccentricity 的内容

图 327. HierarchicalBox eccentricity 的内容


注释: 在实现 Θ 取向的过程中表明,将 ARCTAN 函数的最大输入信号限制为 12 位可能会对精度和分辨率的计算产生影响: 例如,分析了取向为 Θ = 44.07°(使用 MATLAB 矩实现的结果)的椭圆图像。 ARCTAN 函数的 25 位输入信号必须 限制为 12 位。当分辨率为 R = 8 位时,VisualApplets 中的实现结果为 41.43°;当 R = 7 位时 结果为 43.21°(小角度分辨率为 0.2°) ,当 R = 6 时为 44.07°(小角度分辨率为 0.45°)。结果表明,由于位深度限制,在高分辨率 (R = 8 位)下,最大计算角度小于 真实取向角。随着分辨率 R 的降低,大角度的计算结果 有所改善,但代价是在 小角度范围内精度变低。该问题可以通过使用 Lookup table 代替 ARC TAN 算子来解决。