This is a utility routine to perform linear scaling (similar to BYTSCL) on image arrays. If differs from BYTSCL only in that a user-specified percentage of pixels can be clipped from the image histogram, prior to scaling. By default, two percent of the pixels are clipped. Clipping occurs at both ends of the image histogram.
Image Processing
A byte scaled image is returned.
image: in, required
The image to be scaled. Written for 2D images, but arrays of any size are treated alike.
clip: in, optional, type=float, default=2.0
The percent of image clipping. Must be value between 0 and 49. Clipping
occurs from both ends of image histogram, so a clip of 2.0 linearly scales
approximately 96% of the image histogram. Clipping percents are approximations
only, and depend entirely on the distribution of pixels in the image. For
interactive scaling, see cgStretch.
negative, in, optional, type=boolean, default=0
If set, the "negative" of the result is returned.
omax: in, optional, type=byte, default=255
The output image is scaled between OMIN and OMAX.
omin: in, optional, type=byte, default=0
The output image is scaled between OMIN and OMAX.
threshold: out, optional
A two-element array containing the image thresholds that were used for the clipping.
To display a clipped image:: cgLoadCT, 0 ; Gray-scale colors. image = cgDemoData(22) ; Load image. cgImage, cgClipScl(image, 4)
FANNING SOFTWARE CONSULTING::
David W. Fanning
1645 Sheely Drive
Fort Collins, CO 80526 USA
Phone: 970-221-0438
E-mail: david@idlcoyote.com
Coyote's Guide to IDL Programming: http://www.idlcoyote.com
Change History::
Written by: David W. Fanning, 6 September 2007.
Not sure what this program was doing, but not what I thought. I've reworked
the algorithm to scale the data appropriately. 25 Oct 2011. DWF.
Renamed cgClipScl from ClipScl. 27 March 2015. DWF.
Copyright (c) 2007-2015, Fanning Software Consulting, Inc.