VisualObjectMatchAlgo.H

Go to the documentation of this file.
00001 /*!@file SIFT/VisualObjectMatchAlgo.H Header for visual object match algos */
00002 
00003 // //////////////////////////////////////////////////////////////////// //
00004 // The iLab Neuromorphic Vision C++ Toolkit - Copyright (C) 2001 by the //
00005 // University of Southern California (USC) and the iLab at USC.         //
00006 // See http://iLab.usc.edu for information about this project.          //
00007 // //////////////////////////////////////////////////////////////////// //
00008 // Major portions of the iLab Neuromorphic Vision Toolkit are protected //
00009 // under the U.S. patent ``Computation of Intrinsic Perceptual Saliency //
00010 // in Visual Environments, and Applications'' by Christof Koch and      //
00011 // Laurent Itti, California Institute of Technology, 2001 (patent       //
00012 // pending; application number 09/912,225 filed July 23, 2001; see      //
00013 // http://pair.uspto.gov/cgi-bin/final/home.pl for current status).     //
00014 // //////////////////////////////////////////////////////////////////// //
00015 // This file is part of the iLab Neuromorphic Vision C++ Toolkit.       //
00016 //                                                                      //
00017 // The iLab Neuromorphic Vision C++ Toolkit is free software; you can   //
00018 // redistribute it and/or modify it under the terms of the GNU General  //
00019 // Public License as published by the Free Software Foundation; either  //
00020 // version 2 of the License, or (at your option) any later version.     //
00021 //                                                                      //
00022 // The iLab Neuromorphic Vision C++ Toolkit is distributed in the hope  //
00023 // that it will be useful, but WITHOUT ANY WARRANTY; without even the   //
00024 // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR      //
00025 // PURPOSE.  See the GNU General Public License for more details.       //
00026 //                                                                      //
00027 // You should have received a copy of the GNU General Public License    //
00028 // along with the iLab Neuromorphic Vision C++ Toolkit; if not, write   //
00029 // to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,   //
00030 // Boston, MA 02111-1307 USA.                                           //
00031 // //////////////////////////////////////////////////////////////////// //
00032 //
00033 // Primary maintainer for this file: Laurent Itti <itti@usc.edu>
00034 // $HeadURL: svn://isvn.usc.edu/software/invt/trunk/saliency/src/SIFT/VisualObjectMatchAlgo.H $
00035 // $Id: VisualObjectMatchAlgo.H 5755 2005-10-19 20:57:27Z rjpeters $
00036 //
00037 
00038 #ifndef VISUALOBJECTMATCHALGO_H_DEFINED
00039 #define VISUALOBJECTMATCHALGO_H_DEFINED
00040 
00041 #include <string>
00042 
00043 //! A simple enum to decide which matching algo to use
00044 /*! This is used by the SIFT code to decide on which matching
00045   algorithm to use. VOMA_SIMPLE is exhausive but slow, VOMA_KDTREE is
00046   based on using a KD-Tree but is even slower, and VOMA_KDTREEBBF is
00047   fast but approximate.  See SIFT/VisualObjectMatch.H for functions
00048   using these algos. If you add new algos here, be sure to update the
00049   number of algos and the string descriptions in the
00050   visualObjectMatchAlgoName() function below. */
00051 enum VisualObjectMatchAlgo {
00052   VOMA_SIMPLE    =  0,
00053   VOMA_KDTREE    =  1,
00054   VOMA_KDTREEBBF =  2
00055 };
00056 
00057 //! Number of matching algos:
00058 #define NBVISUALOBJECTMATCHALGOS 3
00059 
00060 //! Text descriptions of the various known algos:
00061 inline const char *visualObjectMatchAlgoName(const VisualObjectMatchAlgo val)
00062 {
00063   static const char *txt[] = { "Simple", "KDtree", "KDtreeBBF" };
00064   return txt[int(val)];
00065 }
00066 
00067 //! Conversion to string
00068 std::string convertToString(const VisualObjectMatchAlgo val);
00069 
00070 //! Conversion from string
00071 void convertFromString(const std::string& str, VisualObjectMatchAlgo& val);
00072 
00073 #endif
00074 
00075 // ######################################################################
00076 /* So things look consistent in everyone's emacs... */
00077 /* Local Variables: */
00078 /* indent-tabs-mode: nil */
00079 /* End: */
Generated on Sun May 8 08:06:50 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3