工业机器视觉海康相机软件VM4.0.0功能简介
一、软件定位
- 海康机器人图形化机器视觉平台,拖拽式搭建方案,无需代码
- 覆盖:定位、测量、检测、识别、深度学习、3D 视觉
- 适配:工业相机、面阵 / 线扫相机、3D 相机、多相机组网
二、核心视觉功能(最常用)
1. 图像采集与预处理
- 相机接入:海康相机直连,支持多相机同步
- 预处理:滤波、去噪、阈值、形态学、ROI、畸变校正、图像增强、多图融合
- 用途:消除反光、统一亮度、突出特征
2. 定位与引导(机器视觉最核心)
- 形状匹配、灰度匹配、边缘定位、特征点检测
- 手眼标定、N 点标定、坐标转换、角度纠偏
- 用途:机器人抓取、装配引导、Mark 点定位、工件纠偏
3. 尺寸测量
- 卡尺工具、直线 / 圆 / 圆弧拟合
- 距离、角度、半径、直径、面积、周长、公差判定
- 用途:精密零件尺寸、间隙、段差、孔径、引脚间距
4. 缺陷检测
- 斑点分析、差分对比、纹理检测、颜色识别
- 划痕、脏污、缺料、毛边、变形、装配错误检测
5. 识别类
- 一维码、二维码、DataMatrix 读取
- OCR 字符识别、印刷字符、序列号、标签追溯
- 分类、计数、有无判断
6. 深度学习(VM4.0 重点强化)
- 目标检测、分类、语义分割、实例分割
- 支持旋转目标检测、本地 GPU 训练
- 适用:复杂缺陷、杂乱背景、低对比度目标
7. 3D 视觉
- 点云显示、滤波、配准、分割
- 高度差、平面度、体积、3D 定位引导
三、VM4.0.0 关键升级亮点
- 流程分组(Group):可独立运行、保存、调用,便于复杂项目
- C# 脚本模块:支持复杂逻辑、数据处理、自定义算法
- 通信增强:Modbus TCP、Profinet、EtherNet/IP、TCP、串口
- 灵活触发:模块级触发、事件触发、字符串触发
- 自定义模块:可封装自己的算法进 VM
- 方案复用:流程 / 模块导出导入,快速复制项目
四、支持通信与对接
- PLC:西门子、三菱、欧姆龙、基恩士等
- 协议:Profinet、EtherNet/IP、Modbus TCP、TCP Server/Client、RS232/485
- 可对接机器人、MES、上位机系统
五、二次开发与部署
- 提供 C#/C++ SDK
- 可脱离 VM 界面独立运行
- 支持上位机集成、批量部署
六、典型行业场景
- 3C 电子:PCB 检测、屏幕缺陷、元件尺寸、连接器检测
- 汽车零部件:孔径测量、装配检测、焊接缺陷
- 锂电 / 光伏:极片缺陷、尺寸测量、表面瑕疵
- 物流包装:条码读取、体积测量、分拣引导
- 医药食品:包装完整性、标签识别、缺瓶检测
七、软件功能总结
1. 采集
管理与图像获取相关的模块。
图像源:流程的起点。用于从相机(如海康GigE/USB相机)、图像文件、文件夹或内存 中获取图像。
多图采集:用于同时控制和管理多个相机进行采集,同步获取多张图像。
输出图像:用于将处理过程中的图像输出到指定位置,如保存为文件或发送到内存供其他流程使用。
缓存图像:提供一个图像缓存区,可以临时存储多帧图像,用于回溯、对比或序列分析。
光源:用于控制连接在光 源控制器上的LED光源的亮度、开关等参数,实现打光优化。
2. 定位
用于查找和确定目标物体位置、角度的工具。
高精度匹配:基于形状的匹配,精度高、抗干扰性强,适用于对定位精度和鲁棒性要求极高的场景。
快速匹配:基于灰度或边缘的快速匹配,速度较快,适用于对速度要求高、场景简单的定位。
灰度匹配:基于像素灰度值进行匹配,对物体形状变化不敏感,但容易受光照影响。
图形定位:通用术语,通常指上述各种匹配工具的集合。
圆查找:专门用于在图像中快速、精确地定位一个或多个圆(如孔、柱状物)。
直线查找:专门用于在图像中提取一条或多条直线边缘。
BLOB分析:将图像二值化后,对连通区域(斑点)进行分析,可计算其面积、中心、角度等,用于数量统计和粗略定位。
卡尺工具:测量核心工具。通过在指定ROI内垂直搜索边缘点,来精确定位单个边缘或拟合直线/圆,常用于高精度尺寸测量。
边缘查找:搜索并返回ROI内所有边缘点的位置,是很多其他工具的基础。
间距检测:专门用于测量两个特征(如两条边)之间的宽度或距离。
位置修正:根据一个定位工具的结果,动态修正后续工具的检测ROI的位置和角度,实现“跟随”检测。
矩形检测:专门用于定位和检测矩形物体,可返回中心、角度、宽高等信息。
顶点检测:用于定位角点、交叉点等尖锐的特征点。
边缘交点:计算两条(虚拟或提取出的)直线的交点坐标。
平行线查找:用于查找图像中一组平行的直线。
四边形查找:用于定位和拟合四边形轮廓。
多直线查找:用于同时查找并拟合多条直线。
路径提取:用于提取和拟合复杂的曲线路径。
BLOB标签:对BLOB分析找到的多个斑点进行过滤和排序,如按面积、位置等标签进行筛选。
3. 测量
用于进行精确的几何尺寸和亮度测量。
线圆测量:测量一条直线到一个圆的最近距离或圆心到直线的距离。
圆圆测量:测量两个圆心之间的距离。
点圆测量:测量一个点到圆心的距离。
点线测量:测量一个点到一条直线的垂直距离。
线线测量:测量两条平行线之间的距离或两条相交直线的夹角。
点点测量:测量两个点之间的像素距离或实际距离(需标定)。
圆拟合:根据多个边缘点坐标,拟合出一个最接近的理想圆。
直线拟合:根据多个边缘点坐标,拟合出一条最接近的理想直线。
亮度测量:测量指定区域(ROI)内的平均灰度、最大/最小灰度值等。
像素统计:统计指定区域内像素的灰度值分布情况。
直方图工具:以图形化方式显示图像的灰度分布直方图。
几何创建:通过输入参数或公式,创建虚拟的点、线、圆等几何图形,用于辅助测量或计算。
4. 识别
用于读取和识别各种编码及字符。
二维码识别:用于读取QR Code、Data Matrix等二维码信息。
条码识别:用于读取Code 128、Code 39等一维条码信息。
字符识别:传统OCR工具,用于读取印刷体字符。
DL字符识别G/C:基于深度学习(DL)的字符识别,识别能力和抗干扰性更强(G/C可能指GPU/CPU不同加速模式)。
DL读码G/C:基于深度学习的读码工具,用于在复杂、脏污、光照不均等恶劣条件下读取条码/二维码。
DL字符定位G/C:基于深度学习的字符定位工具,先找到字符区域,再送给识别工具。
5. 深度学习 (DL)
利用AI模型解决复杂、传统的难以定义的视觉问题。
DL图像分析G/C:广义的深度学习分析工具,可能用于场景分割、特征提取等。
DL分类G/C:将整个图像分类到预定义的类别中(如:合格/不合格、A型号/B型号)。
DL目标检测G/C:在图像中定位并识别出多个目标物体,并用矩形框标出(如:找出图像中的所有螺丝和垫片)。
DL单字符G/C:专门用于分割和识别单个字符。
DL图像检测G/C:通常指像素级的缺陷检测或分割,可以精确标出缺陷的具体形状和位置。
DL异常检测G/C:一种“无监督”学习,只需学习正常样本,即可检测出任何偏离正常的异常区域。
6. 标定
将图像中的像素坐标转换为现实世界中的物理坐标(毫米、英寸)。
标定板标定:使用棋盘格或圆点标定板,建立像素坐标与物理坐标的映射关系,同时校正镜头畸变。
N点标定:通过输入N个已知物理坐标的点及其像素坐标,进行标定,适用于无法使用标定板的场景。
标定转换:应用标定结果,将像素坐标/尺寸转换为物理坐标/尺寸。
单位转换:进行单位换算的辅助工具。
畸变标定:计算镜头的畸变参数。
畸变校正:利用畸变参数对图像进行校正,消除镜头畸变。
映射标定:用于建立非线性映射关系,例如纠正视角倾斜带来的误差。
N图像标定:通过多幅图像的信息来完成更高精度的标定。
7. 对位
常用于引导机器人或运动平台进行抓取、对准等操作。
相机映射:处理相机坐标系与机器人坐标系之间的转换关系。
单点对位:根据一个特征点的偏移量,计算机器人需要移动的补偿量。
点集对位:根据多个特征点的偏移,计算包括旋转、缩放在内的更复杂的补偿量。
线对位:根据一条基准线的偏移和角度变化,计算机器人的补偿量。
8. 图像处理
对图像进行增强、变换和滤波等操作,以改善图像质量。
图像组合:将多张图像或通道合成为一张图像(如RGB合成)。
形态学处理:对二值图像进行膨胀、腐蚀、开运算、闭运算等操作,用于去噪、连接断点。
图像二值化:根据阈值将灰度图像转换为黑白二值图像。
图像滤波:应用滤波器(高斯、中值、均值等)来平滑图像或去除噪声。
图像增强:通过算法(如对比度拉伸、直方图均衡化)增强图像细节。
图像运算:对两幅图像进行像素级的数学运算(加、减、乘、除、与、或)。
清晰度评估:评估图像的清晰度(锐度)好坏。
图像修正:广义的图像校正工具。
阴影校正:消除图像中不均匀的背景光照(阴影)。
圆环展开:将圆环状的ROI区域展开成矩形条,便于分析。
拷贝填充:复制图像的一部分区域去填充另一区域。
帧平均:对连续多帧图像进行平均,可有效抑制随机噪声。
图像归一化:调整图像的灰度范围。
图像矫正:对图像进行透视变换,矫正倾斜。
几何变换:对图像进行旋转、缩放、平移等变换。
图像拼接:将多张有重叠区域的图像拼接成一张大图。
多图融合:将多张不同曝光的图像融合成一张细节更丰富的图像。
9. 颜色处理
处理与颜色相关的视觉应用。
颜色抽取:从彩色图像中提取特定颜色范围的区域。
颜色测量:测量指定区域的颜色值(如RGB、HSV值)。
颜色转换:在不同颜色空间(如RGB, HSV, Lab)之间进行转换。
颜色识别:根据颜色特征对物体或区域进行分类识别。
10. 缺陷检测
专门用于检测产品表面或形状上的各种缺陷。
字符缺陷:检测印刷字符的缺陷,如漏印、模糊、断裂。
圆弧边缘:检测圆弧状边缘是否存在缺陷(毛刺、缺口)。
直线边缘:检测直线状边缘是否存在缺陷。
圆弧对缺:通过比较标准圆弧和待测圆弧的差异来检测缺陷。
直线对缺:通过比较标准直线和待测直线的差异来检测缺陷。
边缘组合:将多个边缘特征组合成一个复合特征进行分析。
边缘对组:通过对比两组边缘的差异来检测缺陷。
边缘模型:创建一个标准的边缘模型,然后通过与模型对比来检测缺陷。
边缘对模:工具组合,可能指“边缘对比模型”。
缺陷对比:通用工具,通过比较待测图像与标准模板图像的差异来发现缺陷。
11. 逻辑工具
用于控制流程逻辑、数据处理和通信。
条件检测:根据输入条件(真/假)来决定流程的走向。
分支模块:根据条件执行不同的分支流程。
分支字符:根据字符或字符串的内容执行不同的分支流程。
文本保存:将字符串、数据结果保存到文本文件中。
逻辑:执行基本的逻辑运算(与、或、非)。
格式化:将数据格式化成特定的字符串格式(如:“Result: %.2f mm”)。
变量计算:执行数学运算和公式计算。
字符比较:比较两个字符串是否相等、包含等。
脚本:运行用户自定义的脚本(如C#, Python),实现高度自定义的功能。
Group:将多个模块组合成一个群组,简化流程图,便于管理。
点集:管理和操作一组点的坐标数据。
耗时统计:测量流程或某个模块的执行时间,用于性能优化。
数据集合:用于数据的集合操作。
协议解析:解析接收到的自定义通信协议数据。
协议组装:将数据按照自定义通信协议格式打包发送。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)