←Select platform

AutoBinaryCommand Class

Summary
Applies binary segmentation to the image using an automatically calculated threshold based on a two-peak method of statistical analysis of the histogram. This command is available in the Document/Medical Toolkits.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public class AutoBinaryCommand : RasterCommand 
@interface LTAutoBinaryCommand : LTRasterCommand 
public class AutoBinaryCommand 
    extends RasterCommand 
public ref class AutoBinaryCommand : public RasterCommand   
class AutoBinaryCommand(RasterCommand): 
Remarks
  • The image is transformed into a binary image using a threshold calculated automatically based on statistical features of the image. Best results are obtained with grayscale 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 only in the Document/Medical toolkits.
  • If the image has a region, the effect will be applied on the region only.
  • This command does not support signed data images.
  • This command does not support 32-bit grayscale images.

Use the AutoBinaryCommand when you simply want to apply binary segmentation to the bitmap using an automatically calculated threshold based on a two-peak method of statistical analysis on its histogram. Use the DynamicBinaryCommand to convert an image into a black and white image without changing its bits per pixel. Use the AutoBinarizeCommand if you want:

  • Automatic pre-processing
  • Pre-processing to include background elimination
  • Pre-processing to include color leveling
  • To perform automatic, percentile or median thresholding
  • To manually specify a threshold value

For more information, refer to Processing an Image. For more information, refer to Removing Noise.

Auto Binary Segment Function - Before

Auto Binary Segment Function - Before

Auto Binary Segment Function - After

Auto Binary Segment Function - After

View additional platform support for this Auto Binary Segment function.

Example

Run the AutoBinaryCommand on an image and apply automatic binary segmentation on it.

C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Color; 
 
 
public void AutoBinaryCommandExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, @"ImageProcessingDemo\Beauty16.jpg")); 
 
   // Prepare the command 
   AutoBinaryCommand command = new AutoBinaryCommand(); 
   //Apply Auto Binary Segment. 
   command.Run(image); 
   codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24); 
 
} 
 
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 autoBinaryCommandExample() { 
 
   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, "Beauty16.jpg")); 
 
   // Prepare the command 
   AutoBinaryCommand command = new AutoBinaryCommand(); 
   // Apply Auto Binary Segment 
   command.run(image); 
   codecs.save(image, combine(LEAD_VARS_IMAGES_DIR, "Result.jpg"), RasterImageFormat.JPEG, 24); 
 
   System.out.println("Command run and image saved to " + combine(LEAD_VARS_IMAGES_DIR, "Result.jpg")); 
   assertTrue(new File(combine(LEAD_VARS_IMAGES_DIR, "Result.jpg")).exists()); 
 
} 
Requirements

Target Platforms

See Also

Reference

AutoBinaryCommand Members

Leadtools.ImageProcessing.Color Namespace

Introduction to Image Processing With LEADTOOLS

Removing Noise

Leadtools.ImageProcessing.Effects.SharpenCommand

PosterizeCommand Class

Leadtools.ImageProcessing.Effects.MosaicCommand

Leadtools.ImageProcessing.Effects.EmbossCommand

Leadtools.ImageProcessing.Effects.AverageCommand

Leadtools.ImageProcessing.Core.MedianCommand

Leadtools.ImageProcessing.Effects.AddNoiseCommand

IntensityDetectCommand Class

Leadtools.ImageProcessing.Effects.SpatialFilterCommand

Leadtools.ImageProcessing.Core.MaximumCommand

Leadtools.ImageProcessing.Core.MinimumCommand

Leadtools.ImageProcessing.Effects.OilifyCommand

SolarizeCommand Class

Leadtools.ImageProcessing.Core.WindowLevelCommand

Leadtools.ImageProcessing.Effects.BinaryFilterCommand

ColorLevelCommand Class

Leadtools.ImageProcessing.Effects.BinaryFilterCommand

Leadtools.ImageProcessing.SpecialEffects.BricksTextureCommand

Leadtools.ImageProcessing.Core.DeskewCommand

Leadtools.ImageProcessing.SpecialEffects.DiffuseGlowCommand

Leadtools.ImageProcessing.SpecialEffects.GlowCommand

Leadtools.ImageProcessing.Core.HalfTonePatternCommand

Leadtools.ImageProcessing.Effects.HighPassCommand

Leadtools.ImageProcessing.Effects.MaskConvolutionCommand

Leadtools.ImageProcessing.SpecialEffects.PerspectiveCommand

Leadtools.ImageProcessing.SpecialEffects.PlasmaCommand

Leadtools.ImageProcessing.SpecialEffects.PointillistCommand

Leadtools.ImageProcessing.SpecialEffects.FragmentCommand

Leadtools.ImageProcessing.Effects.UnsharpMaskCommand

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.