This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

vision.LocalMaximaFinder

Find local maxima in matrices

Description

To find local maxima in matrices.

  1. Create the vision.LocalMaximaFinder 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

Syntax

LMaxFinder = vision.LocalMaximaFinder
LMaxFinder = vision.LocalMaximaFinder(maxnum,neighborsize)
LMaxFinder = vision.LocalMaximaFinder(Name,Value)

Description

example

LMaxFinder = vision.LocalMaximaFinder returns a local maxima finder System object, H, that finds local maxima in input matrices.

LMaxFinder = vision.LocalMaximaFinder(maxnum,neighborsize) returns a local maxima finder object with the MaximumNumLocalMaxima property set to maxnum, NeighborhoodSize property set to neighborsize, and other specified properties set to the specified values.

LMaxFinder = vision.LocalMaximaFinder(Name,Value) sets properties using one or more name-value pairs. Enclose each property name in quotes. For example, LMaxFinder = vision.LocalMaximaFinder('ThresholdSource','Property')

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).

Maximum number of maxima to find, specified as a positive scalar integer.

Neighborhood size for zero-ing out values, specified as a two-element vector

Source of threshold, specified as 'Property' or 'Input port'.

Value that all maxima should match or exceed, specified as a scalar of MATLAB® built-in numeric data type. This property applies when you set the ThresholdSource property to 'Property'.

Tunable: Yes

Indicator of Hough transform matrix input, specified as true or false. The block applies additional processing, specific to Hough transform on the right and left boundaries of the input matrix. Set this property to true if the input is antisymmetric about the rho axis and the theta value ranges from to radians, which correspond to a Hough matrix.

Data type of index values, specified as double, single , uint8, uint16, or uint32.

Usage

For versions earlier than R2016b, use the step function to run the System object™ algorithm. The arguments to step are the object you created, followed by the arguments shown in this section.

For example, y = step(obj,x) and y = obj(x) perform equivalent operations.

Syntax

idx = LMaxFinder(I)
idx = LMaxFinder(I,threshold)

Description

example

idx = LMaxFinder(I) returns [x y] coordinates of the local maxima in an M-by-2 matrix, idx. M represents the number of local maximas found. The maximum value of M may not exceed the value set in the MaximumNumLocalMaxima property.

idx = LMaxFinder(I,threshold) finds the local maxima in the input image I, using the threshold value threshold, when you set the ThresholdSource property to 'Input port'.

Input Arguments

expand all

Video frame, specified as grayscale or truecolor (RGB).

Value that all maxima should match or exceed, specified as a scalar of MATLAB built-in numeric data type.

Output Arguments

expand all

Local maxima, returned as an M-by-2 matrix of one-based [x y] coordinates, where M represents the number of local maximas found.

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

initializeInitialize video frame and points to track
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

Create an example input.

I = [0 0 0 0 0 0 0 0 0 0 0 0; ...
     0 0 0 1 1 2 3 2 1 1 0 0; ...
     0 0 0 1 2 3 4 3 2 1 0 0; ...
     0 0 0 1 3 5 7 5 3 1 0 0; ... 
     0 0 0 1 2 3 4 3 2 1 0 0; ...
     0 0 0 1 1 2 3 2 1 1 0 0; ...
     0 0 0 0 0 0 0 0 0 0 0 0];
 

Create a local maxima finder object.

 hLocalMax = vision.LocalMaximaFinder('MaximumNumLocalMaxima',1, ...
                                      'NeighborhoodSize',[3,3], ...
                                      'Threshold',1); 

Find local maxima.

location = hLocalMax(I)                     
location = 1x2 uint32 row vector

   7   4

Extended Capabilities

Introduced in R2012b