←Select platform

CountLookupTableColors Method

Gets the total number of entries between the start color and the end color, and the index of the last occurrence of the start color. The start and end colors are determined internally.
+ (nullable LTCountLookupTableColorsResult*)countLookupTableColors:(nullable NSArray<LTRasterColor *> *)lookupTable 
                                                             error:(NSError **)error 
public static CountLookupTableColorsResult countLookupTableColors( 
   RasterColor[] lookupTable, 
   CountLookupTableColorsType type 
def CountLookupTableColors(self,type): 


8-bit lookup table array to be filled by this method.

Flag that indicates whether the LookupTable contains signed or unsigned data.

  • Suppose you have a LookupTable with 4096 colors, the first 200 colors are black and the last 30 are white, the rest of the colors between black and white are gray. This is what the method will provide : NumberOfEntries (property of CountLookupTableColorsResult) : 3868. FirstIndex (property of CountLookupTableColorsResult) : 199.

  • In more detail this is: Total number of entries: 4096 (0 - 4095). First index of the end color: 4095 - 30 + 1 (+1 to add the first index of the end color to the range). Number of occurrences of the starting color: 200 (0 - 199). The last index of the start color: 199. Total number of entries: (4095 - 30 + 1) - 199 + 1.

  • This method supports 12 and 16-bit grayscale images. Support for 12 and 16-bit grayscale images is available only in the Document/Medical toolkits.

  • This method uses 8-bit lookup tables. See CountLookupTableColorsExt for a method that uses 16-bit lookup tables.

Run the CountLookupTableColors method to get the number of entries and start index from the image.

using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing; 
using Leadtools.ImageProcessing.Core; 
public void CountLookupTableColorsExample() 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "RGSRef.cmp")); 
   // Set the new lookup table 
   image.UseLookupTable = true; 
   image.SetLookupTable(new RasterColor[3]); 
   // Prepare the command 
   CountLookupTableColorsResult command = CoreUtilities.CountLookupTableColors(image.GetLookupTable(), CountLookupTableColorsType.Signed); 
   MessageBox.Show("First Index = " + command.FirstIndex + "\n" + 
      "Number Of Entries = " + command.NumberOfEntries); 
static class LEAD_VARS 
   public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; 

Target Platforms

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

Leadtools.ImageProcessing.Core Assembly

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