双目标定与生成深度图

基于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深度图高度测量

相关推荐
严文文-Chris11 分钟前
【人工智能AI、机器学习ML、深度学习DL、基础模型FM、LLM、GPT、Generative AI 分别是什么?他们之间的关系是什么?】
人工智能·深度学习·机器学习
Tom·Ge16 分钟前
Spring AI 入门指南:三步将AI集成到Spring Boot应用
人工智能·spring boot·spring
高光视点25 分钟前
2025中国生物制造科技创新论坛为何“花落”常德?
人工智能·科技·制造
梓羽玩Python1 小时前
3分钟搭建 MCP 交易平台,这个开源项目帮你搞外快!
人工智能·github·产品
柠檬味拥抱1 小时前
面向不确定环境的AI Agent鲁棒决策模型设计与实现
人工智能
zxsz_com_cn1 小时前
机床智能健康管理系统:基于多源数据融合与边缘智能的技术实现
人工智能
盼小辉丶1 小时前
PyTorch生成式人工智能——PatchGAN详解与实现
人工智能·pytorch·生成模型
柠檬味拥抱1 小时前
从Q-Learning到DQN-AI Agent自主决策能力的进化
人工智能
二向箔reverse1 小时前
CNN 中 3×3 卷积核等设计背后的底层逻辑
人工智能·神经网络·cnn
aneasystone本尊2 小时前
GraphRAG 索引构建概述
人工智能