- NAME
- SYNOPSIS
- FUNCTION DESCRIPTIONS

- ContrastImage
- EqualizeImage
- GammaImage
- LevelImage
- LevelImageChannel
- ModulateImage
- NegateImage
- NormalizeImage

# NAME

enhance - Methods to enhance or adjust an image

# SYNOPSIS

unsigned int ContrastImage( Image *image, const unsigned int sharpen );

unsigned int EqualizeImage( Image *image );

unsigned int GammaImage( Image *image, const char *level );

unsigned int LevelImage( Image *image, const char *level );

unsigned int LevelImageChannel( Image *image, const char *level, const ChannelType channel, const double black_point, const double mid_point, const double white_point );

unsigned int ModulateImage( Image *image, const char *modulate );

unsigned int NegateImage( Image *image, const unsigned int grayscale );

unsigned int NormalizeImage( Image *image );

# FUNCTION DESCRIPTIONS

## ContrastImage

> ContrastImage() enhances the intensity differences between the lighter and darker elements of the image. Set sharpen to a value other than 0 to increase the image contrast otherwise the contrast is reduced.

The format of the ContrastImage method is:

> unsigned int ContrastImage ( Image *image, const unsigned int sharpen );

A description of each parameter follows:

image:
  The image.

sharpen:
  Increase or decrease image contrast.

## EqualizeImage

> EqualizeImage() applies a histogram equalization to the image.

The format of the EqualizeImage method is:

> unsigned int EqualizeImage ( Image *image );

A description of each parameter follows:

image:
  The image.

## GammaImage

> Use GammaImage() to gamma-correct an image. The same image viewed on different devices will have perceptual differences in the way the image's intensities are represented on the screen. Specify individual gamma levels for the red, green, and blue channels, or adjust all three with the gamma parameter. Values typically range from 0.8 to 2.3.

You can also reduce the influence of a particular channel with a gamma value of 0.

The format of the GammaImage method is:

> unsigned int GammaImage ( Image *image, const char *level );

A description of each parameter follows:

image:
  The image.

level:
  Define the level of gamma correction.

## LevelImage

> LevelImage() adjusts the levels of an image by scaling the colors falling between specified white and black points to the full available quantum range. The parameters provided represent the black, mid, and white points. The black point specifies the darkest color in the image. Colors darker than the black point are set to zero. Mid point specifies a gamma correction to apply to the image. White point specifies the lightest color in the image. Colors brighter than the white point are set to the maximum quantum value.

The format of the LevelImage method is:

> unsigned int LevelImage ( Image *image, const char *level );

A description of each parameter follows:

image:
  The image.

levels:
  Specify the levels as a string of the form ``black/mid/white'' (e.g. ``10,1.0,65000) where black and white have the range of 0-MaxRGB, and mid has the range 0-10.

## LevelImageChannel

> LevelImageChannel() adjusts the levels of a particular image channel by scaling the colors falling between specified white and black points to the full available quantum range. The parameters provided represent the black, mid, and white points. The black point specifies the darkest color in the image. Colors darker than the black point are set to zero. Mid point specifies a gamma correction to apply to the image. White point specifies the lightest color in the image. Colors brighter than the white point are set to the maximum quantum value.

The format of the LevelImage method is:

> unsigned int LevelImageChannel ( Image *image, const char *level, const ChannelType channel, const double black_point, const double mid_point, const double white_point );

A description of each parameter follows:

image:
  The image.

channel:
  Identify which channel to extract: Red, Cyan, Green, Magenta, Blue, Yellow, or Opacity.

black_point, mid_point, white_point:
  Specify the levels where the black and white points have the range of 0-MaxRGB, and mid has the range 0-10.

## ModulateImage

> ModulateImage() lets you control the brightness, saturation, and hue of an image. Modulate represents the brightness, saturation, and hue as one parameter ( e.g. 90, 150, 100 ) .

The format of the ModulateImage method is:

> unsigned int ModulateImage ( Image *image, const char *modulate );

A description of each parameter follows:

image:
  The image.

modulate:
  Define the percent change in brightness, saturation, and hue.

## NegateImage

Method NegateImage negates the colors in the reference image. The Grayscale option means that only grayscale values within the image are negated.

The format of the NegateImage method is:

> unsigned int NegateImage ( Image *image, const unsigned int grayscale );

A description of each parameter follows:

image:
  The image.

## NormalizeImage

> The NormalizeImage() method enhances the contrast of a color image by adjusting the pixels color to span the entire range of colors available.

The format of the NormalizeImage method is:

> unsigned int NormalizeImage ( Image *image );

A description of each parameter follows:

image:
  The image.