Institut de Robòtica i Informàtica Industrial

P_EKF

PURPOSE ^

Constructor for Extended Kalman Filter for PoseSLAM.

SYNOPSIS ^

function EKF=P_EKF(varargin)

DESCRIPTION ^

 Constructor for Extended Kalman Filter for PoseSLAM.

 This is a sub-type of Pose SLAM filter (P_Filter), and thus it 
 inherits all methods from the P_Filter.

 This type of filter estimates the robot's trajectory representing it as
 Gaussian represented in the usual mean and covariance form. 

 The possible parameters are
    - Another 'P_EKF'. Copy constructor.
    - A Gaussian given the initial estimation. Generates a new 'Extended
      Kalman Filter'.

 See also P_Filter, P_TRO.

CROSS-REFERENCE INFORMATION ^

This function calls:
  • get Get function for robots.
  • get Get function for trajectories.
  • get Get function for EKF filters.
  • P_Filter Construtor for the base Pose SLAM filter.
  • get Generic get function for filters.
  • get Get function for TRO filters.
  • get Get function for BTrees.
  • get Get function for PoseData objects.
  • get Get function for Gaussians.
  • get Get function for poses.
  • get Generic get for relative positioning sensors
  • get Generic get for sensors
This function is called by:

SOURCE CODE ^

0001 function EKF=P_EKF(varargin)
0002 % Constructor for Extended Kalman Filter for PoseSLAM.
0003 %
0004 % This is a sub-type of Pose SLAM filter (P_Filter), and thus it
0005 % inherits all methods from the P_Filter.
0006 %
0007 % This type of filter estimates the robot's trajectory representing it as
0008 % Gaussian represented in the usual mean and covariance form.
0009 %
0010 % The possible parameters are
0011 %    - Another 'P_EKF'. Copy constructor.
0012 %    - A Gaussian given the initial estimation. Generates a new 'Extended
0013 %      Kalman Filter'.
0014 %
0015 % See also P_Filter, P_TRO.
0016 
0017   switch nargin
0018     case 1
0019       if isa(varargin{1},'P_EKF')
0020         EKF=varargin{1};
0021       else
0022         if  isa(varargin{1},'Gaussian')
0023           F=P_Filter(varargin{1});
0024           
0025           EKF.mu=get(varargin{1},'mean');
0026           EKF.Sigma=get(varargin{1},'covariance');
0027           
0028           EKF=class(EKF,'P_EKF',F);
0029         else
0030           error('Wrong parameter type in P_EKF creation');
0031         end
0032       end
0033     otherwise
0034       error('Wrong number of parameters in P_EKF creation');
0035   end


Institut de Robòtica i Informàtica Industrial

Generated on Fri 24-Jul-2009 12:32:50 by m2html © 2003