LEADTOOLS Image Processing (Leadtools.ImageProcessing.Color assembly)
LEAD Technologies, Inc

ColorLevelCommand Class

Example 





Members 
Applies color leveling to an image. It changes the image shadows, midtones and highlights. This function is useful for pre-processing images for the purpose of improving barcode recognition results. .NET support Silverlight support
Object Model
ColorLevelCommand ClassColorLevelCommandData ClassColorLevelCommandData ClassColorLevelCommandData ClassColorLevelCommandData Class
Syntax
'Declaration
 
Public Class ColorLevelCommand 
   Inherits Leadtools.ImageProcessing.RasterCommand
   Implements Leadtools.ImageProcessing.IRasterCommand 
'Usage
 
Dim instance As ColorLevelCommand
public sealed class ColorLevelCommand : Leadtools.ImageProcessing.IRasterCommand  
function Leadtools.ImageProcessing.Color.ColorLevelCommand()
Remarks

For more information, refer to Changing Brightness and Contrast. For more information, refer to Correcting Colors.
Example
 
Public Sub ColorLevelCommandExample()
   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 blue As ColorLevelCommandData = New ColorLevelCommandData
   Dim master As ColorLevelCommandData = New ColorLevelCommandData
   ' Specify Image levels
   blue.MinimumInput = 20
   blue.MaximumInput = 200
   blue.MinimumOutput = 0
   blue.MaximumOutput = 255
   blue.Gamma = 100
   ' Master will cause the image to be Inversed
   master.MinimumInput = 0
   master.MaximumInput = 255
   master.MinimumOutput = 255
   master.MaximumOutput = 0
   master.Gamma = 100
   ' Level the Blue and Master channels
   Dim command As ColorLevelCommand = New ColorLevelCommand(master, Nothing, Nothing, blue, ColorLevelCommandFlags.Blue Or ColorLevelCommandFlags.Master)
   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
public void ColorLevelCommandExample()
   {
      // Load an image
      RasterCodecs codecs = new RasterCodecs();
      codecs.ThrowExceptionsOnInvalidImages = true;

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

      // Prepare the command
      ColorLevelCommandData blue    = new ColorLevelCommandData();
      ColorLevelCommandData master  = new ColorLevelCommandData();
      //Specify Image levels
      blue.MinimumInput    = 20;
      blue.MaximumInput    = 200;
      blue.MinimumOutput   = 0;
      blue.MaximumOutput   = 255;
      blue.Gamma           = 100;
      // Master will cause the image to be Inversed
      master.MinimumInput  = 0;
      master.MaximumInput  = 255;
      master.MinimumOutput = 255;
      master.MaximumOutput = 0;
      master.Gamma         = 100;
      // Level the Blue and Master channels
      ColorLevelCommand command = new ColorLevelCommand(master, null, null, blue, ColorLevelCommandFlags.Blue | ColorLevelCommandFlags.Master);
      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";
}
[TestMethod]
public async Task ColorLevelCommandExample()
{
   // Load an image
   RasterCodecs codecs = new RasterCodecs();
   codecs.ThrowExceptionsOnInvalidImages = true;
   // Load the image
   string srcFileName = @"Assets\Image1.cmp";
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   // Prepare the command
   ColorLevelCommandData blue    = new ColorLevelCommandData();
   ColorLevelCommandData master  = new ColorLevelCommandData();
   //Specify Image levels
   blue.MinimumInput    = 20;
   blue.MaximumInput    = 200;
   blue.MinimumOutput   = 0;
   blue.MaximumOutput   = 255;
   blue.Gamma           = 100;
   // Master will cause the image to be Inversed
   master.MinimumInput  = 0;
   master.MaximumInput  = 255;
   master.MinimumOutput = 255;
   master.MaximumOutput = 0;
   master.Gamma         = 100;
   // Level the Blue and Master channels
   ColorLevelCommand command = new ColorLevelCommand(master, null, null, blue, ColorLevelCommandFlags.Blue | ColorLevelCommandFlags.Master);
   command.Run(image);

   string destFileName = @"result.jpg";
   StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
   await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Jpeg, 0);
}
public void ColorLevelCommandExample(RasterImage image, Stream outStream)
{
   // Prepare the command
   ColorLevelCommandData blue    = new ColorLevelCommandData();
   ColorLevelCommandData master  = new ColorLevelCommandData();
   //Specify Image levels
   blue.MinimumInput    = 20;
   blue.MaximumInput    = 200;
   blue.MinimumOutput   = 0;
   blue.MaximumOutput   = 255;
   blue.Gamma           = 100;
   // Master will cause the image to be Inversed
   master.MinimumInput  = 0;
   master.MaximumInput  = 255;
   master.MinimumOutput = 255;
   master.MaximumOutput = 0;
   master.Gamma         = 100;
   // Level the Blue and Master channels
   ColorLevelCommand command = new ColorLevelCommand(master, null, null, blue, ColorLevelCommandFlags.Blue | ColorLevelCommandFlags.Master);
   command.Run(image);
   // Save result image
   RasterCodecs codecs = new RasterCodecs();
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24);
   image.Dispose();
}
Public Sub ColorLevelCommandExample(ByVal image As RasterImage, ByVal outStream As Stream)
   ' Prepare the command
   Dim blue As ColorLevelCommandData = New ColorLevelCommandData()
   Dim master As ColorLevelCommandData = New ColorLevelCommandData()
   'Specify Image levels
   blue.MinimumInput = 20
   blue.MaximumInput = 200
   blue.MinimumOutput = 0
   blue.MaximumOutput = 255
   blue.Gamma = 100
   ' Master will cause the image to be Inversed
   master.MinimumInput = 0
   master.MaximumInput = 255
   master.MinimumOutput = 255
   master.MaximumOutput = 0
   master.Gamma = 100
   ' Level the Blue and Master channels
   Dim command As ColorLevelCommand = New ColorLevelCommand(master, Nothing, Nothing, blue, ColorLevelCommandFlags.Blue Or ColorLevelCommandFlags.Master)
   command.Run(image)
   ' Save result image
   Dim codecs As RasterCodecs = New RasterCodecs()
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24)
   image.Dispose()
End Sub
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

ColorLevelCommand Members
Leadtools.ImageProcessing.Color Namespace
Changing Brightness and Contrast
Correcting Colors
Leadtools.ImageProcessing.Effects.SharpenCommand
PosterizeCommand Class
Leadtools.ImageProcessing.Effects.MosaicCommand
Leadtools.ImageProcessing.Effects.EmbossCommand
Leadtools.ImageProcessing.Core.MedianCommand
Leadtools.ImageProcessing.Effects.AddNoiseCommand
IntensityDetectCommand Class
Leadtools.ImageProcessing.Effects.SpatialFilterCommand
Leadtools.ImageProcessing.Effects.BinaryFilterCommand
Leadtools.ImageProcessing.Core.MaximumCommand
Leadtools.ImageProcessing.Core.MinimumCommand
Leadtools.ImageProcessing.Effects.OilifyCommand
SolarizeCommand Class
Leadtools.ImageProcessing.Core.WindowLevelCommand
AutoColorLevelCommand Class
SelectiveColorCommand Class
AdjustTintCommand Class
Leadtools.ImageProcessing.Core.HalfToneCommand

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.