File Exchange

image thumbnail

Nonlinear Relaxation Labeling for Image Processing

version 1.2 (820 KB) by

Improve spatial coherence of a 2D monochromatic/multispectral image using probabilistic relaxation



View License

In the attached .zip folder you the main, self-contained function titled RelaxLabel2D which performs nonlinear relaxation labeling of 2D monochromatic and multispectral images. Also included are three demo files:

RelaxLabel2D_demo1: Provides an example on how to regularize binary images corrupted by spurious noise artifacts.

RelaxLabel2D_demo2: Shows how to segment color images using k-means clustering and then regularize the result by probabilistic relaxation. This demo uses my own implementation of bisecting k-means, which can provide robust and consistent initialization of cluster centroids.

RelaxLabel2D_demo3: Shows how to segment grayscale images into background and foreground regions with the help of probabilistic relaxation.

[1] Eklundh, J.O., Yamamoto, H., Rosenfeld, A. (1980) 'A relaxation method for multispectral pixel classification', IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. PAMI-2, pp.72-75.
[2] Kittler, J., Illingworth, J. (1985) 'Relaxation labelling algorithms a review', Image and Vision Computing, Vol.3, pp.206-216.
[3] Peleg, S., Rosenfeld, A. (1978) 'Determining compatibility coefficients for curve enhancement relaxation processes', IEEE Transactions on Systems, Man, and Cybernetics, Vol. SMC-8, pp.548-555.

Comments and Ratings (4)


Zvi (view profile)



anwar (view profile)

my matlab was version 2011. However, your code only got problem operator things like '.-' for subtract operator is wrong in matlab 2011, just delete '.' only, then it is good to go.

That's all, keep a good job!

Anton Semechko

Anton Semechko (view profile)

A possible cause of your error is that you are using an older version Matlab, which does not recognize the meaning of the '~' placeholder.


Amma (view profile)

Hi I am having following error while running the code:

??? Error: File: RelaxLabel2D.m Line: 112 Column: 7
Expression or statement is incorrect--possibly unbalanced (, {, or [.

Line 112 of RelaxLabel2D.m is as follows:

Kindly advise



updated internal file instructions

MATLAB Release
MATLAB 7.11 (R2010b)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

RelaxLabel/Demos/Auxiliary Functions/