view talk/code/medc_naive.m @ 49:1676c032cde5

add images explaining the naïve algorithm
author Jordi Gutiérrez Hermoso <jordigh@octave.org>
date Sun, 15 May 2016 13:21:56 -0400
parents
children
line wrap: on
line source

# A particularly nice rand(1,9) output
x =[0.1434371910495317   0.7884491711159078   0.5303604008014775   0.6667158533830928   0.3678275414673733   0.0996218030091724   0.4403602735726169   0.7641625823436032 0.3729928446344657];

imshow(x);
print -dpng x.png

sortx = sort(x);
imshow(x);
print -dpng sortx.png

RGB = repmat(sortx, 1, 1, 3);
RGB(1,5,1) = 1;
imshow(RGB);
print -dpng sortx-red.png

z = (sortx - median(x))/(max(x) - min(x));

zp = z(z>=0);
RGB = repmat(zp, 1, 1, 3);
RGB(1,5,1) = 1;
imshow(RGB);
print -dpng zplus.png

zm = z(z<=0)';
RGB = repmat(zm, 1, 1, 3);
RGB(5,1,1) = 1;
imshow(RGB);
print -dpng zminus.png

H = (zp + zm)./(zp - zm);
H(isnan(H)) = 0;
H = (H + 1)/2;
imshow(H);
print -dpng H.png

medc = median(H(:));
[i, j] = find(H == medc);

RGB = repmat(H, 1, 1, 3);
RGB(i, j, 1) = 1;
imshow(RGB);
print -dpng medc.png