VisionMaster 测量模块工具

1. 模块概述

测量模块是海康机器人 VisionMaster(VM)算法平台「测量」工具集的核心组成部分,共包含 12 个工具 ,用于在「定位」模块提取出几何特征之后,对特征之间的位置关系、形状尺寸、亮度/灰度 进行量化计算。它不直接做图像匹配,而是接收上游圆查找、直线查找、顶点检测等工具输出的点 / 线 / 圆对象,输出标准化数值(距离、角度、半径、亮度、统计值)。

按功能可分为四大类:

类别 工具 核心作用
几何关系测量 线圆测量、圆圆测量、点圆测量、点线测量、线线测量、点点测量 解算两种几何基元之间的距离 / 角度
几何拟合 圆拟合、直线拟合 基于离散点拟合出标准圆 / 直线
图像像素分析 亮度测量、像素统计、直方图工具 对 ROI 内灰度值做统计分析
基准构建 几何创建 手动或按坐标创建虚拟几何基元,供测量/定位引用

2. 几何关系测量类

几何关系测量类共 6 个工具,负责解算点、线、圆三种几何基元两两之间的距离与角度关系,是产线上最常用的测量手段。

2.1 线圆测量

  • 功能:测量一条直线与一个圆之间的位置关系。
  • 输入:直线对象、圆对象、测量类型(圆心距 / 切线距离 / 最短距离)。
  • 输出:直线到圆心的垂直距离、直线到圆轮廓的最短距离、是否相交。
  • 典型应用:轴类零件的中心到基准边的距离、孔中心到边缘的距离。

2.2 圆圆测量

  • 功能:测量两个圆之间的位置关系。
  • 输入:圆 A、圆 B、测量类型(圆心距 / 边缘最短距 / 边缘最大距)。
  • 输出:圆心距、两圆轮廓最短距离、半径差、同心度。
  • 典型应用:双孔孔间距、同轴孔同心度、轴承内外圈偏心量。

2.3 点圆测量

  • 功能:测量一个点与一个圆之间的位置关系。
  • 输入:点对象、圆对象。
  • 输出:点到圆心距离、点到圆轮廓最短距离、点是否在圆内。
  • 典型应用:基准点相对圆孔的偏差、角点到定位孔的距离。

2.4 点线测量

  • 功能:测量一个点到一条直线的垂直距离。
  • 输入:点对象、直线对象。
  • 输出:垂直距离、垂足坐标、点在直线方向上的位置。
  • 典型应用:元件中心相对基准边的偏移、引脚顶端到基准线的距离。

2.5 线线测量

  • 功能:测量两条直线之间的位置关系。
  • 输入:直线 A、直线 B、测量类型(夹角 / 交点 / 距离)。
  • 输出:两直线夹角、交点坐标、两平行线间距。
  • 典型应用:垂直度 / 平行度评价、矩形件相邻边夹角、导轨间距。

2.6 点点测量

  • 功能:测量两个点之间的距离。
  • 输入:点 A、点 B。
  • 输出:欧氏距离、水平差 ΔX、垂直差 ΔY、两点连线角度。
  • 典型应用:两个顶点 / 角点之间的长度、引脚间距、焊盘点间距。

3. 几何拟合类

几何拟合类共 2 个工具,用于从离散点集中重建标准几何基元,适合已知点集、噪声较多的场景。

3.1 圆拟合

  • 功能:基于输入的一组离散点(边缘点、顶点、手动点等)拟合出最小二乘圆。
  • 输入:点集、拟合算法(最小二乘 / 鲁棒拟合)。
  • 输出:圆心 X/Y、半径、圆度误差、拟合残差。
  • 核心特性:支持剔除离群点的鲁棒拟合,比直接"圆查找"更适合已知点集的场景。
  • 典型应用:从已提取边缘点重建圆、多段圆弧拼合、异形孔圆度评定。

3.2 直线拟合

  • 功能:基于输入的一组离散点拟合出直线。
  • 输入:点集、拟合算法(最小二乘 / RANSAC / 鲁棒拟合)。
  • 输出:直线起点 / 终点、角度、拟合残差、点到直线最大偏差。
  • 核心特性:可过滤离群点,适合噪声较多的边缘点。
  • 典型应用:重建基准边、评价边缘直线度、多段直线拼合。

4. 图像像素分析类

图像像素分析类共 3 个工具,对 ROI 内的灰度值做统计分析,常用于亮度、面积占比、缺陷检测等场景。

