Table of Contents

Class Retina

Namespace
Emgu.CV.Bioinspired
Assembly
Emgu.CV.dll

A wrapper class which allows the Gipsa/Listic Labs model to be used. This retina model allows spatio-temporal image processing (applied on still images, video sequences). As a summary, these are the retina model properties:

  1. It applies a spectral whithening (mid-frequency details enhancement);
  2. high frequency spatio-temporal noise reduction;
  3. low frequency luminance to be reduced (luminance range compression);
  4. local logarithmic luminance compression allows details to be enhanced in low light conditions. USE : this model can be used basically for spatio-temporal video effects but also for : _using the getParvo method output matrix : texture analysiswith enhanced signal-to-noise ratio and enhanced details robust against input images luminance ranges _using the getMagno method output matrix : motion analysis also with the previously cited properties

For more information, reer to the following papers : Benoit A., Caplier A., Durette B., Herault, J., "USING HUMAN VISUAL SYSTEM MODELING FOR BIO-INSPIRED LOW LEVEL IMAGE PROCESSING", Elsevier, Computer Vision and Image Understanding 114 (2010), pp. 758-773, DOI: http://dx.doi.org/10.1016/j.cviu.2010.01.011 Vision: Images, Signals and Neural Networks: Models of Neural Processing in Visual Perception (Progress in Neural Processing),By: Jeanny Herault, ISBN: 9814273686. WAPI (Tower ID): 113266891.

The retina filter includes the research contributions of phd/research collegues from which code has been redrawn by the author : _take a look at the retinacolor.hpp module to discover Brice Chaix de Lavarene color mosaicing/demosaicing and the reference paper: B. Chaix de Lavarene, D. Alleysson, B. Durette, J. Herault (2007). "Efficient demosaicing through recursive filtering", IEEE International Conference on Image Processing ICIP 2007 _take a look at imagelogpolprojection.hpp to discover retina spatial log sampling which originates from Barthelemy Durette phd with Jeanny Herault. A Retina / V1 cortex projection is also proposed and originates from Jeanny's discussions. more informations in the above cited Jeanny Heraults's book.

public class Retina : SharedPtrObject, IDisposable
Inheritance
Retina
Implements
Inherited Members

Constructors

Retina(Size, bool, ColorSamplingMethod, bool, double, double)

Create a retina model

public Retina(Size inputSize, bool colorMode = true, Retina.ColorSamplingMethod colorSamplingMethod = ColorSamplingMethod.ColorBayer, bool useRetinaLogSampling = false, double reductionFactor = 1, double samplingStrength = 10)

Parameters

inputSize Size

The input frame size

colorMode bool

Specifies if (true) color is processed of not (false) to then processing gray level image

colorSamplingMethod Retina.ColorSamplingMethod

Specifies which kind of color sampling will be used

useRetinaLogSampling bool

Activate retina log sampling, if true, the 2 following parameters can be used

reductionFactor double

Only useful if param useRetinaLogSampling=true, specifies the reduction factor of the output frame (as the center (fovea) is high resolution and corners can be underscaled, then a reduction of the output is allowed without precision leak

samplingStrength double

Only useful if param useRetinaLogSampling=true, specifies the strength of the log scale that is applied

Properties

Parameters

Get or Set the Retina parameters.

public Retina.RetinaParameters Parameters { get; set; }

Property Value

Retina.RetinaParameters

Methods

ClearBuffers()

Clear all retina buffers (equivalent to opening the eyes after a long period of eye close.

public void ClearBuffers()

DisposeObject()

Release all unmanaged memory associated with the retina model.

protected override void DisposeObject()

GetMagno(IOutputArray)

Accessors of the motion channel of the retina (models peripheral vision)

public void GetMagno(IOutputArray magno)

Parameters

magno IOutputArray

The motion channel of the retina.

GetParvo(IOutputArray)

Accessors of the details channel of the retina (models foveal vision)

public void GetParvo(IOutputArray parvo)

Parameters

parvo IOutputArray

The details channel of the retina.

Run(IInputArray)

Method which allows retina to be applied on an input image, after run, encapsulated retina module is ready to deliver its outputs using dedicated acccessors. GetParvo(IOutputArray) and GetMagno(IOutputArray)

public void Run(IInputArray image)

Parameters

image IInputArray

The input image to be processed