transform_pointset.m.svn-base

来自「使用混合高斯函数」· SVN-BASE 代码 · 共 33 行

SVN-BASE
33
字号
% Perform a spatial tranformation on a given pointset
% motion:  the motion model represented by string, can be
%         'rigid2d',    'rigid3d', 'affine2d',  'affine3d', 'tps'
% parameter: a row vector
function [transformed_pointset] = transform_pointset(pointset, motion, parameter, varargin)
%%=====================================================================
%% $RCSfile: transform_pointset.m,v $
%% $Author: bjian $
%% $Date: 2008/06/28 23:32:19 $
%% $Revision: 1.2 $
%%=====================================================================

switch lower(motion)
    case 'rigid2d'
        transformed_pointset = transform_by_rigid2d(pointset, parameter);
    case 'rigid3d'
        transformed_pointset = transform_by_rigid3d(pointset, parameter);
    case 'affine2d'
        transformed_pointset = transform_by_affine2d(pointset, parameter);
    case 'affine3d'
        transformed_pointset = transform_by_affine3d(pointset, parameter);
    case 'tps'
        ctrl_pts = varargin{1};
        init_affine = varargin{2};
        [n,d] = size(ctrl_pts);
        p = reshape([init_affine parameter],d,n); p = p'; 
        transformed_pointset = transform_by_tps(p, pointset, ctrl_pts);
    otherwise
        error('Unknown motion type');
end;


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?