- About Graphics Mill
- What's New?
- Breaking Changes in Graphics Mill 12
- Breaking Changes in Graphics Mill 11
- Features
- Supported File Formats
- System Requirements
- Getting Started
- Working with Image Formats
- Transforming Images (Resize, Rotate, Crop)
- Working with Metadata
- Color Management and Color Reduction
- Drawing Text and Graphics
- Color Keying (Green Screen Removal)
- Channels and Pixel Data
- Color and Tone Correction
- Working with Photoshop (PSD) Files
- Image Filters
- Processing Large Images
- Basics of Image Processing
- Troubleshooting
- Class Library Reference
- Aurigma.GraphicsMill Namespace
- Aurigma.GraphicsMill.Codecs Namespace
- Aurigma.GraphicsMill.Codecs.ClippingPath Namespace
- Aurigma.GraphicsMill.Codecs.Psd Namespace
- Aurigma.GraphicsMill.Drawing Namespace
- Aurigma.GraphicsMill.Drawing.Art Namespace
- Aurigma.GraphicsMill.Drawing.Effects Namespace
- Aurigma.GraphicsMill.Licensing Namespace
- Aurigma.GraphicsMill.Templates Namespace
- Aurigma.GraphicsMill.Transforms Namespace
- AddNoise Class
- AdjustHsl Class
- AutoCrop Class
- BezierTransform Class
- Blender Class
- BlenderOnInitEventArgs Class
- BlendMode Enumeration
- Blur Class
- Brightness Class
- BrightnessContrast Class
- ChannelBalance Class
- CnvTransform Class
- ColorConverter Class
- ColorManagementEngine Enumeration
- ColorOverlay Class
- ColorQuantizationAlgorithm Enumeration
- ColorTransformationIntent Enumeration
- CombineMode Enumeration
- Combiner Class
- CombinerOnInitEventArgs Class
- ContiguousBackgroundRemoval Class
- Contrast Class
- Crop Class
- Cylindrize Class
- Desaturate Class
- DistributionKind Enumeration
- DitheringType Enumeration
- EdgeDetect Class
- EdgeDetectMode Enumeration
- Emboss Class
- FadeType Enumeration
- Flip Class
- FlipType Enumeration
- FloodFill Class
- FloodFillMode Enumeration
- GreenScreenRemoval Class
- HistogramEqualize Class
- IBitmapTransform Interface
- ImageTransmitter Class
- InterpolationMode Enumeration
- Invert Class
- Levels Class
- Lut Class
- LutInterpolationMode Enumeration
- LutTransform Class
- MaskTransform Class
- Matrix Class
- MatrixTransform Class
- Maximum Class
- Median Class
- Minimum Class
- Mosaic Class
- RemoveAlpha Class
- Resize Class
- ResizeInterpolationMode Enumeration
- ResizeMode Enumeration
- ResolutionModifier Class
- Rotate Class
- ScaleAlpha Class
- SetAlpha Class
- Shadow Class
- Sharpen Class
- SmartBlur Class
- Solarize Class
- Spray Class
- StackBlur Class
- Texturize Class
- Transform Class
- Transparentize Class
- UnsharpMask Class
- Licensing
- End User License Agreement
- Copyright Notices
HistogramEqualize Class
Applies to: Graphics Mill 12.1, 6.x-12.x (may differ)
Applies a histogram equalization.
Applies a histogram equalization.
Namespace:
Aurigma.GraphicsMill.Transforms
Assembly:
Aurigma.GraphicsMill (in Aurigma.GraphicsMill.dll)
Syntax
public sealed class HistogramEqualize : MaskTransform
Remarks
Histogram equalization algorithm is used for automatically enhancing the image contrast. As usual it makes the image too posterized, that's why it is seldom used to with photos (you should use Contrast effect with Auto property set to true). However it suits for scientific tasks (as a preparation before applying some specific algorithm like vectorization, recognition, etc).
The main idea of this algorithm is to build a look-up table (LUT) which makes the bitmap histogram equalized (all histogram entries are equal each other). Actually the histogram is never equalized absolutely, however this algorithm makes it as much as possible. After that this LUT is applied using LutTransform class.
This class enables you to use not only histogram of the source bitmap, but any other histogram too. In this case algorithm will build the LUT for this histogram, but apply this LUT on the source bitmap. To specify another histogram, use property Histogram. If you want to get a histogram from the bitmap automatically, set null to this property.