# HG changeset patch # User Jordi Gutiérrez Hermoso # Date 1463332916 14400 # Node ID 1676c032cde5aa74bb137c3db4244c806d47397d # Parent 1baa6b0a71990e4e7f5b2c667dcf01edd9d3b43d add images explaining the naïve algorithm diff --git a/talk/code/medc_naive.m b/talk/code/medc_naive.m new file mode 100644 --- /dev/null +++ b/talk/code/medc_naive.m @@ -0,0 +1,42 @@ +# 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 diff --git a/talk/img/naive/H.png b/talk/img/naive/H.png new file mode 100644 index 0000000000000000000000000000000000000000..4aa2f45c217f3db34220b8acf46dec414bf9dd17 GIT binary patch literal 5603 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 diff --git a/talk/img/naive/medc-computation-done.png b/talk/img/naive/medc-computation-done.png new file mode 100644 index 0000000000000000000000000000000000000000..7630b8f8afcc768f5e523f3aaf8e89c4eb3fe9c9 GIT binary patch literal 1830 zc%17D@N?(olHy`uVBq!ia0y~yV5|k=dJZO_h}PvkULeJm|H(?C~(`; z#WAE}&f7a1^Q3Pwwq3M-azTytWN)|WgG(F_4mCWiWwh_RocB;|>gn3!Tk1MP?l?s_ zc9d_HRQ<7z-EO%8N03VW#7oN+xpl9Snz+v;O!K&rN=>f4Pq{PK2dURzZk zHOs%h&vyR#&EYv4*1bMGT|a&Ojhu3OiO2sc(%-zDklz20LGDM*U=1b$A#i@4?e4hs zo2Tb&&^i5vbL-`oC029O*57zmV>kc&^PAdc5!XxOn~zIOPyPA(qeb=6wAT`kORQe< z{VzYg>CNk@x9&bLJeJrqdvC7Xy>v#~LE|x^C4k;}_Uu{J-g9xA4sO!ftbWC=?oUN= zu`w{x-{0G74UY5z8@c#B6^1~e(-Qw}`kG&FTa$a*Ps^YCe|!4hhq1Q%Uj0+6FT1+^yTQBNn{`efe*Cfa*5m9g zm(Oliw>f(F&GFyw&)eJm-OPR5{Qi&ld$086KibEa{`jW2zkatgkIlCIi@g%w4+8%a zpLpId3g5YN=ghnfH=h>mjL`!n1FN}y%P+qXm6qXaFTHy|{|G2i|H*Yfq}Kj z)5S5QV$Rz;hFNz5L|iZaZpvv^EalPj&1z1cW~O|?!Ipoi$KwRpAD zYn$_o9J0IF-+Xv|{T=J{zdt`Fe{VT`@7}#K{~d3hK1~I3=FOW2;@p16cwqWsYX{%* zhFR|zOz$#g?P9)C!oK1qU%+MA1~1$!X6XCx7pGeeKp>h8-8|H(?DA4BV z;uumf=j|QCb;6NMZ5N}@r%L~}?U*3dDd5|{;jouso3oFT0pmxVDYaKvJl6I_#pb)+ ze=GES&4corUst|ji`$kf&9JcaTZ81jy19E3w*UY0?e-ha-FvIQ=Y4Crdv8yrarL3R z>#s|J9Jw@phC0h#%vVa-SG?p4xGcM1nYDv&dBd!C45oJ(vj($-?(J=7?=k#|vUyLY zF|Q>achr~e(mDNx^MEnXw7s>z%f9v8t^4!iI?P_e1MQHu{OEq^wUkbx8JB*>zp>K zc6wX1bI$qaH?_a*j9U*%A6>H7N^P$_Fg&(NXZhvKZ(Vn<86Nvtb8T+@j?_rL?<@JY z|14;(w|bQJK5}sRizta(R>yYSe-BJVahncr(%Gzj#jgI}pC3Ogs*l>q+tuv2n+J^M z4?ytci%Ip-yw|(V&D(I>>e!DT9~Zy-bJ*6_R`%Vrim$J(KHOEj|9<-V8*e-Aew@cT zsC-CdBG}CSVf!4v<(FRq{b|>J`_G3D1#1r4%NBmNIu=b!Q5@Adz0p$ep+NV9~gUyk<&_T@5vTg z%}w*a@wOuTXZ`oLx3}LEF8lrI>FK|9^Y=3Svj-;r{qg%`Zktt~lsmoY%sd7gP4|~z0ZfgzrWuUelUGopW(6h`_IqYcz@HGI0l=`^^Du*8~riO S?eqcGQ4F50elF{r5}E*21wtPH diff --git a/talk/img/naive/medc.png b/talk/img/naive/medc.png new file mode 100644 index 0000000000000000000000000000000000000000..1cef831a4dd458cc4f252af0c85b07e4a52faccb GIT binary patch literal 5701 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 OfVr_Xtk~$>#lHh5&rq8H diff --git a/talk/img/naive/sortx-red.png b/talk/img/naive/sortx-red.png new file mode 100644 index 0000000000000000000000000000000000000000..270d75d47661b2717fdfc785ea3ccedc219a2158 GIT binary patch literal 3229 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 i1X#}~mLzNdW7y)*YdoZAR90}j?RtN;LT7#YGW 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 diff --git a/talk/img/naive/zplus.png b/talk/img/naive/zplus.png new file mode 100644 index 0000000000000000000000000000000000000000..eb3cb5ecbacc2c38c496abc9ac939039323784fa GIT binary patch literal 3154 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 GqyGi!{F1f+