←Select platform

KMeansCommand Class

Summary

Performs image segmentation and color reduction using the K-means algorithm.

Syntax

C#
VB
Java
Objective-C
WinRT C#
C++
public class KMeansCommand : RasterCommand 
@interface LTKMeansCommand : LTRasterCommand 
public class KMeansCommand extends RasterCommand 
function Leadtools.ImageProcessing.Core.KMeansCommand() 

Remarks
  • K-Means is an algorithm for analyzing data. Each observation gets placed in the cluster having the nearest mean.
  • The number of clusters returned are less than or equal to the number of input clusters.
  • If the image contains fewer clusters than the number of input clusters, this command will return the image colors in the OutCenters property.
  • This command can only process entire images. It does not support regions.
  • This command converts image to 8-bit grayscale.
  • This command supports signed/unsigned images.
  • This command supports 12 and 16-bit grayscale and 48 and 64-bit color images. Support for 12 and 16-bit grayscale and 48 and 64-bit color images is available in the Document/Medical Imaging toolkits.
Example

C#
VB
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Core; 
 
public void KMeansCommandExample() 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   //Load an image 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "cannon.jpg")); 
 
   //Prepare the command 
   KMeansCommand command = new KMeansCommand(); 
 
   command.Clusters = 7; 
   command.Type = KMeansCommandFlags.KMeans_Random; 
 
   //Apply  
   command.Run(image); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing.Core 
      Leadtools.Examples.Support.SetLicense() 
 
Public Sub KMeansCommandExample() 
   Dim codecs As RasterCodecs = New RasterCodecs() 
   codecs.ThrowExceptionsOnInvalidImages = True 
 
   'Load an image 
   Dim image As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "cannon.jpg")) 
 
   'Prepare the command 
   Dim command As KMeansCommand = New KMeansCommand() 
 
   'Apply  
   command.Clusters = 7 
   command.Type = KMeansCommandFlags.KMeans_Random 
   command.Run(image) 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 

Requirements

Target Platforms

Help Version 19.0.2017.10.27
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.ImageProcessing.Core Assembly