【BEV】3D视觉 PRELIMINARY

这里的知识来自于论文 Delving into the Devils of Bird's-eye-view Perception: A Review, Evaluation and Recipe 的 Appendix B.1

部分来自 这篇文章

从透视图转向鸟瞰图。(Xw、Yw、Zw)、(Xc、Yc、Zc)表示世界World坐标和相机Camera坐标, ( X i 、 Y i ) (X_i、Y_i) (Xi、Yi)、(U、V)表示图像坐标和像素坐标。由于图像坐标系和像素坐标系处于同一平面,故两者之间的差异在于坐标原点的位置和单位。像素坐标系的原点在图像坐标系的左上角,同时像素坐标系的单位为像素。

故两个坐标系之间的变换满足
u = x d x + u 0 , v = y d y + v 0 u=\frac{x}{d_x}+u_0,v=\frac{y}{d_y}+v_0 u=dxx+u0,v=dyy+v0

dx,dy表示像素坐标系中每个像素点的宽和高 ,而图像坐标系原点在像素坐标系中的横纵坐标分别为 u 0 , v 0 u_0, v_0 u0,v0。

从BEV平面上升起一根柱子。P代表柱子上的3D点, P ′ P^{'} P′代表P相应在相机视角上的投影点。

P, P ′ P^{'} P′分别对应于柱上的三维点和摄像机视图上投影的2D点。

给定P的世界坐标和相机的内在参数和外在参数,可以得到 P ′ P^{'} P′的像素坐标。

显式BEV特征构造通常需要基于三维到二维投影对局部图像视图特征进行索引。上图显示BEVFormer的视角转换。一根柱子从BEV平面升起,柱子内的一个三维点被投影到相机视图上。

投影过程涉及到世界World、相机Camera、图像Image和像素Pixel坐标系之间的转换。

从世界坐标到相机坐标的转换是一种刚性变换,只需要平移和旋转(更详细的可以看上面的博客)。

设 P w = x w 、 y w 、 z w , 1 、 P c = x c 、 y c 、 z c , 1 P_w = x_w、y_w、z_w,1、P_c = x_c、y_c、z_c,1 Pw=xw、yw、zw,1、Pc=xc、yc、zc,1分别为一个三维点P在世界坐标和相机坐标中的同质表示。它们之间的关系可以描述如下:
R,T分别表示旋转矩阵和平移矩阵。

相关推荐
清风笑烟语17 小时前
rustfs 集群部署
3d
地平线开发者20 小时前
BEVdet模型解析
算法·自动驾驶
还是大剑师兰特21 小时前
Unity 从零搭建简易3D场景(新手分步教程)
3d·unity·游戏引擎
EQ-雪梨蛋花汤1 天前
Android 3D 开发教程(三):Sceneform-EQR 配置 PBR 材质、光照、相机与实时阴影
android·3d·材质
弈语道破AI1 天前
3D渲染不再熬时间!即梦 Seedance 2.5 具备3D白模渲染功能的AI视频生成工具
人工智能·3d·音视频
答案—answer1 天前
VibeCoding 能做到什么程度?我用它做了一座 3D 数字博物馆
3d·ai编程·threejs·vibecoding
玖玥拾2 天前
Unity3D RPG 入门项目(四)背包拖拽、物品悬浮提示、项目开发思维
3d·unity·游戏引擎
cyadyx3 天前
【Three.js】Three.js 中加载 3D 模型
前端·javascript·3d
chaoyuanl3 天前
悬空玻璃剧场源头厂家选型全解析|270°裸眼3D悬空玻璃剧场投资避坑指南
大数据·人工智能·3d·xr·娱乐·mr
在下胡三汉3 天前
GLTF vs OBJ vs FBX vs GLB:选择合适的 3D 文件格式,怎么获取下载
3d