From 2a7a7cbbfbd141288ec75b34f9bc1178d0f86a61 Mon Sep 17 00:00:00 2001 From: "matthew.wang@darwinai.ca" Date: Mon, 12 Jul 2021 17:09:39 -0400 Subject: [PATCH] Add initial Grad-CAM implementation and other initial files Add requirements.txt for faster environment setup. Fixes on top of https://github.com/jacobgil/keras-grad-cam (as of today, July 12th 2021): - https://github.com/jacobgil/keras-grad-cam/issues/17#issuecomment-398053700 - https://github.com/jacobgil/keras-grad-cam/issues/21#issuecomment-404779514 --- .gitignore | 9 ++ .vscode/settings.json | 3 + README.rst | 8 + keras-grad-cam/LICENSE | 21 +++ keras-grad-cam/README.md | 35 +++++ keras-grad-cam/examples/boat.jpg | Bin 0 -> 25638 bytes keras-grad-cam/examples/cat_dog.png | Bin 0 -> 90226 bytes .../examples/cat_dog_242_gradcam.jpg | Bin 0 -> 18326 bytes .../examples/cat_dog_242_guided_gradcam.jpg | Bin 0 -> 8472 bytes .../examples/cat_dog_282_gradcam.jpg | Bin 0 -> 18474 bytes .../examples/cat_dog_282_guided_gradcam.jpg | Bin 0 -> 11288 bytes keras-grad-cam/examples/persian_cat.jpg | Bin 0 -> 16822 bytes keras-grad-cam/grad-cam.py | 148 ++++++++++++++++++ keras-grad-cam/requirements.txt | 34 ++++ 14 files changed, 258 insertions(+) create mode 100644 .gitignore create mode 100644 .vscode/settings.json create mode 100644 README.rst create mode 100644 keras-grad-cam/LICENSE create mode 100644 keras-grad-cam/README.md create mode 100644 keras-grad-cam/examples/boat.jpg create mode 100644 keras-grad-cam/examples/cat_dog.png create mode 100644 keras-grad-cam/examples/cat_dog_242_gradcam.jpg create mode 100644 keras-grad-cam/examples/cat_dog_242_guided_gradcam.jpg create mode 100644 keras-grad-cam/examples/cat_dog_282_gradcam.jpg create mode 100644 keras-grad-cam/examples/cat_dog_282_guided_gradcam.jpg create mode 100644 keras-grad-cam/examples/persian_cat.jpg create mode 100644 keras-grad-cam/grad-cam.py create mode 100644 keras-grad-cam/requirements.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e249cfd --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +*.DS_Store +*.egg-info +__pycache__ +docs/build +.coverage +htmlcov +.docker +.idea/ +covidnet/models diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..2b7e46d --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "python.formatting.provider": "yapf" +} \ No newline at end of file diff --git a/README.rst b/README.rst new file mode 100644 index 0000000..f13c865 --- /dev/null +++ b/README.rst @@ -0,0 +1,8 @@ +pl-grad-cam +================================ + +.. contents:: Table of Contents + +Acknowledgement +--------------- +Jacob Gildenblat (jacobgil) for initial Grad-CAM implementation using keras: https://github.com/jacobgil/keras-grad-cam diff --git a/keras-grad-cam/LICENSE b/keras-grad-cam/LICENSE new file mode 100644 index 0000000..c064406 --- /dev/null +++ b/keras-grad-cam/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2016 Jacob Gildenblat + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/keras-grad-cam/README.md b/keras-grad-cam/README.md new file mode 100644 index 0000000..6d81c1f --- /dev/null +++ b/keras-grad-cam/README.md @@ -0,0 +1,35 @@ +## Grad-CAM implementation in Keras ## + +Gradient class activation maps are a visualization technique for deep learning networks. + +See the paper: https://arxiv.org/pdf/1610.02391v1.pdf + +The paper authors torch implementation: https://github.com/ramprs/grad-cam + + +This code assumes Tensorflow dimension ordering, and uses the VGG16 network in keras.applications by default (the network weights will be downloaded on first use). + + +Usage: `python grad-cam.py ` + + +##### Examples + +![enter image description here](https://github.com/jacobgil/keras-grad-cam/blob/master/examples/boat.jpg?raw=true) ![enter image description here](https://github.com/jacobgil/keras-grad-cam/blob/master/examples/persian_cat.jpg?raw=true) + +Example image from the [original implementation](https://github.com/ramprs/grad-cam): + +'boxer' (243 or 242 in keras) + +![](/examples/cat_dog.png) +![](/examples/cat_dog_242_gradcam.jpg) +![](/examples/cat_dog_242_guided_gradcam.jpg) + +'tiger cat' (283 or 282 in keras) + +![](/examples/cat_dog.png) +![](/examples/cat_dog_282_gradcam.jpg) +![](/examples/cat_dog_282_guided_gradcam.jpg) + + + diff --git a/keras-grad-cam/examples/boat.jpg b/keras-grad-cam/examples/boat.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7c86ed108292aca79ef543d7ccb9ae49a793965d GIT binary patch literal 25638 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 pfbUNogx(G+(n?xDC_km3Xl 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 Q$f5Qr;_rb+uG^*m0LL!ARR910 literal 0 HcmV?d00001 diff --git a/keras-grad-cam/examples/persian_cat.jpg b/keras-grad-cam/examples/persian_cat.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7d3eadbcb276fb6d2df2e12411283b70329c2e4d GIT binary patch literal 16822 zcmbTdWmKC_)IA!C7b^}$f>XS>1t_JswYW>6XmQsd#jQA{K#DuTU5YytcMa}Aga7%x z?^^eMxgYMmll9C>R_4h%JM+w$efBx?Jpa57c%vXAF9SeA0sxR+UV!H%fE3^r(tqv0 z{?&gC1^K@o6$J$u1q~Gq?SC$GObj%1Oms9f3@i-H*Z;Mbci333vH$z<-;ez7t*=m# zkx^fxqoM!LkpEBJ^Irfy24Eeqj*LVHc!iIIjF0r(0|36*iTXe0y%_ty4e1p!3Mv}< ziy2ri1M1$qn2(J7Vl?WD#V@1%UcLvQ;G+`Ia!aBSelbO-b0XpijL*iP|5(*YtTu7R z!28uX2=g@wDH-`&MkeNWEUbL|0)j%qB2u5EWn|^#71T8}wX}6~^~}t_Sy)2vj+w)$DtPw{PtDfKvT)`F8V5 zU9yLF zrGfXaB+}>hWxG2d-A;ISCfvrqCGcNC$o8=aefy3vQM{{Rw{!av-Ic?CaE7cS#wX+2i`DV9ekU)bFGEqvGHC)Wc;zPocjFk zgiNEgUF(ZRV3umRcj}So+3ZE9F&1H8JL5MJC~adT5$$}~CpJiDh+=|{EtQ6FcATBN zuyLIC%rhY5geKzXdX=NnHp$UbOEjS09)mw-{TV=}hea{^YDW$h`LuS7W?^4J_9nRD zvjpqPV-Y7Oe+QwlEz9dbC(3UcSpo09+`Wc(Z?Z{X>Fcf8aFc(vOQ&cfM|bGHdjIm8q`{2D34symSGMma>VQYl!$of$^)TX z?b0V}K1|f)BU7GF(vFy9uph_ihpruqTwROC;dyrceI8YQgLUdo)M4n68z4+LdN(PA zyj9YcxHjH8>m3&nD}8^8q)C|uwoA)oyAS3utsqGYb?vQ<1YLh5h-HH-qWL?iyI#S9 z7H>$b(m7zO4Fgcin$Zy?nU>RC_-YvY_aJX5c-4%$2NZJ8pW1| z?YL4F1o7;%z5`%ePVsMlDOx^Kp=x0IwV|!P*L+e&U>k1} z4Rhki%oRG-c{`KdTQW$-SgxjAe-8Hbp38m^eazx?Tf-iOtM}-2BKHTH=yt#0~hHqcKP*@OAPr6mC?k<7097HF0YFm75dM?Yef@d*OKvbLGMk{A5qeDqgR(@lDQW3wQ67;nZOl59U z!*VV0r=p>Y*FJ#0k{rFbLVxo$tIcFA0yxxoHpl{zjGB#DctDHujrJn~AJyH+9^G1B z|3<9GIjKdCpf^H8p8!GTzF)dtQ zP1p~pkwewd_0uccrS~0{>;@+0-suU$>vdE5pla(QBsG_sE2zU+LwA2uO|&eUBDST2 z!lfz>!mQh|^6aTFUk1*N|2rt}z1VI4_e*HRW(99ys#Lmqwd^)IgkaN2&9(Bzc`yD9 z66=pbk>bEKp-=zE2+VrHMeu;rQHxtlNDpw%18&(~iGjc2pzF*KSi#J&dQziljS_R4^&iZ;v{9TB*FXt|JPUH-{0WBEwtB-p*Qn75-ue zU>yG6I3MkeQ}%ch-xk8e z{#>o;XTX_qM~JD%_&Mx!y)+4;%J@jl+6TP9&j8W~ zGPqKf5UI8ZD4r?P!+wfy=&ZwoCNRx77J|+2PxjKY3+q0d-e5J$MLa z(k?13Yffl8wLWi+jPX|(BNj0;m7{KlgiSXb@8}j7rv5E7=?`mWiCUY2m%CzA{&x<0 z?FEQr&}La7Pf>}89dO$;hZZq5Nq?^z zG!esuW{#X248JZX9;M#9A8DE>TCrS`>hl+uq#x&P4RP-&S<=T^YT7qqgWc1$lQ+m8 zn`1XJM#6(LT#VrG5}^u{bTPR!o?PFd?0);w+Qi$r*ax{Oz}bVp%AXsoDrbeHN6d<5 zFL!}*j9y6ycT@&7tD64u?K429o>U~Q!O^!K-F+-Kt8T)V3}NraMJ!)rqxGZzd&{w) zId7Jux63~@Ydxa3keIUCr3hmBbjJkVHvp82+4e95WPKb9f#ljIwQ(tMKp$wL@n0y)?oRuqJSKNi8vglDnae8b*-k06y|Bo@x`LWa=X4&K5_x=&^%)Qhja=!r zI3J)-klej3gfdWHwXMfk?@pc;Om2iSr~EtpfKCy3Rbe!PlixFCG-BeK_@+qIS^hxG zYDCCxI^Q)`!tRtqrQr1MqTR}R%R8L{r+O7)m(EAkZ6oFTFSdFeA(vVcd<*7s%&%jZ z4bCwESC4E()Bc=?S=bX5OB&${=YiM4RQkzdcpqGhsNlah>ziQrfo4U0QItw#-_hgy zi=bJB-Dyx;|M1H_1*&h>eT_NXKH5$&=!czzu*SNTgF(miWa1Z(_rv#0?aAGpo@fkt86tS z0_E5CihS^sWmuupRC;rUM8wWKo3u)elQ&SyQ-KwT?1rMF&TqNM|LB|){@oY0x$2OA2iDtg`wgzO3C~)aY&`^E1G^2^`-4#GHud_6+!ETVGed zc;Fs5uD9_-SNyiTo4O@TBE<7jv%rsp4Z-YpFVefSMi#JL^$e(u!DSgy95<_`BVaxJBJTa7@=+{i*uA;-&6yAUEGBE~Jat7UNCVfyL;f1UN$3HN4c-^1cV3zbAy zoAUS5M7e2>aBIwWC5p&_bC*zg5nn(l#^72Iu9z*X4>8J-RY;v}?cIXk$o;beTJBAf ze6PsA6NR%rJ@)l;jsFch-Uo0pSZqTmF6RBv1Y`&N#mtwuYm>qzb={AUG;E~XBUzC- zUs5kjU zy6&L|{c*g_K{T5k)>whwzlM3)a&aGJQrJk>+=21nes&Z7Me8;`%4`?KqFMjYj^3b_ zRL}eXMo!}f{U>DGAHBv}QnVuv6^D4;auInF#tyMHH?s9stZn&9!PnLcG;>$lsEDTE(Ix{{X8*7*S%FPXqQ_Ytj^3B&h4*|HR@hnoL3i0eK{xr|SBB4I z&f+GjuUgGEjk`sM4d3#atU3AkynPf$6rV}wJK0fH8lHd-trKmA+5|58eB$zbyYD~v zl0NmtD&p0kzA;s(K6mOTe>lAH6(svys;tZP_uR&5nsvH4VFr>ZG9JiDKZi#CGx}#Y z$i*n)W!LGt@z9d-S&Cq=`sYGVvP*q6hxolQSy1G$7#!qX;WMXwHvD&DS^2d}B(Zx6 zr>I%Jb?A7mp8A~B9)zf?f`oOKe`5)Zw?fi3q4q6QHQ@_`2|@S%Qu!BnT(CnWvwxjO-&_7X-hxa|fJF?U(5+Jz zxZH((_N<0KKg&fbWp`{&q&>b=njqZ|MpiW z=^a%-zeJ{=8Ju~8Iiya}>&k~D^i>tB1IEV`bYUT((|v=~qlL3EDyi!q6Rudpa{2NV z=HFX=;_G`xr_RdXStJQq8(cXqTnS0HT!N+~ALD&hiSsko79*NZsCsq$CcW{xN)L^Q zra^cmF?hXq>`sHWc0a5z+)`0YE@6?67;wvOeK9)QpB%6+DCqWt$X;98alTpz)k05L zw>9G>H~(5vHe(7X{yZzRpyHe4bhX?hNM6R~I050$Px7W{&vVpyjl}*}uBH%-#*f=j zJ8WCKIzmPU)ybHMnLy}E7UuZ2feX~eUF@>M$EEAReCc$XW5qUTrhuiqyMcV^iGKw# z9<{*xIPwe-xp>q$ncZ9jZ)brsy*x{v0Zo=FM$jl(`LA78B-(!mkBxlbxG;aHh|^8K z#M#?Z_F=|^^a}?{yR61f7(a*Y5kMxQ9}MdhTvc-G(cX><@{2dFVI1 zNoM+G{DpgUMMg?AwPyPdPrH2(V_B&l`40u1A^obpSL6HgaI?SOmT{+gp5KGLQaTM` z8~T*k>$`D>M%riHFxkaFku!{6-f~h&4gh8w;+~idbdB`Z_DFGpDe``X(W;U&9Pj@X zivi<#c5V1$)%_%7M|S-#hTj6)6VbjPR>f=FNvZ`0OBAtqUW9DV7H)crrT#@# zG(Rs#LO-eJZSkO|`UyKzc<&HlZ*Nbw_s-amczEIh^u&?Bc+{#-1 zHv>f4FLLZ$;j0Q`9e4$#P}R}01<11nus!s&?P9+GmA`EYSv>yt0F43J-;Ly}{K$Z$ zlvzf(9fdAG6rCFRK|ObHm@q*tb0|RyVKDv>xaek&(=U?M4NW=vQ|)j>_vQp9lYJQA z26||Oan^yAROCE0;{}Y+PVwulgBsSMPd$us#jKH>taGqeZ_-HRHPNP$4PuL-Df`ad z%RML=el9;ZNa5+jh6ws19UB6B;=(6v(osiilqhW3SnQXh<9aOGEf6qRB_@X>+8hA; zUi*?7JtV`L%XPE-h1+Ts+p9;wjibk}YyT+UD4H>^)<2-bgj1%;7`vfK z@H8dTBo5rosh*AZvN6ahHHi|od3*VP%2re8pQw0yP3CFkCkrR+eLDh1+lG^5{;D|E zG}3*wm1p9+reyXEm^1pq)iVqxNAR4gk;X?YeGia&x}cS$@*B_hcKG4e=w=+2dQHGZ zuqgM#(c_!#78JN-fRN~g+rAlq_wp_Epeh7u-bdp$mS14UOUiuFr}Fgu#c~ik*ebcn zQl2udIb)AgQ*~h`M4?IrR`|Ux7-9NP!WxL%I`^AC_FTg{vnuAFAh@so!EGb07L2#w z&eY;AJzHC6ojBCjx9n~1GVKP1_-dA}?6q^pirN<9IIt!qnOg?<_-k%;vpYd}Wxo!r zT>pD~i+CY0(+o4x#T@NItwDt}L4WKY4!a(}uz{oRn+?^iq9$r&DPy`StF}E?T#LcI zDa|03U3=GXncK!h6kJH}5nEI$40Scv`r4=OJFA=rIy3ut)=oo~R({FHIJ~w5@yxSj z$ez^#%({YNlRaShjegUU=Ax&wlC=}$TG`R~jm4U)B*=VjOaq#IU1f9*^5_frJ;);w z_Fy|+XOQX4jti<-Q#T5R$vy+*f0~tOLu}BWnD*mT_l+!A8%}hmQn{{s>^~jxt$)}> zkLzna?E4a2EO#X1fpn*x)BOyfHrulud$8gy8Io884z>F7Wfb_~a;?V|&-s!knuj6h zyeKJtZTHLvg5KuCMbhq3tv@<{B40hQZ9soilV$#e-I(1*-qT+@wFr`G!C5fh#_!6Z zW1Yt7Jrc5w`)3D6Ggh6y@9wMk#&-|&@fATpiBqy@qH9e_cfR}G{q6x$R#a5rv}NVj z{xEsn!0<*A@FbqoTB9^A-Ja6-?z*Bo5#d^a)$32!TMMCm;%0{J8h!*P~L)M#pN@IsrQBo)-x`RUS1?L+BLJdNOj#pdVf_ZJ?p zSh5SV(RK2i80;1h5nhe@8k5HQ(;CPzLUc2yaY{l_$$>^|3Tyv-Eupl=;vU#*t5?u8 zFFc&-#WGb+XlSE=-^zw+oWMqh3+oY1OjtsP-tlF}BGV$v4?Cfyz~GG62*Ho=StuGc zTUV38`zzr?eGWLUeh~7zmirQ)S+xzy(25y4uVfHUKG^Naa>O? z`5Kw8HwS3M0at)9b7oxtLQrR?HQ<%ne-cYH>z@x*WEc05(@6t|&lys-gz?m!Dho8z z&kcjbI!zh9N^9ESvb{c;nrYIsU%kz*EAX^u?V*adQ;xEdI)X<0Rn_j1*Vh>4_L}C7 z@5KP8qi9#q4N`#4^x(6w7X z{%LKPwG8JPs^%I(uRJzZ%1^4XvBJ*t$|W213hOss*foNvIuPu6f7@P87yu36BPRje z`dpSKTh5<2``OR70lCDJ)dlkYvnme?!}BgueGjRzY+d6Y9F52aPE= zAK;r6$s*mML}^|&wjP;fp!YPw)P2qB!+63g%caFO%9coGkz@Icv>{v}D}#Hf4K8X* zifJ~1No49)ZBlsmhO5ZqUmx>O-IEG>eREcSH3MAXirkI56FxZr{R!T_+TnRr2kD-` z=){$xqtpIQxewX$tq;zafdDYQE_N6O>1t{7*eJ*>Tv(K198FF#8=%j4g$FG6HH1U{ zF2?@ypEQ{F;<*iW{~V|ALS9fuQWqZtHo_JX=61)WqT#oj?dp$}9Il#hN)dmEeUM30 zvj!;0QN~ZG*SF4y)_1Nw%(eJ@0m!wwfAeLTjKSbU>>_$5%7>U_NBBEze~zx9E)xSQ zkws>V_j7k)Q8Y<3L}3;rU9hWUwE$7_^rN_EmAFxMY!{6pmHs9Bvhx3Q(NCG-&fos$ zEYdI+k}U02XLCG(9%dsy9%20;$Kc~aGWlZY>rO z4}pk@&omE$R38ysDiBeyU!&+;$nx$-CDtCs;k5SnME*Ms@i3yP+^?x!hw=)849=X` zCiSvx124L_>H=XmsS#(hIu=F(v5G?CAo>-Q9l>@_?kkx!D>_pZ!W>E4;*B5Q=aPQU zbqz*Hqj!OEMs3-@w9a8yyzbGqMBhGenJf3f&GFR4!- z|LnkuhHOXPzr!}@tHH^6k~huyr2TW75EAcW#(!{kPj*>MmB+474V}J(lE77p-Nf^* zs|k+&yt;4p(awyVMQ{1A@bCDTU|JsZBeQ#(?5VEJ))J?8K)T^`o~gdoz$N`^qoJT~ z!m6~q#xcN=Limww%Aaaq+vr_$V7!71EDJ#fm7*UihUsUjhL9SyT1%y?elk-n)3r*p zo8FEjl3rv;kv8lXyTOM%)tMo{u&^Nh7g?G)Xg$d<#~@d9<-cQi>@hkTAq!hj;{ko=Qpp``zI`a1C--00dzeYffQ-GLKjagdg5uXOVnR}dFS%I_PCGEbjwo`wl_An|YV8)&{iiZ5A~F}BW%U%EW; zu^LM-u!#<*%-bdL!k<6)Ue15O`xy|`PPuArL^;*EKi`-C=9T&5=9WJ_JsgUM+y~2RfkDA_xHEWzyx%al9V;vaYPJ+nZA%abgoCg zcaM-XOX!~pJX~x`>|H~0qad*eMKclt?k={63cE}F61O3AbU&=R@&c28^K2|C&h5OC zWFRf23(EIW6Y3|Px4uyHuy6Q;%IMtNa`D;o^sh+8&;0Fxgtn?Lduk&oHVr66uO-#5 z4)yv&Stp~Cm`7UUz=wQJ+^ugd>EVUfJ_r|hSC_uB7i#i=>F*^UE05jyjOxU-*>;av ziFL>->zQEq7Z6KDZ_%QHAUnj&aR><{&`U4Wr|hR%X8d$R5z)DIcR#7)nZN$C)WA+n zhE%wJ-$=|;5mj$Qt?OQgnl}ewt9F*3=k1=G6mO1fKgk;_H1M+BVPP^M0{_r{1#jA- z8{h4*ErYbJa}MhXQi2$hbHp|Boi$+Po_E&HQgHq5>v)mD2KDd+84&^1xqKCReAa0W zmxL^;jRRqQmx*>pn<|7$cZ2s-cUw7Zhz7>&x!JCYNUj)!t&uMyVrS>98)LAmAiqsN zlQvAYr$6Rz&G3z5{Vo-CPoU8(#PB5d#fBS;8F@NC3DH30qQ!cLs?zz%7UVegbTi{)!9vb!9oUQ% z-mbyLqJ3OQzj*TNymZlWvpM=?lPNm-xTHCBnB3wwkEM*@V8fp7C&ntL2d2g~A{wiC z{6OQ5R^t8D{-I*M{5T-IM=6!F@fncf`Q)}cH+v|M=fNqPx^I*U+k<<`h-#yv#`MmX z4W%tr!s5z3f5qZX8^(^*fAQ@3B^d0wRD4BNcC6EE-yQNL{qEvg1%aN|>EFClp4ZDW zkXM*#)AS{NO_+bDqlUCoOiBk1dKtt|4cQM{ZfpMjMyAIs;=P` z+jf4?XYB)@x)P@2e-MSUim==Qz7+v7WKP_He!6l)o;;uUkH;{8#>qT0bt7@6pRg_n zdP->II>%lv`GFzXitU3*nV7`n3C1ka#p)JG9V{)GqdG-^S`SA9twT{5#tNyajMq^?{n+NdR_Y zqgjEE_J|(QM0;5x@c=Fwud(Y>-zwGHV10vdfI%q8vdss-x1VF`e@pZ?zwkZ3Ls5m7CF}d}_KfOkE_`->y{g%T z{W^zhRbsTo^k)^LUnOs^_io@u!z7>EG-rU$W*kF09K0xcovJ8otW=i)_?yGpAZfh2 z8|~yXL5X+$SrDcLYxIe4(HM>gj*Y^_*%2NF6YUc`Oq&_WAY4453ZrL0 zueaemw;oXva8uhzta)z#feY3rh;GE^bQ85?d?At27}u%fuga{B=~=hr(0KbB=Fuhh z^@3gwP4xpwt7@+?-tLrLyUulBmhEvI;oeWrP!`Z08h7VkC_bX}?D6O*GnyV*qWcPZ zG=>6eCLhJnC=@O5RZ+~`5tjLO#crQq9C6+{>n^js*=X-5Id1PgD^r)dsE_1g>T0mH z?V&9RTLI16OtKifQnkOWkW$awG-Yr|Kv&Y9b5f!ueI36jd!oY{*~Tbz1>`I&8VWQc z7rL)q5$&XV2K0CvM{L(EaO4kIybeHKV!kN(vL;G(+{w&LRca|UYoVJPB&?#_xSUIT z?rL!~b>ONInWT&to^BZ0mSb$)Tu=T=Mo+A1=r$N)a~=i8-G6J@$8u?wk3Pk5)EO!x zOpcE!fonS@PG_xGpP!?6t-Zj4)%3#)TacxX``CyZuBbT&!t=bj=FJP*@Q|nIAFBV` z_)yx@|GB8d@W^?p@H96F5x1!hlOQm(%~|1PU((3=`Rd&wo`gcTqTDK-qmUS)9BI4f z)A#p|n7b{`;7pMzrIu!{YcguBG54Gl8t*gKKffcj_@f!sHDcRE)I;uK&ANo?672Djsrq>;iQ<0=V6T67i=L%aTCdHA6t(y-rb#k!uBv0G@>0W$% zYTN zH~A_jJG{>OL91r*4UI<0Cq`tm{y2!Qn?kJ|*-4EAzBT;y2H?LDquv5>#nPKX@>Q96 z-*@*Ba}m*fF4is+U7urET&}qN(H=Nw#Ho65LJK$D+B_$!qbS~yj~CxS4QthCsFTBT z_GK2-Y?D@)>Ai%R>T`c-y>Hq#7LM%Yh+iQaERC~o?3EIVptr6dLsh@9Y`iSSIyDXM zW2KmXyTzcg)}p5OCBxhu%B5SQnajfeFM-rHrJLtx(?KrrwgkzE12sY~?|W66zvk7} z)|13!8=+GAu6kpFeqa^(-4Ar)K~;-?@YD{Ra#yfo$Y_)-=5<`W%5D3GPBb z97%@7425tx6icAq{mnI1N963Hgji(qXEfW*@sM^h+m;7ql3jyWeiz2(4;ZoF*Vayo zBxVe;PU-8gyC{wgH`$V4hZ#u1i=cmvC?Rv3RlE?Nw6hpM;BFUY2wZmE1257MKG#2* z8mAv*oxf{4YSPJLlC4LB_3oVUNLwK|tr7OwG(RWESD(#xO~hIeQ^p16 zDT<4nTs%kL$;w3r)xzl%_0^Nz7XN9l=P!>$iN*)wkZOrhmI<2B+7Am`Y+5BDNoH^zHVd=b^( zxwEhNR=XKsUqPJ_F0L&(2IjGHF7a{Mn;nFkZ|$9(^&ydP6~aXp`ajd`k+QXY+R&ly zcq2Esgp#1Q3#w8=p1YJK6!g@0!DKH6810Nswdu8$m-vS;WK z^MV1JWSUQKxNLt6=J6Ft(x3bJ%~lV!SgQioNJp>D_7KD~z~YoWKUIi)-w3N5r+N#_ z`ZPLD2u+wQX}0o*bQ8~fZ^j;yS^S$gz@LlN)~JgPckQ)M$#?FCmdm648Lb!IMYea} z!c#!xExXB1ip9=#dt@IA3>}e5c+CFV1itc=?cL%E=gV)538!~e;*N8a&A0G$(36vs zAD|I*t4OoeBK(NYs5!77z}5_5hn-To(R$HGv?7>a@=L36Z>$$JxF~S4Ht7ywCk!bv|X& z;_Jtkfzet=#}W0LJE?ntHi(5*64 zU6(jtwO{088+|^SI_96>D=RU^d_e6`xL9)buvBvATrz(*IL?pOz!%|A&4ldP$zU0o zPV$8`O?5b{PEn1^r?*}o<);6l;;0=`SN`?e@@TB*3H^KBSCwcBgbj>M6u+m4W&4}W zl}+Zb3vaaUKa8u7OAN<(Pqw#23N5nf)U$J=(%?1cc5H%^CGN!yjXwywunF`DtBFJ- zJp?=)USbOvhvkOtmN;qm%HlTVX(DJhJOqFKQvXHCO`|>Mk9PLM&WuP!?gP&}@F$cK zLAs7+r$#V=8`%TgKx;2MvkxY2h09fzG6=~;$F;7Y9~zHSb6X4_5P!eZdC=zV1 zJt&5T>UX;7M-1K|P2LHl01a(9tKdllY_{_~W`l$&&qq00JpmYLS&h3WPnu8e=0Z_U zIM!g#XMhw4XcJ4FVKgfn;tA|>TrrRpgYh)*8-D0J4JdpO#T`qEqS zhYZwz6Go2q)-Lws877S5Z~O`v^?NdlP}gd@?=yYZ6 zPw6)UEY^0!myo!v)=H9mKU&)^|G>V+OKhAz{o#f;_n6b)G{f|cJ<|vl{bYFYg8CxNcP$@G>rr7@$X7FE|^8vJd4EuT1g(b}e+5Uw`AIMZJ;mAy#gA zzNn(I=UA+CldwhNV+~mr?fU_G?A(8pnz@@^Bp`Akpb=YETWu6$1I}nyhHIIj-T@oY zdqua4t3JGP+ha;s8H3`Q>S}m%MbUSzimwrPD=9Lc@#chjU1sMU-f|ll=v69Y zvG*p!cKJJaUb?(per0P}-87x4-2Cxx>qranSDNUH2mPAZ2Q8V7%|kIM<%Wq`Dm||P zLT=|OVge|#1C9Mw>{^V;K|9?XNTt-e$Pk(2aiZ@hF5ZPirrRpUnf2M8N29CHpWqR* zpY;b`^CI6G$46t6uWV7tI6TC^XeKL@^h=%%-5b`NmvjDkQ}K`%wEi;j)9e-JNSbU< zgT#OL1>eYcv|o#!>sInkO*X%)o1a`jp=}%|LvJ$$@h1K|C_E{p;`0yW9rg`*j-M4x7X57q7+8C?L_|JeEjZ|#Hfk6F717YSvW6S6`adIyDfsy@^ zc=14lV3}Xa6Dh|{`Om8tDJH~^e|_mP#{Q49mcrP}ViYlGD{IWw1 z=k9weX-z8B59Bi<`5PPg%pQr(+G@fR`%7ff?EjR*DiLrTpNI+rU}4p z4=U*0KvW|n^7J)_5p=p1QLbQbUyj`&da~2>%Dc`mjvZ=gD;?YLvsaTh{d!mLTk(5! zPGjoM#qqe|kv|;n$9r_uhGkzWPZVAik&72JN#L(#W1mwNq2Frthu85t4ngCuDuBIu z)x=gax8hfiDZR~d&o#TExfidvZfHz=m_2s{kd&=O8-g*{Z;!XL}`w} z{^H20+Ryx0N70@3A$WPi;^2479ViN7c%!%ZXIW)Tn(*CABrfDZs6Ylb)84QdIb9za z6C!&jzvsJBWRTy;sM5vTT6uUFIXdI3n{S;08~@EdoM9$h0of!8Xg17isCV>@FC`cE zt^X%-hi7wcOaQtOz+(LSnNz~Estvsd%Dk7M6LtZ&g#~N z_O{SqKjq9Q&xtadMw5@Nr)pBkw?^x6H6ef*6`2P#wy5-TsZHdp$h1bi7_ckCy^Fh4 zSE;hCX~p&M=LvT}*{@46@Y}_PbW#0ow=#tyYG!<|;2;ld*uUUD+qAQ|*qoY%*uKR# zAzh8(DzAex%e=_N8%vv+!%wdy$Pe_;qjc>pD#d(iC5?vR*YP4&onV@WUHzmyNEL?gzoD(N{P@^hJ09bE)v4t| z#_4mGN5KtFuo)YyRx0aEiheIqeCH0G5-;1j0$H8+n@O8{nlk=#pr>{DXEyuWv`EQ# zB-VX*dq37DI;NRPjwrqbs|68p;&}r&LmC*MCdzk~j6}>N+_Re^ot5RbE%9cC|Cb?$g!< z?YhrkXPt8#lFO~+m>>EUWj@L4IF62LoauQm4 zXA;$tOMvlI2j2~CXB;ZW5*ueNGtSE8pKs`W@r%}H%iT_)aVS4m4lk4r16j;Ar#D4TP@_Rh6+y!pE$i$xk8^+u= zK#KX+7e0XnGD*Q%Ek5i3(j~~{3bK<9HEv}g-74S>-@b)A`je~|=i9u??_QRVcw*EA zejbJ^erhx`dam#gTo!!l0Q$clSy!6zcquV)4_xEA2PK{?K6vAY1uRVT; z_u{VR$(eGufY~8=b3#_yXz==KI_EzSijOC zaVF2NwoCc)I;+FmIF_M2vf#GSw463ZlEA$3$?Wv@9|F+5f>v#IP%5_uaP`o%4FDW z6~U*xfI>>DZscudIJ6NYz3wOag@cHrGQMuw99K+&axNJ$wc)ocklNs{j?WL{^KnUv z2B7%_DY)GnreB_Oz7P47Vd?6pqTG9RR!78UD8akAqS_@Tou%%xGl)Gq5{LaWHYQpC ziRN6quKTbZdyZqIYTn?Opv(f(E?g$&x@eG`90m8sW_$5}DF}w|!&sp%3361TyK@I# zP#!pQ_wN-R7mlQA8O^l5miZ#;-zu{E#?G_4nNzi8`OA;Cted{#oGgOHy$FSF^~vwY zWp2YTFK;2Au!b+umoNt3T%f^AlzDq%tS8Q$CjaXwfk`&0It59e9`vpg1ON<{q^wd* z|09}t)w}b`JcX=_g?_pM7ti;qbU05i*{xut#O~!h3LX|30qWne69E`9eMaP_0as{b zgUJ1Oo^A@&;Yh^9@>%H^kI?a* zAZc0xaOGh)c;H37YoD9X`Zgti6p5x7{)=ph;7DpK8atNd!jONoDeJ=)(XI_Za?H_B zWXpS2Iy|uJfQKZOC|)kwS#n%`KCY18k4s8ErbRQY1?lRAB5E_Sgi~~QHeZ$OFcKAD~^9HQL!%=gae_l5Z1b*|Oc(cvf#Lh(N z-akFnbs8sfeGB%nwra3B9YwV5Hr5C^u3C#Jv!?}lw(QIfxQ)K~;7nJC(>M|}jJQk@ z|68cnH2C;F)7_fQq3kBQks$W08FWgqzlA9IR75hf&XZoiWgFXp~~@D4n%{W!ZW;G#*v_3gdy&|90j60!(nHi!veX!Uq%odZ=hTINdo84>8eov`6x z3|CvufhB6xvH1Tx{CW;^4U+zTCHjHw>b66{RjHhU7(@x|Z?jkdHR!FBai0~_F8c+d zUzIVZO$5~{(|+XEqj$EIX>N(vC1W$=h|?s0(v(%MvBgZEHZRz8mbPPAToA)WWuN#+ zI!bBct&M8X{aZhs(bN^=wP9(f5c40X;ThGP&T=m=iD(>MYiyrmLd2U(khX3fqKl2f zsxuK+gxa>0Sl-N0!M5rGBo(Y#)L^z3Be6-`{@bRSFd)y(sh{eg>@FjVw#hcXMY1sk z;4(co9s@5~eJPR#yW_3F0Y zxZIz&SNLN&xn%B{(k@qN2=uu4B<@p+B(hhvQgqRp0G@#xR2(i|bQdjXLs{mo#`nSU z^yx_a%xT~@u5g7p9UT6k%$T_R$-;~o{?n0nY}w`Z!a${TlQi~P7uHNbR{lxwO{Gx0 zpi|s+^A#-Lvx!rclARzDbi_&0&eKs>+BEFhjz~7$Ya-rmf8U(kZOEcd1^ z7dhbO9}C*tM2(OCk!!{lTOtc?6{ggNAS%#Xyj*7+vH0kB&pU^9Gj=rW%=$bpPg zR`NAxy29>1^+Xq$O`A|bYM;`R?bM7n-pFy;f?AvA?n<<^vOV|5lZATpeIQS#ROND=B8{~UH0RRhlpH7A-)%UwDyQ2 z<39eOvBak2hH-c89bKcBwiaKR{o%TMjjd&=bWbD#KCIwZkiN z)Xy2B;!^1|U+UWSB+A`H_|FX<72tCv$oA8$%V|OwcDrf=N9aY2M%%{Nl`%A< zqGJyxj-X07-tnRef5V#6QWhRJiIOjOsSc+f@HQQOZLG9qo1|EiAbkSh<^p123|aok z>)s@#)DWItEQKkdMdGg(>o@DJ6}yr%TdM`u`4*p$M-(moQm5@S)nWke%{?cC70f?8ZCqlntwXG1H5~l3}W1~1cJvtn9`8;J9{zlRZ zi!HM!`mt|d{bDMXjZ`Z@)~hJ(3eBff18HRPO|9TD4EeBrwbOL z{dp%nZcLtk>`FrbR&V^r4TQ^5o#jY*!6CKlbu?Y7?{`TFo@!#|j+=-FwhoyJZ%jQc z%iskY?CT9(VP-0uX%9Masx$plK6Rxd1Qlw2YdYv znfVt;GjEX7Y?X_%x0|SSf6CiT;*_$xzA5(nkI#To0O4)){mh_S_0KZKi~!te^zHRW zaK4K`!+U*0nSb>w#{*&=-2oCJQ|bDa(WB@{!@%FM-fG&>x3bL4xK;^z$<5ks?yq&K z$WK%is!MtC&Fr56Ak+F9ys7f9d#PpS2^JMM^1e~i2K*O+8I8~vNP44}$_xjeh@H&* zcwTihnia&tAM$83bk;lH{BhS25WPEDfBJ1KVd@hWQD6otIdimj=3e^ta>Ft4%wGfi zknl4wYf9O$URG>#hCmhRM-1eQ;Ka{^{)s>_@1i~Qa>wSvNc!qov%p<5a%4wj&`z_@ zPACRlTZ3PfQZPdn@Ayj$8RJ0_6DI+`iO6r7srdePiPFU07xKZ|&$A5KjX0$F1lvfp zIqf#!?()&vttB9}29)b%otZ%`WhX%gv6~;bE}L?2Dl#O`RKA^-tU6^X&!|wrZ8~a*q`mBic`E3$eS)>5cYD| z)kF2qD7f6HM3%u9W6MI9s0iJ0X%0EgyGLNw<1MSMA;Nib-?Yldi;H+#K_`2xYp`?c zr|QSG%==OL&yo7J2{(k@c5XydoeX6gxyETf)cZd=iZ~tXHR#o*>XnE!f@^w$aTpkN z%{#XR@mgwQ@yJmES6ijYrGdiaGK%WS|NMc540Nh^hY9{WGQF95j7l+`*c$8GA5a6f z96yw{znDXn`yxo_$kxV>hwRuu-iLp|I7?`o-YjKL z--?_z7|%vVu}!>h)7qTLUVQv5!BBJ)45)NBLF$>_t7q=KG;%PtCVwHClAL<@Q`Tr% z-Trdl4G_QNU`;|Z5&9Qf`2Peu0L1_ApK(%040_tdsRTm=(1}-QJYWtFzid=~BfDKH h$}^#EH&Ps1#k)IK9KT)%L7exan$E?_FlzEY|Jm45K@$J~ literal 0 HcmV?d00001 diff --git a/keras-grad-cam/grad-cam.py b/keras-grad-cam/grad-cam.py new file mode 100644 index 0000000..290485f --- /dev/null +++ b/keras-grad-cam/grad-cam.py @@ -0,0 +1,148 @@ +from keras.applications.vgg16 import ( + VGG16, preprocess_input, decode_predictions) +from keras.preprocessing import image +from keras.layers.core import Lambda +from keras.models import Model +from tensorflow.python.framework import ops +import keras.backend as K +import tensorflow as tf +import numpy as np +import keras +import sys +import cv2 + +def target_category_loss(x, category_index, nb_classes): + return tf.multiply(x, K.one_hot([category_index], nb_classes)) + +def target_category_loss_output_shape(input_shape): + return input_shape + +def normalize(x): + # utility function to normalize a tensor by its L2 norm + return x / (K.sqrt(K.mean(K.square(x))) + 1e-5) + +def load_image(path): + img_path = sys.argv[1] + img = image.load_img(img_path, target_size=(224, 224)) + x = image.img_to_array(img) + x = np.expand_dims(x, axis=0) + x = preprocess_input(x) + return x + +def register_gradient(): + if "GuidedBackProp" not in ops._gradient_registry._registry: + @ops.RegisterGradient("GuidedBackProp") + def _GuidedBackProp(op, grad): + dtype = op.inputs[0].dtype + return grad * tf.cast(grad > 0., dtype) * \ + tf.cast(op.inputs[0] > 0., dtype) + +def compile_saliency_function(model, activation_layer='block5_conv3'): + input_img = model.input + layer_dict = dict([(layer.name, layer) for layer in model.layers[1:]]) + layer_output = layer_dict[activation_layer].output + max_output = K.max(layer_output, axis=3) + saliency = K.gradients(K.sum(max_output), input_img)[0] + return K.function([input_img, K.learning_phase()], [saliency]) + +def modify_backprop(model, name): + g = tf.get_default_graph() + with g.gradient_override_map({'Relu': name}): + + # get layers that have an activation + layer_dict = [layer for layer in model.layers[1:] + if hasattr(layer, 'activation')] + + # replace relu activation + for layer in layer_dict: + if layer.activation == keras.activations.relu: + layer.activation = tf.nn.relu + + # re-instanciate a new model + new_model = VGG16(weights='imagenet') + return new_model + +def _compute_gradients(tensor, var_list): + grads = tf.gradients(tensor, var_list) + return [grad if grad is not None else tf.zeros_like(var) + for var, grad in zip(var_list, grads)] + +def deprocess_image(x): + ''' + Same normalization as in: + https://github.com/fchollet/keras/blob/master/examples/conv_filter_visualization.py + ''' + if np.ndim(x) > 3: + x = np.squeeze(x) + # normalize tensor: center on 0., ensure std is 0.1 + x -= x.mean() + x /= (x.std() + 1e-5) + x *= 0.1 + + # clip to [0, 1] + x += 0.5 + x = np.clip(x, 0, 1) + + # convert to RGB array + x *= 255 + if K.image_dim_ordering() == 'th': + x = x.transpose((1, 2, 0)) + x = np.clip(x, 0, 255).astype('uint8') + return x + +def grad_cam(input_model, image, category_index, layer_name): + nb_classes = 1000 + target_layer = lambda x: target_category_loss(x, category_index, nb_classes) + x = Lambda(target_layer, output_shape = target_category_loss_output_shape)(input_model.output) + model = Model(inputs=input_model.input, outputs=x) + model.summary() + loss = K.sum(model.output) + conv_output = [l for l in model.layers if l.name is layer_name][0].output + grads = normalize(_compute_gradients(loss, [conv_output])[0]) + gradient_function = K.function([model.input], [conv_output, grads]) + + output, grads_val = gradient_function([image]) + output, grads_val = output[0, :], grads_val[0, :, :, :] + + weights = np.mean(grads_val, axis = (0, 1)) + cam = np.ones(output.shape[0 : 2], dtype = np.float32) + + for i, w in enumerate(weights): + cam += w * output[:, :, i] + + cam = cv2.resize(cam, (224, 224)) + cam = np.maximum(cam, 0) + heatmap = cam / np.max(cam) + + #Return to BGR [0..255] from the preprocessed image + image = image[0, :] + image -= np.min(image) + image = np.minimum(image, 255) + + cam = cv2.applyColorMap(np.uint8(255*heatmap), cv2.COLORMAP_JET) + cam = np.float32(cam) + np.float32(image) + cam = 255 * cam / np.max(cam) + return np.uint8(cam), heatmap + +preprocessed_input = load_image(sys.argv[1]) + +model = VGG16(weights='imagenet') + +predictions = model.predict(preprocessed_input) +print(predictions) +top_1 = decode_predictions(predictions)[0][0] +print(decode_predictions(predictions)) +print('Predicted class:') +print('%s (%s) with probability %.2f' % (top_1[1], top_1[0], top_1[2])) + +predicted_class = np.argmax(predictions) +print(f"predicted_class: {predicted_class}") +cam, heatmap = grad_cam(model, preprocessed_input, predicted_class, "block5_conv3") +cv2.imwrite("gradcam.jpg", cam) + +register_gradient() +guided_model = modify_backprop(model, 'GuidedBackProp') +saliency_fn = compile_saliency_function(guided_model) +saliency = saliency_fn([preprocessed_input, 0]) +gradcam = saliency[0] * heatmap[..., np.newaxis] +cv2.imwrite("guided_gradcam.jpg", deprocess_image(gradcam)) diff --git a/keras-grad-cam/requirements.txt b/keras-grad-cam/requirements.txt new file mode 100644 index 0000000..62437fd --- /dev/null +++ b/keras-grad-cam/requirements.txt @@ -0,0 +1,34 @@ +absl-py==0.12.0 +astor==0.8.1 +cached-property==1.5.2 +chrisapp==2.5.3 +dataclasses==0.8 +gast==0.4.0 +grpcio==1.38.0 +h5py==3.1.0 +importlib-metadata==4.5.0 +jedi==0.18.0 +Keras==2.2.4 +Keras-Applications==1.0.8 +Keras-Preprocessing==1.1.2 +Markdown==3.3.4 +mock==4.0.3 +numpy==1.18.4 +opencv-python==4.2.0.32 +parso==0.8.2 +Pillow==8.2.0 +protobuf==3.17.3 +pudb==2021.1 +Pygments==2.9.0 +PyYAML==5.4.1 +scipy==1.5.4 +six==1.16.0 +tensorboard==1.13.1 +tensorflow==1.13.2 +tensorflow-estimator==1.13.0 +termcolor==1.1.0 +tk==0.1.0 +typing-extensions==3.10.0.0 +urwid==2.1.2 +Werkzeug==2.0.1 +zipp==3.4.1