Mech-Vision更新说明
Mech-Vision 2.2.0更新说明
本节介绍Mech-Vision 2.2.0版本的新增功能、功能优化和问题修复。
新增功能
支持轨迹场景业务
Mech-Vision 2.2.0支持轨迹场景作业,新增了多项轨迹相关功能,具体如下。
-
工件库新增轨迹类工件配置流程,支持通过导入STEP文件、导入处理后的点云、相机采集点云等方式,快速完成轨迹类工件配置。
-
新增3D轨迹识别步骤。该步骤集成点云预处理、3D匹配等视觉处理功能,可快速完成工件识别并生成轨迹。
-
完善输出步骤功能,支持输出轨迹类视觉结果。
-
新增多个轨迹处理步骤,具体如下。
步骤 介绍 该步骤可根据输入的点云生成轨迹点,用于后续轨迹处理。
该步骤可根据实际点云对原始轨迹进行优化,使轨迹更加贴合工件表面。该步骤支持平滑、排序和简化等多种操作,提升轨迹精度。
该步骤可对轨迹点进行平滑处理,减弱轨迹中的噪声影响,生成更平滑的轨迹。
该步骤可通过减少轨迹点数量,简化轨迹形状,同时尽量保持轨迹的整体形态。
该步骤可根据轨迹点位置对轨迹点进行排序,优化轨迹点排列顺序。
该步骤可移除轨迹中距离过近的重叠点,减少无效点数量,优化轨迹点的分布。
该步骤可在轨迹点之间插入更多中间点,使轨迹更加平滑、连续。
该步骤用于在工程运行过程中,根据前序步骤输出的工件中心点和工件名称,从工件库中自动获取与轨迹类工件相关的轨迹信息,供后续步骤调用。
扩展2D视觉功能
Mech-Vision 2.2.0新增了多项2D视觉相关功能,主要包括:
-
新增2D智能相机步骤,通过2D智能相机采集图像数据,并作为后续视觉处理任务的输入。
-
新增2D相机标定功能,包括畸变标定和手眼标定(外参标定),用于建立相机成像与实际空间之间的映射关系,从而提高图像测量与定位精度,是视觉系统实现高精度识别与定位的基础。
-
新增2D相机管理功能,用于统一管理方案中的2D相机,是图像采集前的设备配置与调试入口。
-
新增2D匹配模板编辑器功能,用于创建和管理2D匹配模板。
-
新增2D工件识别步骤。该步骤可在定位抓取、放置纠偏、防错检查、信息识读场景中快速完成工件识别与检测。
-
新增若干2D相关步骤,覆盖图像预处理、图像后处理、测量等场景,且步骤库支持按2D与3D维度进行步骤分组。
类别 步骤 介绍 预处理
该步骤可将一张三通道图像拆分为三张单通道图像,或将三张单通道图像合并为一张三通道图像。
该步骤可对输入图像进行增强、降噪、形态学变换、灰度反转、边缘提取等预处理操作。
该步骤可将多张图像按指定位置放置并拼接为一张图像。
该步骤可对输入图像进行裁剪、填充或缩放处理。
该步骤可按要求对图像进行翻转与旋转处理。
该步骤可绕设置的旋转中心将图像旋转一定角度。
该步骤可在指定色彩空间中,根据三个通道的颜色范围(阈值上下限)提取目标区域,生成二值图(目标区域像素值为255,其它像素值为0)。
后处理
该步骤可对尺寸相同的两组掩膜列表进行逻辑操作,用来合并两组掩膜、提取相同部分或去掉相同部分。
该步骤用于统计灰度图中指定区域内满足灰度阈值范围的像素数量。
该步骤用于输出灰度图指定区域的图像灰度直方图、像素个数、最小灰度值、最大灰度值、灰度中值、灰度众数(出现次数最多的灰度)、灰度均值、灰度标准差、对比度等信息。灰度直方图是对灰度图中灰度级分布的统计,反映图像中某种灰度出现的频率。
该步骤可对输入的灰度图逐像素执行算术运算(加、减、乘或除)或组合运算(最大值、最小值、反转),并可通过乘数和加数调整结果。要求两张图像的尺寸一致。
测量
该步骤可从图像中检测直线边缘并拟合直线。
该步骤可从图像中检测圆形边缘并拟合圆。
该步骤可从图像中检测矩形边缘并拟合矩形。
该步骤可在图像指定区域的纵向中心线上检测出一个符合要求的边缘点。
该步骤可从图像中检测腰型孔边缘并拟合腰型孔。
该步骤可从图像中检测一对边缘点,并测量它们之间的距离作为边缘间宽度。
该步骤可测量两类指定特征之间的几何距离。支持的特征组合包括:点点、点线、点圆、线线、线圆、圆圆。
该步骤可测量线段与线段之间的夹角。
其他
该步骤可在2D图像中搜索并定位与模板匹配的特征,计算物体位姿,为需要同步进行2D位姿变换的后续步骤提供数据。支持多目标定位与识别。
该步骤可通过平移和旋转,使输入图像与模板对齐,从而实现两者状态的一致性。
该步骤可从图像中检测Blob,并根据其几何特征(如面积、圆度)进行筛选。
该步骤可从图像中检测Blob,根据其几何特征进行筛选,并调整图像位姿,使Blob质心与原图像中心点重合。
该步骤可将特征、图像、文本、位姿等结果叠加在2D图像上,实现自定义可视化。
该步骤可在指定图像区域内识别一维码/二维码,输出码的内容及其在图像中的位置。
该步骤可通过2D模板匹配,对图像中的目标工件进行检测与计数。
该步骤可通过2D模板匹配,对图像中的工件进行形变状态判定。
该步骤可通过2D模板匹配,对图像中的工件进行位姿的偏差检测。
该步骤可定位掩膜的特征点。
该步骤可基于点、直线等几何特征创建2D点。
该步骤可基于点、直线等几何特征创建2D直线。
该步骤可将2D相机识别到的工件2D位姿或2D形状,结合相机外参标定数据和示教位姿,转换为机器人坐标系下的3D工件位姿。
扩充深度学习相关功能
完善深度学习模型包推理功能
Mech-Vision 2.2.0完善了深度学习模型包推理步骤,具体如下。
|
自Mech-Vision 2.2.0起,该步骤仅支持加载Mech-DLK 2.5.4及以上版本导出的模型包。 |
新增其他步骤和步骤组合
Mech-Vision 2.2.0新增了若干其他步骤和步骤组合,具体如下。
| 类别 | 名称 | 介绍 |
|---|---|---|
步骤 |
该步骤通过对工件上的多个实时特征点与模板特征点进行最佳拟合,计算工件的整体最优位姿,提升工件在变形场景下的适应性。 |
|
该步骤用于连接并配置光源控制器,以控制光源的工作模式和输出亮度。 |
||
该步骤用于将数据保存至本地路径。 |
||
该步骤可根据设定规则对输入数据进行逻辑判断,并输出布尔结果(True或False)。 |
||
步骤组合 |
该步骤组合可对原始点云进行点过滤、点云合并、图像滤波等预处理操作,删除干扰点云,从而加快后续步骤的处理速度。 |
|
该步骤组合可从多层工件的点云中提取最高层工件点云。通过对点云在指定方向上的高度进行筛选,去除下层工件点云干扰。 |
||
该步骤组合通过点云信息筛选原始图像,提取仅包含最高层工件的2D图像,并有效去除背景和下层工件干扰。 |
||
该步骤组合通过删除与工件平整面距离较远的点云,来获取相对平整的平面点云。 |
||
该步骤组合根据工件高度和角度,对工件位姿进行多维度排序,以优化抓取顺序,提高抓取稳定性和成功率。 |
||
该步骤组合以基准位姿为参考,验证输入的工件位姿与基准位姿之间的角度和位置偏差是否满足设定阈值,并删除偏差超限的工件位姿。 |
||
该步骤组合用于统计输入数据中元素(如位姿)的数量,用于后续逻辑判断。 |
||
该步骤组合通过三个特征点(即主基准点、Y方向辅基准点、XY平面辅基准点)建立工件的基准坐标系,从而确定工件在空间中的位置和方向。 |
||
该步骤组合可将点云从相机或机器人坐标系转换到用户指定的坐标系。 |
支持方案切换
Mech-Vision支持方案切换管理功能,可以根据接收到的方案编号(ID)自动切换方案。每条方案切换规则定义了方案编号与方案路径的映射关系。
支持锁定步骤组合
Mech-Vision 2.2.0支持对步骤组合进行锁定保护。步骤组合锁定后,非管理员用户无法进入步骤组合内部查看或修改步骤逻辑,仅可通过对外暴露的参数进行调用和调整。
新增Mech-Vision二次开发功能
Mech-Vision 2.2.0新增了Mech-Vision SDK相关文档与接口能力,支持将方案、工程、步骤等视觉能力集成到客户端应用程序,并提供C++、C#、Python接口。
功能优化
优化案例库
Mech-Vision 2.2.0上架了以下案例:
| 案例类别 | 案例名称 |
|---|---|
教学示例-3D定位 |
3D轨迹生成、衣物料箱拣选、3D料筐识别(标准料筐)、3D料筐识别(其他料筐) |
教学示例-2D定位 |
2D工件识别(定位抓取)、2D工件识别(放置纠偏) |
教学示例-深度学习 |
2D工件识别(信息识读)、2D工件识别(防错检查) |
典型案例-无序工件拣选 |
车用钣金件上料 |
典型案例-定位装配 |
双挂钩上料、复合定位装配、汽车风挡玻璃装配 |
优化工件库抓取类工件配置流程
Mech-Vision 2.2.0对工件库抓取类工件配置流程进行了优化,具体如下。
| 工件配置流程 | 优化内容 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
优化高级组件类步骤
Mech-Vision 2.2.0对高级组件类步骤进行了优化,具体如下。
| 步骤 | 优化内容 |
|---|---|
“点云预处理”流程中,支持获取最高层点云。 |
|
|
优化其他步骤
| 步骤 | 优化内容 |
|---|---|
|
|
调整了步骤的参数顺序,提升了步骤易用性。 |
|
支持异步保存。勾选“异步保存”参数后,保存将异步在后台执行。工程的运行完成状态将不再等待该步骤运行结束。 |
|
生成工件抓取策略 |
|
优化步骤库
Mech-Vision 2.2.0对步骤库进行了优化,包括优化部分步骤名称、删除部分步骤,具体如下。
优化部分步骤名称
Mech-Vision 2.2.0对以下步骤名称进行了优化:
| 原名称 | 新名称 |
|---|---|
生成工件抓取策略 |
获取工件信息 |
过滤 |
根据布尔值过滤数据 |
根据阈值对数值进行二分类 |
判断数值是否超过阈值 |
读取物体尺寸 |
快捷创建工件尺寸 |
将Cloud(XYZ-Normal)转换为Cloud(XYZ-RGB) |
将带法向的点云转换为彩色点云 |
计算两Vector3D间的角度 |
计算两三维向量间的角度 |
计算Vector3D的叉积 |
计算三维向量的叉积 |
计算Vector3D的点积 |
计算三维向量的点积 |
计算Vector3D的长度 |
计算三维向量的长度 |
计算Vector3D的单位向量 |
计算三维向量的单位向量 |
由数值组合成Vector3D |
由数值组合成三维向量 |
将Vector3D分解为数值 |
将三维向量分解为数值 |
优化生产界面配置向导
Mech-Vision 2.2.0对生产界面配置向导进行了优化,具体如下。
-
配置运行画面时,支持选择“2D图像可视化”运行画面,用于在生产界面中展示2D图像及测量结果。
-
支持在通用设置中设置数据的“保存模式”、“子文件夹创建方法”。
优化3D相机手眼标定
Mech-Vision 2.2.0优化了3D相机手眼标定功能,支持在设置移动路径流程中使用标定板/相机相对法兰的偏移量,以减少旋转时在相机视野中的位移,确保标定板始终位于相机视野范围内。
问题修复
Mech-Vision 2.2.0修复了以下问题:
-
重命名工程或方案时,若名称末尾包含两个空格,可能导致无法正常保存。
-
保存方案时,若临时方案目录层级过深,可能触发 Windows 闪屏。
-
打开方案时,若多个工程使用同一相机的不同参数组,小概率出现参数组被错误修改。
-
使用标准接口触发工程运行时,小概率出现工程延迟数秒后才开始运行的问题。
-
在机器人通信配置中切换并应用机器人模型后,若未保存方案,切换后的机器人模型不会被保存。
-
生产界面运行过程中,小概率出现软件崩溃。
-
在工件库的“导入处理后的点云-示教机器人”流程中,当相机缺少内外参时,工件库可能崩溃。
-
在工件库的“导入STL文件”流程中,切换模型视角后,再切换点云生成方式,可能导致无法根据STL文件生成工件点云。
-
连续运行过程中,“3D匹配”步骤偶发崩溃。
-
在“3D匹配”步骤中开启“面匹配中考虑孔洞”功能后,特定数据下可能出现OpenCV报错。
-
在“输出”步骤中,输出无需点云模板的工件抓取点信息时可能出现异常。
-
在“输出”步骤中自定义端口名后,再切换至“预定义(视觉结果)”并勾选“其他输入”,“输出”步骤未新增对应的输入端口。
-
将“输出”步骤的端口类型设置为“预定义(视觉结果)”并勾选“其他输入”后,输出阵列抓取点时,Mech-Viz可能会错误地生成多个工件模型。
-
当多个抓取点对应的工件中心点一致时,“输出”步骤输出了重复的工件信息。
-
“读取图像”步骤首次运行前,将“读取模式”设置为“重复单张”后,无法正常读取图像。
-
使用“保存图像”步骤保存图像时耗时较长。
-
打开深度学习模型包管理工具时,软件无响应。
-
删除包含自定义告警设置的步骤组合后,开启自定义告警时,软件可能闪退。
-
开启或关闭自定义告警功能后,设置不生效。