LabVIEW通过编程方式调整已生成的感兴趣区域(ROI)位置的完整解决方案,适用于 ROI 与目标轻微错位时的精准调整场景。
在 LabVIEW 视觉模块中,所有 ROI(无论形状是否相同,如矩形、圆形、多边形等)都统一存储在一个预定义簇(Cluster) 中,该簇被称为ROI Descriptor(ROI 描述符)。
该簇包含两类关键坐标信息,是实现 ROI 移动的核心数据基础:
全局矩形坐标(Global Rectangle)
由 4 个数值组成,分别代表整个 ROI 组的左边界、上边界、右边界、下边界位置,用于快速定位 ROI 组的整体范围。
单个 ROI 坐标数组
存储每个独立 ROI 的坐标数据,坐标含义随 ROI 形状变化(例如:矩形 ROI 包含左上角和右下角坐标,圆形 ROI 包含圆心和半径坐标)。
通过调用 Vision Utilities 中的专用 VI,可按以下 4 个步骤实现 ROI 移动,支持 “整体移动” 或 “部分移动” 两种场景:
在 LabVIEW 的 VI 框图窗口中,右键单击空白区域,打开 “函数面板(Function Panel)”;
依次展开路径:Vision and Motion >> Vision Utilities >> Region of Interest
,即可看到所有 ROI 处理相关 VI(如解组、变换、重组等)。
若只需移动 ROI 组中的某几个 ROI(而非全部),需先将整体 ROI 描述符拆分为单个 / 多个子描述符:
使用 VI:IMAQ Ungroup ROIs
(ROI 解组)
功能:将包含多个 ROI 的 “整体 ROI 描述符” 拆分为多个 “单个 ROI 描述符”(输出为数组形式);
筛选目标 ROI:从拆分后的数组中,选择需要移动的 ROI 描述符;
后续操作:对筛选出的 ROI 描述符执行移动后,再用IMAQ Group ROIs
(ROI 重组)将所有 ROI(包括未移动的)重新合并为一个整体描述符。
使用IMAQ Transform ROI
VI 是实现 ROI 位置调整的关键,该 VI 通过 “基准参考(Base Reference)” 和 “新参考(New Reference)” 定义移动方向和距离:
楼主最近还看过