GraphicsMagick

- Home
- Project
- Download
- Install
- Source
- News
- Utilities
- Programming
- Reference

# enhance

Methods to enhance or adjust an image

# ContrastImage

## Synopsis

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

## Description

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

## Synopsis

    unsigned int EqualizeImage( Image *image );

## Description

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

## Synopsis

    MagickPassFail GammaImage( Image *image, const char *level );

## Description

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 (e.g. "1.0,2.2,0.45"), or adjust all three with a single gamma parameter. Values typically range from 0.45 to 2.6.

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

The format of the GammaImage method is:

    MagickPassFail GammaImage( Image *image, const char *level );

A description of each parameter follows:

image:

  The image.

level:

  Define the level of gamma correction.

# LevelImage

## Synopsis

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

## Description

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 (gamma), 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

## Synopsis

    MagickPassFail LevelImageChannel( Image *image, const ChannelType channel,
                                      const double black_point, const double mid_point,
                                      const double white_point );

## Description

LevelImageChannel() adjusts the levels of one or more channels by scaling the colors falling between specified white and black points to the full available quantum range. The parameters provided represent the black, mid (gamma), 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:

    MagickPassFail LevelImageChannel( Image *image, const ChannelType channel,
                                      const double black_point, const double mid_point,
                                      const double white_point );

image:

  The image.

channel:

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

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

## Synopsis

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

## Description

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

## Synopsis

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

## Description

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

## Synopsis

    unsigned int NormalizeImage( Image *image );

## Description

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.

Copyright © GraphicsMagick Group 2002-2025