将点云投影到2D
问题描述:
半径为r
的球体内有一个点云,这些点的共同系统位于球体的中心。这个想法是从这个云层的许多角度来“拍照”这个云。 “相机”位置取决于图像中显示的角度θ(方位角)和角度(高程)。我至少需要10000张图片或观点。将点云投影到2D
我该如何处理?
我做:
继this link我投射点每架飞机,因为我还需要visulize它们3D。就像这样:
所以我谁属于“照片”,但仍与原coordenate系统的平面投影点的coordenates。
的平面被定义为:
U = {-sin(theta), cos(theta), 0}
V = {cos(theta)*sin(phi), sin(theta)*sin(phi), cos(phi)}
Center = {cos(theta)*cos(phi), sin(theta)*cos(phi), sin(phi)}*r
但我阻塞从3D传递到2D。
答
每一个点在平面自己的基础[U, V]
投影坐标P
的被
[x', y'] = [dot(P - Center, U), dot(P - Center, V)]
给这个转换为世界坐标简单地做
world_coord = Center + U * x' + V * y'
(让我知道如果我误解了你的问题)
我是投票结束这个问题作为题外话题,因为它是关于线性代数/坐标系变换/ [math.se]而不是直接关于编程或软件开发。 – Pang