Home > functions > common > coordinate > vb_valid_coordinate_filter_encode.m

vb_valid_coordinate_filter_encode

PURPOSE ^

do prior work for some works that require only valid coordinates

SYNOPSIS ^

function [filt_spec] = vb_valid_coordinate_filter_encode(coord)

DESCRIPTION ^

 do prior work for some works that require only valid coordinates
 [usage]
   [filt_spec] = vb_valid_coordinate_filter_encode(coord)
 [input]
       coord : <required> coordinate
 [output]
   filt_spec : filtering specifications
             :  - valid_coord : valid coordinates
             :  - org_size : original size of coordinates [Npoint x Ndim]
             :  - v_coord_idx : index of valid coord in original[N x 1]
 [note]

 [history]
   2007-04-18 (Sako) initial version

 Copyright (C) 2011, ATR All Rights Reserved.
 License : New BSD License(see VBMEG_LICENSE.txt)

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SUBFUNCTIONS ^

SOURCE CODE ^

0001 function [filt_spec] = vb_valid_coordinate_filter_encode(coord)
0002 % do prior work for some works that require only valid coordinates
0003 % [usage]
0004 %   [filt_spec] = vb_valid_coordinate_filter_encode(coord)
0005 % [input]
0006 %       coord : <required> coordinate
0007 % [output]
0008 %   filt_spec : filtering specifications
0009 %             :  - valid_coord : valid coordinates
0010 %             :  - org_size : original size of coordinates [Npoint x Ndim]
0011 %             :  - v_coord_idx : index of valid coord in original[N x 1]
0012 % [note]
0013 %
0014 % [history]
0015 %   2007-04-18 (Sako) initial version
0016 %
0017 % Copyright (C) 2011, ATR All Rights Reserved.
0018 % License : New BSD License(see VBMEG_LICENSE.txt)
0019 
0020 % --- CHECK ARGUMENTS --- %
0021 if ~exist('coord', 'var') coord = []; end
0022 [coord] = inner_check_arguments(coord);
0023 
0024 % --- MAIN PROCEDURE --------------------------------------------------------- %
0025 %
0026 org_size = size(coord); % [Npoints x Ndimension]
0027 Npoints = org_size(1);
0028 
0029 valid_coord = [];
0030 v_coord_idx = [];
0031 
0032 tmp_idx = [];
0033 
0034 for ip = 1:Npoints
0035   if ~vb_is_invalid_coordinate(coord(ip,:))
0036     valid_coord = [valid_coord; coord(ip,:)];
0037     v_coord_idx = [v_coord_idx; ip];
0038   else
0039     tmp_idx = [tmp_idx; ip];
0040   end
0041 end
0042 
0043 filt_spec.valid_coord = valid_coord;
0044 filt_spec.org_size    = org_size;
0045 filt_spec.v_coord_idx = v_coord_idx;
0046 
0047 %
0048 % --- END OF MAIN PROCEDURE -------------------------------------------------- %
0049 
0050 % --- INNER FUNCTIONS -------------------------------------------------------- %
0051 %
0052 function [coord] = inner_check_arguments(coord)
0053 if isempty(coord)
0054   error('coord is a required parameter');
0055 end
0056 %
0057 % --- END OF INNER FUNCTIONS ------------------------------------------------- %
0058 
0059 %%% END OF FILE %%%

Generated on Tue 27-Aug-2013 11:46:04 by m2html © 2005