qVP - `MetricPics3D`: Copyright 2009 Jeffrey M. Setterholm -0.213033326347E+03 0.213232928955E+03 -0.981385250395E-03 0.20776983562E+06 -0.381777666693E+04 0.381776708443E+04 -0.141311754863E+00 0.37301577060E+07 0.378828329407E+04 -0.378827511027E+04 -0.141527470198E+00 -0.37007244351E+07 0.845175289479E-03 -0.845175289479E-03 0.000000000000E+00 -0.82557862527E+00 EcefXyz = ^ hEcefQpix(4,4) * QvpPixels 0.521163151194E+01 0.225075322562E+01 -0.228346133736E+01 0.21716823729E+08 0.513612985429E+01 0.140214514416E+01 -0.143562315282E+01 0.14063107614E+08 0.145057155947E+00 -0.162665080616E+01 -0.544260047825E+01 0.17083822922E+08 0.772938317611E-04 0.868751393201E-03 -0.867963221324E-03 0.78341802157E+04 QvpPixels= ^inv(hEcefQpix(4,4)) * EcefXyz 0.628163642744E-01 0.706030516745E+00 -0.705389972854E+00 0.63668045303E+07 0.998013039220E+00 -0.479125021897E-01 0.409190136712E-01 -0.14816099440E+06 -0.490692625197E-02 -0.706558774313E+00 -0.707637350990E+00 -0.21058573783E+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): 4320 4456 -pixels in image 0.432000000000E+03 0.891200000000E+03 0.200000000000E+00 -extent/PixSize -0.812695694385E+03 0.213091782210E+02 -0.313176400910E+03 -left eye loc. -0.812695694385E+03 0.257946479961E+03 -0.313176400910E+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.) 2009.11.19.1003.19 -qVP creation date & time P0102011 5 27301 2006.04.23.1939:49.03 -left eye: Run,Camera,Frame,Date P0102011 5 27306 2006.04.23.1939:52.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)= 3240.00 1080.00 2228.00 1.00 EcefXyz = hEcefQpix(4,4) * QvpPixels ...remember to divide homog. outputs by the 4th component. EcefXyz:(X,Y,Z,1)= -252168.765 -4516565.086 4481660.995 1.000 meters WGS-84 LLH:(Lat,Lon,Ht,1.)= 44.92558517160 -93.19561901656 232.251 1.000 Elevation - with respect to the Ellipsoid, not the Geoid. & Reversing... (it works!...) EcefXyz:(X,Y,Z,1)= -252168.765 -4516565.086 4481660.995 1.000 meters QvpPixels= inv(hEcefQpix(4,4)) * EcefXyz QvpPixels:(iLeft,iRight,jDown,1)= 3240.00 1080.00 2228.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)= 3249.99 1080.00 2228.00 1.00 EcefXyz = hEcefQpix(4,4) * QvpPixels EcefXyz:(X,Y,Z,1)= -252167.839 -4516569.915 4481665.891 1.000 meters WGS-84 LLH:(Lat,Lon,Ht,1.)= 44.92558605015 -93.19560389563 239.085 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)= 2760.00 600.00 3760.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)= 812.696 -139.628 313.176 1.000 meters !--- Example completed: @ 2009.11.19.1003.54 L