anormalize

From DavinciWiki
Jump to: navigation, search

Description

Aggressively normalizes the input data to remove outliers (allowing the remaining data to be stretched in a more useful way).

Arguments and Return Values

Arguments: An array of numeric data, and optional parameters to control the normalization (see below)

Return Value: A float numeric array of the same dimensions as the input array

Usage

Syntax: anormalize(inputdata [, steps = INT] [, backlash = INT] [, threshold = FLOAT] [, threshrepeat = INT] [, searchwidth = INT])


Simple normalization routines are often hindered by the presence of outliers which prevent the "stretching" of the data which is most interesting. This function provides a means of ignoring the effect of such outliers.

The optional steps parameter controls the number of steps/divisions to use in the analysis histogram. If this value is not specified, a default of 100 is used.

The optional backlash parameter sets the number of steps which are "backed off" when the other criteria are met. If this value is not specified, a default of 1 is used.

The optional threshold parameter sets the percentage of the maximum value on the histogram that must be exceeded in order to trigger a match. If this value is not specified, a default of 0.05 (5%) is used.

The optional threshrepeat parameter sets the number of times within the search window that the threshold must be exceeded in order to trigger a match. If this value is not specified, a default of 3 is used.

The optional searchwidth parameter controls the size of the search window (in terms of steps on the histogram) that is searched for the number of matches specified by the threshrepeat parameter. If this value is not specified, a default of 5 is used.

ANormalize Example.PNG

Examples

dv> a
2000x1000x1 array of float, bsq format [8,000,000 bytes]

dv> min(a)
0.0000000000

dv> max(a)
1.000000000

dv> result = anormalize(a, steps = 1000, backlash = 0, threshold = 0.01, threshrepeat = 5, searchwidth = 20)
Performing an aggressive normalization.
Attempting to find aggressive normalization parameters.
New minimum: 0.498000.
New maximum: 0.998000.
Current minimum value: -0.996000.
Current maximum value: 1.004000.
Clipping input values to a range of (0.000000) to (1.000000).
2000x1000x1 array of float, bsq format [8,000,000 bytes]

Images

Aggressive normalization applied to SRTM imagery of Big Bend National Park (anormalize(steps = 500, backlash = 0, threshold = 0.02, threshrepeat = 3, searchwidth = 25)): ANormalize-Big Bend.PNG

DavinciWiki Mini-Nav Bar

Contents


Contact Developers

  • davinci-dev [AT] mars.asu.edu

All other topics

  • See navigation on the left

Major Sub-Functions

Related Functions

Recent Library Changes

Created On: 07-16-2012
Modified On: 05-02-2013

Personal tools