假设我们有一个带有平面的3d空间,其中有一个任意方程:ax + by + cz + d = 0 现在假设我们在该平面上选取3个随机点:(x0,y0,z0)(x1,y1,z1)(x1,y1,z1)
现在我对这架飞机有不同的观点(相机)。我的意思是我有一个不同的相机,从不同的角度来看这个飞机。从相机的角度来看,这些点具有不同的位置。例如(x0,y0,z0)将是(x0',y0') 从新的相机角度来看,(x1,y1,z1)将是(x1',y1')和(x2,y2,z2)将是(x2',y2')。
所以这是我的一个小问题!我想从新的摄像机视角中选择一个例如(X,Y)的点,并告诉它在该平面上的位置。我所知道的是3个点及其在3d空间上的位置以及它们在新摄像机视图上的投影位置。
您知道平面方程的系数和相机位置(以及投影),还是只有六个点? - 尼尔斯
我知道前3分的位置。因此我们可以计算出平面的系数。所以我们确切地知道了飞机的位置(0,0,0)。然后我们有相机只能看到积分!因此,相机唯一看到的是3点,它也知道它们在3d空间中的位置(并确保它们在2d摄像机视图平面上的位置)。毕竟我想看相机视图,选择一个点(例如(x1,y1))并告诉那个平面上的那个点。 (当然,这个(X,Y,Z)点应该适合平面方程)。此外,我对相机位置一无所知。
答案 0 :(得分:1)
无法对此问题给出明确的解决方案。但是,这是我如何提取不同的解决方案:
1)使用原始RANSAC paper中的P3P(Perspective-3-Point)算法求解摄像机位置和方向,该算法最多可提供四种可行解决方案(相机前面的点)
2)投影相机位置为原点的光线,在相机中投影(X,Y)作为投影并计算其与平面的交点。
答案 1 :(得分:0)
你问的是如何交叉直线和平面? 见http://paulbourke.net/geometry/pointlineplane/
PS。你的老师知道这个网站!