4.1 亮度测量

  • 功能:测量指定 ROI 区域内的平均亮度、最大 / 最小亮度。
  • 输入:ROI、亮度范围(0--255 或自定义)。
  • 输出:平均灰度、最大灰度、最小灰度、亮度标准差、ROI 面积。
  • 典型应用:LED 亮度判定、屏幕显示均匀性、印刷深浅检测、表面反光异常检测。

4.2 像素统计

  • 功能:对 ROI 内像素按灰度区间进行计数与百分比统计。
  • 输入:ROI、灰度区间、阈值上下限。
  • 输出:各区间像素数、占比、合格像素数、超差像素数。
  • 典型应用:黑白面积比例、缺陷面积占比、二值化前景占比、印刷覆盖率。

4.3 直方图工具

  • 功能:绘制 ROI 内灰度直方图,显示各灰度级分布。
  • 输入:ROI、灰度 bin 数、是否分通道(RGB 彩色时)。
  • 输出:直方图曲线、峰值位置、双峰信息、灰度分布统计。
  • 典型应用:辅助确定二值化阈值、评估对比度、分析光照不均、区分前景与背景。

5. 基准构建类

5.1 几何创建

  • 功能:通过坐标、公式或已知几何参数,手动创建点、线、圆、矩形等虚拟几何对象。
  • 输入:几何类型、坐标参数(X/Y、半径、角度等)。
  • 输出:可被其他测量/定位工具引用的几何对象。
  • 核心特性 :
    • 可建立固定基准(如机械坐标系原点、相机光轴点);
    • 可结合位置修正矩阵创建动态基准;
    • 可在图像上叠加测量辅助线。
  • 典型应用:建立机械零点基准、标定板基准圆、固定测量参考线、虚拟坐标系构建。

6. 与定位模块的配合关系

复制代码
定位模块:圆查找 / 直线查找 / 顶点检测
        ↓ 输出点、线、圆对象
测量模块:点线 / 线线 / 圆圆 / 线圆测量
        ↓ 输出距离、角度、尺寸
判定/输出:阈值判定 OK/NG → 上报 PLC / 上位机

典型组合:

产线需求 工具链
孔中心到边缘距离 圆查找 + 直线查找 → 线圆测量
两孔间距 / 同心度 圆查找 ×2 → 圆圆测量
元件引脚相对基准边偏移 直线查找(基准边) + 顶点检测(引脚) → 点线测量
直角工件垂直度 直线查找 ×2 → 线线测量(夹角)
边缘点重建圆 / 直线 边缘查找(点集) → 圆拟合 / 直线拟合
印刷深浅 / LED 亮度 亮度测量 → 阈值判定
缺陷面积占比 像素统计 / 直方图工具
建立机械固定基准 几何创建 → 供所有测量工具引用

7. SDK 二次开发要点(C#)

  1. 测量工具必须有上游特征输入,在流程中先连线再运行;
  2. 所有数值结果(距离、角度、亮度、占比)均可在「流程输出」中暴露;
  3. C# 端读取后做 SPC 统计、存数据库或下发 PLC。
csharp 复制代码
// 示意:读取两个测量结果
var solution = VmSolution.Load(@"D:\measure.vmproj");
var flow = solution.GetFlow("流程1");
flow.Run();

double holeDistance = flow.GetOutputParameter<double>("CircleCircle_Distance");
double edgeOffset   = flow.GetOutputParameter<double>("PointLine_Distance");
bool   sizeOK       = flow.GetOutputParameter<bool>("Result_OK");
相关推荐
samble18 小时前
从零搭建灌装监控系统(十九):单元测试实战,xUnit + 内存SQLite + 反射测试私有方法
c#·wpf·mvvm·modbus·工业控制
人道领域20 小时前
【面试八股速通篇01】锁与并发工具
java·开发语言·面试·c#
宇卿.21 小时前
C#字段、属性、索引器、常量
开发语言·计算机视觉·c#
程序员Linc21 小时前
ONNXOCRSharp 开源手记 02|v0.4.0 PDF识别
开发语言·pdf·c#·ocr·onnxocrsharp
慧都小妮子1 天前
MSG 附件太占内存?Aspose.Email for .NET 26.9 延迟加载
c#·.net·aspose·内存优化·延迟加载·aspose.email·附件内存
慧都小妮子1 天前
FastReport PDF/UA 导出:让出海 PDF 满足无障碍合规要求
pdf·c#·fastreport·报表导出·pdf/ua·pdf 无障碍
淡海水1 天前
03-02-架构篇-Boehm GC架构解析
unity·架构·c#·gc·boehm
samble2 天前
从零搭建灌装监控系统(十八):自定义控件,三色灯与状态指示
c#·wpf·mvvm·modbus·工业控制
jun_bai2 天前
使用Aspose实现word文档合并,内容替换
windows·c#·word