function [XYin3D] = BackProject2DTrajTo3D( TrajByFrame, offsetForFrameNums, Kbig, Rbig, Tbig ) % Use first and last known 2D locations of this Traj to compute 3D with % greatest disparity. iBegin = 1; iEnd = size(TrajByFrame,1); %iCentral = ceil( iEnd / 2); frameNumCur = TrajByFrame(iBegin, 1); iInBig = frameNumCur - offsetForFrameNums; Pa = Kbig(:,:, iInBig ) * Rbig(:,:, iInBig ) * [eye(3) -Tbig(:,:, iInBig )]; xa = TrajByFrame(iBegin, 2:3)'; frameNumCur = TrajByFrame(iEnd, 1); iInBig = frameNumCur - offsetForFrameNums; Pb = Kbig(:,:, iInBig ) * Rbig(:,:, iInBig ) * [eye(3) -Tbig(:,:, iInBig )]; xb = TrajByFrame(iEnd, 2:3)'; [XYin3D, res] = BackProject2UVsBy2Projs( xa, xb, Pa, Pb ); return;