FindLine

在图像区域内定位单个直线边缘。FindLine 通过对在相对于区域局部坐标系的正 y 方向扫描的径向线段上的像素值求和来形成图像区域的一维投影。从投影图像数据中提取边缘变换。

FindLine 输入

参数 说明

图像

此参数必须引用包含图像数据结构的电子表格单元格;默认情况下,此参数引用 A0,即包含数据结构的单元格。该参数还可以引用其他图像数据结构,例如由图像 视觉数据访问函数坐标变换函数返回的数据结构

固定

定义相对于固定输入或视觉工具函数的图像坐标系输出的感兴趣区域 (ROI)。根据“固定坐标”来设置的 ROI 可以确保如果“固定坐标” 被旋转或转换,相应的 ROI 也会根据“固定坐标”而旋转或转换。

默认设置为(0,0,0),图像的最左上方。

X

图像坐标中的 X 偏移。

Y

图像坐标中的 Y 偏移。

Theta

图像坐标系中图像 X 轴的旋转。(顺时针 +/-360 度)

区域

也称为感兴趣区域 (ROI),指定要进行分析的图像区域。双击区域参数以创建可以变换和旋转的交互图形模式。选择此参数并按属性表的作业编辑工具栏上的最大化区域按钮,自动拉伸区域以覆盖整个图像。

X

在固定坐标中,偏移原点的 x 值。

Y

在固定坐标中,偏移原点的 y 值。

宽度

沿着区域的 x 轴的维度。

高度

沿着区域的 y 轴的维度。

角度

在固定坐标上的方向。

曲线

在区域 x 轴和相对的边界线之间的角度偏差。

注意固定区域参数必须在图像的范围内定义;否则,该函数将返回 #ERR。

极性

指定要定位的边缘的极性,相对于边缘区域的扫描方向;该函数将仅报告指定极性的边沿。

注意当使用水平或垂直线性边缘特征作为固定输入时,该函数将仅考虑边缘在一个方向上的移动,无论是沿着水平轴还是垂直轴,具体取决于 ROI 扫描方向的位置。

0 = 黑到白

指定边缘极性为黑到白。

1 = 白到黑

指定边缘极性为白到黑。

2 = 黑色或白色(默认)

指定边缘极性可以是黑到白或白到黑。

查找依据

指定函数将用于在多个候选边缘中选择边缘的边缘选择技术。

0 = 最佳分数(默认值)

指定得分最高的边缘会受到最优先考虑。

1 = 第一条边缘

指定检测到的第一个边缘受到最优先考虑。

2 = 最后一条边缘

指定检测到的最后一个边缘受到最优先考虑。

合格阈值

指定可接受的最小边缘对比度(0 到 100;默认值 = 25);对比度值从区域内的灰度直方图归一化为 0 到 100 的范围。该函数将拒绝对比度分数低于此值的任何边缘。

归一化分数

指定边缘分数是否将通过区域的灰度直方图进行归一化。启用归一化分数后,原始边缘分数通过使用以下公式在图像区域内找到的最大对比度进行归一化:

分数 =(原始边缘分数)x(100/最大对比度)

其中,原始边缘分数是边缘的灰度差,而最大对比度是图像区域内最大和最小灰度(0 到 255)之间的差。

归一化分数被禁用时,低对比度边缘的得分将低于高对比度边缘。使用以下公式:

分数 =(原始边缘分数)x (100/255)

0 = OFF

不要归一化分数。

1 = ON (默认)

归一化分数。

提示此参数对于在低对比度区域中查找边缘很有用。如果预计要检测的边缘只有高对比度,请禁用此参数。

角度范围

指定函数对边缘旋转的容差(0 到 10;默认值 = 0) 。该函数仍然会查找超出指定范围的边缘,但准确度可能不会那么高。

注意将此参数设置为大于 0 的值将降低函数的速度。

边宽度

指定发生边缘过渡的像素距离(1 到 50;默认值 = 3)边缘宽度用于在提取边缘之前对图像进行筛选。

显示

指定图像顶部 FindLine 图形叠加的显示模式。

0 = 隐藏所有(默认)

所有图形都将被隐藏,除非包含 FindLine 函数的单元格是电子表格中的活动单元格。

1 = 仅结果图形

将始终显示线边缘。

2 = 输入和结果图形

始终显示输入图像区域和线边缘都。

3 = 显示全部:输入、结果和图表

输入图像区域、线边缘、边缘响应图会一直显示。

注意边缘响应图表是一个可停靠窗口。有关详细信息,请参阅电子表格编辑器 - 图表主题。

FindLine 输出

返回

包含单个直线边缘段的边缘数据结构,如果任何输入参数无效,则为 #ERR。

结果

当 FindLine 最初插入单元格时,会在电子表格中创建一个结果表。

下列边缘 视觉数据访问函数自动插入到电子表格中以创建结果表:

标签 函数 说明

X0

GetX(边缘,0,0)

第一个端点的行坐标。

Y0

GetY(边缘,0,0)

第一个端点的列坐标。

X1

GetX(边缘,0,1)

第二个端点的行坐标。

Y1

GetY(边缘,0,1)

第二个端点的列坐标。

分数

GetScore(边缘,0)

边缘对比度分数。分数为正表示黑到白过渡,为负表示白到黑过渡。