#include <peak_icv/algorithms/filters/peak_icv_median_filter.hpp>
Public Member Functions | |
| MedianFilter ()=default | |
| Constructs a MedianFilter with a default kernel size of 3 (3 × 3 neighborhood). | |
| void | SetKernelSize (size_t kernelSize) |
| size_t | GetKernelSize () const |
| Image | Process (const Image &image) const |
| Applies the median filter to the specified image. | |
Class for applying a median filter to an image.
The median filter is a non-linear, spatial filter used to reduce impulsive noise in images. It replaces each pixel with the median value of the pixels in its local neighborhood, defined by the specified kernel size. The kernel size corresponds to a square neighborhood (size x size grid) around each pixel, where the median is calculated.
This process preserves edges better than linear smoothing filters while effectively removing salt-and-pepper noise and small image artifacts. A larger kernel removes more noise but also reduces image detail.
|
default |
Constructs a MedianFilter with a default kernel size of 3 (3 × 3 neighborhood).
|
inline |
Applies the median filter to the specified image.
|
See the Pixel and Pixel Format Specifications for a detailed description of the pixel formats.
| [in] | image | The image to process. |
| NotSupportedException | The pixel format is unsupported. |
| NotPossibleException | The kernel size must be an odd number greater than 1. |
| OutOfRangeException | The kernel size exceeds the image dimensions. |
|
inline |
The size of the kernel must be an odd number greater than 1 and smaller than the image dimensions. The kernel size defines the size of the neighborhood (in a size × size grid) used to calculate the median for each pixel.
A larger kernel removes more noise but also reduces image detail.
| [in] | kernelSize | Size of the kernel used for the median filter. |