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
相关推荐
地平线开发者4 小时前
征程 6|工具链量化简介与代码实操
算法·自动驾驶
阿维同学5 小时前
自动驾驶关键算法深度研究
人工智能·算法·自动驾驶
mit6.8241 天前
[vroom] docs | 输入与问题定义 | 任务与运输工具 | json
c++·自动驾驶
Zhichao_971 天前
【ROS2 自动驾驶学习】02-安装ROS2及其配套工具
自动驾驶·ros2
Mr.Winter`1 天前
轨迹优化 | 基于激光雷达的欧氏距离场ESDF地图构建(附ROS C++仿真)
c++·人工智能·机器人·自动驾驶·ros·ros2·具身智能
LCG元2 天前
自动驾驶感知模块的多模态数据融合:时序同步与空间对齐的框架解析
人工智能·机器学习·自动驾驶
Mr.Winter`4 天前
障碍感知 | 基于3D激光雷达的三维膨胀栅格地图构建(附ROS C++仿真)
人工智能·机器人·自动驾驶·ros·具身智能·环境感知
数字芯片实验室16 天前
特斯拉HW5要上3nm工艺,自动驾驶芯片的军备竞赛
人工智能·机器学习·自动驾驶
小虎卫远程打卡app16 天前
自动驾驶避障思考
人工智能·chatgpt·自动驾驶
点云SLAM16 天前
PyTorch 中torch.clamp函数使用详解和实战示例
人工智能·pytorch·python·自动驾驶·slam·3d深度学习·张量操作