←Select platform

Channel Property

Summary
Gets or sets a flag that indicates the channel for which to get the histogram and the bits to use in calculating the histogram.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public HistogramCommandFlags Channel { get; set; } 
@property (nonatomic, assign) LTHistogramCommandFlags channel; 
public int getChannel(); 
public void setChannel( 
   int intValue 
); 
public: 
property HistogramCommandFlags Channel { 
   HistogramCommandFlags get(); 
   void set (    HistogramCommandFlags ); 
} 
Channel # get and set (HistogramCommand) 

Property Value

Value that indicates the channel for which to get the histogram and the bits to use in calculating the histogram.

Remarks

In order to speed up widely used image processing filters in LEADTOOLS, the grayscale value (master channel) of a colored image is calculated using the following formulas:

#define CalcGrayValue(r, g, b) ((L_UCHAR)(((L_UCHAR) (((2 * (L_UINT) (r)) + (5 * (L_UINT) (g)) + (L_UINT) (b) + 4) / 8)))) 
#define CalcGrayValue16(r, g, b) ((L_UINT16) (((2 * (L_UINT32) (r)) + (5 * (L_UINT32) (g)) + (L_UINT32) (b) + 4) / 8)) 
#define CalcGrayValue32(r, g, b) ((L_UINT32) (((2 * (L_UINT32) (r)) + (5 * (L_UINT32) (g)) + (L_UINT32) (b) + 4) / 8)) 
Example
C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Color; 
 
 
public void HistogramCommandExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg")); 
 
   // Prepare the command 
   HistogramCommand command = new HistogramCommand(); 
   long[] histogramValues; 
   //Create the red-channel histogram. 
   command.Channel = HistogramCommandFlags.Red | HistogramCommandFlags.AllBits; 
   command.Run(image); 
   codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24); 
   histogramValues = command.Histogram; 
 
} 
 
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.color.*; 
 
 
public void histogramCommandExample() { 
 
    final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
 
    // Load an image 
    RasterCodecs codecs = new RasterCodecs(); 
    codecs.setThrowExceptionsOnInvalidImages(true); 
 
    RasterImage image = codecs.load(combine(LEAD_VARS_IMAGES_DIR, "Master.jpg")); 
 
    // Prepare the command 
    HistogramCommand command = new HistogramCommand(); 
    long[] histogramValues; 
    // Create the red-channel histogram 
    command.setChannel(HistogramCommandFlags.RED.getValue() | HistogramCommandFlags.ALL_BITS.getValue()); 
    command.run(image); 
    histogramValues = command.getHistogram(); 
 
    System.out.println("Histogram Array Length: " + histogramValues.length); 
    assertTrue(histogramValues.length != 0); 
 
} 
Requirements

Target Platforms

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

Leadtools.ImageProcessing.Color Assembly

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