激光雷达点云投影到图像平面

将激光雷达点云投影到图像平面涉及几何变换和相机模型的应用。以下是该过程的基本原理:

1. 坐标系转换

激光雷达生成的点云通常位于激光雷达的坐标系中,而图像则在相机坐标系中。为了将点云投影到图像上,首先需要将点云从激光雷达坐标系转换到相机坐标系。

假设激光雷达坐标系中的一个点表示为

X lidar , Y lidar , Z lidar \] \[X_{\\text{lidar}}, Y_{\\text{lidar}}, Z_{\\text{lidar}}\] \[Xlidar,Ylidar,Zlidar

,我们使用一个外参矩阵 (T)(通常是一个4x4的齐次变换矩阵),将其转换到相机坐标系:

X cam Y cam Z cam 1 \] = T ⋅ \[ X lidar Y lidar Z lidar 1 \] \\begin{bmatrix} X_{\\text{cam}} \\\\ Y_{\\text{cam}} \\\\ Z_{\\text{cam}} \\\\ 1 \\end{bmatrix} =T \\cdot \\begin{bmatrix} X_{\\text{lidar}} \\\\ Y_{\\text{lidar}} \\\\ Z_{\\text{lidar}} \\\\ 1 \\end{bmatrix} XcamYcamZcam1 =T⋅ XlidarYlidarZlidar1 其中,(T) 包含了旋转和平移的信息。 #### 2. 相机投影模型 在得到相机坐标系下的点云坐标 \[ X cam , Y cam , Z cam \] \[X_{\\text{cam}}, Y_{\\text{cam}}, Z_{\\text{cam}}\] \[Xcam,Ycam,Zcam\]后,下一步是将这些三维坐标投影到二维图像平面。相机投影通常使用[针孔相机模型](https://blog.csdn.net/walking_roll/article/details/119571511),其基本公式如下: \[ u v \] = 1 Z cam \[ f x 0 c x 0 f y c y \] ⋅ \[ X cam Y cam Z cam \] \\begin{bmatrix} u \\\\ v \\end{bmatrix} =\\frac{1}{Z_{\\text{cam}}} \\begin{bmatrix} f_x \& 0 \& c_x \\\\ 0 \& f_y \& c_y \\end{bmatrix} \\cdot \\begin{bmatrix} X_{\\text{cam}} \\\\ Y_{\\text{cam}} \\\\ Z_{\\text{cam}} \\end{bmatrix} \[uv\]=Zcam1\[fx00fycxcy\]⋅ XcamYcamZcam 其中: * (u) 和 (v) 是图像平面上的像素坐标。 * (f_x) 和 (f_y) 是相机的焦距(在像素单位下)。 * (c_x) 和 (c_y) 是图像中心的坐标(主点)。 ![相机针孔模型](https://i-blog.csdnimg.cn/direct/b472e14588d74a1880d84cc3d2ae6963.png) #### 3. 应用畸变校正(如果有) 相机镜头的畸变会导致投影后的点出现偏差,因此通常会应用畸变校正。常见的畸变包括径向畸变和切向畸变,可以通过预先计算的畸变系数来校正。 #### 4. 点云到图像的映射 通过上述步骤,每个激光雷达点都可以在图像平面上找到一个对应的像素坐标 ((u, v))。这些像素坐标表示激光雷达点在图像中的投影位置。 在相机模型中, ( c_x ) 和 ( c_y ) 通常表示图像平面上的主点(principal point)的坐标。主点是相机光学中心在图像平面上的投影点,它通常接近图像的几何中心,但在实际相机中可能会有一些偏移。 #### 详细解释: * **主点 ( c_x, c_y )**:这是图像平面上光轴与平面的交点的坐标,也称为光学中心。它通常由相机的内参矩阵(Intrinsic Matrix)中的两个参数表示。 * **相机内参矩阵** :在相机标定过程中,我们可以得到一个 3x3 的内参矩阵,它的形式如下: K = ( f x 0 c x 0 f y c y 0 0 1 ) K = \\begin{pmatrix} f_x \& 0 \& c_x \\\\ 0 \& f_y \& c_y \\\\ 0 \& 0 \& 1 \\end{pmatrix} K= fx000fy0cxcy1 其中: * f_x, f_y 是相机在 x 和 y 方向的焦距,通常与相机的焦距和像素大小相关。 * c_x, c_y 是主点的坐标。

相关推荐
Godspeed Zhao2 小时前
具身智能中的传感器技术40.2——事件相机0.2
人工智能·科技·数码相机·机器学习·事件相机
一起搞IT吧15 小时前
相机Camera日志实例分析之二十:相机Camx【照片后置4800/5000/6400万拍照】单帧流程日志详解
android·嵌入式硬件·数码相机·智能手机
格林威1 天前
3D相机视觉检测:环境光太强,结构光点云全是噪点怎么办?
开发语言·人工智能·数码相机·计算机视觉·3d·视觉检测·工业相机
格林威1 天前
线阵工业相机:线阵图像出现“波浪纹”,是机械振动还是编码器问题?
开发语言·人工智能·数码相机·计算机视觉·视觉检测·工业相机·线阵相机
格林威1 天前
工业视觉检测:单样本学习 vs 传统监督学习
人工智能·深度学习·数码相机·学习·计算机视觉·视觉检测·工业相机
格林威1 天前
工业视觉检测:两大主流异常检测开源框架深度对比(PatchCore vs SPADE)
开发语言·人工智能·深度学习·数码相机·计算机视觉·视觉检测·工业相机
格林威1 天前
线阵工业相机:如何计算线阵相机的行频(Line Rate)?公式+实例
开发语言·人工智能·数码相机·算法·计算机视觉·工业相机·线阵相机
格林威2 天前
工业视觉项目:如何与客户有效沟通验收标准?
人工智能·数码相机·计算机视觉·视觉检测·机器视觉·工业相机·视觉项目
科研前沿2 天前
什么是时空融合技术?
大数据·人工智能·数码相机·算法·重构·空间计算
格林威2 天前
工业视觉检测:提供可视化UI调试工具的实现方式是什么?
开发语言·人工智能·数码相机·ui·计算机视觉·视觉检测·工业相机