wolffd@0: function d = histCmpChi2(h1, h2) wolffd@0: % Compare two histograms using chi-squared wolffd@0: % function d = histCmpChi2(h1, h2) wolffd@0: % wolffd@0: % d(i,j) = chi^2(h1(i,:), h2(j,:)) = sum_b (h1(i,b)-h2(j,b)^2 / (h1(i,b) + h2(j,b)) wolffd@0: wolffd@0: [N B] = size(h1); wolffd@0: d = zeros(N,N); wolffd@0: for i=1:N wolffd@0: h1i = repmat(h1(i,:), N, 1); wolffd@0: numer = (h1i - h2).^2; wolffd@0: denom = h1i + h2 + eps; % if denom=0, then numer=0 wolffd@0: d(i,:) = sum(numer ./ denom, 2); wolffd@0: end wolffd@0: