SpaceVariantOpts.C

Go to the documentation of this file.
00001 /*!@file SpaceVariant/SpaceVariantOpts.C */
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/SpaceVariant/SpaceVariantOpts.C $
00035 // $Id: SpaceVariantOpts.C 14513 2011-02-16 05:02:38Z dberg $
00036 //
00037 
00038 #ifndef NEURO_NEUROOPTS_C_DEFINED
00039 #define NEURO_NEUROOPTS_C_DEFINED
00040 
00041 #include "SpaceVariant/SpaceVariantOpts.H"
00042 #include "SpaceVariant/SVChanLevels.H"
00043 #include "Component/ModelOptionDef.H"
00044 #include "Image/Dims.H"
00045 
00046 // #################### SpaceVariant options:
00047 const ModelOptionCateg MOC_SPACEVARIANT = {
00048   MOC_SORTPRI_3,   "Space Variant Processing - Related Options" };
00049 
00050 // Used by: SpaceVariantModule
00051 const ModelOptionDef OPT_SpaceVariantScale =
00052   { MODOPT_ARG_STRING, "SpaceVariantScale", &MOC_SPACEVARIANT, OPTEXP_CORE,
00053     "Decide the scale of the transform. 'FULL' to scale along the longest "
00054     "input dimension (will leave some of the transform unfilled. 'CROP' to "
00055     "scale along the shortest input dimension (will not transform all of "
00056     "the input image). 'OPTIM' to scale each orientation seperately (full "
00057     "coverage, but not isotropic anymore). Or 'NONE' to supply a user "
00058     "defined scaling factor", "retinasv-scale", '\0', "", "FULL" };
00059 
00060 // Used by: SpaceVariantModule
00061 const ModelOptionDef OPT_SpaceVariantFoveaSize =
00062   { MODOPT_ARG(float), "SpaceVariantFoveaSize", &MOC_SPACEVARIANT, OPTEXP_CORE,
00063     "factor to use in scaling fovea", "retinasv-fovea-size",
00064     '\0', "<float>", "0.01" };
00065 
00066 // Used by: SpaceVariantModule
00067 const ModelOptionDef OPT_SpaceVariantSfac =
00068   { MODOPT_ARG(float), "SpaceVariantSfac", &MOC_SPACEVARIANT, OPTEXP_CORE,
00069     "If the retina's scale type is NONE we will use this scaling factor",
00070     "retinasv-sfac", '\0', "<float>", "24.75"};
00071 
00072 // Used by: SpaceVariantModule
00073 const ModelOptionDef OPT_SpaceVariantBeta =
00074   { MODOPT_ARG(float), "SpaceVariantBeta", &MOC_SPACEVARIANT, OPTEXP_CORE,
00075     "Choose the beta parameter of the transform equation "
00076     "'u=s*ln(r/alpha) + beta' where u is the space variant point and r "
00077     "is the radius. s is the scaling factor and alpha is the fovea size. "
00078     "This parameter shifts the fovea left (<1) or right (>1) of the "
00079     "midline.", "retinasv-beta",'\0', "<float>", "1.0" };
00080 
00081 // Used by: SpaceVariantModule
00082 const ModelOptionDef OPT_SpaceVariantGain =
00083   { MODOPT_ARG(float), "SpaceVariantGain", &MOC_SPACEVARIANT, OPTEXP_CORE,
00084     "The receptive field of each pixel in the space variant image is modeled "
00085     "as a guassian parameterized by the standard deviation in pixels. For a given eccentricty "
00086     "r in degrees of visual space, the standard deviation 's', can be modeled as "
00087     "'s=g*r^e+b' where 'g','e', 'b' are the gain, exponent and offset which describe the shape of "
00088     "of the ralationship. The default parameters are estimated from the data of "
00089     "Croner & Kaplan (1995) for parvocellular ganglion cells.", "retinasv-gain", '\0', "<float>", "0.0002" };
00090 
00091 // Used by: SpaceVariantModule
00092 const ModelOptionDef OPT_SpaceVariantExponent =
00093   { MODOPT_ARG(float), "SpaceVariantExponent", &MOC_SPACEVARIANT, OPTEXP_CORE,
00094     "The receptive field of each pixel in the space variant image is modeled "
00095     "as a guassian parameterized by the standard deviation in pixels. For a given eccentricty "
00096     "r in degrees of visual space, the standard deviation 's', can be modeled as "
00097     "'s=g*r^e+b' where 'g','e', 'b' are the gain, exponent and offset which describe the shape of "
00098     "of the ralationship. The default parameters are estimated from the data of "
00099     "Croner & Kaplan (1995) for parvocellular ganglion cells.", "retinasv-exponent", '\0', "<float>", "1.7689" };
00100 
00101 // Used by: SpaceVariantModule
00102 const ModelOptionDef OPT_SpaceVariantOffset =
00103   { MODOPT_ARG(float), "SpaceVariantOffset", &MOC_SPACEVARIANT, OPTEXP_CORE,
00104     "The receptive field of each pixel in the space variant image is modeled "
00105     "as a guassian parameterized by the standard deviation in pixels. For a given eccentricty "
00106     "r in degrees of visual space, the standard deviation 's', can be modeled as "
00107     "'s=g*r^e+b' where 'g','e', 'b' are the gain, exponent and offset which describe the shape of "
00108     "of the ralationship. The default parameters are estimated from the data of "
00109     "Croner & Kaplan (1995) for parvocellular ganglion cells.", "retinasv-offset", '\0', "<float>", "0.0252" };
00110 
00111 // Used by: SpaceVariantModule
00112 const ModelOptionDef OPT_SpaceVariantFovCut =
00113   { MODOPT_ARG(float), "SpaceVariantFovCut", &MOC_SPACEVARIANT, OPTEXP_CORE,
00114     "Normally, the fovea is considered the area of expansion, where the "
00115     "first derivitive of the transform function is > 1. However, if "
00116     "the paramters are adjusted so no oversampling occurs then this "
00117     "will never be the case. Use this parameter to adjust the value "
00118     "(between 0 and 1) of the first derivitive that is considered the "
00119     "fovea. ", "retinasv-fovea-cutoff", '\0', "<float>", "2.0" };
00120 
00121 // Used by: SpaceVariantModule
00122 const ModelOptionDef OPT_SpaceVariantDims =
00123   { MODOPT_ARG(Dims), "SpaceVariantDims", &MOC_SPACEVARIANT, OPTEXP_CORE,
00124     "The dimensions of the space variant transform in rings x wedges. "
00125     "The Number of wedges (rays) in the log-polar map will have "
00126     "horizontal dimensions 1/2 this value as the wedges are split between "
00127     "hemifields. The number of rings in the log-polar map will have "
00128     "horizontal dimensions twice this value (for each hemifield).",
00129     "retinasv-dims", '\0', "<Dims>", "160x480" };
00130 
00131 extern const ModelOptionDef OPT_SpaceVariantDogCenter = 
00132   { MODOPT_FLAG, "SpaceVariantDogCenter", &MOC_SPACEVARIANT, OPTEXP_CORE,
00133     "Sets center-surround, or surround-center when performing a difference "
00134     "of gaussians space variant transform.", 
00135     "use-channelasv-oncenter", '\0', "", "true" };
00136 
00137 extern const ModelOptionDef OPT_SpaceVariantDogSize = 
00138   { MODOPT_ARG(float), "SpaceVariantDogSize", &MOC_SPACEVARIANT, OPTEXP_CORE,
00139     "Sets the size of the surround when performing a difference "
00140     "of gaussians space variant transform. The surround will be the "
00141     "center standard deviation multiplied by this factor. A factor of 6 approximates "
00142     "retinal ganglion cell responses estimated from Croner & Kaplan (1993), and "
00143     "a factor of 1.6 the approximates laplacian transform.", 
00144     "channelasv-surround-factor", '\0', "<float>", "6.0" };
00145 
00146 extern const ModelOptionDef OPT_SpaceVariantEdgeOrient = 
00147   { MODOPT_ARG(float), "SpaceVariantEdgeOrient", &MOC_SPACEVARIANT, OPTEXP_CORE,
00148     "The edge orientation for the space variant retina", 
00149     "channelsv-edge-orientation", '\0', "<uint>", "0.0" };
00150 
00151 extern const ModelOptionDef OPT_SpaceVariantEdgeLength = 
00152   { MODOPT_ARG(uint), "SpaceVariantEdgeLenth", &MOC_SPACEVARIANT, OPTEXP_CORE,
00153     "The edge length in pixels for the space variant retina", 
00154     "channelsv-edge-length", '\0', "<uint>", "3" };
00155 
00156 extern const ModelOptionDef OPT_SpaceVariantEdgeDensity = 
00157   { MODOPT_ARG(uint), "SpaceVariantEdgeDensity", &MOC_SPACEVARIANT, OPTEXP_CORE,
00158     "the number of pixels used to create the edge", 
00159     "channelsv-edge-density", '\0', "<float>", "3" };
00160 
00161 extern const ModelOptionDef OPT_SpaceVariantChanScales = 
00162   { MODOPT_ARG(SVChanLevels), "SpaceVariantChanScales", &MOC_SPACEVARIANT, OPTEXP_CORE,
00163     "the scales to use when creating a space variant pyramid", 
00164     "channelsv-scales", '\0', "<float>,<float>,...", "0.5,1.0,2.0,4.0,8.0" };
00165 
00166 // ######################################################################
00167 /* So things look consistent in everyone's emacs... */
00168 /* Local Variables: */
00169 /* indent-tabs-mode: nil */
00170 /* End: */
00171 
00172 #endif // NEURO_NEUROOPTS_C_DEFINED
Generated on Sun May 8 08:42:18 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3