how to use NMI for images

2 views (last 30 days)
talayeh ghodsi
talayeh ghodsi on 4 Apr 2020
Commented: talayeh ghodsi on 4 Apr 2020
hi every body. I am trying to use nmi.m which is attached below and downloaded from mathworks to calculate normalized mutual information between to images.
x=rgb2gray(imread('a.jpg'));
y=rgb2gray(imread('b.jpg'));
z = nmi(x, y);
but i have this error:
Error using sparse
Index into matrix must be an integer.
Error in nmi (line 19)
Mx = sparse(idx,x,1,n,k,n);
could anyone solve this error for me?
  6 Comments
Walter Roberson
Walter Roberson on 4 Apr 2020
Replace
x = x-l+1;
y = y-l+1;
with
x = double(x-l+1);
y = double(y-l+1);
talayeh ghodsi
talayeh ghodsi on 4 Apr 2020
thanks sir it works well

Sign in to comment.

Answers (0)

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!