File Exchange

image thumbnail

Diffusion Distance

version 1.0 (1.71 KB) by

Calculate the diffusion distance between histograms

10 Downloads

Updated

View License

DIFFUSION_DISTANCE calculate the diffusion distance between matrices
dist = diffusion_distance(im1, im2, [sig, dim], threshold, pad_type])
[dist, iter] = diffusion_distance(im1, im2) compute the diffusion distance
between im1 and im2 (histograms).

Optionally returns the number of iterations. This number will be limited by
the size of the histograms, and the threshold value, which can be set
manually, or will take the value 1e-4.

The padding method used by the filtering stages can be set using the 4th
argument, and defaults to circular. For available options, see help imfilter.

Reference:
Diffusion Distance for Histogram Comparison
Ling and Okada, Proc. CVPR, 2006

Example:
% Calculate the diffusion distance between two
% matrices of random integers.
a = round(10.*rand(10));
b = round(10.*rand(10));
dist = diffusion_distance(a, b);

Comments and Ratings (1)

WurmD

WurmD (view profile)

the check "all(size(dist) >= size(kernel))"
prevents the comparison of vectors.

To be able to compare vectors with this distance, i've changed it to:
"~isscalar(dist)"

MATLAB Release
MATLAB 7.4 (R2007a)

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

» Watch video