Main Page | Modules | Class List | File List | Class Members | File Members

affine33_fit.h

Go to the documentation of this file.
00001 
00014 /* This library is free software; you can redistribute it and/or
00015    modify it under the terms of the GNU Lesser General Public
00016    License as published by the Free Software Foundation; either
00017    version 2.1 of the License, or (at your option) any later version.
00018 
00019    This library is distributed in the hope that it will be useful,
00020    but WITHOUT ANY WARRANTY; without even the implied warranty of
00021    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00022    Lesser General Public License for more details.
00023 
00024    You should have received a copy of the GNU Lesser General Public
00025    License along with this library; if not, write to the Free Software
00026    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00027 */
00028 
00029 #ifndef _GAN_AFFINE33_FIT_H
00030 #define _GAN_AFFINE33_FIT_H
00031 
00032 #include <gandalf/linalg/3vector.h>
00033 #include <gandalf/linalg/3x3matrix.h>
00034 #include <gandalf/linalg/2x3matrix.h>
00035 #include <gandalf/linalg/pseudo_inverse.h>
00036 #include <gandalf/vision/homog33_fit.h>
00037 
00038 #ifdef __cplusplus
00039 extern "C" {
00040 #endif
00041 
00060  Gan_PseudoInverseStruct *gan_affine33_init ( Gan_PseudoInverseStruct *pis );
00061 
00072  void gan_affine33_free ( Gan_PseudoInverseStruct *pis );
00073 
00074  Gan_Bool gan_affine33_increment_p ( Gan_PseudoInverseStruct *pis,
00075                                     Gan_Vector3 *X, Gan_Vector3 *x,
00076                                     double scale, int *eq_count );
00077  Gan_Bool gan_affine33_increment_le ( Gan_PseudoInverseStruct *pis,
00078                                      Gan_Vector3 *X, Gan_Vector3 *l,
00079                                      double scale, int *eq_count );
00080  Gan_Bool gan_affine33_solve ( Gan_PseudoInverseStruct *pis, int eq_count,
00081                               Gan_Matrix23 *P );
00082  Gan_Bool gan_affine33_fit ( Gan_Homog33Match *match, unsigned nmatches,
00083                             Gan_Matrix23 *H );
00084 
00096  Gan_Bool gan_affine33_reset ( Gan_PseudoInverseStruct *pis );
00097 
00106 #ifdef __cplusplus
00107 }
00108 #endif
00109 
00110 #endif /* #ifndef _GAN_AFFINE33_FIT_H */

Generated on Fri Mar 17 12:44:47 2006 by  doxygen 1.3.9.1