BEV:针孔相机坐标转换

一 、背景

自动驾驶中经常涉及到不同坐标系之间的坐标转换,在BEV方案中用的比较多的是自车坐标到图像坐标的转换,系统整理了一下坐标转换过程流程。

二 、方法

旋转矩阵计算方法:

translation: 平移参数['x', 'y', 'z']

高阶畸变模型参数:

bash 复制代码
        distortion = torch.tensor(distortion)
        k1 = distortion[:, 0].unsqueeze(-1).to(x.device)
        k2 = distortion[:, 1].unsqueeze(-1).to(x.device)
        k3 = distortion[:, 2].unsqueeze(-1).to(x.device)
        p1 = distortion[:, 3].unsqueeze(-1).to(x.device)
        p2 = distortion[:, 4].unsqueeze(-1).to(x.device)
        k4 = distortion[:, 5].unsqueeze(-1).to(x.device)
        k5 = distortion[:, 6].unsqueeze(-1).to(x.device)
        k6 = distortion[:, 7].unsqueeze(-1).to(x.device)

高阶畸变模型加畸变公式:

bash 复制代码
        r2 = x**2 + y**2
        x_temp = x * (1 + k1 * r2 + k2 * r2**2 + k3 * r2**3) / (1 + k4 * r2 + k5 * r2**2 + k6 * r2**3) + 2 * p1 * x * y + p2 * (r2 + 2 * x**2)
        y_temp = y * (1 + k1 * r2 + k2 * r2**2 + k3 * r2**3) / (1 + k4 * r2 + k5 * r2**2 + k6 * r2**3) + p1 * (r2 + 2 * y**2) + 2 * p2 * x * y
相关推荐
Godspeed Zhao6 小时前
自动驾驶中的传感器技术46——Radar(7)
人工智能·机器学习·自动驾驶
WWZZ202517 小时前
视觉SLAM第10讲:后端2(滑动窗口与位子图优化)
c++·人工智能·后端·算法·ubuntu·机器人·自动驾驶
地平线开发者2 天前
征程 6 灰度图部署链路介绍
人工智能·算法·自动驾驶·汽车
地平线开发者2 天前
征程 6 | 灰度图部署链路介绍
算法·自动驾驶
地平线开发者2 天前
手撕大模型|KVCache 原理及代码解析
算法·自动驾驶
byzy2 天前
【论文笔记】RadarOcc: Robust 3D Occupancy Prediction with 4D Imaging Radar
论文阅读·深度学习·自动驾驶
auto-mooc2 天前
到底什么是智能网联汽车??第一期——感知
自动驾驶·汽车·autosar·车载通信·智能网联汽车·域控制器
Uzuki3 天前
目标检测 | 基于Weiler–Atherton算法的IoU求解
目标检测·机器学习·自动驾驶·图形学
地平线开发者3 天前
工具链部署实用技巧 7|模型设计帧率推理时耗时与带宽分析
算法·自动驾驶
byzy3 天前
【论文笔记】SpaRC: Sparse Radar-Camera Fusion for 3D Object Detection
论文阅读·深度学习·目标检测·计算机视觉·自动驾驶