Home > General-Functions > SUGR > General > Estimation > sugr_uncondition_Points.m

sugr_uncondition_Points

PURPOSE ^

% Uncondition points

SYNOPSIS ^

function x = sugr_uncondition_Points(xc, M)

DESCRIPTION ^

% Uncondition points

 x = sugr_uncondition_Points(xc,M) 

 xc  = struct, conditioned SUGR-points
       xc.h = coordiante
       xc.Crr = covariance matrices of reduced coordiantes
 M  = matrix of conditioning 
 
 x  = struxt: unconditioned SURG-points

 see PCV (6.137)
 
 Wolfgang Förstner 2/2013
 wfoerstn@uni-bonn.de

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 %% Uncondition points
0002 %
0003 % x = sugr_uncondition_Points(xc,M)
0004 %
0005 % xc  = struct, conditioned SUGR-points
0006 %       xc.h = coordiante
0007 %       xc.Crr = covariance matrices of reduced coordiantes
0008 % M  = matrix of conditioning
0009 %
0010 % x  = struxt: unconditioned SURG-points
0011 %
0012 % see PCV (6.137)
0013 %
0014 % Wolfgang Förstner 2/2013
0015 % wfoerstn@uni-bonn.de
0016      
0017 function x = sugr_uncondition_Points(xc, M)
0018 
0019 % number and dimension
0020 [N, d] = size(xc.h);
0021 
0022 Mi = inv(M);
0023 
0024 % uncondition point coordiantes
0025 for n = 1:N
0026     xhcn = xc.h(n, :)';         % homogeneous condit. coord.
0027     Chhcn = null(xhcn') * xc.Crr(n,:,:) * null(xhcn')';
0028     xn = Mi * xhcn; %#ok<*MINV> % homogene ous un condit. coord.
0029     Chhn = Mi * Chhcn * Mi';     % ... CovM
0030     if d == 2
0031         xn = sugr_Point_2D(xn, Chhn);
0032     else
0033         xn = sugr_Point_3D(xn, Chhn);
0034     end
0035     x.h(n, :) = xn.h';        % spherically normalized uncond. coord.
0036     x.Crr(n, :, :) = xn.Crr; % ... reduced CovM
0037 end
0038

Generated on Sat 21-Jul-2018 20:56:10 by m2html © 2005