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



Redistributes the RGB values of a specific image, using the values in the ChannelMixerCommandFactor classes. Supported in Silverlight, Windows Phone 7

Object Model

ChannelMixerCommand ClassChannelMixerCommandFactor ClassChannelMixerCommandFactor ClassChannelMixerCommandFactor Class

Syntax

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

Example

Run the ChannelMixerCommand on an image.

Visual BasicCopy Code
Public Sub ChannelMixerCommandExample()
   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 RedFactor As ChannelMixerCommandFactor = New ChannelMixerCommandFactor
   RedFactor.Red = 50
   RedFactor.Green = 0
   RedFactor.Blue = 0
   RedFactor.Constant = 0
   Dim GreenFactor As ChannelMixerCommandFactor = New ChannelMixerCommandFactor
   GreenFactor.Red = 100
   GreenFactor.Green = 100
   GreenFactor.Blue = 0
   GreenFactor.Constant = 0
   Dim BlueFactor As ChannelMixerCommandFactor = New ChannelMixerCommandFactor
   BlueFactor.Red = 0
   BlueFactor.Green = 0
   BlueFactor.Blue = 100
   BlueFactor.Constant = 0
   Dim command As ChannelMixerCommand = New ChannelMixerCommand(RedFactor, GreenFactor, BlueFactor)
   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 ChannelMixerCommandExample()
   {
      // Load an image
      RasterCodecs codecs = new RasterCodecs();
      codecs.ThrowExceptionsOnInvalidImages = true;

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

      // Prepare the command
      ChannelMixerCommandFactor RedFactor = new ChannelMixerCommandFactor();
      RedFactor.Red = 50;
      RedFactor.Green = 0;
      RedFactor.Blue = 0;
      RedFactor.Constant = 0;
      ChannelMixerCommandFactor GreenFactor = new ChannelMixerCommandFactor();
      GreenFactor.Red = 100;
      GreenFactor.Green = 100;
      GreenFactor.Blue = 0;
      GreenFactor.Constant = 0;
      ChannelMixerCommandFactor BlueFactor = new ChannelMixerCommandFactor();
      BlueFactor.Red = 0;
      BlueFactor.Green = 0;
      BlueFactor.Blue = 100;
      BlueFactor.Constant = 0;
      ChannelMixerCommand command = new ChannelMixerCommand(RedFactor, GreenFactor, BlueFactor);
      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 ChannelMixerCommandExample(RasterImage image, Stream outStream)
{
   // Prepare the command
   ChannelMixerCommandFactor RedFactor = new ChannelMixerCommandFactor();
   RedFactor.Red = 50;
   RedFactor.Green = 0;
   RedFactor.Blue = 0;
   RedFactor.Constant = 0;
   ChannelMixerCommandFactor GreenFactor = new ChannelMixerCommandFactor();
   GreenFactor.Red = 100;
   GreenFactor.Green = 100;
   GreenFactor.Blue = 0;
   GreenFactor.Constant = 0;
   ChannelMixerCommandFactor BlueFactor = new ChannelMixerCommandFactor();
   BlueFactor.Red = 0;
   BlueFactor.Green = 0;
   BlueFactor.Blue = 100;
   BlueFactor.Constant = 0;
   ChannelMixerCommand command = new ChannelMixerCommand(RedFactor, GreenFactor, BlueFactor);
   command.Run(image);
   // Save result image
   RasterCodecs codecs = new RasterCodecs();
   codecs.Save(image, outStream, RasterImageFormat.Jpeg, 24);
   image.Dispose();
}
SilverlightVBCopy Code
Public Sub ChannelMixerCommandExample(ByVal image As RasterImage, ByVal outStream As Stream)
   ' Prepare the command
   Dim RedFactor As ChannelMixerCommandFactor = New ChannelMixerCommandFactor()
   RedFactor.Red = 50
   RedFactor.Green = 0
   RedFactor.Blue = 0
   RedFactor.Constant = 0
   Dim GreenFactor As ChannelMixerCommandFactor = New ChannelMixerCommandFactor()
   GreenFactor.Red = 100
   GreenFactor.Green = 100
   GreenFactor.Blue = 0
   GreenFactor.Constant = 0
   Dim BlueFactor As ChannelMixerCommandFactor = New ChannelMixerCommandFactor()
   BlueFactor.Red = 0
   BlueFactor.Green = 0
   BlueFactor.Blue = 100
   BlueFactor.Constant = 0
   Dim command As ChannelMixerCommand = New ChannelMixerCommand(RedFactor, GreenFactor, BlueFactor)
   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 used to rebalance the colors in an image. It can be used to make color adjustments and corrections.
  • This command supports 1-, 2-, 3-, 4-, 5-, 6-, 7-, 8-, 24-, 48- and 64-bit images and can support regions for 24-, 48- and 64-bit images. If the image has a region, the effect will be applied on the region only.
  • This command does not support signed data images.
  • This command does not support 32-bit grayscale images.
For more information, refer to Introduction to Image Processing With LEADTOOLS.
For more information, refer to Correcting Colors.

Inheritance Hierarchy

System.Object
   Leadtools.ImageProcessing.RasterCommand
      Leadtools.ImageProcessing.Color.ChannelMixerCommand

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