LEADTOOLS Image Processing (Leadtools.ImageProcessing.Color assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
GammaCorrectExtendedCommand Class
See Also  Members  



Adjusts the intensity of colors in an image by changing the gamma constant that is used to map the intensity values. Either of two different color spaces can be specified. Supported in Silverlight, Windows Phone 7

Object Model

GammaCorrectExtendedCommand Class

Syntax

Visual Basic (Declaration) 
Public Class GammaCorrectExtendedCommand 
   Inherits Leadtools.ImageProcessing.RasterCommand
   Implements IRasterCommand 
Visual Basic (Usage)Copy Code
Dim instance As GammaCorrectExtendedCommand
C# 
public class GammaCorrectExtendedCommand : Leadtools.ImageProcessing.RasterCommand, IRasterCommand  
C++/CLI 
public ref class GammaCorrectExtendedCommand : public Leadtools.ImageProcessing.RasterCommand, IRasterCommand  

Example

Run the GammaCorrectExtendedCommand on an image.

Visual BasicCopy Code
Public Sub GammaCorrectExtendedCommandExample()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True

   Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"))

   ' Prepare the command
   Dim command As New GammaCorrectExtendedCommand

   ' Apply gamma effect on image using the YUV color space and gamma value of 2.50
   command.Gamma = 250
   command.Type = GammaCorrectExtendedCommandType.YuvSpace
   command.Run(leadImage)
   codecs.Save(leadImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24)

End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
C#Copy Code
public void GammaCorrectExtendedCommandExample()
   {
      // Load an image
      RasterCodecs codecs = new RasterCodecs();
      codecs.ThrowExceptionsOnInvalidImages = true;

      RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"));

      // Prepare the command
      GammaCorrectExtendedCommand command = new GammaCorrectExtendedCommand();

      // Apply gamma effect on image using the YUV color space and gamma value of 2.50
      command.Gamma = 250;
      command.Type = GammaCorrectExtendedCommandType.YuvSpace;
      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:\Users\Public\Documents\LEADTOOLS Images";
}
SilverlightCSharpCopy Code
public void GammaCorrectExtendedCommandExample(RasterImage image, Stream outStream)
{
   // Prepare the command
   GammaCorrectExtendedCommand command = new GammaCorrectExtendedCommand();
   // Apply gamma effect on image using the YUV color space and gamma value of 2.50
   command.Gamma = 250;
   command.Type = GammaCorrectExtendedCommandType.YuvSpace;
   command.Run(image);

   // Save result image
   RasterCodecs codecs = new RasterCodecs();
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24);
   image.Dispose();
}
SilverlightVBCopy Code
Public Sub GammaCorrectExtendedCommandExample(ByVal image As RasterImage, ByVal outStream As Stream)
   ' Prepare the command
   Dim command As GammaCorrectExtendedCommand = New GammaCorrectExtendedCommand()
   ' Apply gamma effect on image using the YUV color space and gamma value of 2.50
   command.Gamma = 250
   command.Type = GammaCorrectExtendedCommandType.YuvSpace
   command.Run(image)

   ' Save result image
   Dim codecs As RasterCodecs = New RasterCodecs()
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24)
   image.Dispose()
End Sub

Remarks

  • This command is like the Leadtools.ImageProcessing.Color.GammaCorrectCommand method, but has been extended to allow the specification of the colorspace to be used.
  • 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 command 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.

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;
            

Inheritance Hierarchy

System.Object
   Leadtools.ImageProcessing.RasterCommand
      Leadtools.ImageProcessing.Color.GammaCorrectExtendedCommand

Requirements

Target Platforms: Silverlight, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)

See Also

Reference

GammaCorrectExtendedCommand Members
Leadtools.ImageProcessing.Color Namespace
GammaCorrectCommand Class
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