65
#ifndef __OPENCV_BIOINSPIRED_RETINA_HPP__
66
#define __OPENCV_BIOINSPIRED_RETINA_HPP__
74
#include "opencv2/core.hpp"
78
namespace
bioinspired{
153
normaliseOutput(
true),
154
photoreceptorsLocalAdaptationSensitivity(0.75f),
155
photoreceptorsTemporalConstant(0.9f),
156
photoreceptorsSpatialConstant(0.53f),
157
horizontalCellsGain(0.01f),
158
hcellsTemporalConstant(0.5f),
159
hcellsSpatialConstant(7.f),
160
ganglionCellsSensitivity(0.75f) { }
161
bool
colorMode, normaliseOutput;
162
float
photoreceptorsLocalAdaptationSensitivity, photoreceptorsTemporalConstant, photoreceptorsSpatialConstant, horizontalCellsGain, hcellsTemporalConstant, hcellsSpatialConstant, ganglionCellsSensitivity;
167
normaliseOutput(
true),
168
parasolCells_beta(0.f),
169
parasolCells_tau(0.f),
171
amacrinCellsTemporalCutFrequency(2.0f),
172
V0CompressionParameter(0.95f),
173
localAdaptintegration_tau(0.f),
174
localAdaptintegration_k(7.f) { }
175
bool
normaliseOutput;
176
float
parasolCells_beta, parasolCells_tau, parasolCells_k, amacrinCellsTemporalCutFrequency, V0CompressionParameter, localAdaptintegration_tau, localAdaptintegration_k;
215
CV_WRAP
virtual
Size
getInputSize()=0;
221
CV_WRAP
virtual
Size
getOutputSize()=0;
233
CV_WRAP
virtual
void
setup(String retinaParameterFile=
"",
const
bool
applyDefaultSetupOnFailure=
true)=0;
254
CV_WRAP
virtual
const
String printSetup()=0;
260
CV_WRAP
virtual
void
write( String fs )
const=0;
299
CV_WRAP
virtual
void
setupOPLandIPLParvoChannel(
const
bool
colorMode=
true,
const
bool
normaliseOutput =
true,
const
float
photoreceptorsLocalAdaptationSensitivity=0.7f,
const
float
photoreceptorsTemporalConstant=0.5f,
const
float
photoreceptorsSpatialConstant=0.53f,
const
float
horizontalCellsGain=0.f,
const
float
HcellsTemporalConstant=1.f,
const
float
HcellsSpatialConstant=7.f,
const
float
ganglionCellsSensitivity=0.7f)=0;
326
CV_WRAP
virtual
void
setupIPLMagnoChannel(
const
bool
normaliseOutput =
true,
const
float
parasolCells_beta=0.f,
const
float
parasolCells_tau=0.f,
const
float
parasolCells_k=7.f,
const
float
amacrinCellsTemporalCutFrequency=1.2f,
const
float
V0CompressionParameter=0.95f,
const
float
localAdaptintegration_tau=0.f,
const
float
localAdaptintegration_k=7.f)=0;
335
CV_WRAP
virtual
void
run(InputArray inputImage)=0;
353
CV_WRAP
virtual
void
applyFastToneMapping(InputArray inputImage,
OutputArray
outputToneMappedImage)=0;
372
CV_WRAP
virtual
void
getParvoRAW(
OutputArray
retinaOutput_parvo)=0;
389
CV_WRAP
virtual
void
getMagnoRAW(
OutputArray
retinaOutput_magno)=0;
392
CV_WRAP
virtual
const
Mat
getMagnoRAW()
const=0;
394
CV_WRAP
virtual
const
Mat
getParvoRAW()
const=0;
402
CV_WRAP
virtual
void
setColorSaturation(
const
bool
saturateColors=
true,
const
float
colorSaturationValue=4.0f)=0;
409
CV_WRAP
virtual
void
clearBuffers()=0;
416
CV_WRAP
virtual
void
activateMovingContoursProcessing(
const
bool
activate)=0;
424
CV_WRAP
virtual
void
activateContoursProcessing(
const
bool
activate)=0;
446
const
bool
useRetinaLogSampling=
false,
447
const
float
reductionFactor=1.0f,
const
float
samplingStrength=10.0f);
This type is very similar to InputArray except that it is used for input/output and output function p...
Definition:
mat.hpp:295
This is a base class for all more or less complex algorithms in OpenCV
Definition:
core.hpp:3091
XML/YAML/JSON file storage class that encapsulates all the information necessary for writing or readi...
Definition:
persistence.hpp:304
n-dimensional dense array class
Definition:
mat.hpp:802
Template class for specifying the size of an image or rectangle.
Definition:
core/types.hpp:316
class which allows the Gipsa/Listic Labs model to be used with OpenCV.
Definition:
retina.hpp:207
virtual void setup(cv::FileStorage &fs, const bool applyDefaultSetupOnFailure=true)=0
virtual void setup(RetinaParameters newParameters)=0
virtual RetinaParameters getParameters()=0
virtual void write(FileStorage &fs) const CV_OVERRIDE=0
@ RETINA_COLOR_RANDOM
each pixel position is either R, G or B in a random choice
Definition:
retina.hpp:84
@ RETINA_COLOR_BAYER
standard bayer sampling
Definition:
retina.hpp:86
@ RETINA_COLOR_DIAGONAL
color sampling is RGBRGBRGB..., line 2 BRGBRGBRG..., line 3, GBRGBRGBR...
Definition:
retina.hpp:85
"black box" representation of the file storage associated with a file on disk.
Definition:
aruco.hpp:75
Definition:
cvstd_wrapper.hpp:74
Inner Plexiform Layer Magnocellular channel (IplMagno)
Definition:
retina.hpp:165
Outer Plexiform Layer (OPL) and Inner Plexiform Layer Parvocellular (IplParvo) parameters
Definition:
retina.hpp:151
retina model parameters structure
Definition:
retina.hpp:149