Nonlinear Coupled Diffusion

This package implements isotropic nonlinear scalar valued/ coupled vector/matrix valued diffusion.

You are now following this Submission

The code supports homogeneous and linear and nonlinear (Total Variation and Edge Enhancing flow) isotropic diffusion of arbitrary dimensioned fields(scalar~grayscale image, vector ~ color image and matrix~structure tensor). Additive Operator Splitting(AOS) as well as Gaussian regularization are implemented to speedup the computations.
Two point 1 sided differences is implemented for spatial discretization which is more accurate than the central differences. A semi implicit time discretization as well as epsilon regularization is utilized to make the diffusion process stable for arbitrary time-step sizes. The code is commented, the definition and dimensions of the input/output variables can be found in the header of the nonlinear_diffusion.m. A sample script is provided to visualize the diffusion process of two sample images.
The AOS implementation uses the Thomas algorithm implemented in mex to achieve the fastest speed.

Cite As

Omid Aghazadeh (2026). Nonlinear Coupled Diffusion (https://se.mathworks.com/matlabcentral/fileexchange/27604-nonlinear-coupled-diffusion), MATLAB Central File Exchange. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.2.0.0

Implemented the Thomas algorithm in mex and made some modifications for the case of left-right neighbors to make AA exactly tri-diagonal.

1.1.0.0

Criterion for keeping the total mass constant was lacking an abs.

1.0.0.0