←Select platform

CreateGrayscaleImageCommand Class

Summary

Converts a 1-bit, 4-bit, 8-bit, 16-bit, 24-bit, or 32-bit RasterImage to an 8-bit, 12-bit, or 16-bit grayscale image.

Syntax
C#
VB
Objective-C
C++
Java
public class CreateGrayscaleImageCommand : RasterCommand 
Public Class CreateGrayscaleImageCommand  
   Inherits RasterCommand 
@interface LTCreateGrayScaleImageCommand : LTRasterCommand 
public class CreateGrayscaleImageCommand extends RasterCommand 
public ref class CreateGrayscaleImageCommand : public RasterCommand   

Remarks

The CreateGrayscaleImageCommand command works by creating a new image in the DestinationImage property from the image passed to the Run method.

The destination image will have either 8, 12, or 16 bits/pixel grayscale values.

When converting to 12-bit or 16-bit grayscale, a Lookup table (LUT) is not used. When converting to 8-bit grayscale, a LUT is used to get the RGB for each input pixel. The grayscale value corresponding to that RGB triple is used in the destination image

LowBit and HighBit are used when converting to 12-bit or 16-bit grayscale, So the appropriate values must set before calling the Run method.

This command does not support 32-bit grayscale images.

This command does not support signed images.

Example

This example loads an image and changes it to 16-bit grayscale.

C#
VB
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing; 
using LeadtoolsExamples.Common; 
 
public void CreateGrayscaleImageCommandExample() 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
 
   string srcFileName = Path.Combine(ImagesPath.Path, "Image1.cmp"); 
   string destFileName = Path.Combine(ImagesPath.Path, "Image1_CreateGrayscaleImage.bmp"); 
 
   // Load the source image from disk 
   RasterImage srcImage = codecs.Load(srcFileName); 
 
   // Create a grayscale image 
   CreateGrayscaleImageCommand cmd = new CreateGrayscaleImageCommand(); 
   cmd.BitsPerPixel = 16; 
   cmd.LowBit = 0; 
   cmd.HighBit = 15; 
   cmd.Run(srcImage); 
 
   RasterImage destImage = cmd.DestinationImage; 
 
   // Save the image to disk 
   codecs.Save( 
      destImage, 
      destFileName, 
      RasterImageFormat.Bmp, 
      16); 
 
   // Clean up 
   destImage.Dispose(); 
   srcImage.Dispose(); 
   codecs.Dispose(); 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing 
 
Public Sub CreateGrayscaleImageCommandExample() 
   Dim codecs As New RasterCodecs() 
 
   Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp") 
   Dim destFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1_CreateGrayscaleImage.bmp") 
 
   ' Load the source image from disk 
   Dim srcImage As RasterImage = codecs.Load(srcFileName) 
 
   ' Create a grayscale image 
   Dim cmd As New CreateGrayscaleImageCommand() 
   cmd.BitsPerPixel = 16 
   cmd.LowBit = 0 
   cmd.HighBit = 15 
   cmd.Run(srcImage) 
 
   Dim destImage As RasterImage = cmd.DestinationImage 
 
   ' Save the image to disk 
   codecs.Save( 
      destImage, 
      destFileName, 
      RasterImageFormat.Bmp, 
      16) 
 
   ' Clean up 
   destImage.Dispose() 
   srcImage.Dispose() 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 
c#[Silverlight C# Example] 
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Examples; 
using Leadtools.ImageProcessing; 
using Leadtools.Windows.Media; 
 
public void CreateGrayscaleImageCommandExample(RasterImage srcImage, Stream destStream) 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
 
   // Create a grayscale image 
   CreateGrayscaleImageCommand cmd = new CreateGrayscaleImageCommand(); 
   cmd.BitsPerPixel = 16; 
   cmd.LowBit = 0; 
   cmd.HighBit = 15; 
   cmd.Run(srcImage); 
 
   RasterImage destImage = cmd.DestinationImage; 
 
   // Save the image to disk 
   codecs.Save( 
      destImage, 
      destStream, 
      RasterImageFormat.Bmp, 
      16); 
 
   // Clean up 
   destImage.Dispose(); 
   srcImage.Dispose(); 
} 
vb[Silverlight VB Example] 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing 
Imports Leadtools.Windows.Media 
 
Public Sub CreateGrayscaleImageCommandExample(ByVal srcImage As RasterImage, ByVal destStream As Stream) 
   Dim codecs As RasterCodecs = New RasterCodecs() 
 
   ' Create a grayscale image 
   Dim cmd As CreateGrayscaleImageCommand = New CreateGrayscaleImageCommand() 
   cmd.BitsPerPixel = 16 
   cmd.LowBit = 0 
   cmd.HighBit = 15 
   cmd.Run(srcImage) 
 
   Dim destImage As RasterImage = cmd.DestinationImage 
 
   ' Save the image to disk 
   codecs.Save(destImage, destStream, RasterImageFormat.Bmp, 16) 
 
   ' Clean up 
   destImage.Dispose() 
   srcImage.Dispose() 
End Sub 

Requirements

Target Platforms

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

Leadtools Assembly