←Select platform

MedianCommand Class

Summary
Changes the color of each pixel in an image to the median color of pixels in its neighborhood. This is similar to the AverageCommand, but it is used for noise reduction, rather than a blur effect.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public class MedianCommand : RasterCommand 
@interface LTMedianCommand : LTRasterCommand 
public class MedianCommand 
    extends RasterCommand 
public ref class MedianCommand : public RasterCommand   
class MedianCommand(RasterCommand): 
Remarks
  • You control the effect by specifying the size of the neighborhood that is used for calculating the median value. For 8x8, 8 in the Dimension property or pass the value 8 for the dimension parameter of the Constructor.
  • 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, this command works only on the region. If the image does not have a region, this command works on the entire image.
  • This command does not support 32-bit grayscale images.
  • This command supports signed/unsigned data images.

For more information, refer to Removing Noise.

Median Function - Before

Median Function - Before

Median Function - After

Median Function - After

View additional platform support for this Median function.

Example

Run the MedianCommand on an image and applies an median filter.

C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Core; 
 
public void MedianCommandExample() 
{ 
   // 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 
   MedianCommand command = new MedianCommand(); 
   //Apply a median filter with a neighborhood of 9x9 pixels. 
   command.Dimension = 9; 
   command.Run(image); 
 
} 
 
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.core.MedianCommand; 
 
 
public void medianCommandExample() { 
    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 
    MedianCommand command = new MedianCommand(); 
 
    // Apply a median filter with a neighborhood of 9x9 pixels 
    command.setDimension(9); 
    command.run(image); 
    codecs.save(image, combine(LEAD_VARS_IMAGES_DIR, "Result.jpg"), RasterImageFormat.JPEG, 24); 
 
    assertTrue(new File(combine(LEAD_VARS_IMAGES_DIR, "Result.jpg")).exists()); 
    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.Core Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.