net.sourceforge.jiu.filters

Class MedianFilter


public class MedianFilter
extends AreaFilterOperation

Applies a Median filter that replaces each pixel by the median of itself and its neighbors. The number of neighbors can be defined with the setArea methods.

Can be used as despeckle filter, but the image will lose sharpness. The larger the area becomes, the less noise and the less sharpness will remain, and the longer it will take.

Uses Median to do the search for the median value.

Usage example

 PixelImage image = ...; // some GrayIntegerImage or RGBIntegerImage
 MedianFilter filter = new MedianFilter();
 filter.setArea(5, 5);
 filter.setInputImage(image);
 filter.process();
 PixelImage filteredImage = filter.getOutputImage();
 
Author:
Marco Schmidt

Field Summary

Fields inherited from class net.sourceforge.jiu.filters.AreaFilterOperation

areaHeight, areaWidth

Fields inherited from class net.sourceforge.jiu.ops.ImageToImageOperation

canInAndOutBeEqual, inputImage, outputImage

Fields inherited from class net.sourceforge.jiu.ops.Operation

abort, progressListeners

Method Summary

int
computeSample(int[] samples, int numSamples)

Methods inherited from class net.sourceforge.jiu.filters.AreaFilterOperation

checkAreaHeight, checkAreaWidth, computeSample, getAreaHeight, getAreaWidth, process, process, process, processBorders, processCenter, setArea, setAreaHeight, setAreaWidth

Methods inherited from class net.sourceforge.jiu.ops.ImageToImageOperation

canInputAndOutputBeEqual, ensureImagesHaveSameResolution, ensureInputImageIsAvailable, ensureOutputImageResolution, getInputImage, getOutputImage, setCanInputAndOutputBeEqual, setInputImage, setOutputImage

Methods inherited from class net.sourceforge.jiu.ops.Operation

addProgressListener, addProgressListeners, getAbort, process, removeProgressListener, setAbort, setProgress, setProgress

Method Details

computeSample

public final int computeSample(int[] samples,
                               int numSamples)
Overrides:
computeSample in interface AreaFilterOperation