IMVSC2CMeasureModuCs 圆圆测量模块接口文档

IMVSC2CMeasureModuCs 圆圆测量模块接口文档

概述

IMVSC2CMeasureModuCs 命名空间提供了一套用于测量图像中两个圆之间的角度、距离、交点和位置关系的接口。该模块适用于图像处理和计算机视觉任务,能够高效地检测和分析圆形特征。

命名空间

命名空间: IMVSC2CMeasureModuCs

详细描述:
圆圆测量模块接口可测量图像中两个圆之间的角度、距离、交点和位置关系。

1. C2CMeasureParam

描述: 圆圆测量参数类,用于配置圆检测和测量的参数。

Public 类型

以下枚举类型用于配置圆检测的行为:

  • FindMode1Enum

    • Best = 0x1: 选择最强的边缘
    • Largest = 0x2: 选择最大的边缘
    • Smallest = 0x3: 选择最小的边缘
  • EdgePolarity1Enum

    • BlackToWhite = 0x1: 从黑到白
    • WhiteToBlack = 0x2: 从白到黑
    • Both = 0x3: 任意极性
  • InitType1Enum

    • ALS = 0x1: 全局初始拟合
    • LLS = 0x2: 局部初始拟合
  • FitFun1Enum

    • LS = 0x1: 最小二乘拟合
    • Huber = 0x2: Huber 拟合
    • Tukey = 0x3: Tukey 拟合
  • FindMode2Enum, EdgePolarity2Enum, InitType2Enum, FitFun2Enum
    与上述对应,用于配置第二个圆的参数,值和含义相同。

Public 属性
  • InputImage: ImageBaseData
    输入图像,仅当次执行起效。
  • InputCircleAnnulus1: List<Annulus>
    输入圆1,仅当次执行起效。
  • InputCircleAnnulus2: List<Annulus>
    输入圆2,仅当次执行起效。
  • FindMode1: FindMode1Enum
    边缘类型1。
  • EdgePolarity1: EdgePolarity1Enum
    边缘极性1。
  • EdgeThresh1: int
    边缘阈值1,范围:[1, 255]。
  • EdgeWidth1: int
    滤波尺寸1,范围:[1, 50]。
  • RejectNum1: int
    剔除点数1,范围:[0, 997]。
  • CoarseDetectFlag1: bool
    初定位1。
  • CCDSampleScale1: int
    下采样系数1,范围:[1, 8]。
  • CCDCircleThresh1: int
    定位敏感度1,范围:[1, 1000]。
  • RejectDist1: int
    剔除距离1,范围:[1, 1000]。
  • InitType1: InitType1Enum
    初始拟合1。
  • FitFun1: FitFun1Enum
    拟合方式1。
  • FindMode2, EdgePolarity2, EdgeThresh2, EdgeWidth2, RejectNum2, CoarseDetectFlag2, CCDSampleScale2, CCDCircleThresh2, Reject.Dist2, InitType2, FitFun2
    与上述对应,用于配置第二个圆的参数。
  • AngleLimitEnable: bool
    角度判断开关。
  • AngleLimitLow: double
    角度范围下限,范围:[-180, 180]。
  • AngleLimitHigh: double
    角度范围上限,范围:[-180, 180]。
  • DistLimitEnable: bool
    距离判断开关。
  • DistLimitLow: double
    距离范围下限,范围:[0, 99999]。
  • DistLimitHigh: double
    距离范围上限,范围:[0, 99999]。
  • Inter1XLimitEnable, Inter1XLimitLow, Inter1XLimitHigh, Inter1YLimitEnable, Inter1YLimitLow, Inter1YLimitHigh
    交点1的X和Y坐标判断开关及范围,范围:[-99999, 99999]。
  • Inter2XLimitEnable, Inter2XLimitLow, Inter2XLimitHigh, Inter2YLimitEnable, Inter2YLimitLow, Inter2YLimitHigh
    交点2的X和Y坐标判断开关及范围,范围:[-99999, 99999]。

2. C2CMeasureResult

描述: 圆圆测量结果类,存储测量结果。

Public 成员函数
  • C2CMeasureResult()
    构造函数。
属性
  • ModuStatus: int
    模块状态。
  • MeasureCircle1: Circle
    测量圆1。
  • MeasureCircleAnnulus1: Annulus
    测量圆环1。
  • MeasureCircle2: Circle
    测量圆2。
  • MeasureCircleAnnulus2: Annulus
    测量圆环2。
  • Intersection1: PointF
    交点1。
  • Intersection2: PointF
    交点2。
  • Angle: float
    角度。
  • Dist: float
    距离。
  • C2CType: string
    位置关系。
  • DetectCaliperBox1: List<RectBox>
    卡尺检测区1。
  • DetectCaliperBox2: List<RectBox>
    卡尺检测区2。

3. IMVSC2CMeasureModuTool

描述: 圆圆测量工具类,提供测量功能的核心接口。

Public 成员函数
  • IMVSC2CMeasureModuTool()
    构造函数。
  • Run(): override void
    模块自执行。
Public 属性
  • ModuResult: C2CMeasureResult
    模块结果对象。
  • ModuParams: C2CMeasureParam
    模块参数对象。

示例程序

以下是一个简单的C#代码示例,展示如何使用IMVSC2CMeasureModuCs命名空间进行圆圆测量:

using IMVSC2CMeasureModuCs;

class Program
{
    static void Main(string[] args)
    {
        // 创建测量工具实例
        var tool = new IMVSC2CMeasureModuTool();
        
        // 配置参数
        tool.ModuParams.InputImage = new ImageBaseData(); // 设置输入图像
        tool.ModuParams.FindMode1 = FindMode1Enum.Best;
        tool.ModuParams.EdgePolarity1 = EdgePolarity1Enum.BlackToWhite;
        tool.ModuParams.EdgeThresh1 = 100;
        tool.ModuParams.AngleLimitEnable = true;
        tool.ModuParams.AngleLimitLow = -90.0;
        tool.ModuParams.AngleLimitHigh = 90.0;

        // 执行测量
        tool.Run();

        // 获取结果
        var result = tool.ModuResult;
        Console.WriteLine($"测量角度: {result.Angle}");
        Console.WriteLine($"测量距离: {result.Dist}");
        Console.WriteLine($"位置关系: {result.C2CType}");
    }
}

错误码定义

  • 0: 成功
  • 1: 输入图像无效
  • 2: 参数超出范围
  • 3: 测量失败
  • 其他: 请参考具体错误码文档

总结

IMVSC2CMeasureModuCs 提供了一个强大的工具集,用于在图像中测量两个圆的几何关系。通过灵活的参数配置和详细的结果输出,开发者可以轻松集成到图像处理应用中。

更多详细信息,请参考官方文档或联系技术支持。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东城十三

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值