当前位置: 首页 > article >正文

【MLP-BEV(10)】BEVPooling V1和BEVPooling V2的view_transformer,进行鱼眼图片实践

文章目录

  • 先说说 BEVPoolv1
      • 步骤1:3D点生成
      • 步骤2 2D特征采样和BEV特征生成
      • 特点
  • 再谈谈BEVPoolv2
      • 步骤1:3D点生成
      • 步骤2: 计算索引关系
      • 步骤3: `voxel_pooling`计算
  • 鱼眼图片进行实践
    • 步骤1、3D点生成(基于Kannala-Brandt 进行调整)
    • 步骤2、2D特征采样和BEV特征生成
        • (1) 体素化 (Voxelization)
        • (2) 特征散射 (Scatter Operation)
  • 补充:Kannala-Brandt 模型简短说明
  • 参考

先说说 BEVPoolv1

BEVPoolv2 是 BEVPoolv1 的优化版本,其优化了图像特征到 BEV 特征的转换过程,实现了在计算和存储方面极大的降低。BEVPoolv1 (左)和 BEVPoolv2(右) 的示意图如下:

在这里插入图片描述

BEVPoolv1 的主要计算流程如下:

步骤1:3D点生成

利用get_geometry() 计算图像中每个像素对应的3D空间点在自车(Ego)坐标系下的坐标,即建立 2D像素坐标 ↔ 3D自车坐标 的映射关系。
输入(典型参数):

  • rots:相机到自车的旋转矩阵 [B, N, 3, 3]
  • trans:相机到自车的平移向量 [B, N, 3]
  • intrins:相机内参矩阵 [B, N, 3, 3]
  • post_rots / post_trans:图像后处理(如裁剪/缩放)的变换矩阵
  • depth_假设:离散深度值(如 [4.0, 5.0, ..., 45.0]

输出

  • points:3D点坐标 [B, N, D, H, W, 3]
    • B:Batch大小
    • N:相机数量
    • D:深度采样数
    • H/W:特征图高度/宽度
    • 3:自车坐标系下的 (x, y, z) 坐标

首先执行(1) 生成视锥体(Frustum)

  • 预定义一个 3D视锥体网格(Frustum),表示相机视野范围内的空间采样点:
    # 伪代码:生成像素坐标 + 深度假设的网格
    # frustum 是视锥空间的点集合,初始形状为 (B, N_cams, D, H, W, 3)。
    frustum = create_frustum(depth_bins, H, W)  # [D, H, W, 3]
    
    • 每个点的初始坐标为 (u, v, d)(像素坐标 + 深度)。

其次执行(2) 逆投影到3D相机坐标系

  • 通过相机内参的逆变换,将像素坐标转换为 归一化相机坐标
    [ x c a m y c a m 1 ] = K − 1 ⋅ [ u v 1 ] \begin{bmatrix} x_{cam} \\ y_{cam} \\ 1 \end{bmatrix} = K^{-1} \cdot \begin{bmatrix} u \\ v \\ 1 \end{bmatrix} xcamycam1 =K1 uv1
  • 乘以深度值得到 3D相机坐标
    P c a m = [ x c a m ⋅ d y c a m ⋅ d d ] P_{cam} = \begin{bmatrix} x_{cam} \cdot d \\ y_{cam} \cdot d \\ d \end{bmatrix} Pcam= xcamdycamdd
# 使用深度信息&#

http://www.kler.cn/a/612301.html

相关文章:

  • Android Token的原理和本地安全存储
  • 智能遥感新质生产力暨DeepSeek、Python、OpenCV驱动的空天地数据识别与计算及15个行业标杆案例
  • 代码随想录算法训练营第五十八天 | 拓扑排序精讲 dijkstra(朴素版)精讲
  • css 实现闪烁光标
  • 一套SaaS多租户医疗云his源码,基于云计算的医院信息管理系统(云HIS)
  • Ribbon负载均衡的深度解析与应用
  • 【数学建模】动态规划算法(Dynamic Programming,简称DP)详解与应用
  • 金融级密码管理器——生物特征密钥绑定方案
  • docker-compese 启动mysql8.0.36与phpmyadmin,并使用web连接数据库
  • SSRF服务器请求伪造攻击
  • 设计秒杀系统(高并发的分布式系统)
  • 【数据结构】顺序表-元素去重
  • Flutter开发中如何避免UI显示溢出的问题
  • 使用wireshark对QQ进行抓包的详细过程
  • 【数学建模】(启发式算法)遗传算法:自然选择的计算模型
  • 深度解读 AWS IAM:身份访问管理与安全的核心纽带
  • gitlab回退到指定提交记录
  • 量子计算与人工智能的融合:下一代算力革命
  • 虚拟机(二):Android 篇
  • 游戏引擎学习第185天