FROM PHOTO
Source Image:
Old town hall square, Prague.
From Nathan Shnidman's home page http://www.cag.lcs.mit.edu/~naters/images/Prague/page_01.htm
digitize:
still image of a new view:
FROM PAINTING
Source Image:
Interior of Pantheon
From www.byui.edu/Ricks/employee/ DAVISR/HumPix/
Basic Ideas in calculating the 3D positions
Same Z:
if the new point is not on the reference point, we can find it's X, Y position by the following method.
1.find b1 by projecting the known point to the reference plane ( we know X, Y position of the known point)
2. find v by intersecting line (xVanish X yVasnish) and line (known pt X new pt)
3. intersecting (zVanishing Xnew pt) and ( v X b1) to get b0
b0 is the new point projected onto the reference plane. So it has the same X, Y position in the 3D space as the new point.
We can find b0.X and b0.Y by using the homography calculated earlier.
Same X Y
1. rp = the reference height point
2. b = rp projected onto the reference plane
3. we want to find t
if the new point has the same X, Y position as rp, then t = new point
else we have to find t by setting t0 = new point and b0 = known point projected to the reference plane and use the similar method as described in SameZ method
to find t
4. use cross ratio to find t.Z = referenceHeight * ( ( ||t-b|| * ||Vz-rp||) / (||rp-b|| * ||Vz-t||) )