00001 /*!@file Neuro/NeuroOpts.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/Neuro/NeuroOpts.H $ 00035 // $Id: NeuroOpts.H 14677 2011-04-04 19:37:18Z dberg $ 00036 // 00037 00038 #ifndef NEURO_NEUROOPTS_H_DEFINED 00039 #define NEURO_NEUROOPTS_H_DEFINED 00040 00041 class OptionManager; 00042 struct ModelOptionCateg; 00043 struct ModelOptionDef; 00044 00045 //! What to display/save options 00046 extern const ModelOptionCateg MOC_DISPLAY; 00047 00048 //! Command-line options for Retina 00049 //@{ 00050 00051 //! PFC-related options 00052 extern const ModelOptionCateg MOC_PFC; 00053 00054 extern const ModelOptionDef OPT_PrefrontalCortexType; 00055 00056 //! Retina-related options 00057 extern const ModelOptionCateg MOC_RETINA; 00058 00059 extern const ModelOptionDef OPT_RetinaType; 00060 extern const ModelOptionDef OPT_InputFramingImageName; 00061 extern const ModelOptionDef OPT_InputFramingImagePos; 00062 extern const ModelOptionDef OPT_FoveateInputDepth; 00063 extern const ModelOptionDef OPT_ShiftInputToEye; 00064 extern const ModelOptionDef OPT_ShiftInputToEyeBGcol; 00065 extern const ModelOptionDef OPT_InputFOV; 00066 extern const ModelOptionDef OPT_RetinaSaveInput; 00067 extern const ModelOptionDef OPT_RetinaSaveOutput; 00068 extern const ModelOptionDef OPT_RetinaStdSavePyramid; 00069 extern const ModelOptionDef OPT_RetinaMaskFname; 00070 extern const ModelOptionDef OPT_RetinaFlipHoriz; 00071 extern const ModelOptionDef OPT_RetinaFlipVertic; 00072 //@} 00073 00074 //! Command-line options for VisualCortex and derivatives 00075 //@{ 00076 00077 extern const ModelOptionDef OPT_VisualCortexType; 00078 extern const ModelOptionDef OPT_VCEMeyeFnames; 00079 extern const ModelOptionDef OPT_VCEMsigma; 00080 extern const ModelOptionDef OPT_VCEMforgetFac; 00081 extern const ModelOptionDef OPT_VCEMdelay; 00082 extern const ModelOptionDef OPT_VCEMuseMax; 00083 extern const ModelOptionDef OPT_VCEMsaccadeOnly; 00084 //@} 00085 00086 //! Command-line options for SimulationViewer and derivatvies 00087 extern const ModelOptionDef OPT_SimulationViewerType; 00088 extern const ModelOptionDef OPT_SVfontSize; 00089 extern const ModelOptionDef OPT_SVsaveTraj; 00090 extern const ModelOptionDef OPT_SVsaveXcombo; 00091 extern const ModelOptionDef OPT_SVsaveYcombo; 00092 extern const ModelOptionDef OPT_SVsaveTRMXcombo; 00093 extern const ModelOptionDef OPT_SVsaveTRMYcombo; 00094 extern const ModelOptionDef OPT_SVsaveTRMmegaCombo; 00095 extern const ModelOptionDef OPT_SVwarp3D; 00096 extern const ModelOptionDef OPT_SVmegaCombo; 00097 extern const ModelOptionDef OPT_SVmegaComboZoom; 00098 extern const ModelOptionDef OPT_SVmegaComboTopCMapsOnly; 00099 extern const ModelOptionDef OPT_SVcropFOA; 00100 extern const ModelOptionDef OPT_SVxwindow; 00101 extern const ModelOptionDef OPT_SVfoveateTraj; 00102 extern const ModelOptionDef OPT_SVstatsFname; 00103 extern const ModelOptionDef OPT_SVdisplayFOA; 00104 extern const ModelOptionDef OPT_SVdisplayPatch; 00105 extern const ModelOptionDef OPT_SVpatchSize; 00106 extern const ModelOptionDef OPT_SVeraseMarker; 00107 extern const ModelOptionDef OPT_SVdisplayFOAnum; 00108 extern const ModelOptionDef OPT_SVdisplayFOALinks; 00109 extern const ModelOptionDef OPT_SVdisplayEye; 00110 extern const ModelOptionDef OPT_SVdisplayEyeLinks; 00111 extern const ModelOptionDef OPT_SVdisplayHead; 00112 extern const ModelOptionDef OPT_SVdisplayHeadLinks; 00113 extern const ModelOptionDef OPT_SVdisplayAdditive; 00114 extern const ModelOptionDef OPT_SVdisplayTime; 00115 extern const ModelOptionDef OPT_SVdisplayHighlights; 00116 extern const ModelOptionDef OPT_SVdisplaySMmodulate; 00117 extern const ModelOptionDef OPT_SVdisplayBoring; 00118 extern const ModelOptionDef OPT_SVuseLargerDrawings; 00119 extern const ModelOptionDef OPT_SVdisplayInterp; 00120 extern const ModelOptionDef OPT_SVdisplayMapFactor; 00121 extern const ModelOptionDef OPT_SVdisplayMapType; 00122 extern const ModelOptionDef OPT_SVCOMPsaveMask; 00123 extern const ModelOptionDef OPT_SVCOMPsaveFoveatedImage; 00124 extern const ModelOptionDef OPT_SVCOMPDistanceFactor; 00125 extern const ModelOptionDef OPT_SVCOMPsaveEyeCombo; 00126 extern const ModelOptionDef OPT_SVCOMPnumFoveas; 00127 extern const ModelOptionDef OPT_SVCOMPeyeCompare; 00128 extern const ModelOptionDef OPT_SVCOMPcacheSize; 00129 extern const ModelOptionDef OPT_SVCOMPiframePeriod; 00130 extern const ModelOptionDef OPT_SVCOMPdisplayHumanEye; 00131 extern const ModelOptionDef OPT_SVCOMPuseTRMmax; 00132 extern const ModelOptionDef OPT_SVCOMPfoveaSCtype; 00133 extern const ModelOptionDef OPT_SVCOMPMultiRetinaDepth; 00134 extern const ModelOptionDef OPT_SVEMsaveMegaCombo; 00135 extern const ModelOptionDef OPT_SVEMdelayCacheSize; 00136 extern const ModelOptionDef OPT_SVEMmaxCacheSize; 00137 extern const ModelOptionDef OPT_SVEMoutFname; 00138 extern const ModelOptionDef OPT_SVEMsampleAtStart; 00139 extern const ModelOptionDef OPT_SVEMdisplaySacNum; 00140 extern const ModelOptionDef OPT_SVEMnumRandomSamples; 00141 extern const ModelOptionDef OPT_SVEMuseSaccadeInBlink; 00142 extern const ModelOptionDef OPT_SVEMuseDiagColors; 00143 extern const ModelOptionDef OPT_SVEMlabelEyePatch; 00144 extern const ModelOptionDef OPT_SVEMwriteFrameNumber; 00145 extern const ModelOptionDef OPT_SVEMpriorRandomDistro; 00146 extern const ModelOptionDef OPT_SVEMmaxComboWidth; 00147 extern const ModelOptionDef OPT_SVEMbufDims; 00148 extern const ModelOptionDef OPT_SVEMuseIOR; 00149 extern const ModelOptionDef OPT_SVHandSaveCombo; 00150 extern const ModelOptionDef OPT_SVHandMaxComboWidth; 00151 extern const ModelOptionDef OPT_SVHandDisplay; 00152 extern const ModelOptionDef OPT_SVeyeSimFname; 00153 extern const ModelOptionDef OPT_SVeyeSimPeriod; 00154 extern const ModelOptionDef OPT_SVeyeSimTrash; 00155 extern const ModelOptionDef OPT_ASACdrawDiffParts; 00156 extern const ModelOptionDef OPT_ASACdrawBetaParts; 00157 extern const ModelOptionDef OPT_ASACdrawBiasParts; 00158 extern const ModelOptionDef OPT_ASACdrawSeperableParts; 00159 extern const ModelOptionDef OPT_ASACconfigFile; 00160 extern const ModelOptionDef OPT_NerdCamConfigFile; 00161 00162 extern const ModelOptionDef OPT_FOAradius; 00163 extern const ModelOptionDef OPT_FoveaRadius; 00164 00165 extern const ModelOptionDef OPT_AGStatsSaveFile; 00166 extern const ModelOptionDef OPT_ComputeAGStats; 00167 00168 extern const ModelOptionDef OPT_SVEMNprobeLocation; 00169 extern const ModelOptionDef OPT_SVEMNrfSize; 00170 extern const ModelOptionDef OPT_SVEMNrfMaskName; 00171 extern const ModelOptionDef OPT_SVEMNoutFName; 00172 extern const ModelOptionDef OPT_SVEMNneuroFileName; 00173 extern const ModelOptionDef OPT_SVEMNdisplayTime; 00174 extern const ModelOptionDef OPT_SVEMNdelayNeuron; 00175 extern const ModelOptionDef OPT_SVEMNplotBufLength; 00176 extern const ModelOptionDef OPT_SVEMNSalScale; 00177 extern const ModelOptionDef OPT_SVEMNNeuroScale; 00178 00179 extern const ModelOptionDef OPT_SVEMNNeuroRFVisFile; 00180 extern const ModelOptionDef OPT_SVEMNNeuroRFMotFile; 00181 extern const ModelOptionDef OPT_SVEMNMotWindow; 00182 extern const ModelOptionDef OPT_SVEMNVisWindow; 00183 extern const ModelOptionDef OPT_SVEMNVisOffset; 00184 00185 extern const ModelOptionDef OPT_SVInverseTransform; 00186 00187 //@} 00188 00189 //! Command-line options for InferoTemporal 00190 //@{ 00191 00192 //! Inferior Temporal Cortex Options 00193 extern const ModelOptionCateg MOC_ITC; 00194 00195 extern const ModelOptionDef OPT_InferoTemporalType; 00196 extern const ModelOptionDef OPT_AttentionObjRecog; 00197 extern const ModelOptionDef OPT_ObjectDatabaseFileName; 00198 extern const ModelOptionDef OPT_TrainObjectDB; 00199 extern const ModelOptionDef OPT_PromptUserTrainDB; 00200 extern const ModelOptionDef OPT_MatchObjects; 00201 extern const ModelOptionDef OPT_MatchingAlgorithm; 00202 extern const ModelOptionDef OPT_RecognitionMinMatch; 00203 extern const ModelOptionDef OPT_OutputFileName; 00204 //@} 00205 00206 //! Command-line options for ShapeEstimator 00207 //@{ 00208 extern const ModelOptionDef OPT_ShapeEstimatorMode; 00209 extern const ModelOptionDef OPT_ShapeEstimatorSmoothMethod; 00210 //@} 00211 00212 //! Command-line options for Brain 00213 //@{ 00214 00215 //! Brain-related options 00216 extern const ModelOptionCateg MOC_BRAIN; 00217 00218 extern const ModelOptionDef OPT_IORtype; 00219 extern const ModelOptionDef OPT_BrainBoringDelay; 00220 extern const ModelOptionDef OPT_BrainBoringSMmv; 00221 extern const ModelOptionDef OPT_BrainSaveObjMask; 00222 extern const ModelOptionDef OPT_BlankBlink; 00223 extern const ModelOptionDef OPT_BrainTooManyShifts; 00224 extern const ModelOptionDef OPT_BrainTooManyShiftsPerFrame; 00225 extern const ModelOptionDef OPT_TargetMaskFname; 00226 00227 //@} 00228 00229 //! Command-line options for SaliencyMap 00230 //@{ 00231 00232 //! SaliencyMap options 00233 extern const ModelOptionCateg MOC_SM; 00234 00235 extern const ModelOptionDef OPT_SaliencyMapType; 00236 extern const ModelOptionDef OPT_SMsaveResults; 00237 extern const ModelOptionDef OPT_SMsaveCumResults; 00238 extern const ModelOptionDef OPT_SMuseSacSuppress; 00239 extern const ModelOptionDef OPT_SMuseBlinkSuppress; 00240 extern const ModelOptionDef OPT_SMfastInputCoeff; 00241 extern const ModelOptionDef OPT_SMItoVcoeff; 00242 extern const ModelOptionDef OPT_SMginhDecay; 00243 extern const ModelOptionDef OPT_SMmaxWinV; 00244 //@} 00245 00246 //! Command-line options for TaskRelevanceMap 00247 //@{ 00248 00249 //! TaskRelevanceMap options 00250 extern const ModelOptionCateg MOC_TRM; 00251 00252 extern const ModelOptionDef OPT_TaskRelevanceMapType; 00253 extern const ModelOptionDef OPT_TRMsaveResults; 00254 extern const ModelOptionDef OPT_LearnTRM; 00255 extern const ModelOptionDef OPT_LearnUpdateTRM; 00256 extern const ModelOptionDef OPT_BiasTRM; 00257 extern const ModelOptionDef OPT_TRMKillStaticThresh; 00258 extern const ModelOptionDef OPT_TRMKillStaticCoeff; 00259 extern const ModelOptionDef OPT_TRMkillN; 00260 extern const ModelOptionDef OPT_TRMClusterCenterFile; 00261 extern const ModelOptionDef OPT_TRMTemplateDir; 00262 extern const ModelOptionDef OPT_TRMGistPCADims; 00263 extern const ModelOptionDef OPT_TRMGistPCAMatrix; 00264 extern const ModelOptionDef OPT_TRMCacheSize; 00265 extern const ModelOptionDef OPT_TRMUpdatePeriod; 00266 extern const ModelOptionDef OPT_TRMTigsMatrix; 00267 extern const ModelOptionDef OPT_TRMTigs2Matrix; 00268 extern const ModelOptionDef OPT_TRMImgPCADims; 00269 extern const ModelOptionDef OPT_TRMImgPCAMatrix; 00270 extern const ModelOptionDef OPT_TRMSocialRegionFName; 00271 //@} 00272 00273 //! Command-line options for AttentionGuidanceMap 00274 //@{ 00275 00276 //! AttentionGuidanceMap options 00277 extern const ModelOptionCateg MOC_AGM; 00278 00279 extern const ModelOptionDef OPT_AttentionGuidanceMapType; 00280 extern const ModelOptionDef OPT_AGMsaveResults; 00281 00282 //! used by AttentionGuidanceMapSC and AttentionGuidanceMapNF 00283 extern const ModelOptionDef OPT_AGMoutputRate; 00284 00285 //@} 00286 //! AttentionGate options 00287 extern const ModelOptionCateg MOC_AG; 00288 00289 extern const ModelOptionDef OPT_AttentionGateType; 00290 extern const ModelOptionDef OPT_AttentionGateStageOneType; 00291 extern const ModelOptionDef OPT_AttentionGateStageTwoType; 00292 extern const ModelOptionDef OPT_AttentionGateStageTwoEpochs; 00293 extern const ModelOptionDef OPT_AGsaveResults; 00294 extern const ModelOptionDef OPT_AGTargetFrame; 00295 extern const ModelOptionDef OPT_AGMaskFile; 00296 //@} 00297 00298 //! Command-line options for WinnerTakeAll 00299 //@{ 00300 00301 //! WinnerTakeAll options 00302 extern const ModelOptionCateg MOC_WTA; 00303 00304 extern const ModelOptionDef OPT_WinnerTakeAllType; 00305 extern const ModelOptionDef OPT_WTAsaveResults; 00306 extern const ModelOptionDef OPT_WTAuseSacSuppress; 00307 extern const ModelOptionDef OPT_WTAuseBlinkSuppress; 00308 extern const ModelOptionDef OPT_WinnerTakeAllGreedyThreshFac; 00309 //@} 00310 00311 //! Command-line options for SaccadeController and derivatives 00312 //@{ 00313 00314 //! SaccadeController-related options 00315 extern const ModelOptionCateg MOC_SAC; 00316 00317 extern const ModelOptionDef OPT_SCeyeInitialPosition; 00318 extern const ModelOptionDef OPT_SCheadInitialPosition; 00319 extern const ModelOptionDef OPT_SCeyeMinSacLen; 00320 extern const ModelOptionDef OPT_SCheadMinSacLen; 00321 extern const ModelOptionDef OPT_SCeyeSpringK; 00322 extern const ModelOptionDef OPT_SCeyeFrictionMu; 00323 extern const ModelOptionDef OPT_SCeyeThreshMinOvert; 00324 extern const ModelOptionDef OPT_SCeyeThreshMaxCovert; 00325 extern const ModelOptionDef OPT_SCeyeThreshMinNum; 00326 extern const ModelOptionDef OPT_SCeyeThreshSalWeigh; 00327 extern const ModelOptionDef OPT_SCeyeMaxIdleSecs; 00328 extern const ModelOptionDef OPT_SCheadSpringK; 00329 extern const ModelOptionDef OPT_SCheadFrictionMu; 00330 extern const ModelOptionDef OPT_SCheadThreshMinOvert; 00331 extern const ModelOptionDef OPT_SCheadThreshMaxCovert; 00332 extern const ModelOptionDef OPT_SCheadThreshMinNum; 00333 extern const ModelOptionDef OPT_SCheadThreshSalWeigh; 00334 extern const ModelOptionDef OPT_SCheadMaxIdleSecs; 00335 extern const ModelOptionDef OPT_SCeyeBlinkWaitTime; 00336 extern const ModelOptionDef OPT_SCeyeBlinkDuration; 00337 00338 extern const ModelOptionDef OPT_EyeHeadControllerType; 00339 extern const ModelOptionDef OPT_SaccadeControllerEyeType; 00340 extern const ModelOptionDef OPT_SaccadeControllerHeadType; 00341 00342 extern const ModelOptionDef OPT_EHCeyeTrackConfig; 00343 00344 //! HandController-related options 00345 extern const ModelOptionCateg MOC_HAND; 00346 00347 extern const ModelOptionDef OPT_HandControllerType; 00348 extern const ModelOptionDef OPT_HandConfig; 00349 00350 //@} 00351 00352 //! Command-line options for GistEstimator 00353 //@{ 00354 00355 //! GistEstimator Options 00356 extern const ModelOptionCateg MOC_GE; 00357 00358 extern const ModelOptionDef OPT_GistEstimatorType; 00359 extern const ModelOptionDef OPT_GistCenterSurroundFlag; 00360 extern const ModelOptionDef OPT_SaveGistFlag; 00361 //@} 00362 00363 //! Command-line options for VisualBuffer 00364 //@{ 00365 00366 //! VisualBuffer options 00367 extern const ModelOptionCateg MOC_VB; 00368 00369 extern const ModelOptionDef OPT_VisualBufferType; 00370 extern const ModelOptionDef OPT_VBignoreBoring; 00371 extern const ModelOptionDef OPT_VBobjectBased; 00372 extern const ModelOptionDef OPT_VBdims; 00373 extern const ModelOptionDef OPT_VBtimePeriod; 00374 extern const ModelOptionDef OPT_VBdecayFactor; 00375 extern const ModelOptionDef OPT_VBmaxNormType; 00376 //@} 00377 00378 //! Miscellaneous shared command-line options for neuro classes 00379 //@{ 00380 extern const ModelOptionDef OPT_HeadMarkerRadius; 00381 extern const ModelOptionDef OPT_MultiRetinaDepth; 00382 extern const ModelOptionDef OPT_PixelsPerDegree; 00383 //@} 00384 00385 //! Neuro-related command-line option aliases 00386 //@{ 00387 extern const ModelOptionDef OPT_ALIAStop5; 00388 extern const ModelOptionDef OPT_ALIASinitialVCO; 00389 extern const ModelOptionDef OPT_ALIASmovie; 00390 extern const ModelOptionDef OPT_ALIASmovieFast; 00391 extern const ModelOptionDef OPT_ALIASmoviefov; 00392 extern const ModelOptionDef OPT_ALIASmovieeyehead; 00393 extern const ModelOptionDef OPT_ALIASmovieanim; 00394 extern const ModelOptionDef OPT_ALIASsurprise; 00395 extern const ModelOptionDef OPT_ALIASsurpriseRSVP; 00396 extern const ModelOptionDef OPT_ALIASeyeCompare; 00397 extern const ModelOptionDef OPT_ALIASeyeDisplay; 00398 extern const ModelOptionDef OPT_ALIASeyeMap; 00399 extern const ModelOptionDef OPT_ALIASeyeHandDisplay; 00400 extern const ModelOptionDef OPT_ALIASbestMultiSpectralResidual; 00401 extern const ModelOptionDef OPT_ALIASoptiGainTrain; 00402 extern const ModelOptionDef OPT_ALIASoptiGainBias; 00403 extern const ModelOptionDef OPT_ALIASkinectDemo; 00404 00405 //! request all of the above-named OPT_ALIAS options 00406 void REQUEST_OPTIONALIAS_NEURO(OptionManager& m); 00407 //@} 00408 00409 00410 // ###################################################################### 00411 /* So things look consistent in everyone's emacs... */ 00412 /* Local Variables: */ 00413 /* indent-tabs-mode: nil */ 00414 /* End: */ 00415 00416 #endif // NEURO_NEUROOPTS_H_DEFINED