←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#
Objective-C
C++/CLI
Java
Python
public class CreateGrayscaleImageCommand : RasterCommand 
@interface LTCreateGrayScaleImageCommand : LTRasterCommand 
public class CreateGrayscaleImageCommand extends RasterCommand 
public ref class CreateGrayscaleImageCommand : public RasterCommand   
class CreateGrayscaleImageCommand(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#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing; 
 
 
public void CreateGrayscaleImageCommandExample() 
{ 
	RasterCodecs codecs = new RasterCodecs(); 
 
	string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp"); 
	string destFileName = Path.Combine(LEAD_VARS.ImagesDir, "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(); 
} 
 
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.*; 
 
 
public void createGrayscaleImageCommandExample() { 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
   RasterCodecs codecs = new RasterCodecs(); 
   String srcFileName = combine(LEAD_VARS_IMAGES_DIR, "rgsref.cmp"); 
   String destFileName = combine(LEAD_VARS_IMAGES_DIR, "rgsref_CreateGrayscaleImage.bmp"); 
 
   // Load the source image from disk 
   RasterImage srcImage = codecs.load(srcFileName); 
 
   // Create a grayscale image 
   CreateGrayscaleImageCommand cmd = new CreateGrayscaleImageCommand(); 
   cmd.setBitsPerPixel(16); 
   cmd.setLowBit(0); 
   cmd.setHighBit(15); 
   cmd.run(srcImage); 
 
   RasterImage destImage = cmd.getDestinationImage(); 
 
   // Save the image to disk 
   codecs.save(destImage, destFileName, RasterImageFormat.BMP, 16); 
 
   assertTrue("file unsuccessfully saved to " + destFileName, (new File(destFileName)).exists()); 
   System.out.printf("File saved successfully to %s%n", destFileName); 
 
   // Clean up 
   destImage.dispose(); 
   srcImage.dispose(); 
   codecs.dispose(); 
} 
Requirements

Target Platforms

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

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