00001 /*!@file Channels/ChannelOpts.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/ChannelOpts.H $ 00035 // $Id: ChannelOpts.H 14309 2010-12-11 02:23:48Z siagian $ 00036 // 00037 00038 #ifndef CHANNELS_CHANNELOPTS_H_DEFINED 00039 #define CHANNELS_CHANNELOPTS_H_DEFINED 00040 00041 class OptionManager; 00042 struct ModelOptionCateg; 00043 struct ModelOptionDef; 00044 00045 //! Command-line options for ChannelBase and derivatives 00046 //@{ 00047 00048 //! Channel-related options 00049 extern const ModelOptionCateg MOC_CHANNEL; 00050 00051 extern const ModelOptionDef OPT_UseOlderVersion; 00052 extern const ModelOptionDef OPT_ChannelOutputRangeMax; 00053 extern const ModelOptionDef OPT_ChannelOutputRangeMin; 00054 extern const ModelOptionDef OPT_MapLevel; 00055 extern const ModelOptionDef OPT_LevelSpec; 00056 extern const ModelOptionDef OPT_MaxNormType; 00057 extern const ModelOptionDef OPT_SingleChannelQueueLen; 00058 extern const ModelOptionDef OPT_SingleChannelTimeDecay; 00059 extern const ModelOptionDef OPT_NumOrientations; 00060 extern const ModelOptionDef OPT_OriInteraction; 00061 extern const ModelOptionDef OPT_OrientComputeType; 00062 extern const ModelOptionDef OPT_GaborChannelIntensity; 00063 extern const ModelOptionDef OPT_UseTrigTab; 00064 extern const ModelOptionDef OPT_DirectionChannelTakeSqrt; 00065 extern const ModelOptionDef OPT_DirectionChannelLowThresh; 00066 extern const ModelOptionDef OPT_NumColorBands; 00067 extern const ModelOptionDef OPT_NumSatBands; 00068 extern const ModelOptionDef OPT_HueBandWidth; 00069 extern const ModelOptionDef OPT_SatBandWidth; 00070 extern const ModelOptionDef OPT_NumDirections; 00071 extern const ModelOptionDef OPT_NumSpatioTemporalDirections; 00072 extern const ModelOptionDef OPT_NumSpatioTemporalSpeeds; 00073 extern const ModelOptionDef OPT_NumOpticalFlowDirections; 00074 extern const ModelOptionDef OPT_NumTheta; 00075 extern const ModelOptionDef OPT_LJunctionChannelDelta; 00076 extern const ModelOptionDef OPT_TJunctionChannelDelta; 00077 extern const ModelOptionDef OPT_XJunctionChannelDelta; 00078 extern const ModelOptionDef OPT_EndPointChannelDelta; 00079 extern const ModelOptionDef OPT_FoeMSTChannelDelta; 00080 extern const ModelOptionDef OPT_NumLOrients; 00081 extern const ModelOptionDef OPT_NumTOrients; 00082 extern const ModelOptionDef OPT_NumXOrients; 00083 extern const ModelOptionDef OPT_NumEOrients; 00084 extern const ModelOptionDef OPT_LFullImplementation; 00085 extern const ModelOptionDef OPT_TFullImplementation; 00086 extern const ModelOptionDef OPT_XFullImplementation; 00087 extern const ModelOptionDef OPT_EFullImplementation; 00088 extern const ModelOptionDef OPT_SingleChannelUseSplitCS; 00089 extern const ModelOptionDef OPT_SingleChannelSaveRawMaps; 00090 extern const ModelOptionDef OPT_SingleChannelComputeFullPyramidForGist; 00091 extern const ModelOptionDef OPT_SingleChannelSaveFeatureMaps; 00092 extern const ModelOptionDef OPT_SingleChannelSaveOutputMap; 00093 extern const ModelOptionDef OPT_ComplexChannelSaveOutputMap; 00094 extern const ModelOptionDef OPT_ComplexChannelMapCombineType; 00095 extern const ModelOptionDef OPT_ColorComputeType; 00096 extern const ModelOptionDef OPT_DummyChannelFactor; 00097 extern const ModelOptionDef OPT_TcorrChannelFrameLag; 00098 extern const ModelOptionDef OPT_ScorrChannelRadius; 00099 extern const ModelOptionDef OPT_NumIntensityBands; 00100 extern const ModelOptionDef OPT_IntensityBandWidth; 00101 extern const ModelOptionDef OPT_SubmapAlgoType; 00102 extern const ModelOptionDef OPT_GetSingleChannelStats; 00103 extern const ModelOptionDef OPT_SaveStatsPerChannel; 00104 extern const ModelOptionDef OPT_SaveStatsPerChannelFreq; 00105 extern const ModelOptionDef OPT_GetSingleChannelStatsFile; 00106 extern const ModelOptionDef OPT_GetSingleChannelStatsTag; 00107 extern const ModelOptionDef OPT_UseH2SV1; 00108 extern const ModelOptionDef OPT_CompColorDoubleOppWeight; 00109 extern const ModelOptionDef OPT_CompColorSingleOppWeight; 00110 //@} 00111 00112 //! Command-line options for raw VisualCortex 00113 //@{ 00114 00115 //! VisualCortex-related options 00116 extern const ModelOptionCateg MOC_VCX; 00117 00118 extern const ModelOptionDef OPT_RawVisualCortexOutputFactor; 00119 extern const ModelOptionDef OPT_RawVisualCortexNoise; 00120 extern const ModelOptionDef OPT_VCXsaveOutTo; 00121 extern const ModelOptionDef OPT_VCXloadOutFrom; 00122 extern const ModelOptionDef OPT_RawVisualCortexChans; 00123 extern const ModelOptionDef OPT_IntegerRawVisualCortexChans; 00124 extern const ModelOptionDef OPT_RawVisualCortexSaveOutput; 00125 extern const ModelOptionDef OPT_VCXuseMax; 00126 extern const ModelOptionDef OPT_VCXweightThresh; 00127 00128 //@} 00129 00130 //! Command-line options for integer math in the channel classes 00131 //@{ 00132 00133 //! Channel-related integer-math options 00134 extern const ModelOptionCateg MOC_INTCHANNEL; 00135 00136 extern const ModelOptionDef OPT_IntChannelScaleBits; 00137 extern const ModelOptionDef OPT_IntChannelOutputRangeMax; 00138 extern const ModelOptionDef OPT_IntChannelOutputRangeMin; 00139 extern const ModelOptionDef OPT_IntMathLowPass5; 00140 extern const ModelOptionDef OPT_IntMathLowPass9; 00141 extern const ModelOptionDef OPT_IntInputDecode; 00142 //@} 00143 00144 //! Channel-related command-line option aliases 00145 //@{ 00146 extern const ModelOptionDef OPT_ALIASsaveChannelOutputs; 00147 extern const ModelOptionDef OPT_ALIASsaveChannelInternals; 00148 00149 //! request all of the above-named OPT_ALIAS options 00150 void REQUEST_OPTIONALIAS_CHANNEL(OptionManager& m); 00151 00152 //@} 00153 00154 // ###################################################################### 00155 /* So things look consistent in everyone's emacs... */ 00156 /* Local Variables: */ 00157 /* indent-tabs-mode: nil */ 00158 /* End: */ 00159 00160 #endif // CHANNELS_CHANNELOPTS_H_DEFINED