【单目测距】结合目标检测与平面假设的单目摄像头测距方法

  • 引言:
    单目摄像头由于其成本低廉,易于部署等特性,在降低自动驾驶传感器成本上有着天然优势。然而,三维世界坐标系下的物体成像在二维平面后,往往损失了深度信息。要复原三维世界中目标的深度信息,往往需要设定一些限制条件。
    本文通过平面假设,使得通过二维目标检测得到的目标像素坐标能逆投影得到目标在世界坐标系下的坐标。

1. kitti数据集中坐标系的介绍

在这里插入图片描述

图一.kitti数据集采集车各坐标系图示

kitti数据集采集车各传感器坐标如图一所示,所有传感器均采用右手坐标系,我们将用到Cam2摄像头,并将激光雷达(Velodyne laserscanner)坐标系设置为世界坐标系,由图一可知,激光雷达的安装高度为1.73m


2.平面假设

我们假设车辆行驶在平坦的道路上,则道路上的障碍物将立足于同一平面,故这些障碍物的立足点在
世界坐标系下的Z坐标为定值,即 Z c o n s t = − 1.73 Z_{const}=-1.73 Zconst=1.73

【相机模型】相机投影关系我们知道世界坐标系中的点( [ X w , Y w , Z w ] T [X_w,Y_w,Z_w]^T [Xw,Yw,Zw]T)与像素坐标系下的点 [ u , v , 1 ] T [u,v,1]^T [u,v,1]T的投影关系为:

Z C Z_C ZC [ u v 1 ] \begin{bmatrix} u\\ v\\ 1\\ \end{bmatrix} uv1= [ f x 0 u 0 0 0 f y v 0 0 0 0 1 0 ] \begin{bmatrix} f_x&0&u_0&0\\ 0&f_y&v_0&0\\ 0&0&1&0\\ \end{bmatrix} fx000fy0u0v01000 [ R 3 X 3 T 3 X 1 O 1 ] \begin{bmatrix} R_{3X3}&T_{3X1}\\ O&1\\ \end{bmatrix} [R3X3OT3X11] [ X w Y w Z c o n s t 1 ] \begin{bmatrix} X_w\\ Y_w\\ Z_{const}\\ 1\\ \end{bmatrix} XwYwZconst1= [ m 11 m 12 m 13 m 14 m 21 m 22 m 23 m 24 m 31 m 32 m 33 m 34 ] \begin{bmatrix} m_{11}&m_{12}&m_{13}&m_{14}\\ m_{21}&m_{22}&m_{23}&m_{24}\\ m_{31}&m_{32}&m_{33}&m_{34}\\ \end{bmatrix} m11m21m31m12m22m32m13m23m33m14m24m34 [ X w Y w Z c o n s t 1 ] \begin{bmatrix} X_w\\ Y_w\\ Z_{const}\\ 1\\ \end{bmatrix} XwYwZconst1

其中:

  • [ f x 0 u 0 0 0 f y v 0 0 0 0 1 0 ] \begin{bmatrix} f_x&0&u_0&0\\ 0&f_y&v_0&0\\ 0&0&1&0\\ \end{bmatrix} fx000fy0u0v01000 为相机的内参矩阵,可通过标定得出;

  • [ R 3 X 3 T 3 X 1 O 1 ] \begin{bmatrix} R_{3X3}&T_{3X1}\\ O&1\\ \end{bmatrix} [R3X3OT3X11]为世界坐标系(本文为激光雷达坐标系)到相机坐标系的转换矩阵,可通过测量获得

  • [ u , v , 1 ] T [u,v,1]^T [u,v,1]T为目标立足点在像素坐标系下的像素坐标,可通过目标检测算法得到

上述转换矩阵等价于:

{ Z c u = m 11 X w + m 12 Y w + m 13 Z c o n s t + m 14 Z c v = m 21 X w + m 22 Y w + m 23 Z c o n s t + m 24 Z c = m 31 X w + m 32 Y w + m 33 Z c o n s t + m 34 \left\{ \begin{aligned} Z_cu & = & m_{11}X_w+m_{12}Y_w +m_{13}Z_{const} + m_{14} \\ Z_cv & = & m_{21}X_w+m_{22}Y_w +m_{23}Z_{const}+ m_{24} \\ Z_c & = & m_{31}X_w+m_{32}Y_w +m_{33}Z_{const} + m_{34} \\ \end{aligned} \right. ZcuZcvZc===m11Xw+m12Yw+m13Zconst+m14m21Xw+m22Yw+m23Zconst+m24m31Xw+m32Yw+m33Zconst+m34

三个未知数,三个方程,由此可解得 [ X w , Y w ] T [X_w,Y_w]^T [Xw,Yw]T


3.效果展示

在这里插入图片描述

  • 3
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值