ScorrChannel.H

Go to the documentation of this file.
00001 /*!@file Channels/ScorrChannel.H */
00002 
00003 // //////////////////////////////////////////////////////////////////// //
00004 // The iLab Neuromorphic Vision C++ Toolkit - Copyright (C) 2000-2005   //
00005 // by the 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:
00034 // $HeadURL: svn://isvn.usc.edu/software/invt/trunk/saliency/src/Channels/ScorrChannel.H $
00035 // $Id: ScorrChannel.H 7434 2006-11-11 02:15:19Z rjpeters $
00036 //
00037 
00038 #ifndef SCORRCHANNEL_H_DEFINED
00039 #define SCORRCHANNEL_H_DEFINED
00040 
00041 #include "Channels/SingleChannel.H"
00042 
00043 // ######################################################################
00044 //! A spatial correlation channel
00045 /*! Spatial correlation is computed at every location between the
00046   local patch and other patches at a given radius from the local
00047   patch. Radius is given in saliency map pixels. Note that in this
00048   channel, high 'salience' means low spatial correlation, i.e., lots
00049   of change. CAUTION: this channel will throw a fatal exception if
00050   your LevelSpec contains more than one level or if that level is
00051   different from the maplevel or if the deltas are non-zero. */
00052 class ScorrChannel : public SingleChannel
00053 {
00054 public:
00055   //! Construct with standard params.
00056   ScorrChannel(OptionManager& mgr);
00057 
00058   //! Destructor
00059   virtual ~ScorrChannel();
00060 
00061   //! overload
00062   virtual bool outputAvailable() const;
00063 
00064 protected:
00065   OModelParam<int> itsRadius; //!< Radius (in saliency map pixels)
00066 
00067   //! special input function
00068   virtual void doInput(const InputFrame& inframe);
00069 
00070   //! special output function
00071   virtual Image<float> getOutput();
00072 
00073   Image<float> itsMap;        //!< our temporal correlation map
00074 };
00075 
00076 // ######################################################################
00077 /* So things look consistent in everyone's emacs... */
00078 /* Local Variables: */
00079 /* indent-tabs-mode: nil */
00080 /* End: */
00081 
00082 #endif // SCORRCHANNEL_H_DEFINED
Generated on Sun May 8 08:40:22 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3