←Select platform

GammaCorrectCommand Class

Summary
Adjusts the intensity of colors in an image by changing the gamma constant that is used to map the intensity values.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public class GammaCorrectCommand : RasterCommand 
@interface LTGammaCorrectCommand : LTRasterCommand 
public class GammaCorrectCommand 
    extends RasterCommand 
public ref class GammaCorrectCommand : public RasterCommand   
class GammaCorrectCommand(RasterCommand): 
Remarks
  • Intensity values ideally follow a logarithmic progression, because the eye perceives changes in intensity as being equal when the ratio of change is equal. For example, we would see a change from 0.1 to 0.2 as being equal to a change from 0.2 to 0.4.
  • Gamma is a standard constant that is used to calculate the progression. For most CRTs the gamma constant is in the range of 2.2 to 2.5.
  • This class supports 12 and 16-bit grayscale and 48 and 64-bit color images. Support for 12 and 16-bit grayscale and 48 and 64-bit color images is available only in the Document/Medical toolkits.
  • This command does not support 32-bit grayscale images.

For more information, refer to Changing Brightness and Contrast.

If the image has a LUT and you want to work on the image data, set RasterImage.UseLookupTable to false. Then, after calling the method, reset the UselookupTable property to true, as follows:

rasterImage.UseLookupTable = false; 
Method(rasterImage); 
rasterImage.UseLookupTable = true; 

Gamma Correct Function - Before

Gamma Correct Function - Before

Gamma Correct Function - After

Gamma Correct Function - After

View additional platform support for this Gamma Correct function.

Example

Run the GammaCorrectCommand on an image and apply gamma correction.

C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Color; 
 
 
public void GammaCorrectCommandExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "sample5.cmp")); 
 
   // Prepare the command 
   GammaCorrectCommand command = new GammaCorrectCommand(); 
   //Set a gamma value of 2.5. 
   command.Gamma = 250; 
   command.Run(image); 
   codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24); 
 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
 
import java.io.File; 
import java.io.IOException; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
import static org.junit.Assert.*; 
 
import leadtools.*; 
import leadtools.codecs.*; 
import leadtools.imageprocessing.color.GammaCorrectCommand; 
 
 
public void gammaCorrectCommandExample() { 
 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.setThrowExceptionsOnInvalidImages(true); 
 
   RasterImage image = codecs.load(combine(LEAD_VARS_IMAGES_DIR, "sample5.cmp")); 
   String outputFileName = combine(LEAD_VARS_IMAGES_DIR, "Result.jpg"); 
 
   // Prepare the command 
   GammaCorrectCommand command = new GammaCorrectCommand(); 
   // Set a gamma value of 2.5. 
   command.setGamma(250); 
   command.run(image); 
   System.out.println("Executed changes on loaded image..."); 
 
   codecs.save(image, outputFileName, RasterImageFormat.JPEG, 24); 
   System.out.println("Command run and image saved to " + outputFileName); 
   assertTrue(new File(outputFileName).exists()); 
 
} 
Requirements

Target Platforms

See Also

Reference

GammaCorrectCommand Members

Leadtools.ImageProcessing.Color Namespace

Changing Brightness and Contrast

ChangeIntensityCommand Class

ChangeContrastCommand Class

HistogramContrastCommand Class

StretchIntensityCommand Class

RemapIntensityCommand Class

InvertCommand Class

ChangeHueCommand Class

ChangeSaturationCommand Class

HistogramEqualizeCommand Class

Leadtools.ImageProcessing.FillCommand

HistogramCommand Class

Leadtools.ImageProcessing.Core.WindowLevelCommand

ChannelMixerCommand Class

Leadtools.ImageProcessing.Effects.DeinterlaceCommand

DesaturateCommand Class

Leadtools.ImageProcessing.Effects.EdgeDetectStatisticalCommand

LightControlCommand Class

Leadtools.ImageProcessing.Effects.SmoothEdgesCommand

LocalHistogramEqualizeCommand Class

AddWeightedCommand Class

ColorMergeCommand Class

ColorSeparateCommand Class

MultiplyCommand Class

AutoColorLevelCommand Class

ColorLevelCommand Class

Leadtools.ImageProcessing.Core.CorrelationListCommand

GrayScaleToDuotoneCommand Class

GrayScaleToMultitoneCommand Class

Leadtools.ImageProcessing.Core.HolePunchRemoveCommand

SelectiveColorCommand Class

Leadtools.ImageProcessing.Effects.SkeletonCommand

ChangeHueSaturationIntensityCommand Class

ColorReplaceCommand Class

ColorThresholdCommand Class

MathematicalFunctionCommand Class

SegmentCommand Class

AdaptiveContrastCommand Class

ApplyMathematicalLogicCommand Class

ColorIntensityBalanceCommand Class

Leadtools.ImageProcessing.Core.ColorizeGrayCommand

ContrastBrightnessIntensityCommand Class

Leadtools.ImageProcessing.Core.DigitalSubtractCommand

DynamicBinaryCommand Class

Leadtools.ImageProcessing.Effects.EdgeDetectEffectCommand

Leadtools.ImageProcessing.SpecialEffects.FunctionalLightCommand

Leadtools.ImageProcessing.Core.MultiscaleEnhancementCommand

Leadtools.ImageProcessing.Core.SelectDataCommand

Leadtools.ImageProcessing.Core.ShiftDataCommand

AdjustTintCommand Class

GammaCorrectCommand Class

Help Version 23.0.2024.3.3
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.ImageProcessing.Color Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.