Main Content

vision.Variance

Find variance values in input or sequence of inputs

Description

Find the variance values in an input or sequence of inputs.

To track a set of points:

  1. Create the vision.Variance object and set its properties.

  2. Call the object with arguments, as if it were a function.

To learn more about how System objects work, see What Are System Objects?

Creation

Description

example

varObj = vision.Variance returns an object, varObj, that computes the value and index of the maximum elements in an input or a sequence of inputs.

varObj = vision.Variance(Name,Value) sets properties using one or more name-value pairs. Enclose each property name in quotes. For example, varObj = vision.Variance('RunningVariance',false)

Properties

expand all

Unless otherwise indicated, properties are nontunable, which means you cannot change their values after calling the object. Objects lock when you call them, and the release function unlocks them.

If a property is tunable, you can change its value at any time.

For more information on changing property values, see System Design in MATLAB Using System Objects.

Calculate over single input or multiple inputs, specified as true or false. When you set this property to true, the object computes the variance value over a sequence of inputs. When you set this property to false, the object computes the variance value over the current input.

Additional input to enable resetting of running variance, specified as true or false. When you set this property to true, a reset input must be specified to reset the running variance. This property applies only when you set the RunningVariance property to true.

Condition that triggers resetting of running variance, specified as as 'Rising edge', 'Falling edge', 'Either edge', or 'Non-zero'. This property applies only when you set the ResetInputPort property to true.

Dimension to operate along, specified as {'All'}, 'Row', 'Column', or 'Custom'. This property applies only when you set the RunningVariance property to false.

Numerical dimension to calculate over, specified as a numerical scalar. This property only applies when you set the Dimension property to 'Custom'.

Enable region-of-interest processing, specified as true or false. This property applies when you set the Dimension property to 'All' and the RunningVariance property to false.

Type of ROI, specified as 'Rectangles', 'Lines', 'Label matrix', or 'Binary mask'. This property applies only when you set the ROIProcessing property to true.

Calculate statistics for each ROI or one for all ROIs, specified as 'Individual statistics for each ROI' or 'Single statistic for all ROIs'. This property applies only when you set the 'ROIForm' property to 'Rectangles', 'Lines', or 'Label matrix'.

Flag to indicate if any part of ROI is outside input image, specified as true or false.

This applies when you set the ROIForm property to 'Lines' or 'Rectangles'.

Set this property to true to return the validity of the specified label numbers. This applies when you set the ROIForm property to 'Label matrix'.

Fixed-Point Properties

Rounding method for fixed-point operations, specified as 'Floor', 'Ceiling', 'Convergent', 'Nearest' , 'Round' , 'Simplest' , or 'Zero'.

Action to take when integer input is out-of-range, specified as 'Wrap' or 'Saturate'.

Product data type, specified as 'Same as input' or 'Custom'.

Product word and fraction lengths, specified as a scaled numerictype (Fixed-Point Designer) object. This property applies only when you set the AccumulatorDataType property to 'Custom'.

Data type of accumulator, specified as 'Same as product', 'Same as input', or 'Custom'.

Accumulator word and fraction lengths, specified as a scaled numerictype (Fixed-Point Designer) object. This property applies only when you set the AccumulatorDataType property to 'Custom'.

Usage

Description

example

[value,index] = varObj(input) returns the variance value and index of the input.

index = varObj(input) returns the one-based index of the variance value when you set the IndexOutputPort property to true and the ValueOutputPort property to false. The RunningVariance property must be set to false.

[___] = varObj(I,ROI) returns the variance value in the input image within the given region of interest.

[___,flag] = varObj(I,ROI)additionally returns a flag to indicate whether the given ROI is within the bounds of the image.

[___] = varObj(I,label,labelNumbers) returns the variance of the input image for a region the labels specified in the labelNumbers vector. The regions are defined and labeled in the label matrix.

[___,flag] = varObj(I,label,labelNumbers) additionally returns a flag to indicate whether the input label numbers are valid.

Input Arguments

expand all

Input data, specified as a vector, matrix, or multidimensional array.

Region of interest, specified as a four-element vector, [x y width height]. This option is available when you set the the ROIProcessing property to true and the ROIForm property to 'Lines', 'Rectangles', or 'Binary Mask'.

Label numbers, specified as a matrix. This option is available when you set the ROIProcessing property to true and the ROIForm property to 'Label matrix'.

Label numbers, specified as a vector. This option is available when you set the ROIProcessing property to true and the ROIForm property to 'Label matrix'.

Output Arguments

expand all

Variance value, returned as the same data type as the input

Index to variance value, returned as a one-based index.

Flag for valid data, returned as true or false.

Object Functions

To use an object function, specify the System object™ as the first input argument. For example, to release system resources of a System object named obj, use this syntax:

release(obj)

expand all

stepRun System object algorithm
releaseRelease resources and allow changes to System object property values and input characteristics
resetReset internal states of System object

Examples

collapse all

Read a color image.

img = imread('peppers.png');

Convert the image to grayscale.

img = im2single(rgb2gray(img));

Find the variance.

varObj = vision.Variance;
varValue = varObj(img);

Extended Capabilities

Introduced in R2012a