简介
MegaVision是盛相科技(MEGA PHASE)打造的一款简单易用的,扩展性强,跨平台的的测量软件。
功能特性
多相机兼容
- 可连接SizectorS/M和Hdc相机;
- 支持多相机同时控制;
多种支持
- 支持输出IO,TCP,数据库等;支持字符解析和字符格式化;
- 支持通信事件;支持变量设置;支持json文本解析;
- 支持通过模板匹配、特征以及手动设定的2D坐标系的建立,用于区域设置;
- 支持多种区域,如矩形、圆形、旋转矩形、环形、多边形(开发中)等; 支持路径化、阵列化区域;
2D、3D、横截面
- 3D/2D图像显示;
- 高效的2D,3D和横截面预处理:高斯滤波、均值滤波、中值滤波、边缘检测、反色,二值化、镜像、旋转、几何变换、去飞点、修补、平滑、锐化、3D变换等;
- 精确度高的2D,3D和横截面测量算子:点、直线、平面、圆、球、点点测量 、点线测量、线线测量、面面测量、高度测量、体积测量、粗糙度测量、球杆测量、Blob、相机映射、目标检测、矩阵运算、数值运算等;
灵活性和插件化
- 用户可以开发自己的插件,扩充软件功能;
- 流程图形式控制运行逻辑,可以使用条件分支,循环等控制逻辑;
环境要求
获取和运行
执行lemonApp.exe,程序获取目录:
\\Mpshnas\02_03_研发_软件\01_软件发布\09_lemon\
当前仅开放部分部门和人员可以访问,以后陆续开放,详情联系软件组。
术语
模块
软件中独立单元或组件。每个模块通常负责一个相对独立的任务,将模块组合成流程图,可以完成复杂的功能。
区域
区域功能可以让用户定义图像区域进行分析,区域的类型矩形区域、圆形区域、旋转矩形区域、环形区域、阵列区域、弧形阵列区域、路径区域、克隆区域、旋转立方体区域、卡尺区域等等。这些区域可以用于如特征提取、物体识别、尺寸测量和缺陷检测等图像处理任务。
边缘
边缘是指图像中灰度值变化明显的区域,通常出现在物体的轮廓或不同物体之间的缝隙边界处。可以是直线或曲线,取决于物体的轮廓和形状。
边缘点
边缘点是 指位于边缘上的点,这些点标志着图像中灰度值显著变化的位置。通常是由白到黑或者由黑到白为规则来输出边缘点。
流程图
展示单个模块通过连接线和箭头形成的一个流程图,最终实现某个功能后结束。
手眼标定
建立相机坐标系与机器人坐标系之间对应关系的过程。手眼标定通常需要通过一系列的标定操作,例如使用标定板在不同位置和姿态下采集图像,然后计算相机与机器人之间的相对位置和姿态关系。
重构
将采集的原始数据(如点云、图像)转换为更高维或更精确的模型的过程。
预处理
对点云、图像数据进行的一系列初步操作,目的是改善图像质量,减少噪声干扰,增强图像的有用信息,以便于后续的处理和分析。
畸变
图像由于光学系统、传感器或其他因素导致的形状失真。畸变会影响图像的测量精度和视觉效果,因此在图像处理中通常需要进行畸变校正,以恢复图像的真实形状。
dump
指的是将数据(如图像数据、配置参数、日志信息等)导出或保存到外部存储设备的过程。
ISP
ISP(Image Signal Processor,图像信号处理器)是工业相机中用于处理图像信号的关键组件。主要功能包括白平衡调整、色彩校正、噪声抑制、锐化、伽马校正等
IO
IO(Input/Output,输入/输出)
用户集
通过定义用户集,为不同用户或用户组定义的配置可,满足不同用户的需求。
黑电平
黑电平是指在没有光照的情况下,相机传感器输出的信号电平。黑电平的稳定性对于图像质量至关重要。
轮廓
轮廓由可从 深度图截线或点云截面产生,由一系列2d点组成。轮廓信息可以用于尺寸测量和缺陷检测等应用。
ROI
ROI(Region of Interest,感兴趣区域)。ROI是从被处理的图像中框选出来需要处理的区域。
坐标系
用于定义物体空间位置的参考。
映射
指不同坐标系或数据空间之间的转换关系。
信噪比
信号功率与噪声功率的比值。信噪比可以通过优化相机的曝光参数或通过图像处理算法来提高。
位姿
物体的姿态,它由位置和方向两个要素组成。
均衡化
图像处理技术,可以增强图像的对比度,改善视觉效果,使其更适合进行后续的分析和处理。
滤波
图像处理技术,用于去除图像中的噪声或平滑图像。
软件主界面
主页由菜单栏,工具栏和主界面组成,其中,主界面由图像显示区域,模块选择选择列表,流程图编辑区域和结果表格区域组成:
点击工具栏关于
查看当前软件版本。
① 菜单栏
文件:打开/保存文件;导入/导出组合模块
程序设置:运行界面模块
流程:流程运行控制及其快捷键,包括:继续运行(F2);运行当前(F3);单步跳过(F4);单次运行(F5);断点(F9);观察点(F10)
语言:中文;English
帮助:软件版本
② 工具栏
常用工具的操作,如文件操作、模块操作、通信等
③ 图像显示
图像区域支持2D显示和3D显示;根据所选模块,显示选择模块的输出图像;如果模块有多个输出图像,还可以选择输出对象。例如可以通过本地数据模块,载入一个SizectorS的mpdat图像数据。
详细说明见:图像显示
④ 输出
如果模块有结果输出,输出模块以表格显示展示输出结果:
表格输出
表格支持:
- 当前结果显示
- 历史结果查看
- 统计表格查看
- 表格手动保存和自动保存
日志和诊断
可以使用日志程序:Dbgview.exe (Dbgview)查看软件输出日志,如使用中遇到异常问题,请提供软件日志给软件同事便于分析。
⑤ 模块列表
模块列表按照分类,列出了软件的所有模块(部分模块或称作算子),模块是可执行的单元,可以完成特定的功能和输出结果;同时模块也是流程图中的一个节点,通常由模块的前级节点执行完成后,触发模块自己执行,最后模块再触发后级节点,以此类推。
添加模块(通过工具栏)
通过工具栏添加模块:
- 选中模块列表中需要添加的模块
- 选中流程图中一个节点
- 点击工具栏
添加
,将模块添加到选中节点的后面
开始
和结束
模块是特殊节点,不能为开始
添加前级节点,以及不能为结束
添加后级节点。
添加模块(通过拖拽)
删除模块
通过工具栏删除模块:
- 选中待删除的模块
- 点击工具栏
删除
- 在“移除模块提示”中选择确定,删除模块
模块设置
模块添加到流程图后,右键单击弹出 模块的设置界面,如相机模块和高度测量模块设置如下:
相机模块 | 高度测量模块 |
根据模块不同,设置页的内容和样式可能不同。设置页面一般包含:
- 参数设置
- 模块说明描述:简述模块的使用;上方有帮助按钮,点击可以跳转到帮助文档,查看更详细说明
- 保存按钮:当修改设置后,修改项会亮色标出以提示设置被修改,点击保存按钮保存修改,并恢复正常显示
- 执行按钮:单独执行模块,便于查看修改参数后执行的效果
⑥ 流程图
流程图是软件执行的控制中心和内容核心,其包含一组开始
和结束
节点,以及其他任意添加的功能模块/算子节点。软件运行的整个过程,就是按流程执行流程中的所有模块,而软件的最终产出,也在流程执行中,由各个具体模块产生。
单击菜单栏的单次
,流程图从开始
节点开始执行,然后执行其后的第一个节点,其后节点执行完后,再执行它的后级节点,以此类推;最后到结束
,则一次运行结束。
流程图的每个模块节点执行时,可 以产生结果和数据,包括图像、数值、硬件输出、TCP发送等;这些数据除了直接可视化呈现,又可以被后面模块节点用作参数输入,从而形成数据流转;亦可以发送到其他设备,驱动外部设备。
不同的任务需求,通过配置不同流程图满足。配置好的流程图可以通过菜单栏的保存
和导入
,来备份和重新载入。
另外,一些节点有更特殊的跳转后级模块的逻辑,如条件分支,请参看:条件分支
以上图为例,程序将如下依次执行:
- 开始
- 本地数据
- 矩形区域
- 粗糙度测量
- 如果粗糙度测量结果小于等于0.1,则执行分支1(通过分支设置页面设定了条件);如果糙度测量结果大于0.1,则执行分支2(上图中简写为2)
- 如果执行分支1,则执行OK字符串和发送数据,发送OK字符
- 如果执行分支2,则执行NG文本和发送数据,发送NG字符
- 汇合
- 结束
所有模块
所有模块按功能分组,包括:
- 相机与数据:支持相机拍摄,数据导入和导出等;
- 区域:支持多种区域,如正矩形区域,旋转矩形区域,圆形区域,环形区域,阵列区域,路径区域,克隆区域等;
- 几何:2D点,卡尺2D,查找直线2D,拟合直线2D,拟合圆2D,3D点,3D点集,平面,平面集,拟合球;
- 定位:坐标系(支持手动设定坐标系),Bolb2D,模板匹配,相机映射2D,相机映射3D;
- 测量: 点点测量2D,点线测量2D,线线测量2D,点点测量3D,点线测量3D,线面测量3D, 面面测量3D,高度测量,体积测量,粗糙度测量,球杆测量,多平面交点,厚度测量;
- 计算:变量,设置变量,数值运算,矩阵运算,排序,矩阵,结果判定;
- 图像处理:支持二值化2D,滤波2D,几何变换2D,去除飞点,填补,平滑,中值滤波,3D变换,深度图,范围限制,拼接图像,平面误差补偿,去畸变;
- 检测:支持目标检测
- 流程控制:支持条件分支,并行分支,循环模块,Gpu流,Gpu上传,Gpu下载;
- 输入输出:接收数据,发送数据,格式化字符,表格,等待事件,Json解析,数据库,SicectorS输出,时间获取;
基于1.10.0版本。
更多信息,请见“模块概览”