vision.Maximum

Find maximum values in input or sequence of inputs

Description

Find maximum values in an input or sequence of inputs.

To track a set of points:

  1. Create the vision.Maximum 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? (MATLAB).

Creation

Description

example

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

maxObj = vision.Maximum(Name,Value) sets properties using one or more name-value pairs. Enclose each property name in quotes. For example, maxObj = vision.Maximum('RunningMaximum',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 (MATLAB).

Output maximum value, specified as true or false. Set this property to true to output the maximum value of the input. This property applies when you set the RunningMaximum property to false.

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

Output the index of the maximum value, specified as true or false. This property applies only when you set the RunningMaximum property to false.

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

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

Numbering base for index of maximum value, specified as 'One' or 'Zero'. This property applies only when you set the IndexOutputPort property to true.

Dimension to operate along, specified as {'All'}, 'Row', 'Column', or 'Custom'. This property applies only when you set the RunningMaximum 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 RunningMaximum 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.

ROI or perimeter calculation, specified as 'Entire ROI' or 'ROI perimeter'. This property applies only when you set the ROIForm property to 'Rectangles'.

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 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 object. This property applies only when you set the AccumulatorDataType property to 'Custom'.

Usage

Description

example

[value,index] = maxObj(input) returns the maximum value and index of the input.

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

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

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

[___] = maxObj(I,label,labelNumbers) returns the maximum 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] = maxObj(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

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

Index to maximum 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

expand all

Read a color image.

img = imread('peppers.png');

Convert the image to grayscale.

img = im2single(rgb2gray(img));

Find the maximum.

hMax = vision.Maximum
hMax = 
  vision.Maximum with properties:

    ValueOutputPort: true
     RunningMaximum: false
    IndexOutputPort: true
          Dimension: 'All'
      ROIProcessing: false

  Show all properties

[m, ind] = hMax(img);

Extended Capabilities

Introduced in R2012a