←Select platform

EdgeDetectorCommand Class

Summary
Applies the specified edge filter to an image. This command is available in the Document/Medical Toolkits.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public class EdgeDetectorCommand : RasterCommand 
@interface LTEdgeDetectorCommand : LTRasterCommand 
public class EdgeDetectorCommand 
    extends RasterCommand 
public ref class EdgeDetectorCommand : public RasterCommand   
class EdgeDetectorCommand(RasterCommand): 
Remarks
  • Filters such as Sobel filter, Prewitt filter, Laplacian filter, and Gradient filter are used to determine the pixels belonging to edges in the image.
  • The threshold range for the 16, 48, and 64-bit images is from 0 to 65535 and for 12-bit images from 0 to 4095. Otherwise, it is from 0 to 255. The threshold is applied on channels separately.
  • 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.
  • This command does not support 32-bit grayscale images.
  • This command supports signed/unsigned data images.

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

Edge Detector Function - Before

Edge Detector Function - Before

Edge Detector Function - After

Edge Detector Function - After

View additional platform support for this Edge Detector function.

Example

Run the EdgeDetectorCommand on an image.

C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Effects; 
 
 
public void EdgeDetectorCommandExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ImageProcessingDemo\\NaturalFruits.jpg")); 
 
   // Prepare the command 
   EdgeDetectorCommand command = new EdgeDetectorCommand(); 
   command.Threshold = 60; 
   command.Filter = EdgeDetectorCommandType.SobelBoth; 
   //find the edges of the image. 
   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.effects.*; 
 
 
public void edgeDetectorCommandExample() { 
   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, "NaturalFruits.jpg")); 
 
   // Prepare the command 
   EdgeDetectorCommand command = new EdgeDetectorCommand(); 
   command.setThreshold(60); 
   command.setFilter(EdgeDetectorCommandType.SOBEL_BOTH); 
   // find the edges of the image. 
   int change = command.run(image); 
   assertTrue(change != RasterImageChangedFlags.NONE); 
 
   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")); 
} 
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.Effects Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.