From efdf29b9b43f9eaa8aca38377feba3f84fd2acb8 Mon Sep 17 00:00:00 2001 From: ameyawagh <ameya555@gmail.com> Date: Thu, 31 May 2018 09:25:32 -0400 Subject: [PATCH] trained 4th iteration --- .gitignore | 1 + README.md | 3 +- assets/loss3.png | Bin 0 -> 16428 bytes assets/loss4.png | Bin 0 -> 18282 bytes assets/val_loss3.png | Bin 0 -> 14641 bytes assets/val_loss4.png | Bin 0 -> 21756 bytes inference.py | 64 +++++++++++++++++++++++++++++++++++-------- train_mrcnn.py | 27 +++++++++--------- 8 files changed, 70 insertions(+), 25 deletions(-) create mode 100644 assets/loss3.png create mode 100644 assets/loss4.png create mode 100644 assets/val_loss3.png create mode 100644 assets/val_loss4.png diff --git a/.gitignore b/.gitignore index cb0d765..0ed3b9a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ Train/ *.h5 logs/ +*.zip \ No newline at end of file diff --git a/README.md b/README.md index dcb277f..5fdf3a8 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,8 @@ Validation loss |:-----------:|:---------:|:----:|:--------:| | 10 | 40 | ![loss](./assets/loss_40.png) | ![val_loss](./assets/val_loss_40.png) | | 40 | 100 | ![loss](./assets/loss2.png) | ![val_loss](./assets/val_loss2.png) | - +| 10 | 20 | ![loss](./assets/loss3.png) | ![val_loss](./assets/val_loss3.png) | +| 20 | 60 | ![loss](./assets/loss4.png) | ![val_loss](./assets/val_loss4.png) | ## Reference diff --git a/assets/loss3.png b/assets/loss3.png new file mode 100644 index 0000000000000000000000000000000000000000..d929e0201cd0141db127ca6c2014d80e0b1805f6 GIT binary patch literal 16428 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%0Dy*MSXR^m^A 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�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 literal 0 HcmV?d00001 diff --git a/assets/loss4.png b/assets/loss4.png new file mode 100644 index 0000000000000000000000000000000000000000..fcbc9d698204f76fe9c11f6a86201920f7771483 GIT binary patch literal 18282 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 AH2?qr literal 0 HcmV?d00001 diff --git a/assets/val_loss3.png b/assets/val_loss3.png new file mode 100644 index 0000000000000000000000000000000000000000..e808cfae2f2c3f080032fdb53a4fa4c229e49a50 GIT binary patch literal 14641 zcmajGbx>Tvw=F!lySuwP!QI^lf(CbYcXvo2xHEWgg1ZC_?!lel4sY^)x9Yp^t9R?o zA7^^1=Jf79XZ7yA*Ipf?rXq`iNQejk08r%Rq%;5k2u^T&9v%{WO`hU!2Y*4iNyux# z!^5xrQQZdrBygA3bJujTboVlKwE$Q-IyqRdxP5W8uyAy<c5=Uj>Jb3|$N}<F;#%H0 z=ea)qL<{W?L4*!eV=ts5Drfvt61W9okP*pZcybin;h7pOGms9)icqBynJqR91`O%< zxNQzAehjymtQK|@3{Bzn*gw!m5vg75CtA!Ef7q{N%Di+2<;;3hCzPacx6tkRi#`Qc z6Xbqs6mpyLnQ{wEN<8#YqsM0HQ}TeJ$5vpRXJ){j6rW6$m?i#i&B)5yUVhXl$!DuC zUv{+?!X>iw-B+{7Q?mDuj;xK1w_cxa78utLZyY|BMA`6Pmru^gUZ3y&WVww#Joklk zL<J#`PJRDS6KeqXv9UDrXCTUIGP~3)1aRj05>LQ|eNjzz!%;i{C_<U+RO#l*&<#O6 z2KQ`dr`aI3;Di#aD)MB0vEF`?iD0tYWW%s!UD2FwBo#HFZfKZmv=Pcdm;k8W3<NBU z<iW=&FZT|PeIN<yP-Ch$qyqd!@;hK4;h`aY(vP{qcp$~JarEL4VHm%7d+Tj*YWMH} z)*V|<ECh0=ZrPHG8fb`;AcJE_TIB(>T-mDyP^cHVpjdT!24ZPT;N%m)#Mf@F^_RLk z3^oQ{2O7MKrhZa!cJWbRHS!BY0f^T_(vS*p>!IQq(In5$y}(mItZZqM7zt6(A>si= zAnx)$R+~H=6JFi{E6XOE0$fa0v3JY<Syzo&P-8*Zu&lMTeY8){sYpcz7ktuD;)EiT zt_>j;+>$vqSfptfR{XW-*W4xA=fIWLhqIMB^Qw(azdP+yRz0`l)rp?pD=UV-T#&@@ z5OtCpEMg~Qod6S|aFOe2pJ@^>Q4z^1fGQ*r-}hS_E{z-RvlCIDx{aR~^Xq!vLXoCk z*4$K$ZZ?>lI$hqVqd1NXy8vc1`<!bhWl+IOJXv?M0@TUm3M_86^y|!g_TG+f&qUw9 zmou%LxcYQ-oEZz9Dgo&7{WX{g*Lps7L(vQY$anzs=CQ0&_`Bz5d}RQ7f|7@Dq6Q-0 zgx_V?m#YRO97hs-=Y{!2_89s8j%WR)-aSu3j}F5Ot`S`3j4gpi5`b^z5*>jHY8q#| zlEz<>eAh6ayxCLD`<0#`|9HX}DPLb-X56RkI!Jt;jPq~2LFx{QlOa%Zms!rE+-J3D zu#;k{s%RtMuNfDQ-C@J})?XOPe*XNfF4$k#+R9h<t45(#X5BjR`!CoJxp^+^<_sLo z0@se8Kksakq&O-9?EuT?o|zU4ER9V~+;0=|oD-3e&*IbM(>DUSsKIN(db(c)YPRO) zC<8rzZU7E`Wfkkd2$4=Fk_ZwK5tYhf93A(bJvrZTNBNK5L^Dr-h?+=}Mzn?OLXGOk zk|2{tFc88_!yRoA#ZeuZl$iC9WFpmcVy;2NFd!*rT+N5Uf3OVgD>(78>i=Q}2N&hv zjj^Kaao0RKsa)52%^3W!xkef{1h$*|BS{-FhPk{#l^<G{tg~GP-4Y1^ZS%S@UtnqH zbJ_K<w6tL4^~UqVz^UiU8;RHJ!PQ8<8Stj=qC>iFX)fL7TpcS&meSBiz<Qp0D0}}m z5h<SNme1jIqkS$%@o^vAN7d+nGIogzzb_>sC(I&7F;A8$CsgVurSZL@Qd&DihB|0# zDRIciLL|E~T;Ds0VtHqKViXLRaj2QQ$k+Sw3OJq#DJdj7n8eU%NEb7za>1x?G$?xc zh!sHEZ@gIiCsc@XYu4OQ0GG($qsx`S*%qAAEt#uml#`nbG!9e*dZ~-4!&}NQ^UPRH zBv9CVvX}{G?s_#RO4vK|a#NPcvrydcj<yAsSw}TPU&LH$EVv;*jxcVB5A9*)@snk^ zr6^6qLuG$8vk;;nXvokA_dc3$0_F^;#v7y)S)Ta$MeRA&6SK+74KmKeXju>l5rqDB zV4zwe!oJ=XQZ%kNS|vSZ9r}2LwY&w22G`cs&d$!JE5m+7rx5KXlz9S3UP=~5$9j8% zrw<hwWw!{bmC}$j;x`<Vq_jw<?(XhjARz!s{N|(t)W$L_Epn@zd~qWX!9=LkZ^tU< zS#dBRIWI3S?wiqd?z36h0Sv_$`=d_gIfG){C^Rx!@eM={6hA;XlkJZ)O--ssZAnX? z*Q=4Zd=k_sqdMaz>lFP6KcPIspPtQ4O{3wUmre=2`yN}4JtHmcRFFw>*7f!EmAAD9 zYVhi?Qvb*&u$#O&m}EL@&8pY0kudj34ils>bTU)VZ_#NPL6qA|)Oc57QxispmE^^E zdnc9Zug@p~vF?hDQEw1tZ2O4xSp6u6N={2kb#9vAJ1ncjp)Vq15>Ox33Y4#kWdA7i zzRHe)X~L*iv90wKH8aDgGkB-sw9UknqXO1*>G)go_sCc&L>n+kT4MZ}U9ziy%7~SL z?RZM<S&PpuHOKgU79lokM0Ty0<Q-R=Y4%!Kyibgtq|)&crKGPg$@x1kEq-}b$w!$M z3Ebx@9;DbvH)N2?q5*neZE#R(=hKxpX<Dg<Y*lJzRNMNFCP`3vihQ<wI2ch0EMhJ; zp~$e`^!{FT5;gR1zxp&$9G{zdBFl(<aY!#?Oe2|HN)7^0@l2R!Ba#@U_EG!nC^7-) zZ3ij;nB{Zj<Be`HQ9&=#h_db-r<_PwQ|lY9UVghCr<X-u9u*Bv0o#D_3m7e>n{HTu z?Sg2qPV`uqrGNID+0tyQ;u=M0DXAY&^5n(e-!&{P7bDNs)g-MUO>s9X@8nDiEqed8 z=G61h3xx&~*4OT~wp7<sSu#kw@%)Qx+R6LbNv7CE$KW(6&^^G%hagx~^nG5D%^`l| z3zKf(AA_y;NR{%&H9x1HcaC*S1{xZ!6Kqb74!NHw=(GSDBatSVhC`V^{SZ^MVgLG7 z&I`>>1N!76I#~&^1E?5y%dFEfr`6!b9$4x!4Q>krS=l51i$zy!>&HdoO^=6-*6zRk z##X<qJ1!rB(j7P2-IhLHpX!2McQ5lc|30RsiMXxRctLp|=03dN)$!#$pHfY~ZefuH zwjJhwyz-UlYYP(%Hi&;FA3W6*vy<QB9i)deU~os4_&l7I>h0gj!gAK0Br_6K7jYME zv9=s2$SacYvV;`ZKW0C!jukIJp)|Pcdg>>b_{nlJo<JGU{hYDzo%hXvu)ZT`YeX?K zM@`olX*-@vH3&QciNYD8?^`0L)zd)c>M?Vn%T6|j^~crpD$t?$l@S>LnW`x*D_iR0 zsEw_u9=BH%G8%}0olZ{jmbxTMy)q!5mlq-e;BUh7+6vw<-~ppp;EB2+8`q2on^K48 zgFbrQ@)P?u$O)Y?&-T<dv~T<9=v$k|JBM4VgWuNX#=y-h5?d#6+)!jxz+65$ga-}i zBn*?^@uW7;)QHSwnU<0kGR=WKMshS=5s807Q!aZv8&(WxmnGt^6e1*S2nQ(mfty2? zv>9PVCXrlRvrnDoXP?#mO%fCs(2p=;=rTmZ_qtua{ZwcCs-0<p0$Y4bCp3L}=L@zo z*SllF&d<(1v#?NlE95FpId917(@gq17)p%43{K6Gp$>9bWM$W8jO1;3YfDvSk$-P4 zLUPuG+mYBf(Dd)qw}O1HpHvz0DLKf8eDU5sGGt6u-0d%BE#fY4<-Zvg&UsPW&1e;c z9OMzPc8~{1^JZnue2e|W@RFqah4TCM<bpY{5C}S1H_a2BF~Wkv32ugDUuO$l42@k8 zc?{u{#Xb&M!Tm9Ay_8?{Ug#MwZO8J2d>Sdk{&uso7xDY}7j+Ta=e33c(?O(21h-g1 zva7`kxuBpRVAh<TkA?$aFWYK$(w?_GC~J+Gi11{{+}rV?VA8UArFusv5h>62WUkJr zjWD=)`YHImFgEr&GSatoLeleZ8{FxMZAJxXI-5uF^~{;SXtqL0&!^B^h!o)A;c;z2 z=>6A4$u6`HK$XP8mi{P2gP1tQ9*>UZz(Gl@grbo&9b8Q0Pi$c!&y@NZHNCz96jp_1 zVAQM47pK14XTn|?S+Wc|nIAG^g{!93nlEVj{62$e)}W`Ti1b=)f+Er6)tl58sAn(n zg^AS89G;ZU-CFP72cXx0iMCmLd0FZAG;Q6bjPDKJ1rSGE2qxx700r$V7*91vGrO%a z!ZI>4*ZeN7#(*PyZi`p#kirv1RS}ozyf<p9{l@9;`m<Y24*^4N!t>+fU7tXcUXQzl z)7L=J>6;{>>p`GZfJ&WJCY$J8hOW`w%iAC4y&*hfqwXDUFkUocxWzO0WmA_@tzDrs zkintIVW7EnXFdS})u8x@$!G+eQ&bh&Kpydsuc7?LytNj6$TH(6YkJ*Q<Fi3u!_cox z7O3pF5fcz3Gc96|Wgyh0H$)^AXf*rP<l<NP?a^z|n7q7KNgucG7TVhTEIqGRs*dmb z**9!&dud^!kA2MmUq2GO>h|>AP!<-hMI)E1)#jy~pm!Pp8Lzj8ItcL8rUU;VSydbQ zO-2}Zbp}kGX;)3bI=_&d8vEMp>UO(6L7@qieA2$d9(AjXUB|V9kOv)mB2HrwXp^qS z`32JJy}#$SPY@gtwJK?ZF2F`Y9F9bNKwP^#IQZ+ozvy9ik%*bOE1TfwTv>br60aIm z6IFXRZ3k(nU|=c69<Zni-|cCt3Im^&6(`~y*7(w<@r=CRBk=O_uhW>iUB+;>+N7Qn z%Cr|Wt!<@8M2J_JJl9;wJzUE)fnn%Ta`=*@>AHQQv0ZBs!{rSyiL8ZAnWcJ*kRSBx zD%{*q2v%q@G`<%cXDhKxK{;!F)B>fb=K~{T1sz5Q?G%oB$F7=b1l2Hfd5IsLvC2g0 zM(8*cDs204vm!XwZDZLI*9muH$9vVaQHkOv*hWij%6V@*p98o6x1^a5i?KsG^S#y* z%!s=A?2Tq-rrf5dr_1*O{G#tSwikoYgR>_mVM`GKf`IlVpG#AKe2Z+y&wL>4qCf^p zS;2l)_0L*{Q6!q_7z^7>SMEye(}5=!YckYx$p>+7!+I~1U0C~70BPH!pPml}=tRvZ z0zE2Ea%J2Ue_lCiHe5~*KRPqLunsGz%Xr!J(BQ8R4oZi>JydU=L*>@U?q45_onC!S z9Dtl#!1JeIUYT#QxB~5_{;b@c2OgZJEbwp`JK+x;HY{DN&VhQ^(9NackLb?=E+4)= zJ+m}h19Myv(_Cu}eoO-Q#XQPPQu@pT1(t-*e!U}wUwYZwf`kFgqIiJKM>t-`-m{36 zK?S+BHZMVdb0D$OMNyQb^QT@(8TN?5hrDO$&Zi$UCY+#BsHuc+HSjSurpho-mZ7&@ zZi&pCVg?h)*vEGm4nKb2Iv|AyH71I?5wW(}uG2#N5`_SGI!zju^#wm4heBmyZ?*vJ zY6r*TdVd_9_tO3R@s=YrnH#gsD2ta&Tq_pYc3doLhA9BcqywQjZ=!%xn#6pZ912eM zV6U&AOTr(cc~_Q0JzD9STT`4t4@C|l0C&35M6xY{u@p%eEYQi{b*iINDT^9*?&f9Z z16zB4!fD~yFRGagvf=T_K&DU#;$@bmCQ4Q~fOwI3>`EvH8NaAbb^qd$i*;Si7q<D# zWew;UQ~n<%l1i50VbS3?8ivJS<Cce5jif1U{y&zf_k?1rwdH)jUnr*-Hg{Svwe&y$ zbhm_z9%FCR^kXQ{HXncbqr@o2{0d?g#>!~Mzwck*>y{Ks+(bP}wUULWZsWs@TnWv< zgQy6+k$x&xf|j>YM|8<o;(%cgQfvGL@DV^`z(U8^+A30RVM%U~2mZq4ZViD$EzP1~ z&_Q<FeO+#Xm==Wv;03YSpj)$>?Mu%<eCHiavW(IEdOL>4GPF}V1L5ZtFS;WP2T@Q6 z?4Bxu-kjr72ig&nfamF!pUo)uyNFo4q>f=44#mR^jZB0&@PNOzr>Cc=NTQ~H=$jt! z$q>_w@BvktX*ff~@*9i5l<434p0G&*s8nK9xapg+5K_R^pA?&*_9z6GcNj$>D?{Y3 zaHGWCRHOpLj4U-EK>uaWxzGW2)Br_fWUASK3l!Flf|n!1T6+Y73*Z$g)0=R0W`l)g z#JoudoGpLuq9P(C6!@a7K%;zxzvfrb((~1d#Z$Agxw9KLI^f5|%9o^-ae$V8eKRq9 zy7tesIGUq3s%H-4bv|5{n)=+^r)=F1zV}vH*jxKHUS*pWwH%f51zY705e$3cxbMFJ z@nNKf+?4NGFs^p<pgg^?>uaq^JK!izTn04YXvDu^R?J?{NNU(TH7j)?8K{tueE1X@ z8JWeUZNSJfJUIT9V9$i3jFB+kg_PH!;$s^n=e}KO=)}E)fXgyC2D0~_4}GWJI_4bo z9j7T3fzq_z*WPD#@8Ua9cfe)c8zqZAlvu<U&FR(98fp#KWM8`FK7w<<5!V07Rmk0H z1<olm*DJ<7m5MNdSJke!Fn30r&uaEp78i#b?fa8%S5V2=a450k4L!hatuuaU<UDvb zJks)44#9eB!ujd9`!lk?ad0?y@Yv|^(0gb#NnuG}e5+<meng%@^iuZMsN>{Mm)~aH z`f!*@18IKYwvk+$tpJ+Xwm#EP{5A`fw-{nHMHPO5*G$)?5#HRdx)wwvVB=|q7#mR3 zIO7WHA1;qDx@vAU-8d&ORPz-cuW~-YgV?To(QK8G2rbsWJ^Cd|3b=Q`dp~=H2IwD- z<FQsxBd1lWAGYfjG{EGD?jk40Cg*i7#|R7jaI_s|=7}1jRYEYoE=C{Sw)z#-tx~@T zIq=)E32bme5Bb9f2P&YVdeSr*+H7;Dih3hNYLhVTD`F6<2mwIE9}mDU8Yu)|=L!Q- z%9{#1wwP?3TicKE@(GF)lK}ZDftC^9_FE=HLnE1~TMl|1#ja-#BR0vKGUv95lCUm& zU`U+D1f<JYt8eCMPIAstT|B7<3p;%~-F|LM0gf&smT1~Svwuwa=qUooztxMyIdC#_ zrOo`j$4f~@Fm(&b6|v0(aH>WF?e$z?lYJIoFz1Ni?jc>%0%H>$d*gZQb-WFSXDR+n zeE8v0pxz{EuD+&jl91sM{z}(Huwk@flY2%$$Xf2wwk|y-Y|NOZZ90_JVAlMU!VYT~ z>+b%$JbE;&Hbt7ckX)i&B4x~Df}kM>nMV--q#M*Rg5I-b4<qgng+O#*L1;XHs=p_J z1qa@<cN|L0i=QiR4|f>Ap%YI@U8<@lR19uvul`Iox<LGccOz|P=qxlzm>xF+Xwz(< z^t4xhb}8$8GDCuyR_dH=7Wz}$bLv6hLRhv1E9k_P`&&x=%xV)0{S1q|{~OmDgdRy$ z-_zC7OCOX~Ai@5EPdb&p<#W|wAUa?*%|LOk<#Gj97SCPGkoBSL3^MV!Mi0D&*sm72 z2gs9h{<UcgB9xEg?DHtFtPDOwv1E?SL;WkwoiRAMEPxlhFw4+pWYzNJkNi`HBrcN_ zB|{yi!H5x{!U0>WM@lblCTahbUOU-(CCAio;Z{dn_rC6diO@Wjg6&gO^fA*x$w{GR zTm=z5Q&=Wzd*-yaUJ9`L?cNX1@OE;citT+iDUgFV(|sfVtp`uVxFz+~z;hL-s3I_M zeh+xO*;TFi^f9+!{Qevk<QxC%Wc9pD*SPs2l;>-0*Q=mZ=w391U)b0Pcsq9=x-)^8 z=Lu;hl#Qz2Cj&T7Ersm8WMftSD%sOEJDxxfbL39&`rL@dT)ICY62ZhK@dc@qRoW2f z;#*u#QB=^EB_z8;rmSI^1^q+U2$Zgzv;34}-*7!?{B&}{x3wzw&SG%C!c^DM+0t?V zpXQ_^kqO(lOBK$~-9oRbl@oh3jE?ehRu^JUHC-9ZDxEzhd(GI8y2!aP3;F_n$$KK^ z-_BI}ttsO=-G8Wll%4`iCPZDmEHc<2<el7-nLDXD_d=%Qdhux!D$fTkzdGUi9GB`6 zPrX;w>LYDOr#nsMJ?Z(6=ld~xU=iqnips=c{W6;QPbJ9R0+*Fa%&+A;72>HR*&8Yy z^(1_7$|eD5+|3O7#H0EE_8+Px*R|ElFp~s0<h2l^Mkc+YD;xU9Zk!Od2t(t1Sm3-b zNc8Vtw7|c@lsVep{2Ld6J{WpT_x2ewHm8)PrWfKJ;he^U3tfXPY(P49?`xcT`KzJ0 zI!yDwKT>T9u`(fIyd!hIu>ig)T?9rL0%t)PvM}}m0YdH!8#mNbWh&VRzDCM4?Nd+j zEO8l5w6AZa$_@@SakwOD?^yfSlVtvXLv9N^f99$?Z3J&!!hushX|u)OV4CQ5)_IgC zod&kUbquKNBtqtQ|0j$?vZM)9>}c0;lFDe)dh?Vd%uBUzq0yTd(3UOpwx0GyJa46S zT8I;$>sx>A>l_>qHh24JdmBE*mA8eI&uPu_Xq&N)NWhuAlshbFa5O>O$)Of>`N>^w z?2mf`z2F|9b9(@7R=q3WY%b$``UAt@eHN&}$6G@)F$Ni}r%=Qzj?!LL#gt8JJ&1~O zWY&;8vef2fwcm#p1y0ev=Bt8O-dF^W=C3*zcJUpoF;q=WOvD)BYZ3pEUy3C0#gdWe zaJi^LY&8fW2vOl{e8gfq0<zD~nx0hi^YbM^z-oUk)8A!Fi=UnIZs}k~`Phs)^<K~1 z1yEoIilo~;CUJJIygkoX7v|<t)dRf>*u0Q$i=^REPg@=G9`2Faj#~kdqMNW{Ucat} zbecyH0h117L<u9mzDKE(MKY;tBr0V2WhR7x<{OV*(bssFa-9_n-3&l=3x`9a=;MqS zf2Z<<1r_-{FcTd!ExsR2M$CqL6X%eLqvnvIOtRw#OK*2BHx=FuOg`>7Sp<^qsik-a zMrU#ZdQI4W<%^1X91dFa*{MQS2tA5hnBZ@9%A>nc5OzX{>XEd(6RmCaE_KHZCeX97 z=?ZJ*9{T)|d3Yell#%~5>|e>aEGKmzx1`xQ<=TCLkm3Z}>(UqSA|mqM=2Fb4)D2`4 zAM(_&So|C_u7B&X(=H3KEaFQBNc_YxQs<hAIgQTdo<d=BQcBW^Q&rURgE);$Q78U` zmu_%7z^IM*=rnvOqL==$Eg1wKvnjHYP7={gHpNzrOFksxiWj;Lj>(I2y?4C&=l+I8 zc<Eh-tut^c=SquI)oC85ZkWerIKj^R{yp;Jz$RgrEuKoF8~8`4d5Bid!~O}brQ4C% z9WrJCe<-;qNyeW->D@<UPP(G36*bqt<#p;{FdWVf2D=AFj|d#L_dT-kis$>z^NILV zvRVK`D8(Jb`s%aN%f5ssZ?wQX&R)(eLt63WJz+hcZ@+r)u?k%o#Cxl&Ljj`hEq;Bj zphPUS3kYj_fnERLqWIF<@kMbj)hUmw{5*lBuH<!Z6zrK;FW9?q4ui0!MQM-3TUdhC zfr7=vbMe>(KxV#Xe0zHsM6~ZJqR`Vvrc5w)P<9x#2K?d9=*0sPjh)sEEe^vilM?Hl z*sc+ind=BA(mhLgHGrA<Sdc*VPm+f><V02>j~;SHCo`Aluk|OK>yIAs-m`9UGLmYB za?Q#I@pZ1(`tA=%L8QwG?IR!|C;1f9Aw~+3NVruz5V=iZCcBH7Er)F2qnXJ!=Sgm@ z1%wq`_(8%UShuUW_&2@l(P!E16HS3Cao>6=>WIOSRu-{nsKb$X&+0A+rYWdkpAkrD zI$CW=gk|<@u1I2OEQOWuF2QSINS+Ca_Gim_oul9b-ilmp6_MFw2|3L0;Ltk)v&Rsv zVGz3>k`nXd<0CZH@kp8Cdvap$Dcb?5`w*6fjFhaw{QHk(=Rd7iSr&R81l^t}<5l4t zo1tj{lS6}ud}+k2=K;j>y3ui0K$PgX*Fhwh93B7KWnkZSa$qgZGG3)Mn%uW1+?;`t zIvhu&>QzPM^x#fKM<M0^nS`J!l@rj<kJwvO3aEE*J8|?UzDMo+C@Z+k+xMYaNR<BL z5z<U6AA5|S^JJ0ZEbz!5Py0t|6n@J_*TG>tT6dFk%pktG_q6~0VWdaiv;Yo3Xb^58 z@I=q3)~F<Qkp5ci^N75PhgzdoGc{Y<Uh#vDa2z2`uKtj0thoxbtPt_e1(cJ2ZZOgX z?I}>le{>=O-nw>qb71BUO02umcxXy2aOt2DESp#Wbw;ARqo&j~ks3kM;Ghz}&fThd zI?e=;(JYZOCT^P<Vag7#>h_#FDn(7q#Goshr8Olb`KbZ3QEMh?p|XQKES_EZOWOI! zsvvZ`KFQ4Ql$tOx-V|Osnih3<u6Rg%W2F)Hen&rSx%oqCLL4IwhB}+stz8e(HB0vi znj{2QiG%1eoj;V|q<@8lYo3`V*+X@lNa;H97oV#(u1&hnl_7AE^Wt$V4_Q*c805Uk ziDVWgkE-z8ph1&P9>r$_iN@Um=<Vy;ohY882#5m1<+CMr!@C)GPha#3QX$m6y{7n} z6f?y>k20fu3p_+51!}EGR_4q(I>=BvY8W@Xt#j2GOvGP1uuJEMGe*f2EsS$x|3cbN zB*V~_;15UQhaSEA;$<IFg@&WuzwQ(jT6rHRm|S+ps&X$ku!0O*pBayN_eAMCq-pef z&jKSZzQ^&5gtM>9GiHk1hTTsfJt>LXJTnj>rBdM|wX`pOgyTrzSwurk>}ii&AdnXL zv!Mx60G2|<ntg0k;cTS)o)4hsLJB4&wvf$pg|`2(4Sy&0?y=-k!e%%^*%hwd^laE9 zpR;L&<GhS;u0<%qZo9eb?srPJ<txJG%Jn6$Cp~`}z7m6Li++CET5&WOC#X?W#8Vg} zUx=?x!a^#n<OubucX!K7(STO?EDUi#1#glsf0K{}i6O#1*-q5t<zc0H1;@xd%RrtT zp=0gz?|*S|Qy)sj`g49C^8Q}Gf_XP~dy4#yA=%G`y_bG4c659kW0A;DWik9>_~+Ud zZ`V-;0Kjkirv-46TvH-{?h8U?`>fM--h5)JI<H|?mqRM-Twv*Iupl<Qe9w}&iVN`k zDQtlNeR|S-OH#Ygx3#?LMb6-nnwWG-iShS}|0}m87fQQw%eV~bmEola4;dcv0i8Wf zzZ4biC7_Nkyy`@Wv^?=}K>N-mY<6}<okL^l#{cHvD}Jxb_4sgtYC&u9&2~t%)Kg*8 zmj`Zg4UNqeDka0I9~lHPox%oNJ9GUHii(OBwWg+bdGIAE<5HD@Q#qe(aW25y?%DF} z^71zhEkkNdnIJTGWI`)iiJ%?lyFOcNSQR;QYtrUBSxFSPL!>dcSo7XUXLf$>MGfO( zHGUyDY7@d4E+x%1`=@$6OlcG`C$VA;6u&N`txTFPy4;9XeD28E`W#lMMsHQ7qr$Ry z!<$|Z_&SEXc2l316-?v591_uN2D*Oz(x7*8-f}d1MFCjLiBQN7hal=l@h*=fxNkB* z`HdJDC=)<$5h3>+DG-m`XD@E}#eI~kxPer#g?zBkL40@Ra5s!^#>r_v(z%Elx%LYk zV7Iz`cOg%h>}M-)Qd|9N97EJx2dG1bJv%(>YSxt8G>sa<NRrEzD8m0Z?5)3~M_>KU zR~SI@I3F(tBS|c(kW{;gv}zKZ2tkG?@M>;;cVsA`HWknNM~~~Upb1mNiFfu{sr`*p z+{pYU5lZa`8_RC9YxFn-L7zg$z7lmjdDO!@3bjraR#$1dP;_m0kF5Eo6(A-ufVBcR zP7#?ZUA)T+<Rd|bS`3Y})S8bMG+98r;>Z?T)Mi3En3A`ltWhk3&+BXoO{dC@q#01$ zSr$6CCwCdbm(lZMA(~Z*^b}6T$aWQRV+2eTQtG57<FOL7aUv^BK$w_E$4J-Tus}mu z8;~mvqfbU%gvpDl27PB1!l2dhses~9{4}V>`J-B;Nj_!Hm3s<%opIIu3Ee)%MX`+5 za7acYR_n~pw`!XZ=o&erid*-sBANjyhM}f<Qt}|JGXO-?tB*pp2{{lj7z}Y$L_??) zz#jat1&OIlgIOqD+kJ(AlgfZ?<CHdT3wXRVaQ^Vk+AcS*09poff1_?;8lpu&4g+<_ zS)7<%^mE`t9L2mxU;;^K*pY3CsBoIwqbegT&3>t66C^_~rUX_$(#N6K**HaJWR*;g zRaKf}p6>prW}c9zXHgX|>Z?9m4kPE=)WVc<@r68|iB0JUm%SVoBLjHnfQv(_8&R?s z<DR4u^Dow5<5~8c5OtYvV%BZ$z{Po7Si7-IM2)kMsx|vms#rHJ#p%Iow}|E9dEz@H zK)cN_I^0*N4xt;_=m}+c>VeE4>^YNEPc{pZ&o(gqg|P#E1&V$>zrLZ!>6oPT`c_U! z8kduIuvttmGKbls_?Yp?YO~x%R*p$lJFaD%i(&nSqBF|Z!@lCjhy86ZLS|v3mTr`E zA91uCC2ZhgtMAT%pf`cNm3G{QJ~-~(D1GSh=YpvInvz*m*9PJ0(VO}?GsuJ;18H^% zVQLy+o%Nj%VVRfgI}MUq&ITYH2<-3c+J+zr|47U?u_|i>(}tEM#c}dtt7XbF$xfUp zz5xI|dj#D~4x9XgCM^p}bNj5iIXVu%#?l8+{+C%y=Rlzc`U~T_rWNdB_<P3@w<NQP zEf;Gx)N>Lt0nAxt1`lQShQA#VlD8gEz47-~B%IQambIxxYajP(m%@L0CHqXAFV^qx zPMsJT<OxH;nuIR4kKKH8R`1Qu`zX?GwBCHOpp(+Cyu-T<8B9HYYn*~4%YUz&ceQT# zwl1BrFfg?5f8}d!0c9RPY4*>L<5gay@?>G4QVu4d+3nhZWB+vB!a{;K;nLg}ii~B- z_ISeUrBTjobW}>>9UxO}2f@$Qoyr$y>$*8h&FJ=BnB$oJL&Uc~Cjwdv0k@liHx@8v zt9WLYsArq8I8`%G7y$0(c&EwvZL5oXyebf?$-_keny9NNh7KL?6N8p^zWF@nqZ%Xu zY1O7kIg)J&5_Zb;NFH)Q3D>9a$ps|9Z-dyH;hoa9{lY6tE@4$q#6f1`M=}bihis<V zZuD~``CH>bMywR@;y&OtRi`<=%G9BSIc;H+(q>6s4+F2HIShIo?TyO^FRvAFme_Ek zV|W`z6gamf8ce07ZHQEHBsRWVVEIk&4hA<Gr~qR>2NOGbc)$zbwbGrNhVzA>M-x&I zuGI=0G8@q5+Z`thYc^XuU13f`W=6XhdM7cdk$8rsNv?e?3<xFEQ;@);oS;?aoox|= zUz`@Z@G7YW`TF<(&8qyyQn6|cye5BT9>9_Lzeb6^uB54o2(fPq*o;|?q5`!R@R;T1 zU_AJVcMg>(CuEU^>KZgux;2^*DQM|@1Co8Ttqidk?Ghv%*Lz6MkvO_=w40AEVKA?S zd{S(f>%AF3P9p)LSl8yp*TPu=(Ff;c<q%*J(uX>Op-#ew$3IL$EwE$#;#TLgJ4!Nj z!uJR>?FFkz+o!jH9@_k#yBenV>%repP__M93!3=E#OWw_%*d4W=Xbu7mOT01t!oZi z({>;-!rO#+@AZplaihjgb|KQF1pyeClYn9+e*6S3bHcHsGbnTpy%5tMVXU}3Z5t-| zifa;UiIbsj(xIA8(s|Rttn8M5QHEvT99dI+?eG`9ukN%}-!oV41x8#34nJq={OKD% zB;$<??Yke6bW>FlZCW~24x;t=Q(!vdV3+4`g_2ro+dY?^Jb{Bm%|gS|vC)6b#9s`a z%ERSHNo(t6oH6lquPHk|lBTwkJ+ad>3977z$6b@nZ&w{viak_qZS6`u+F&{ABFhjR zx87Y)WmOa?0~s3fB(Hf65=b@dPtSyB##ICXs4O3jg4q7yL2{#F%f$sQHW<_S3Uchp zXc|x~pt`bius8InF&`h!()Uv+2_o=#?R4h@?>p@p^y&}3%cs4s8B6w%SR(oDEC1e; zhyyF>lrlnzzwsZC#B~`!1k3uo_;XJyq5Lt~frnEErd)T~ucfUqf6epXaSD3b%FW%V zso^RGov0j&f%PrZBbV(j-CvRn^^A=l_KbOn{nm?4PR92qRNsE*lNtoPf08La23Ijf z{PyvrwC~)eJ~5?%1f<0#X8nCAP#8yPe27^qdtaX<+*PRKYoVTM{@_w{)$4Ju^g)L6 zBm0=x;?C)&ZJy=Tgnn-Vp=R)S`(Xh-`x;UJyR2v}rB2H6e%{K)0AoQXg=%d+!?y-b zZw$ekMk5i%hA+dJy12~WK0a!@p8b|K@nfX^X(G;B@*(v+pREK11eR*MXbEF-x?j1~ zwcip218*L8RU4{-aiA0ZUh4zpvl3Khx^(wC)sEiSS?C|kk_!CLiyGSny2QUJ+u<gj z`bPeE6xO<|bAAd^XeDsNJIodNmQ$tzj<WeXW@fbHn$y(9wFB->+;r+h==SMk^FSTA z^{Wy%JXrf-S^gyw;>Qip&_J3JX9>1)cy|pnO(6;sqMhxVqE5u$23M!$y-zS(m1{A1 zl7PSMH#Z`wN9Ou&G^pp&9+Hb)I4*m#X=+XJ%lPBNnC6rv%ww{&O3eLzB@CKoY34Xb zqv+K%5`S=sR`DoFWo<rXTlEc=9c+#xaSp7kA&9VI<@M=n>@smm`lY7FNFg(hrk~02 zPK4oSfN)D*uNf)gQr5Dl+4%P`GA|c!Pw><3k>r>h=s|tOmhxG0qlk5K^hxHjD>&R4 zCY(?+^4hC%GPrRl89bqFgK83VV~5fv*aEN%cM&6^Wz?UU2yHX}8PS`@R!q*@4{5R= zdhEi7oole@%}>WF>>w3@4N-@Fg@1%$D9(<QcMWF3f++iE2RbX%c{tE!Tmq}2kj8;s zqQjNvn>FJQRjQ9xoub}=y1J%)6!5IdszG3<Pa{($DVxS3bgUHzu`C8^FD@C8Vm5{b zMqhE*i=HKF2v!7D1l6FDd_fc0%vH<GLwbZ)v#~^p-RviwT|UEcRk8YCm!oe*pJ}Be zlbO{iH)*>l?vAuQW;ochui^c3rMS7pe*}F5Ub#_Y9v>fPVLlynIt%2&*g;RsZEQ?d zbp8DS7AVH8UQ6N8GfIsl9Q=(|S`}JcKq~NKu3kF5>kD=nB;qsZ4=FOg1M1eT?GiL= z;}1uogfvt%QwwCS`kD7rY+CQhqK;;g$89)T0kblbwFHMdzEn?gpCuAa{^4%07sp(+ zMx=3?>+o;X(px$Ag!)GKbl`6S^c;?V{d!_aOPW;Wy%<hxJAq|rA|WlXyMqu%8XUwd zWHm*M?8B}T`$NH}!De6YmbS6obc$H~XMKk_PRzLpJAIJX=%;KwaP8Y6A|?YU1z8XU zgIU#!iH(mXXd{P5Q_;p8#yJ$7yR6gzErUgA8o75Ur<=?4w}2V&D2st0IZ{F8R~N3- zr{p6sl9`SWX$l>tlte>*gh@bC;7JaFaFGT59b0zP2Zqanq3(!KoxYvEPJ%nt4=7Ws zP3t3;ZEco$M*Xdn8pRP;?l!-TRfwypxkO2*MI&9;!oBtfE<lO8L>~=zj1Yzq_6kS- znc4xi0;s_qrY~Pfam;RDpGM6f*Rg})@%jpuK5L?IP>9q@kcUJsW3ifuyK%^-YnxA# zfe~0aYz<j}2BQs6EoU|NO9Nqd9O09ic=uD5RbJ3R)*-~NoR!z#`S0~05T;glRw|vq zbv=j&)tn_I+omFy*QaP%0b4kM);W--aurPRZuWen(Y+rAkp<j_Smg&4RaRc92KgfY zyAv;R?-q`+?-V8N<V;<|&49p`C@npgORd`fhGXPcz`c`d`q!`0#j}4*je#}{75-c_ zY$aWbW9e!6{G1kv?D)O<>9=!k-%G3g8{OeDEw+45H;@)Tw*;(BEga^5zfNPmo@9WF zRgl9gFD1sYw&E<tk0m9=W7<;EYdK4|m{9R~Z|^boJ4eg+yBO==`wrF|Q@v$$h_40q zkcsK)e(mr*hk}BV!q;ax^Yo+E&`S3d2nYxW5fht$$&UJ5+ua?Vh=5Y1Q+?73+Y45F z$IQ40{6`9z-|jzER3;;%UZeMPP|Nyr?flbm$u!_`?vwHBLR}!(pXz+`zquMoI+Sqb zC-&_MoGp?bS7j3<O|n|5HDqC7If(>){ra_v2;|63csTjJ94sWS)~V_!JOSZFhlo&- zIT^ZF$AW@DTZ90iX)Ax)p=kdS*kUVLUM*oSx2D@YEbvseR#s5N7`N8JOyy1IG~abx z{?_pwD#YW9B9YZ}p0<%ui~mz4SZoX0x<rejV(WgqzQ!q!xt;|4d(Jp%S$qxosUf9= z*i2jgXAMYo-M;5MTTddvkv4ZdPm|{b*OTe~mDLE^^GcfnNikx?I8`a0$}mp{H%rw5 zL6e~Le6=S_#8MOMH0eTXRNGAKScQtOJm0cuB8nJo;qBBKOVqSVt!*IxcSEuZIa-T5 zTtYo&4pGmZ0Lttp<li4LVZ-#}q<PFU!@|OLtP;~^pGwsdF~OY4f7gTQ{GpcE*mtee zCNJ#iG2R$rRVmlhY5j>W7u=AE1ikGppp88{0=-VCVF?6YETsCF@=nCdf%|N<oWv9r zBu=#E2AS!#kL*II>FSm{RtOBRpA1XFg^7FE!IR_0RT`9?z(8*EtL%c`@#tvu37wHi zg+PQv7C1T6pwABbH_T7}|E46&lVyLd*QQ{X%jzl<D{YX*|9%wz#T!3#**UF0j@#|< zftP>;L!{aMcL<?})~{0nFE>?F1`L6c``;PT&HgR8j?=nN59^JbZ&L04ToDo!6;xX} z`*h>`-~SI00HxI(Hs$c3W$G3Sa@0Vfqtp5y=L#Z1g>mkRY*@uRNC^I1m8ykoKhdFo zx^Mp6sq1T3j|uK9^VF~4mz#6^udtx_|JBglkYYF*7&8&X%70f9d5^i|bnrl<C&(<Y zXo9<fhJ;7}gH9x0^$sf^{mF7AADb3jnHImp4U_m3O0UzsVw=%G#<-<ah#iJ_JsJMp zu|wsVF2kuz4Kb1zh#h-SU@8A!c=#WhGs)x@h*VTmU~1|iaGad7$*4}37rMcu)2Oav zws2rzfH9A!@AM8t#8c`U@+}xk_ia(^+$xovsHEoiRL2OK$fMXRangv_*>d4C#bCi_ zL}{uVuT7udWy*?A8j_X-aYKXCU_mMPQ&Xc{(;pzR_1&r4XHK4uhnu@Xn-=hOLK_SO zvk)*<b_Y1^?(RPRU2fMd2H4oxIFSjd0zW}w5q~{K&RRr)T-FU{p81%JTD&j#W!2Ty z4Grow{qkGQAdtckCxle7x(5<50fBm}7=U=>KS28X<WC4zzJufK6AKM(55)b^;QuRv z{tH(ifq&@wZ&&UT(8X8u7%4<SGQ@q&;7F~7bI+fTpD<%?@9#lvN+A^>FruCLt97yf z&o3`weFd>FtLL6q`=z+T!oqXjUr=!2dmUR3{cEo!?hK#`%FClHfF2XfEG)_&8k@{P zJ`;v)J+G>O!yLE8R2n*^M9?$%;LFhTe`v4RDJ2N7hZ;#FNk~WlJ1N@?gkbRPR1>>b zZLwC$GpBcquy3kTApo<6Zyj{C&ovO}$gtWyf<A+T?>m`fPHWvhYxk2qZTll>WgwM8 zHFz!UT<|HJ|6H5KiqyE_coY$(-Tt|R|DhQb3C&RIyFeYDA@NCIHrd}T78p5T>Vbt7 zpOBD|o?fA6LX8<SvTNB09O8Tn>=`ms=g=3%jRP;8Djr#UHzP278&|5$%zcDN5BaAo z(||_C?0qI`bxTAEGB^`jZy1PC0}Bfa$E%Hmwk)L?RJ5R4t&6E#!L_wDZT}r%(rGZ` z*U@n4_i*9h;Gpf2)jv84)^YZ9KrF(c5?fna(=#z?R*5C<3J3@sOyySTga8Bt1;GrW zovrOWBRg)~`DT~FhJxj|HF*F3KNrJH@<fzGA-c8Q|GYd<q@S>5*zr5xTKq(wkFWqs zMlUs7Q$oUrIxF_{3fI-xF<WG92ZCEYS7oQTECRHeJW{khsk7F%tq&sg4lgQz^G2(; z#{;7Ai3!BEPAvT~IcnEw;fJoCU8r0YuT`6Jf2R$vTVI(PD>2Exviv<CZ)BHkZ=`vL zFE4Q2P1j5+RzXuWc5EN_!@5ShKJOb|t%lBh7FXWurzFq)hdt{X|1`p2-J(=r5vxJ# z#p5{4*P#1!wzJKyB>yxcl;ig_<1xDY^?Jt*W$KxSDZ$IG-NdcGPsW=uwR^^S-p`Sj zTf_;&lqsXD&08x?$Hp*PsnZ@;<vCQ{STDl|t-5t0cwzwo8w};lK6eXCjZPVpk*QqM z3Rm{af7hSy_;~qL>4Gd($2n;-K6hI8b$D!X;3Es<I{pcLB7Gpg?&-ub9E)RnI?3&M zjxd^je1l-^&B)BeR+B%s8vL{~$tk=ge_!)sMa}g9$dLD6r+7+nCQ{Qa6d2pBuR>c| zbN~Yb-J%~)m2SGZ38Ac);X0|N_>C*CGm=5?;K^!h>Et-~yF_SnTFK;8?nm=Yr2Eq` zR4UK4j$2AHkWVY5n1e?bk<sM!;QwN<RMWoQ$u%uR0)7Bvm3yt-9z$h8B1<!B52ruh ztAZ66$D+BKiLWeIX4EcI_XI0dRUA^gwSPrQbi31OltjyGVuQ!oy?VSb+U<eK_;m4e zt>@(<(0S6Uu46A1X()To&xful^|I%KV(e$((&@Cw>CKDib4k5|W&5N4Hh6IV($2L; zwrinFLg${h`=1k;xsWE#&ZCD!DI1L6QKWgN$HR35H8pUfibe5}Rpe>BE?50V&L7sj zwl<h_a%ck?{CwnTELv40Xg*H8f}&-L8}!b=VqD?l!CfwG&MhmkAqCuN3^EWYymQa{ z-R1rH3qNUG(9QUST-jv)>)zsX$LeWqkBsNPQ(hw^Jp{zJKdPVTM4$eEV?UU`V0;KW ze@L3;Wn8;1EIul<AK7g^9#1=B)5*<Mx!eQo0-qa+zOo2fTr>IXXDnT8Jv6lC1pS9P zQ@w|b%}C!6D9nhLDeigMAZu~lC=9y@$4dP9{<2ihT(!tmK$7SU_A?>@#8<g`i2J|) fpRQ-*18%diqjk&3v>$xv5g;$EB2_D468gUY+=nLi literal 0 HcmV?d00001 diff --git a/assets/val_loss4.png b/assets/val_loss4.png new file mode 100644 index 0000000000000000000000000000000000000000..0c7043ed4d1860e7460058551022d77bd4db371b GIT binary patch literal 21756 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 literal 0 HcmV?d00001 diff --git a/inference.py b/inference.py index b20a545..28a346f 100644 --- a/inference.py +++ b/inference.py @@ -11,9 +11,10 @@ import matplotlib import matplotlib.pyplot as plt import skimage.io +import time # from imgaug import augmenters as iaa -os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' +# os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3' ROOT_DIR = os.path.abspath("./") MODEL_DIR = os.path.join('./', "logs") @@ -40,7 +41,7 @@ class ShapesConfig(Config): # Train on 1 GPU and 8 images per GPU. We can put multiple images on each # GPU because the images are small. Batch size is 8 (GPUs * images/GPU). GPU_COUNT = 1 - IMAGES_PER_GPU = 4 + IMAGES_PER_GPU = 1 # Number of classes (including background) NUM_CLASSES = 1 + 2 # background + 3 shapes @@ -97,6 +98,9 @@ class InferenceConfig(ShapesConfig): def segment_images(original_image): results = model.detect([original_image], verbose=0) + # print ("-"*80) + # print(len(results)) + # print ("-"*80) r = results[0] f_mask = r['masks'] f_class = r["class_ids"] @@ -118,20 +122,41 @@ def segment_images(original_image): final_img = cv2.addWeighted(final_img, 1, mask1.astype(np.uint8), 1, 0) return final_img -# for image_id in range(900,1000): -# try: -# original_image = cv2.imread('./Train/CameraRGB/{}.png'.format(image_id))[:,:,::-1] - -# final_img = segment_images(original_image) +def segment_images_batch(original_images): + results = model.detect(original_images, verbose=0) + print ("-"*80) + print(len(results)) + print ("-"*80) + images = [] + for idx,res in enumerate(results): + r = res + f_mask = r['masks'] + f_class = r["class_ids"] + + + no_ch = f_mask.shape[2] + final_img = np.copy(original_images[idx,:,:,:]) + for ch in range(no_ch): + + _id = f_class[ch] + if _id==1: + color_id=0 + else: + color_id=1 + mask_1 = f_mask[:,:,ch] + mask1 = np.dstack([mask_1*colors[color_id][0], + mask_1*colors[color_id][1], + mask_1*colors[color_id][2]]) + final_img = cv2.addWeighted(final_img, 1, mask1.astype(np.uint8), 1, 0) + images.append(final_img) + return np.dstack(images) -# cv2.imshow('output', final_img[:,:,::-1]) -# cv2.waitKey(5) -# except KeyboardInterrupt as e: -# break import sys, skvideo.io, json, base64 video = skvideo.io.vread('./test_video.mp4') +print(video.shape) + for rgb_frame in video: try: final_img = segment_images(rgb_frame) @@ -140,4 +165,21 @@ def segment_images(original_image): except KeyboardInterrupt as e: break +# video_len = video.shape[0] +# offset=1 +# a = time.time() +# for idx in range(0,video_len,4): +# # if video_len-idx >4: +# # offset = 4 +# # else: +# # offset = video_len-idx +# # model.config.IMAGES_PER_GPU = offset +# rgb_frames = video[idx:idx+offset,:,:,:] +# print(rgb_frames.shape) +# final_img = segment_images_batch(rgb_frames) +# b=time.time() +# _secs = (b-a)%60 + +# print("FPS:",video_len/_secs) + exit() \ No newline at end of file diff --git a/train_mrcnn.py b/train_mrcnn.py index d782830..05ea64e 100644 --- a/train_mrcnn.py +++ b/train_mrcnn.py @@ -46,7 +46,7 @@ class ShapesConfig(Config): # Train on 1 GPU and 8 images per GPU. We can put multiple images on each # GPU because the images are small. Batch size is 8 (GPUs * images/GPU). GPU_COUNT = 1 - IMAGES_PER_GPU = 2 + IMAGES_PER_GPU = 1 # Number of classes (including background) NUM_CLASSES = 1 + 2 # background + 3 shapes @@ -65,7 +65,7 @@ class ShapesConfig(Config): TRAIN_ROIS_PER_IMAGE = 32 # Use a small epoch since the data is simple - STEPS_PER_EPOCH = 500 + STEPS_PER_EPOCH = 200 # use small validation steps since the epoch is small VALIDATION_STEPS = 5 @@ -87,11 +87,12 @@ def load_images(self,dataset_dir,dataset_type='train'): self.add_class("shapes", 2, "car") if dataset_type=='train': - images = images[:800] + images = images[:900] elif dataset_type=='val': - images = images[800:900] - else: images = images[900:] + else: + # images = images[900:] + raise ValueError("param should be train or val") for _image in images: # image = skimage.io.imread(os.path.join(image_paths,_image)) @@ -179,7 +180,7 @@ def image_reference(self, image_id): # dataset_test = lyftDataset() # dataset_test.load_images(RGB_PATH,dataset_type='test') # dataset_test.prepare() -augmentation = iaa.SomeOf((0, 2), [ +augmentation = iaa.SomeOf((0, None), [ iaa.Fliplr(0.5), iaa.Flipud(0.5), iaa.OneOf([iaa.Affine(rotate=90), @@ -214,13 +215,13 @@ def image_reference(self, image_id): model.train(dataset_train, dataset_val, learning_rate=config.LEARNING_RATE, - epochs=10, + epochs=20, augmentation=augmentation, layers='heads') model.train(dataset_train, dataset_val, learning_rate=config.LEARNING_RATE / 10, - epochs=20, + epochs=60, augmentation=augmentation, layers="all") @@ -279,13 +280,13 @@ def segment_images(original_image): final_img = cv2.addWeighted(final_img, 1, mask1.astype(np.uint8), 1, 0) return final_img -for image_id in range(900,1000): +# for image_id in range(900,1000): - original_image = cv2.imread('./Train/CameraRGB/{}.png'.format(image_id))[:,:,::-1] +# original_image = cv2.imread('./Train/CameraRGB/{}.png'.format(image_id))[:,:,::-1] - final_img = segment_images(original_image) +# final_img = segment_images(original_image) - cv2.imshow('output', final_img[:,:,::-1]) - cv2.waitKey(1) +# cv2.imshow('output', final_img[:,:,::-1]) +# cv2.waitKey(1) exit() \ No newline at end of file