Leadtools.ImageProcessing.Color Send comments on this topic. | Back to Introduction - All Topics | Help Version 16.5.9.25
IntensityDetectCommand Class
See Also  Members   Example 



Applies binary segmentation to an image by filtering a specific image to detect colors in a specific intensity range, in a specific color channel(s).

Syntax

Visual Basic (Declaration) 
Public Class IntensityDetectCommand 
   Inherits RasterCommand
   Implements IRasterCommand 
Visual Basic (Usage)Copy Code
Dim instance As IntensityDetectCommand
C# 
public class IntensityDetectCommand : RasterCommand, IRasterCommand  
C++/CLI 
public ref class IntensityDetectCommand : public RasterCommand, IRasterCommand  

Example

Run the IntensityDetectCommand on an image.

Visual BasicCopy Code
Public Sub IntensityDetectCommandExample()
   RasterCodecs.Startup()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True

   Dim leadImage As RasterImage = codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "Master.jpg")

   ' Prepare the command
   Dim command As IntensityDetectCommand = New IntensityDetectCommand
   'Apply the filter.
   command.LowThreshold = 128
   command.HighThreshold = 255
   command.InColor = New RasterColor(255, 255, 255)
   command.OutColor = New RasterColor(0, 0, 0)
   command.Channel = IntensityDetectCommandFlags.Master

   command.Run(leadImage)
   codecs.Save(leadImage, LeadtoolsExamples.Common.ImagesPath.Path + "Result.jpg", RasterImageFormat.Jpeg, 24)

   RasterCodecs.Shutdown()
End Sub
C#Copy Code
public void IntensityDetectCommandExample() 

   // Load an image 
   RasterCodecs.Startup(); 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(LeadtoolsExamples.Common.ImagesPath.Path + "Master.jpg"); 
 
   // Prepare the command 
   IntensityDetectCommand command = new IntensityDetectCommand(); 
   //Apply the filter. 
   command.LowThreshold = 128; 
   command.HighThreshold = 255; 
   command.InColor  = new RasterColor(255, 255, 255); 
   command.OutColor = new RasterColor(0, 0, 0); 
   command.Channel  = IntensityDetectCommandFlags.Master; 
   command.Run(image); 
   codecs.Save(image, LeadtoolsExamples.Common.ImagesPath.Path + "Result.jpg", RasterImageFormat.Jpeg, 24); 
 
   RasterCodecs.Shutdown(); 
}

Remarks

  • The image is divided into two parts, inner and outer according to the values of the LowThreshold property and the HighThreshold property.
  • The class can process 2 or more channels at a time by OR-ing two or more flags.
  • This class 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 only in the Document/Medical toolkits.
  • This command does not support 32-bit grayscale images.
For more information, refer to Changing Brightness and Contrast.
For more information, refer to Correcting Colors.

For more information, refer to Detecting and Enhancing Edges and Lines.

Inheritance Hierarchy

System.Object
   Leadtools.ImageProcessing.RasterCommand
      Leadtools.ImageProcessing.Color.IntensityDetectCommand

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also