Reverse-projection 2D points into 3D

放肆的年华 提交于 2019-12-03 05:11:11

问题


Suppose we have a 3d Space with a plane on it with an arbitary equation : ax+by+cz+d=0 now suppose that we pick 3 random points on that plane: (x0,y0,z0) (x1,y1,z1) (x1,y1,z1)

now i have a different point of view(camera) for this plane. i mean i have a different camera that will look at this plane from a different point of view. From that camera point of view these points have different locations. for example (x0,y0,z0) will be (x0',y0') and (x1,y1,z1) will be (x1',y1') and (x2,y2,z2) will be (x2',y2') from the new camera point of view.

So here is my a little hard question! I want to pick a point for example (X,Y) from the new camera point of view and tell where it will be on that plane. All i know is that 3 points and their locations on 3d space and their projection locations on the new camera view.


Do you know the coefficients of the plane-equation and the camera positions (along with the projection), or do you only have the six points? - Nils

i know the location of first 3 points. therefore we can calculate the coefficients of the plane. so we know exactly where the plane is from (0,0,0) point of view. and then we have the camera that can only see the points! So the only thing that camera sees is 3 points and also it knows their locations in 3d space (and for sure their locations on 2d camera view plane). and after all i want to look at camera view, pick a point (for example (x1,y1)) and tell where is that point on that plane. (for sure this (X,Y,Z) point should fit on the plane equation). Also i know nothing about the camera location.


回答1:


It is not possible to give an unambiguous solution to this problem. However, here's how I would extract the different solutions:

1) Solve for the camera position and direction using the P3P (Perspective-3-Point) algorithm from the original RANSAC paper, which give up to four possible feasible solutions (with the points in front of the camera).

2) Project a ray with the camera position as origin having (X,Y) as projection in the camera and calculate its intersection with the plane.




回答2:


You are asking how to intersect a line and a plane? See here http://paulbourke.net/geometry/pointlineplane/

ps. Your teacher knows this site!



来源:https://stackoverflow.com/questions/128430/reverse-projection-2d-points-into-3d

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!