i.colors.enhance
Performs auto-balancing of colors for RGB images.
i.colors.enhance [-fprs] red=name green=name blue=name [strength=float] [--verbose] [--quiet] [--qq] [--ui]
Example:
i.colors.enhance red=name green=name blue=name
grass.script.run_command("i.colors.enhance", red, green, blue, strength=98, flags=None, verbose=False, quiet=False, superquiet=False)
Example:
gs.run_command("i.colors.enhance", red="name", green="name", blue="name")
Parameters
red=name [required]
Name of red channel
green=name [required]
Name of green channel
blue=name [required]
Name of blue channel
strength=float
Cropping intensity (upper brightness level)
Allowed values: 0-100
Default: 98
-f
Extend colors to full range of data on each channel
-p
Preserve relative colors, adjust brightness only
-r
Reset to standard color range
-s
Process bands serially (default: run in parallel)
--help
Print usage summary
--verbose
Verbose module output
--quiet
Quiet module output
--qq
Very quiet module output
--ui
Force launching GUI dialog
red : str, required
Name of red channel
Used as: input, raster, name
green : str, required
Name of green channel
Used as: input, raster, name
blue : str, required
Name of blue channel
Used as: input, raster, name
strength : float, optional
Cropping intensity (upper brightness level)
Allowed values: 0-100
Default: 98
flags : str, optional
Allowed values: f, p, r, s
f
Extend colors to full range of data on each channel
p
Preserve relative colors, adjust brightness only
r
Reset to standard color range
s
Process bands serially (default: run in parallel)
verbose: bool, optional
Verbose module output
Default: False
quiet: bool, optional
Quiet module output
Default: False
superquiet: bool, optional
Very quiet module output
Default: False
DESCRIPTION
i.colors.enhance auto-balances and enhances the color channels of a RGB image (e.g. from Landsat) to provide a more natural color mixture. Only the color table of each image band is modified, the base data remains untouched.
The module works by calculating a histogram for each color channel and removing an adjustable amount of outliers from either end before recalibrating the color scale with r.colors.
It will work with any 8-bit RGB imagery set and the script is easily modified to work with other datasets of greater band-depth.
NOTES
Depending on the image, it may or may not be advantageous to use the -p flag to preserve the relative color scaling. You will have to experiment with the different options to find a setting that works best for your particular imagery.
The strength option should generally be set in the 90-99 range. The lower the number, the more saturated the image becomes. It represents the percentage cut-off for the top end of the color histogram curve. The lower end is fixed at 2% of the area under the curve.
For quicker execution of this module on large images you can achieve largely similar results by switching to a coarser resolution before the running of the module (using g.region) and then back to the original resolution afterwards.
EXAMPLE
North Carolina sample dataset example with Landsat data:
g.region raster=lsat7_2002_10 -p
d.rgb blue=lsat7_2002_10 green=lsat7_2002_20 red=lsat7_2002_30
d.barscale at=55.3125,93.125 bcolor=white text_pos=over
i.colors.enhance blue=lsat7_2002_10 green=lsat7_2002_20 red=lsat7_2002_30 strength=95
d.rgb blue=lsat7_2002_10 green=lsat7_2002_20 red=lsat7_2002_30
d.barscale at=55.3125,93.125 bcolor=white text_pos=over
Uncorrected RGB composite of Landsat ETM channels B/G/R
Color corrected RGB composite of Landsat ETM channels B/G/R
TODO
The strength option requires further refinement.
SEE ALSO
d.rgb, g.region, i.oif, r.colors, r.composite, r.univar
AUTHORS
Markus Neteler, Trento, Italy
M. Hamish Bowman, Dept. Marine Science, Otago University, New Zealand
SOURCE CODE
Available at: i.colors.enhance source code
(history)
Latest change: Friday Feb 07 19:16:09 2025 in commit a82a39f