代码开源 | 深度相机是如何标定的?

点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

71f152b3d9c9c2adee7d98137cba8a1b.jpeg

作者丨dianyunPCL

来源丨 点云PCL

文章:Robust Intrinsic and Extrinsic Calibration of RGB-D Cameras

作者:Filippo Basso, Emanuele Menegatti, and Alberto Pretto.

编译:点云PCL

代码:

https://github.com/iaslab-unipd/rgbd_calibration

摘要

常见的消费级RGB-D相机具有粗略的内参和外参校准数据的,通常无法满足许多机器人应用所需的精度要求。我们的校准方法基于一种新颖的双分量测量误差模型,该模型统一了基于不同技术RGB-D相机的误差源,如结构光3D相机和飞行时间相机,提出的的标定模型使用两种不同的参数实现对图像的矫正,这两种图通过控制函数的线性组合提供校准读数,非线性优化算法在单个优化步骤中细化相机深度传感器刚性位移以及上述参数,确保结果高度可靠。代码开源:

https://github.com/iaslab-unipd/rgbd_calibration。

这个库的依赖项有Eigen,PCL,OpenCV,Ceres Solver。

主要贡献

本文的主要贡献如下:

  • 一个通用的、可实现的测量误差模型,该模型以统一的方式很好地描述了不同深度传感器类型的误差。

  • 一种空间和参数不畸变图像,以紧凑有效的方式模拟结构光深度传感器的畸变模型。

  • 一种新的优化框架,在估计摄像机深度传感器刚性位移以及描述深度测量系统误差的参数模型。

  • 提出方法的开源实现,集成在ROS(机器人操作系统)框架内。

主要内容

该方法提出了一种基于对极几何和光束平面约束的联合优化框架,用于同时估计RGB-D相机的内参和外参。该方法在标定过程中使用了多个视角的图像对和对应的深度图,并通过最小化重投影误差来优化相机的内外参。同时,为了增强鲁棒性,该方法还引入了离群值剔除和稀疏性约束,以处理不准确的匹配和噪声。

2ae2a838eea59bd47a84e56dd2f62468.png

图1 标定算法流程

实验结果表明,该方法在各种实际场景和数据集上都能够获得准确而稳健的内参和外参标定结果。与传统方法相比,该方法在标定精度和鲁棒性方面都有显著的提升。此外,该方法还能够处理部分遮挡和异常情况,具有较强的鲁棒性和适应性。

0c6a663fcc8e8b62056b95f3902c9754.jpeg

图2 四个传感器的平面误差,对于SL传感器,所提出的方法能够显著减小测量点与最佳拟合数据的平面之间的距离。对于Kinect 2传感器,差异受到随距离增加而出现的随机噪声的限制。

不同距离的一面墙的点云矫正后的结果

950bc91378b26cb8280afd96192c86ef.png

校准后的RGB图与深度图配准与使用默认校准参数生成RGB图与深度图配准结果的对比:

4c99b149d5997d952a6209144bc47124.png

对三个经过测试的SL深度传感器和Kinect 2 ToF相机的全局误差进行了实验,说明了原始点云的误差(Original),去畸变步骤后的误差(Undistorted),以及在去畸变和全局误差校正步骤后的误差(Final)。对于三个SL传感器,为了进一步评估所提出方法的有效性,在(a)中使用设备校准了深度传感器,而在(b)中我们使用了高分辨率相机。

48aee7ac154fb37b874556841fe8a983.jpeg

总结

本文提出了一种通用RGB-D传感器标定的新方法,开源的校准程序仅要求用户在最小结构的环境中收集数据,并在输出中提供传感器的内参和外参数据,通过两个不同的分量,一个畸变误差和一个全局系统误差来概括深度传感器误差,畸变误差使用每像素参数无畸变图建模。在算法的第一阶段进行估计,在算法的第二阶段,在鲁棒优化框架内,估计深度系统误差以及摄像机深度传感器对准,文章用几个传感器进行了详尽的实验,结果表明,该方法提供了高度精确的结果,优于其他最先进的方法。

添加小助理微信dddvisiona, 即可加入「三维重建」微信群。

852a850e6bdbd123dcbc661962bc3a7e.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值