Struct opencv::bioinspired::RetinaParameters
source · pub struct RetinaParameters { /* private fields */ }
Expand description
retina model parameters structure
For better clarity, check explenations on the comments of methods : setupOPLandIPLParvoChannel and setupIPLMagnoChannel
Here is the default configuration file of the retina module. It gives results such as the first retina output shown on the top of this page.
<?xml version="1.0"?>
<opencv_storage>
<OPLandIPLparvo>
<colorMode>1</colorMode>
<normaliseOutput>1</normaliseOutput>
<photoreceptorsLocalAdaptationSensitivity>7.5e-01</photoreceptorsLocalAdaptationSensitivity>
<photoreceptorsTemporalConstant>9.0e-01</photoreceptorsTemporalConstant>
<photoreceptorsSpatialConstant>5.3e-01</photoreceptorsSpatialConstant>
<horizontalCellsGain>0.01</horizontalCellsGain>
<hcellsTemporalConstant>0.5</hcellsTemporalConstant>
<hcellsSpatialConstant>7.</hcellsSpatialConstant>
<ganglionCellsSensitivity>7.5e-01</ganglionCellsSensitivity></OPLandIPLparvo>
<IPLmagno>
<normaliseOutput>1</normaliseOutput>
<parasolCells_beta>0.</parasolCells_beta>
<parasolCells_tau>0.</parasolCells_tau>
<parasolCells_k>7.</parasolCells_k>
<amacrinCellsTemporalCutFrequency>2.0e+00</amacrinCellsTemporalCutFrequency>
<V0CompressionParameter>9.5e-01</V0CompressionParameter>
<localAdaptintegration_tau>0.</localAdaptintegration_tau>
<localAdaptintegration_k>7.</localAdaptintegration_k></IPLmagno>
</opencv_storage>
Here is the ’realistic“ setup used to obtain the second retina output shown on the top of this page.
<?xml version="1.0"?>
<opencv_storage>
<OPLandIPLparvo>
<colorMode>1</colorMode>
<normaliseOutput>1</normaliseOutput>
<photoreceptorsLocalAdaptationSensitivity>8.9e-01</photoreceptorsLocalAdaptationSensitivity>
<photoreceptorsTemporalConstant>9.0e-01</photoreceptorsTemporalConstant>
<photoreceptorsSpatialConstant>5.3e-01</photoreceptorsSpatialConstant>
<horizontalCellsGain>0.3</horizontalCellsGain>
<hcellsTemporalConstant>0.5</hcellsTemporalConstant>
<hcellsSpatialConstant>7.</hcellsSpatialConstant>
<ganglionCellsSensitivity>8.9e-01</ganglionCellsSensitivity></OPLandIPLparvo>
<IPLmagno>
<normaliseOutput>1</normaliseOutput>
<parasolCells_beta>0.</parasolCells_beta>
<parasolCells_tau>0.</parasolCells_tau>
<parasolCells_k>7.</parasolCells_k>
<amacrinCellsTemporalCutFrequency>2.0e+00</amacrinCellsTemporalCutFrequency>
<V0CompressionParameter>9.5e-01</V0CompressionParameter>
<localAdaptintegration_tau>0.</localAdaptintegration_tau>
<localAdaptintegration_k>7.</localAdaptintegration_k></IPLmagno>
</opencv_storage>
Trait Implementations§
source§impl Boxed for RetinaParameters
impl Boxed for RetinaParameters
source§unsafe fn from_raw(
ptr: <RetinaParameters as OpenCVFromExtern>::ExternReceive
) -> Self
unsafe fn from_raw( ptr: <RetinaParameters as OpenCVFromExtern>::ExternReceive ) -> Self
Wrap the specified raw pointer Read more
source§fn into_raw(
self
) -> <RetinaParameters as OpenCVTypeExternContainer>::ExternSendMut
fn into_raw( self ) -> <RetinaParameters as OpenCVTypeExternContainer>::ExternSendMut
Return the underlying raw pointer while consuming this wrapper. Read more
source§fn as_raw(&self) -> <RetinaParameters as OpenCVTypeExternContainer>::ExternSend
fn as_raw(&self) -> <RetinaParameters as OpenCVTypeExternContainer>::ExternSend
Return the underlying raw pointer. Read more
source§fn as_raw_mut(
&mut self
) -> <RetinaParameters as OpenCVTypeExternContainer>::ExternSendMut
fn as_raw_mut( &mut self ) -> <RetinaParameters as OpenCVTypeExternContainer>::ExternSendMut
Return the underlying mutable raw pointer Read more
source§impl Clone for RetinaParameters
impl Clone for RetinaParameters
source§impl Debug for RetinaParameters
impl Debug for RetinaParameters
source§impl Default for RetinaParameters
impl Default for RetinaParameters
source§impl Drop for RetinaParameters
impl Drop for RetinaParameters
source§impl RetinaParametersTrait for RetinaParameters
impl RetinaParametersTrait for RetinaParameters
fn as_raw_mut_RetinaParameters(&mut self) -> *mut c_void
fn set_op_land_ipl_parvo( &mut self, val: RetinaParameters_OPLandIplParvoParameters )
fn set_ipl_magno(&mut self, val: RetinaParameters_IplMagnoParameters)
source§impl RetinaParametersTraitConst for RetinaParameters
impl RetinaParametersTraitConst for RetinaParameters
fn as_raw_RetinaParameters(&self) -> *const c_void
fn op_land_ipl_parvo(&self) -> RetinaParameters_OPLandIplParvoParameters
fn ipl_magno(&self) -> RetinaParameters_IplMagnoParameters
impl Send for RetinaParameters
Auto Trait Implementations§
impl Freeze for RetinaParameters
impl RefUnwindSafe for RetinaParameters
impl !Sync for RetinaParameters
impl Unpin for RetinaParameters
impl UnwindSafe for RetinaParameters
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<Mat> ModifyInplace for Matwhere
Mat: Boxed,
impl<Mat> ModifyInplace for Matwhere
Mat: Boxed,
source§unsafe fn modify_inplace<Res>(
&mut self,
f: impl FnOnce(&Mat, &mut Mat) -> Res
) -> Res
unsafe fn modify_inplace<Res>( &mut self, f: impl FnOnce(&Mat, &mut Mat) -> Res ) -> Res
Helper function to call OpenCV functions that allow in-place modification of a
Mat
or another similar object. By passing
a mutable reference to the Mat
to this function your closure will get called with the read reference and a write references
to the same Mat
. This is of course unsafe as it breaks the Rust aliasing rules, but it might be useful for some performance
sensitive operations. One example of an OpenCV function that allows such in-place modification is imgproc::threshold
. Read more