删除离群像素
使用此工具可以删除图像中的离群像素,例如,三维高度图像中的无效像素数据。这在三维传感器在某些像素上未提供有效灰度值数据时特别有用。为了确保这些无效灰度值数据不影响实际的图像处理任务,需要先筛出这些数据。
此工具提供不同的方法来检测要删除的离群像素:对所需灰度范围使用预定义值、通过忽略最低和最高灰度值自动确定所需灰度范围,或使用灰度直方图分析确定离群值。所有方法都会生成一个区域:“删除的离群值区域”,不包括检测到的离群像素。您可以在后续工具中将生成的区域用作处理区域,确保在实际的图像处理任务中排除无效灰度值数据。
此外,该工具还能够填充图像中的孔。如果要在后续工具中配合 easyTouch 使用图像,这可能会很有用。
如果您要处理从三维传感器采集的图像,可能需要执行一些额外的预处理步骤。将图像转换为 8 位图像是必需的,这样才能确保在后续工具中正确处理图像。根据您的要求,还可以执行其他预处理步骤。类别三维高度图像中提供的 MERLIC 工具特别适用于此预处理任务。有关建议的预处理步骤顺序的更多详细信息,请参阅三维高度图像主题。
以下部分介绍了可用于鉴别离群像素的不同方法。
确定要删除的离群像素
您可以选择不同的方法来确定应该从生成的区域中删除的离群像素。
通过预定值定义灰度值范围
通过此模式可以手动定义图像所需灰度值范围的上下限。返回以用于后续工具的区域 “删除的离群值区域” 将仅包含定义范围内的灰度值。灰度值在定义范围之外的像素将不包含在该区域中。
- 在 “方法” 参数中选择方法 “预定义最小/最大灰度值”。
- 在其他参数 “预定义最小灰度值” 中设置所需的灰度值范围最小值。如果该参数处于隐藏状态,单击
按钮,便可在工具面板上显示该参数。
- 在其他参数 “预定义最大灰度值” 中选择所需的灰度值范围最大值。如果该参数处于隐藏状态,单击
按钮,便可在工具面板上显示该参数。
由于手动定义了灰度值范围,因此定义的感兴趣区域 (ROI) 可能对上下限不起作用。
自动定义灰度值范围
通过此模式可以自动确定离群像素,方法是删除灰度值直方图中的奇异 bin。
- 在 “方法” 参数中选择方法 “自动抑制离群值”。
- 您还可以在图像中绘制 ROI 或连接先前工具的 ROI 结果,以定义确定灰度值范围的特定区域。之后,将仅从定义的 ROI 区域内的灰度值确定最小和最大灰度值。
自动确定灰度值范围(快速)
通过此模式可以自动鉴别离群像素,方法是从图像确定最小和最大灰度值,然后根据像素类型按特定灰度值单位缩减灰度范围。对于字节图像,灰度值范围的上下限减 1。对于其他像素类型,灰度值范围的上下限减去灰度范围乘以系数 0.0001 所得的值。最后,从图像确定已缩减的灰度范围内的最大和最小灰度值。
返回以用于后续工具的区域 “删除的离群值区域” 将仅包含自动确定的灰度范围内的灰度值。灰度值在确定的灰度范围之外的像素将不包含在该区域中。
- 在 “方法” 参数中选择方法 “自动抑制离群值(快速)”。
- 您还可以在图像中绘制 ROI 或连接先前工具的 ROI 结果,以定义确定灰度值范围的特定区域。之后,最小和最大灰度值将仅从定义的 ROI 区域内的灰度值确定,所有在此灰度范围之外的像素将从 ROI 定义的图像区域中删除。
参数
根据参数“方法”的选定方法,一些连接器会显示为灰色。这意味着它们不适用于当前选定的方法,因此不起作用。
基本参数
图像:
此参数表示估计存在无效灰度值像素且已将其从区域中删除的图像。
方法:
此参数定义如何检测到要删除的离群像素的方法。默认情况下设置为 “自动抑制离群值(快速)”。您可以选择以下方法:
|
值 |
描述 |
|---|---|
|
预定义最小/最大灰度值 |
所需灰度值范围的最小和最大值是手动定义的。灰度值在定义范围之外的像素将从生成的区域 “删除的离群值区域” 中删除。 如果您想删除在预定义灰度值范围之外的离群像素,请使用此方法。 |
|
自动抑制离群值 |
离群像素通过考虑灰度值直方图中的奇异 bin 来确定。首先,创建灰度值直方图并将其分成 256 个 bin。然后详细分析这些 bin,即检查直方图的奇异峰及其周围的值。直方图中灰度值在奇异峰之内的像素将从生成的区域 “删除的离群值区域” 中删除。要仅删除特定图像区域中的离群像素,您可以绘制 ROI 或使用先前工具的 ROI 来确定所需的图像区域。 |
|
自动抑制离群值(快速) |
所需灰度范围的最小和最大值从图像自动确定。此外,根据像素类型,所需的灰度范围会通过按特定灰度值单位限制范围稍微缩减。对于字节图像,灰度值范围的上下限减 1。对于其他像素类型,灰度值范围的上下限减去灰度范围乘以系数 0.0001 所得的值。最后,从图像确定已缩减的灰度范围内的最大和最小灰度值。 灰度值在最终灰度范围之外的像素将从生成的区域 “删除的离群值区域” 中删除。要仅删除特定图像区域中的离群像素,您可以绘制 ROI 或使用先前工具的 ROI 来确定所需的图像区域。 使用此方法可以自动删除最常见的离群像素,例如,灰度值为 0 的像素,这仅表示图像的背景。 |
另请参阅确定要删除的离群像素部分,详细了解如何使用每个转换方法。
孔洞填充:
此参数定义是否要填充图像中的孔。默认情况下设置为“true”。要定义待填充的孔的大小,您可以相应地调整 “掩码尺寸” 参数。要调整填充的孔的精度,请使用 “精度” 参数。
|
值 |
描述 |
|---|---|
|
true |
填充大小接近 “掩码尺寸” 参数中指定的值的孔。“精度” 参数定义填充的孔的精度。 |
|
false |
不填充图像中的孔。“掩码尺寸” 和 “精度” 参数将不起作用。“填充的图像” 中返回的图像对应于原始图像。 |
掩码尺寸:
此参数定义要填充的孔的大小,前提是 “孔洞填充” 参数设为 “true”。它以像素为单位并默认设为 6 像素。这意味着将关闭直径达 6 像素的孔。掩码尺寸应定义为与要填充的孔相同或稍微高一点。
此参数仅在 “孔洞填充” 参数设为 “true”时使用。否则,此参数将不起作用。
精度:
此参数定义孔的填充精度,前提是 “孔洞填充” 参数设为 “true”。默认情况下设置为“标准”。您可以更改精度,使其更精准或更粗糙。但是,精度还会影响处理速度。精度值越精准,填充孔的处理速度就越慢。
|
值 |
描述 |
|---|---|
|
非常粗糙 |
孔的填充精度为非常粗糙。 |
|
粗糙 |
孔的填充精度为粗糙。 |
|
标准 |
孔的填充精度为标准。此精度适用于大多数情况。 |
|
精准 |
孔的填充精度为精准。 |
|
非常精准 |
孔的填充精度为非常精准。 |
此参数仅在 “孔洞填充” 参数设为 “true”时使用。否则,此参数将不起作用。
其他参数
ROI:
此参数定义需要处理的感兴趣区域 (ROI)。不会处理在 ROI 之外的图像部分。如果未定义 ROI,则会处理整个图像。
默认情况下,ROI 定义为空 ROI。如果想要使用非空的 ROI 进行处理,您必须将参数连接至前一工具的适当 ROI 结果,或者必须使用可用的 ROI 按钮在图像中绘制新的 ROI。
对齐数据:
此参数表示用于对齐 ROI 的对齐数据。默认情况下不会连接对齐数据,因此不显示任何效果。如果想要使用特定对齐数据,您必须将参数连接至前一工具的适当结果,例如通过匹配确定对齐、确定与直线边缘对齐、对齐图像或旋转图像。
预定义最小灰度值:
此参数定义所需灰度值范围的最小值。灰度值在预定义灰度值范围之外的像素将被删除。此参数仅在 “方法” 参数上选择了方法 “预定义最小/最大灰度值”时适用。
默认情况下,此参数设置为“未定义”。 然而,一旦选择“预定义最小/最大灰度值”作为方法,将根据图像的像素类型自动确定并相应设置最小值。您也可以将该值手动调整为所需的灰度值。
下表显示图像的相应像素类型的值范围:
|
像素类型 |
取值范围 |
|---|---|
|
byte |
[0, 255] |
|
int1 |
[-127, 127] |
|
int2 |
[-32768, 32767] |
|
uint2 |
[0, 65535] |
|
所有其他像素类型 |
[-100000.0, 100000.0] |
预定义最大灰度值:
此参数定义所需灰度值范围的最大值。灰度值在预定义灰度值范围之外的像素将被删除。此参数仅在 “方法” 参数上选择了方法 “预定义最小/最大灰度值”时适用。
默认情况下,此参数设置为“未定义”。 然而,一旦选择“预定义最小/最大灰度值”作为方法,将根据图像的像素类型自动确定并相应设置最大值。您也可以将该值手动调整为所需的灰度值。相应的取值范围还取决于图像的像素类型。请参阅“预定义最小灰度值”参数说明中的表格,以查看不同取值范围的概述。
结果
基本结果
填充的图像:
此结果返回已处理的图像。如果 “孔洞填充” 参数设为“true”,将返回已填充孔的图像。否则,图像对应于原始输入图像。
删除的离群值区域:
此结果返回离群像素已被删除的图像的区域。
使用的最小灰度值:
此结果返回用于确定离群像素的范围的最大灰度值。“使用的最小灰度值” 和 “使用的最大灰度值” 之间的范围表示生成的区域中允许的像素值。灰度值在此范围之外的像素已被删除。
使用的最大灰度值:
此结果返回用于确定离群像素的范围的最大灰度值。“使用的最小灰度值” 和 “使用的最大灰度值” 之间的范围表示生成的区域中允许的像素值。灰度值在此范围之外的像素已被删除。
工具状态:
“工具状态”返回有关工具状态的信息,因此可用于处理错误。请参阅主题工具状态结果,了解关于不同工具状态结果的更多信息。
其他结果
处理时间:
此结果返回最近一次执行工具的持续时间(以毫秒为单位)。该结果作为附加结果提供。因此,默认情况下它是隐藏的,但是可以通过工具结果旁边的 按钮显示。有关更多信息,处理时间请参工具参考中所阅部分。
应用程序示例
此工具用于以下 MERLIC Vision App 示例:
- check_correct_filling_on_3d_height_images.mvapp
- read_text_in_3d_height_image.mvapp