双目标定与生成深度图

基于C#联合Halcon实现双目标定整体效果

一,标定

1,标定前准备工作 (获取描述文件与获取相机参数)

针对标准标定板可以直接调用官方提供描述文件,也可以自己生成描述文件后用PS文件打印

2,相机标定

(获取标定信息通过find_calib_object将标定信息添加到calibDataID中,通过"获取最终标定信息"将左相机,右相机,设置的参考位姿进行信息整合)其原理与前面单相机标定原理一样,单相机标定可以参考:如何做一个C#仿Halcon Calibration插件-CSDN博客

多相机标定可以参考Halcon 多相机统一坐标系(标定)_多相机标定统一坐标系-CSDN博客

3,显示相机标定信息

(双目标定用到的参数:左相机参数,右相机参数,右相机相对位姿这三组参数,其他为辅助鉴定标定效果)

二,验证

1,通过标定板图像进行数据验证

    RowsL := []
    ColsL := []
    RowsR := []
    ColsR := []
    for I := 1 to NumImages by 1
        select_obj (ImagesRectL, ImageRectifiedL, I)
        select_obj (ImagesRectR, ImageRectifiedR, I)
        find_caltab (ImageRectifiedL, CaltabL, CaltabFile, SizeGauss, MarkThresh, MinDiamMarks)
        find_marks_and_pose (ImageRectifiedL, CaltabL, CaltabFile, RectCamParL, StartThresh, DeltaThresh, MinThresh, Alpha, MinContLength, MaxDiamMarks, RCoordL, CCoordL, StartPoseL)
        find_caltab (ImageRectifiedR, CaltabR, CaltabFile, SizeGauss, MarkThresh, MinDiamMarks)
        find_marks_and_pose (ImageRectifiedR, CaltabR, CaltabFile, RectCamParR, StartThresh, DeltaThresh, MinThresh, Alpha, MinContLength, MaxDiamMarks, RCoordR, CCoordR, StartPoseR)
        RowsL := [RowsL,RCoordL]
        ColsL := [ColsL,CCoordL]
        RowsR := [RowsR,RCoordR]
        ColsR := [ColsR,CCoordR]
    endfor
    X := RowsR - RowsL
    EpipolarError := [mean(X),deviation(X)]

2,通过生成深度图像进行验证

2.1),加载图像并进行校正效果

map_image (Image, Map, ImagesRect)

2.2)生成深度图像与分值图像

binocular_distance (ImageRectifiedL, ImageRectifiedR, DistanceImage, ScoreImageDistance, RectCamParL, RectCamParR, RectLPosRectR, 'ncc', MaskWidth, MaskHeight, TextureThresh, MinDisparity, MaxDisparity, NumLevels, ScoreThresh, 'left_right_check', 'interpolation')

通过外部参数修改生成的深度图像效果

拟合平面,优化图像并获取最终高度范围内图像

图像优化可以参Halcon深度图高度测量

相关推荐
中游鱼44 分钟前
C# List 列表综合运用实例⁓Hypak原始数据处理编程小结
c#·hypack raw 数据处理·海鹰 hy1603 测深仪·lilst 数据去重复·list 数据转换
西猫雷婶1 小时前
python学opencv|读取图像(五十六)使用cv2.GaussianBlur()函数实现图像像素高斯滤波处理
python·opencv·计算机视觉
xiaokcehui1 小时前
深度学习与神经网络
人工智能·深度学习·神经网络
Watermelo6171 小时前
DeepSeek:全栈开发者视角下的AI革命者
人工智能·深度学习·神经网络·机器学习·语言模型·自然语言处理·transformer
bohu831 小时前
亚博microros小车-原生ubuntu支持系列:21 颜色追踪
人工智能·opencv·ubuntu·机器人·视觉检测·microros·视觉追踪
Dr.勿忘2 小时前
C#面试常考随笔12:游戏开发中常用的设计模式【C#面试题(中级篇)补充】
开发语言·unity·设计模式·面试·c#·游戏引擎
金融OG2 小时前
100.1 AI量化面试题:解释夏普比率(Sharpe Ratio)的计算方法及其在投资组合管理中的应用,并说明其局限性
大数据·人工智能·python·机器学习·金融
明晚十点睡2 小时前
2022ACMToG | 寻找快速的去马赛克算法
人工智能·python·深度学习·算法·机器学习·计算机视觉
繁华落尽,寻一世真情2 小时前
【AudioClassificationModelZoo-Pytorch】基于Pytorch的声音事件检测分类系统
人工智能·pytorch·分类
wzx_Eleven2 小时前
利用腾讯云cloud studio云端免费部署deepseek-R1
人工智能·云计算·腾讯云