qVP - `MetricPics3D`: Copyright 2009 Jeffrey M. Setterholm -0.200237038736E+03 0.200436282809E+03 -0.478673554974E-02 0.58758715673E+06 -0.360312737995E+04 0.360311218228E+04 -0.141166521578E+00 0.10602617358E+08 0.357527810566E+04 -0.357526968958E+04 -0.141594845769E+00 -0.10519795930E+08 0.797647382219E-03 -0.797647382219E-03 0.000000000000E+00 -0.23469284158E+01 EcefXyz = ^ hEcefQpix(4,4) * QvpPixels 0.618120444030E+01 0.974253566393E+01 -0.992202544124E+01 0.90035152122E+08 0.586689493093E+01 0.709143663629E+01 -0.726832048077E+01 0.66084823231E+08 0.191798884238E+00 -0.902037356122E+00 -0.616957919547E+01 0.23627246304E+08 0.106823947277E-03 0.901025436126E-03 -0.901911110990E-03 0.81395397552E+04 QvpPixels= ^inv(hEcefQpix(4,4)) * EcefXyz 0.834994924662E-01 0.704291205632E+00 -0.704983497983E+00 0.63623134682E+07 0.996220364090E+00 -0.759883366464E-01 0.420803857683E-01 -0.28165894807E+06 -0.239336777487E-01 -0.705832607892E+00 -0.707974228843E+00 -0.21052465711E+05 0.000000000000E+00 0.000000000000E+00 0.000000000000E+00 0.10000000000E+01 SocUvw = ^ hSocEcef(4,4) * EcefXyz Internal qVP geometry (+X:in,+Y:right,+Z:down): 8392 5572 -pixels in image 0.839200000000E+03 0.111440000000E+04 0.200000000000E+00 -extent/PixSize -0.781655186854E+03 0.104307937572E+04 -0.329458708307E+03 -left eye loc. -0.781655186854E+03 0.129381673719E+04 -0.329458708307E+03 -right eye loc. 0.000000000000E+00 0.000000000000E+00 -Shift L-eye subimage (pixels) 0.000000000000E+00 0.000000000000E+00 -Shift R-eye subimage (pixels) (`Shift`:provides minor adjustment by editing these values in the .jpg file.) 2010.05.11.1722.21 -qVP creation date & time P0102011 2 27323 2006.04.23.1940:02.83 -left eye: Run,Camera,Frame,Date P0102011 2 27328 2006.04.23.1940:06.23 -right eye: Run,Camera,Frame,Date Source images-with-geodesy: courtesy of GeoSpan Corp. All distances are in meters. Pixel:(0.,0.) is the image upper-left corner ECEF: native-GPS WGS-84 Earth-Centered,Earth-Fixed coords. Numerical Example (crossed-eye): Select the midpoint of the stereo pixel field: QvpPixels:(iLeft,iRight,jDown,1)= 6294.00 2098.00 2786.00 1.00 EcefXyz = hEcefQpix(4,4) * QvpPixels ...remember to divide homog. outputs by the 4th component. EcefXyz:(X,Y,Z,1)= -252202.780 -4516530.303 4481694.176 1.000 meters WGS-84 LLH:(Lat,Lon,Ht,1.)= 44.92600519231 -93.19607373721 232.436 1.000 Elevation - with respect to the Ellipsoid, not the Geoid. & Reversing... (it works!...) EcefXyz:(X,Y,Z,1)= -252202.780 -4516530.303 4481694.176 1.000 meters QvpPixels= inv(hEcefQpix(4,4)) * EcefXyz QvpPixels:(iLeft,iRight,jDown,1)= 6294.00 2098.00 2786.00 1.00 Note: QvpPixels=(0.,0.,0.,1.) is the image upper-left-corner Second example: Move the left-eye pixel 9.99 right QvpPixels:(iLeft,iRight,jDown,1)= 6303.99 2098.00 2786.00 1.00 EcefXyz = hEcefQpix(4,4) * QvpPixels EcefXyz:(X,Y,Z,1)= -252193.544 -4516535.544 4481698.799 1.000 meters WGS-84 LLH:(Lat,Lon,Ht,1.)= 44.92600466661 -93.19595323991 239.041 1.000 Final example: If the center of the user-defined Gameing Area is: WGS-84 LLH:(Lat,Lon,Ht,1.)= 44.92280000000 -93.19670000000 230.000 1.000 EcefXyz:(X,Y,Z,1)= -252266.078 -4516776.976 4481440.247 1.000 meters QvpPixels:(iLeft,iRight,jDown,1)= 6019.00 1823.00 4563.00 1.00 Corresponding points are meant to be in the same pixel row. Expressing the same point w.r.t. the Stereo-optic-center (Soc) SocUvw = hSocEcef(4,4) * EcefXyz SocUvw:(U,V,W,1)= 781.655 -1168.448 329.459 1.000 meters !--- Example completed: @ 2010.05.11.1723.02 L