跳到主要内容
版本:Next

简介

MegaVision是盛相科技(MEGA PHASE)打造的一款简单易用的,扩展性强,跨平台的的测量软件。

功能特性

多相机兼容

  • 可连接SizectorS/M和Hdc相机;
  • 支持多相机同时控制;

多种支持

  • 支持输出IO,TCP,数据库等;支持字符解析和字符格式化;
  • 支持通信事件;支持变量设置;支持json文本解析;
  • 支持通过模板匹配、特征以及手动设定的2D坐标系的建立,用于区域设置;
  • 支持多种区域,如矩形、圆形、旋转矩形、环形、多边形(开发中)等; 支持路径化、阵列化区域;

2D、3D、横截面

  • 3D/2D图像显示;
  • 高效的2D,3D和横截面预处理:高斯滤波、均值滤波、中值滤波、边缘检测、反色,二值化、镜像、旋转、几何变换、去飞点、修补、平滑、锐化、3D变换等;
  • 精确度高的2D,3D和横截面测量算子:点、直线、平面、圆、球、点点测量、点线测量、线线测量、面面测量、高度测量、体积测量、粗糙度测量、球杆测量、Blob、相机映射、目标检测、矩阵运算、数值运算等;

灵活性和插件化

  • 用户可以开发自己的插件,扩充软件功能;
  • 流程图形式控制运行逻辑,可以使用条件分支,循环等控制逻辑;

环境要求

environmentTable

获取和运行

执行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是从被处理的图像中框选出来需要处理的区域。

坐标系

用于定义物体空间位置的参考。

映射

指不同坐标系或数据空间之间的转换关系。

信噪比

信号功率与噪声功率的比值。信噪比可以通过优化相机的曝光参数或通过图像处理算法来提高。

位姿

物体的姿态,它由位置和方向两个要素组成。

均衡化

图像处理技术,可以增强图像的对比度,改善视觉效果,使其更适合进行后续的分析和处理。

滤波

图像处理技术,用于去除图像中的噪声或平滑图像。

软件主界面

主页由菜单栏,工具栏和主界面组成,其中,主界面由图像显示区域,模块选择选择列表,流程图编辑区域和结果表格区域组成:

homepage

提示

点击工具栏关于查看当前软件版本。

① 菜单栏

文件:打开/保存文件;导入/导出组合模块

程序设置:运行界面模块

流程:流程运行控制及其快捷键,包括:继续运行(F2);运行当前(F3);单步跳过(F4);单次运行(F5);断点(F9);观察点(F10)

语言:中文;English

帮助:软件版本

② 工具栏

常用工具的操作,如文件操作、模块操作、通信等

③ 图像显示

图像区域支持2D显示和3D显示;根据所选模块,显示选择模块的输出图像;如果模块有多个输出图像,还可以选择输出对象。例如可以通过本地数据模块,载入一个SizectorS的mpdat图像数据。
详细说明见:图像显示

④ 输出

如果模块有结果输出,输出模块以表格显示展示输出结果:

image

表格输出

表格支持:

  • 当前结果显示
  • 历史结果查看
  • 统计表格查看
  • 表格手动保存和自动保存

日志和诊断

可以使用日志程序:Dbgview.exe (Dbgview)查看软件输出日志,如使用中遇到异常问题,请提供软件日志给软件同事便于分析。

⑤ 模块列表

模块列表按照分类,列出了软件的所有模块(部分模块或称作算子),模块是可执行的单元,可以完成特定的功能和输出结果;同时模块也是流程图中的一个节点,通常由模块的前级节点执行完成后,触发模块自己执行,最后模块再触发后级节点,以此类推。

image

添加模块(通过工具栏)

通过工具栏添加模块:

  • 选中模块列表中需要添加的模块
  • 选中流程图中一个节点
  • 点击工具栏添加,将模块添加到选中节点的后面
信息

开始结束模块是特殊节点,不能为开始添加前级节点,以及不能为结束添加后级节点。

添加模块(通过拖拽)

删除模块

通过工具栏删除模块:

  • 选中待删除的模块
  • 点击工具栏删除
  • 在“移除模块提示”中选择确定,删除模块

模块设置

模块添加到流程图后,右键单击弹出模块的设置界面,如相机模块和高度测量模块设置如下:

camerasettingheightsetting
相机模块高度测量模块

根据模块不同,设置页的内容和样式可能不同。设置页面一般包含:

  • 参数设置
  • 模块说明描述:简述模块的使用;上方有帮助按钮,点击可以跳转到帮助文档,查看更详细说明
  • 保存按钮:当修改设置后,修改项会亮色标出以提示设置被修改,点击保存按钮保存修改,并恢复正常显示
  • 执行按钮:单独执行模块,便于查看修改参数后执行的效果

⑥ 流程图

流程图是软件执行的控制中心和内容核心,其包含一组开始结束节点,以及其他任意添加的功能模块/算子节点。软件运行的整个过程,就是按流程执行流程中的所有模块,而软件的最终产出,也在流程执行中,由各个具体模块产生。

单击菜单栏的单次,流程图从开始节点开始执行,然后执行其后的第一个节点,其后节点执行完后,再执行它的后级节点,以此类推;最后到结束,则一次运行结束。

流程图的每个模块节点执行时,可以产生结果和数据,包括图像、数值、硬件输出、TCP发送等;这些数据除了直接可视化呈现,又可以被后面模块节点用作参数输入,从而形成数据流转;亦可以发送到其他设备,驱动外部设备。

不同的任务需求,通过配置不同流程图满足。配置好的流程图可以通过菜单栏的保存导入,来备份和重新载入。

另外,一些节点有更特殊的跳转后级模块的逻辑,如条件分支,请参看:条件分支

image

以上图为例,程序将如下依次执行:

  • 开始
  • 本地数据
  • 矩形区域
  • 粗糙度测量
  • 如果粗糙度测量结果小于等于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版本。

更多信息,请见“模块概览”