Calculate distance for transformed points dmin = vb_calc_fitting(para, V0, V) --- Input para : [ dX ; th ] rigid body transformation parameter (6x1 vector) dX : Translation parameter of 3 directions (3x1 vector) th : Rotation angle around x, y, z axis [radian] (3x1 vector) V0 : transformed point set (Npoint x 3) V : reference points (Npoint x 3) Weight : Error weight for each point (Npoint x 1) --- Output dmin = Min distance from rigid-transformed 'V0' to reference point set 'Vref' Copyright (C) 2011, ATR All Rights Reserved. License : New BSD License(see VBMEG_LICENSE.txt)
0001 function dmin = vb_calc_matching(para, V0, V, Weight) 0002 % Calculate distance for transformed points 0003 % 0004 % dmin = vb_calc_fitting(para, V0, V) 0005 % --- Input 0006 % para : [ dX ; th ] rigid body transformation parameter (6x1 vector) 0007 % dX : Translation parameter of 3 directions (3x1 vector) 0008 % th : Rotation angle around x, y, z axis [radian] (3x1 vector) 0009 % V0 : transformed point set (Npoint x 3) 0010 % V : reference points (Npoint x 3) 0011 % Weight : Error weight for each point (Npoint x 1) 0012 % --- Output 0013 % dmin = Min distance from rigid-transformed 'V0' to reference point set 'Vref' 0014 % 0015 % Copyright (C) 2011, ATR All Rights Reserved. 0016 % License : New BSD License(see VBMEG_LICENSE.txt) 0017 0018 dmin = sum( sum(( vb_rigid_transform(V0, para) - V ).^2 , 2) .* Weight );