NoiseReductionEngine class
Image noise reduction and denoising engine implemented in pure Dart.
Provides multiple denoising strategies inspired by OpenCV and Dynamsoft:
- Gaussian blur (configurable kernel size and sigma)
- Median filter (salt-and-pepper noise removal)
- Bilateral filter approximation (edge-preserving smoothing)
- Morphological operations (erosion, dilation, opening, closing)
- Adaptive denoising with automatic strength selection based on luminosity
Constructors
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
adaptiveDenoise(
Uint8List gray, int width, int height, {double? luminosity, double? noiseEstimate}) → DenoiseResult - Adaptive denoising that automatically selects the best strategy based on image luminosity and noise level estimation.
-
bilateralFilter(
Uint8List gray, int width, int height, {double spatialSigma = 2.0, double rangeSigma = 25.0, int kernelSize = 5}) → Uint8List - Applies bilateral filter approximation for edge-preserving smoothing.
-
dilate(
Uint8List gray, int width, int height, {int kernelSize = 3}) → Uint8List - Morphological dilation: expands bright regions, fills small dark gaps.
-
erode(
Uint8List gray, int width, int height, {int kernelSize = 3}) → Uint8List - Morphological erosion: shrinks bright regions, removes small bright noise.
-
gammaCorrection(
Uint8List gray, int width, int height, {double gamma = 0.6}) → Uint8List - Applies gamma correction for low-light brightness enhancement.
-
gaussianBlur(
Uint8List gray, int width, int height, {int kernelSize = 3, double sigma = 0}) → Uint8List - Applies Gaussian blur with configurable kernel size.
-
medianFilter(
Uint8List gray, int width, int height, {int kernelSize = 3}) → Uint8List - Applies median filter for salt-and-pepper noise removal.
-
morphClose(
Uint8List gray, int width, int height, {int kernelSize = 3}) → Uint8List - Morphological closing: dilation followed by erosion.
-
morphOpen(
Uint8List gray, int width, int height, {int kernelSize = 3}) → Uint8List - Morphological opening: erosion followed by dilation.
-
unsharpMask(
Uint8List gray, int width, int height, {double amount = 1.0, double blurSigma = 1.0}) → Uint8List - Applies unsharp mask sharpening.