7.3. Colors

The Color submenu

The Color submenu of the Layers menu contains operations that alter colors within the image. The top entries give access to the Color tools, which are described in the Toolbox chapter.

Desaturate

This command can be accessed from an image menubar as Layers->Color->Desaturate.

"Desaturate" causes all colors in the active layer to be converted to correspondingly bright shades of gray. It differs from converting the image to grayscale in two respects: first, it only operates on the active layer; second, the colors in the layer continue to be three-component RGB colors, and nothing prevents you from painting the desaturated layer with any colors you please. Desaturate works only on layers from RGB images; if the image is Grayscale or Indexed, the menu entry will be insensitive.

Invert

This command can be accessed from an image menubar as Layers->Color->Invert.

"Invert" causes all colors in the active layer to be inverted in brightness, as though the image were converted into a negative. Dark areas turn to bright and conversely; hues are replaced by their complement (for more informations about colors see glossary at Color Model). Invert works on layers from RGB and Grayscale images, but if the image is Indexed, the menu entry will be insensitive.

Submenu: Auto

The Colors/Auto submenu

The Layers/Colors/Auto submenu contains operations that automatically adjust the distribution of colors in the active layer, without requiring input from the user. Several of them are actually implemented as plugins.

Equalize

This command can be accessed from an image menubar as Layers->Color->Auto->Equalize.

"Equalize" adjusts the brightness of colors across the active layer so that the histogram for the Value channel is as nearly as possible flat, that is, so that each possible brightness value appears at about the same number of pixels as each other value. Sometimes Equalize works wonderfully at enhancing the contrasts in an image. Other times it gives garbage. It is a very powerful operation, which can either work miracles on an image or destroy it.

Color Enhance

This command can be accessed from an image menubar as Layers->Color->Auto->Color Enhance.

"Color Enhance" increases the saturation range of colors in the layer without altering brightness or hue. It does this by converting the colors in HSV space, measuring the range of saturation values across the image, then stretching this range to be as large as possible, and finally converting the colors back to RGB. It works on layers from RGB and Indexed images. If the image is Grayscale, the menu entry will be insensitive.

Normalize

This command can be accessed from an image menubar as Layers->Color->Auto->Normalize.

"Normalize" scales brightness values across the active layer so that the darkest point becomes black, and the brightest point becomes as bright as possible without altering its hue. This is often a "magic fix" for images that are dim or washed out. Normalize works on layers from RGB, Grayscale, and Indexed images.

Stretch Contrast

This command can be accessed from an image menubar as Layers->Color->Auto->Stretch Contrast.

"Stretch Contrast" is somewhat similar to Normalize in its effects, except that it works on each color channel of the layer individually, rather than just the brightness values. This usually leads to color shifts within the image, so it may not produce the result you are looking for. Stretch Contrast operates on layers from RGB, Grayscale, and Indexed images.

Stretch HSV

This command can be accessed from an image menubar as Layers->Color->Auto->Stretch HSV.

"Stretch HSV" does the same thing as "Stretch Contrast", except that it works in HSV color space rather than RGB color space. Thus, it independently stretches the hue channel, the saturation channel, and the value channel. Occasionally the results are good, often they are a bit odd. Stretch HSV operates on layers from RGB and Indexed images. If the image is Grayscale, the menu entry will be insensitive.