欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > 双目标定与生成深度图

双目标定与生成深度图

2025/2/7 3:16:13 来源:https://blog.csdn.net/2202_75557553/article/details/145427637  浏览:    关键词:双目标定与生成深度图

基于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 1select_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]endforX := RowsR - RowsLEpipolarError := [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深度图高度测量

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com