Initialize
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,107 @@
|
||||
\documentclass[border=15pt, multi, tikz]{standalone}
|
||||
%\usepackage{blocks}
|
||||
\usepackage{import}
|
||||
\subimport{../../layers/}{init}
|
||||
\usetikzlibrary{positioning}
|
||||
|
||||
\newcommand{\midarrow}{\tikz \draw[-Stealth,line width =0.8mm,draw=\edgecolor] (-0.3,0) -- ++(0.3,0);}
|
||||
|
||||
\begin{document}
|
||||
\begin{tikzpicture}
|
||||
\tikzstyle{connection}=[ultra thick,every node/.style={sloped,allow upside down},draw=\edgecolor,opacity=0.7]
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw Layer Blocks
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% conv1_1,conv1_2,pool1
|
||||
\pic[shift={(0,0,0)}] at (0,0,0) {ConvReluPool={blockname=crp1,%
|
||||
numFilters={{"64","64","32"}},height=40,width={2,2},depth=40,zlabel=I}};
|
||||
% conv2_1,conv2_2,pool2
|
||||
\pic[shift={(2.1,0,0)}] at (crp1-east) {ConvReluPool={blockname=crp2,%
|
||||
numFilters={{"128","128"}},height=35,width={3,3},depth=35,zlabel=I/2}};
|
||||
%% conv3_1,conv3_2,conv3_3,pool3
|
||||
\pic[shift={(2,0,0)}] at (crp2-east) {ConvReluPool={blockname=crp3,%
|
||||
numFilters={{"256","256","256"}},height=30,width={4,4,4},depth=30,zlabel=I/4}};
|
||||
%% conv4_1,conv4_2,conv4_3,pool4
|
||||
\pic[shift={(1.8,0,0)}] at (crp3-east) {ConvReluPool={blockname=crp4,%
|
||||
numFilters={{"512","512","512"}},height=23,width={7,7,7},depth=23,zlabel=I/8}};
|
||||
%% conv5_1,conv5_2,conv5_3,pool5
|
||||
\pic[shift={(1.5,0,0)}] at (crp4-east) {ConvRelu={blockname=crp5,%
|
||||
numFilters={{"512","512","512"}},height=15,width={7,7,7},depth=15,zlabel=I/16}};
|
||||
%% score32
|
||||
\pic[shift={(1,0,0)}] at (crp5-east) {Conv={blockname=score32,%
|
||||
numFilters={{"21","4096"}},height=15,width=1,depth=15,zlabel=I/16}};
|
||||
|
||||
%% Upsampling Deconv Layer
|
||||
\pic[shift={(2,0,0)}] at (score32-east) {Deconv={blockname=up32,%
|
||||
numFilters={{"1","4096"}},height=33,width=1,depth=33,zlabel=}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%Joining with previous streams (fcn-16)
|
||||
%% score16
|
||||
\pic[shift={(0,0,10)}] at (crp5-anchor) {Conv={blockname=score16,%
|
||||
numFilters={{"1","4096"}},height=20,width=1,depth=20,zlabel=I/8}};
|
||||
%% Upsampling Deconv Layer
|
||||
\pic[shift={(0.5,0,0)}] at (up32-west) {Deconv={blockname=up16,%
|
||||
numFilters={{"1","4096"}},height=33,width=1,depth=33,zlabel=}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%Joining with previous streams (fcn-8)
|
||||
%% score8
|
||||
\pic[shift={(1,0,14)}] at (crp4-anchor) {Conv={blockname=score8,%
|
||||
numFilters={{"1","4096"}},height=25,width=1,depth=25,zlabel=I/4}};
|
||||
|
||||
%% Upsampling Deconv Layer
|
||||
\pic[shift={(0.5,0,0)}] at (up16-west) {Deconv={blockname=up8,%
|
||||
numFilters={{"1","4096"}},height=33,width=1,depth=33,zlabel=}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%Joining with previous streams (fcn-4)
|
||||
%% score8
|
||||
\pic[shift={(0,0,18)}] at (crp3-east) {Conv={blockname=score4,%
|
||||
numFilters={{"1","4096"}},height=30,width=1,depth=30,zlabel=I/2}};
|
||||
%% Upsampling Deconv Layer
|
||||
\pic[shift={(0.5,0,0)}] at (up8-west) {Deconv={blockname=up4,%
|
||||
numFilters={{"1","4096"}},height=33,width=1,depth=33,zlabel=}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%Joining with previous streams (fcn-2)
|
||||
%% score8
|
||||
\pic[shift={(0,0,22)}] at (crp2-east) {Conv={blockname=score2,%
|
||||
numFilters={{"1","4096"}},height=33,width=1,depth=33,zlabel=I}};
|
||||
%% Upsampling Deconv Layer
|
||||
\pic[shift={(0.5,0,0)}] at (up4-west) {Deconv={blockname=up2,%
|
||||
numFilters={{"1","4096"}},height=33,width=1,depth=33,zlabel=I}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Final convolution
|
||||
\pic[shift={(3,0,0)}] at (up2-east) {Conv={blockname=output,%
|
||||
numFilters={{"1","4096"}},height=33,width=1,depth=33,zlabel=I}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw connections
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\draw [connection] (crp1-east) -- node {\midarrow} (crp2-west);
|
||||
\draw [connection] (crp2-east) -- node {\midarrow} (crp3-west);
|
||||
\draw [connection] (crp3-east) -- node {\midarrow} (crp4-west);
|
||||
\draw [connection] (crp4-east) -- node {\midarrow} (crp5-west);
|
||||
\draw [connection] (crp5-east) -- node {\midarrow} (score32-west);
|
||||
\draw [connection] (score32-east) -- node {\midarrow} (up32-west);
|
||||
|
||||
\path (crp4-east) -- (crp5-west) coordinate[pos=0.4] (between4_5) ;
|
||||
\draw [connection] (between4_5) -- node {\midarrow} ++(0,0,10) -- node {\midarrow} (score16-west);
|
||||
\draw [connection] (score16-east) -- node{\midarrow}++(6,0,0)-- node{\midarrow}(up16-out);
|
||||
|
||||
\path (crp3-east) -- (crp4-west) coordinate[pos=0.4] (between3_4) ;
|
||||
\draw [connection] (between3_4) -- node {\midarrow} ++(0,0,14) -- node {\midarrow} (score8-west);
|
||||
\draw [connection] (score8-east) -- node{\midarrow}++(11.55,0,0)-- node{\midarrow}(up8-out);
|
||||
|
||||
\path (crp2-east) -- (crp3-west) coordinate[pos=0.4] (between2_3) ;
|
||||
\draw [connection] (between2_3) -- node {\midarrow} ++(0,0,18) -- node {\midarrow} (score4-west);
|
||||
\draw [connection] (score4-east) -- node{\midarrow}++(17.3,0,0)-- node{\midarrow}(up4-out);
|
||||
|
||||
\path (crp1-east) -- (crp2-west) coordinate[pos=0.4] (between1_2) ;
|
||||
\draw [connection] (between1_2) -- node {\midarrow} ++(0,0,22) -- node {\midarrow} (score2-west);
|
||||
\draw [connection] (score2-east) -- node{\midarrow}++(22.7,0,0)-- node{\midarrow}(up2-out);
|
||||
|
||||
\draw [connection] (up2-east) -- node {\midarrow} (output-west);
|
||||
|
||||
\draw [connection] (output-east) -- node {\midarrow} ++(,0,0);
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
\end{tikzpicture}
|
||||
\end{document}\grid
|
||||
Binary file not shown.
@@ -0,0 +1,49 @@
|
||||
\documentclass[border=15pt, multi, tikz]{standalone}
|
||||
%\usepackage{blocks}
|
||||
\usepackage{import}
|
||||
\subimport{../../layers/}{init}
|
||||
\usetikzlibrary{positioning}
|
||||
|
||||
\newcommand{\midarrow}{\tikz \draw[-Stealth,line width =0.8mm,draw=\edgecolor] (-0.3,0) -- ++(0.3,0);}
|
||||
\newcommand{\up}{0.25}
|
||||
\newcommand{\down}{0.25}
|
||||
\newcommand{\arrowlength}{4}
|
||||
|
||||
\begin{document}
|
||||
\begin{tikzpicture}
|
||||
\tikzstyle{connection}=[ultra thick,every node/.style={sloped,allow upside down},draw=\edgecolor,opacity=0.7]
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw Layer Blocks
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% conv1_1,conv1_2,pool1
|
||||
\pic[shift={(0,0,0)},fill={rgb:blue,1.5;red,3.5;green,3.5;white,5}] at (0,0,0) {GenericSequentialLayer={blockname=crp1,%
|
||||
numFilters={{" ",""}},height=20,width={7},depth=20, blocklabel=SoftmaxLoss: $E_\mathcal{S}$ ,ylabel= ,zlabel= }};
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw connections
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\draw [connection] (crp1-east)++(0,\up,0) -- node {\midarrow} ++(\arrowlength.0,0)
|
||||
node [anchor=south east,scale=2.1]{$E_\mathcal{S} [p;\theta]$};
|
||||
\draw (crp1-west)++(0,\up,0) coordinate (crp1-west-up);
|
||||
\draw [connection] (crp1-west-up)++(-\arrowlength,0,0)
|
||||
node[anchor=south west,scale=2.1]{$p(x^{(t)})$}
|
||||
-- node {\midarrow} (crp1-west-up);
|
||||
|
||||
\draw [connection] (crp1-west)++(0,-\down,0) -- node {\midarrow} ++(-\arrowlength.0,0)
|
||||
node[anchor=north west,inner sep = 10, xshift=-25,scale=2.3]
|
||||
{
|
||||
$\frac{\partial L}{\partial E_\mathcal{S}}\frac{\partial E_\mathcal{S}}{\partial p}$
|
||||
};
|
||||
\draw (crp1-east)++(0,-\down,0) coordinate (crp1-east-down);
|
||||
\draw [connection] (crp1-east-down)++(\arrowlength,0,0)
|
||||
node[anchor=north east,inner sep = 10, xshift=25,scale=2.3]
|
||||
{
|
||||
$\frac{\partial L}{\partial E_\mathcal{S}} = \lambda_\mathcal{S}$
|
||||
}
|
||||
-- node {\midarrow} (crp1-east-down);
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
|
||||
|
||||
\end{tikzpicture}
|
||||
\end{document}
|
||||
Binary file not shown.
@@ -0,0 +1,57 @@
|
||||
\documentclass[border=15pt, multi, tikz]{standalone}
|
||||
%\usepackage{blocks}
|
||||
\usepackage{import}
|
||||
\subimport{../../layers/}{init}
|
||||
\usetikzlibrary{positioning}
|
||||
|
||||
\newcommand{\midarrow}{\tikz \draw[-Stealth,line width =0.8mm,draw=\edgecolor] (-0.3,0) -- ++(0.3,0);}
|
||||
\begin{document}
|
||||
\begin{tikzpicture}
|
||||
\tikzstyle{connection}=[ultra thick,every node/.style={sloped,allow upside down},draw=\edgecolor,opacity=0.7]
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw Layer Blocks
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% conv1_1,conv1_2,pool1
|
||||
\pic[shift={(0,0,0)}] at (0,0,0) {ConvReluPool={blockname=crp1,%
|
||||
numFilters={{"64","64","32"}},height=40,width={2,2},depth=40,ylabel=224,zlabel=224}};
|
||||
% conv2_1,conv2_2,pool2
|
||||
\pic[shift={(2.1,0,0)}] at (crp1-east) {ConvReluPool={blockname=crp2,%
|
||||
numFilters={{"128","128"}},height=35,width={3,3},depth=35,ylabel=112,zlabel=112}};
|
||||
%% conv3_1,conv3_2,conv3_3,pool3
|
||||
\pic[shift={(2,0,0)}] at (crp2-east) {ConvReluPool={blockname=crp3,%
|
||||
numFilters={{"256","256","256"}},height=30,width={4,4,4},depth=30,ylabel=56,zlabel=56}};
|
||||
%% conv4_1,conv4_2,conv4_3,pool4
|
||||
\pic[shift={(1.8,0,0)}] at (crp3-east) {ConvReluPool={blockname=crp4,%
|
||||
numFilters={{"512","512","512"}},height=23,width={7,7,7},depth=23,ylabel=28,zlabel=28}};
|
||||
%% conv5_1,conv5_2,conv5_3,pool5
|
||||
\pic[shift={(1.5,0,0)}] at (crp4-east) {ConvReluPool={blockname=crp5,%
|
||||
numFilters={{"512","512","512"}},height=15,width={7,7,7},depth=15,ylabel=14,zlabel=14}};
|
||||
%% fc6,
|
||||
\pic[shift={(1.2,0,0)}] at (crp5-east) {FullyConnectedRelu={blockname=fc6,%
|
||||
numFilters={{"4096","dummy"}},height=10,width={10},depth=10,ylabel=7,zlabel=7}};
|
||||
%% fc7
|
||||
\pic[shift={(1,0,0)}] at (fc6-east) {FullyConnectedRelu={blockname=fc7,%
|
||||
numFilters={{"4096","dummy"}},height=3,width={10},depth=3,ylabel= ,zlabel=1 }};
|
||||
|
||||
%% fc8
|
||||
\pic[shift={(1,0,0)}] at (fc7-east) {FullyConnected={blockname=fc8,%
|
||||
numFilters={{"K","dummy"}},height=3,width=7,depth=3,ylabel=,zlabel=1}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Output
|
||||
%% Softmax
|
||||
%\pic[shift={(1,0,0)}] at (elt2-east) {Deconv={blockname=up8,%
|
||||
% numFilters={{"21","4096"}},height=35,width=1,depth=35,zlabel=I}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw connections
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\draw [connection] (crp1-east) -- node {\midarrow} (crp2-west);
|
||||
\draw [connection] (crp2-east) -- node {\midarrow} (crp3-west);
|
||||
\draw [connection] (crp3-east) -- node {\midarrow} (crp4-west);
|
||||
\draw [connection] (crp4-east) -- node {\midarrow} (crp5-west);
|
||||
\draw [connection] (crp5-east) -- node {\midarrow} (fc6-west);
|
||||
\draw [connection] (fc6-east) -- node {\midarrow} (fc7-west);
|
||||
\draw [connection] (fc7-east) -- node {\midarrow} (fc8-west);
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
\end{tikzpicture}
|
||||
\end{document}
|
||||
Binary file not shown.
@@ -0,0 +1,140 @@
|
||||
\documentclass[border=15pt, multi, tikz]{standalone}
|
||||
%\usepackage{blocks}
|
||||
\usepackage{import}
|
||||
\subimport{../../layers/}{init}
|
||||
\usetikzlibrary{positioning}
|
||||
|
||||
\tikzstyle{connection1}=[ultra thick,every node/.style={sloped,allow upside down},draw={rgb:blue,0;red,4;green,2;white,0},opacity=0.7]
|
||||
|
||||
\newcommand{\localmidarrow}{\tikz \draw[-Stealth,line width =0.8mm,draw={rgb:blue,0;red,4;green,2;white,0}] (-0.3,0) -- ++(0.3,0);}
|
||||
|
||||
\begin{document}
|
||||
\begin{tikzpicture}
|
||||
\tikzstyle{connection}=[ultra thick,every node/.style={sloped,allow upside down},draw=\edgecolor,opacity=0.7]
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw ConvNet Layers
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% conv1_1,conv1_2,pool1
|
||||
\pic[shift={(0,0,0)}] at (0,0,0) {ConvReluPool={blockname=crp1,%
|
||||
numFilters={{"64","64","32"}},height=40,width={2,2},depth=40,zlabel=I}};
|
||||
% conv2_1,conv2_2,pool2
|
||||
\pic[shift={(2.1,0,0)}] at (crp1-east) {ConvReluPool={blockname=crp2,%
|
||||
numFilters={{"128","128"}},height=35,width={3,3},depth=35,zlabel=I/2}};
|
||||
%% conv3_1,conv3_2,conv3_3,pool3
|
||||
\pic[shift={(2,0,0)}] at (crp2-east) {ConvReluPool={blockname=crp3,%
|
||||
numFilters={{"256","256","256"}},height=30,width={4,4,4},depth=30,zlabel=I/4}};
|
||||
%% conv4_1,conv4_2,conv4_3,pool4
|
||||
\pic[shift={(1.5,0,0)}] at (crp3-east) {ConvReluPool={blockname=crp4,%
|
||||
numFilters={{"512","512","512"}},height=23,width={7,7,7},depth=23,zlabel=I/8}};
|
||||
%% conv5_1,conv5_2,conv5_3,pool5
|
||||
\pic[shift={(1.5,0,0)}] at (crp4-east) {ConvReluPool={blockname=crp5,%
|
||||
numFilters={{"512","512","512"}},height=15,width={7,7,7},depth=15,zlabel=I/16}};
|
||||
%% fc6, fc7
|
||||
\pic[shift={(1.2,0,0)}] at (crp5-east) {ConvRelu={blockname=cp6_7,%
|
||||
numFilters={{"4096","4096"}},height=10,width={10,10},depth=10,zlabel=I/32}};
|
||||
%% score32
|
||||
\pic[shift={(1,0,0)}] at (cp6_7-east) {Conv={blockname=score32,%
|
||||
numFilters={{"21","4096"}},height=10,width=1,depth=10,zlabel=I/32}};
|
||||
%% Upsampling Deconv Layer
|
||||
\pic[shift={(2,0,0)}] at (score32-east) {Deconv={blockname=up16,%
|
||||
numFilters={{"21","4096"}},height=40,width=1,depth=40,zlabel=I}};
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw Edge Layers
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% upsampling crp2 x2
|
||||
\pic[shift={(-0.75,-8,0)}] at (crp2-anchor) {Deconv={blockname=crp2_upx2,%
|
||||
numFilters={{"bilinear x2","4096"}},height=7.5,width=7.5,depth=7.5,zlabel=}};
|
||||
%% upsampling crp3 x4
|
||||
\pic[shift={(-0.75,-8,0)}] at (crp3-anchor) {Deconv={blockname=crp3_upx4,%
|
||||
numFilters={{"bilinear x4","4096"}},height=7.5,width=7.5,depth=7.5,zlabel=}};
|
||||
|
||||
%% edge
|
||||
\pic[shift={(7,-11,0)}] at (crp4-west) {Conv={blockname=edge,%
|
||||
numFilters={{"1x1 conv","4096"}}, height=30,width=1,depth=30,zlabel=I}};
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Domain Transform Module
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
\pic[shift={(5,0,0)},fill={rgb:blue,1;red,2;green,4;white,7}] at (up16-east) {DomainTransform={blockname=diff1,%
|
||||
numFilters={{"21","4096"}},height=40,width=1,depth=40,zlabel=}};
|
||||
|
||||
\pic[shift={(2,0,0)},fill={rgb:blue,1;red,2;green,4;white,7}] at (diff1-east) {DomainTransform={blockname=diff2,%
|
||||
numFilters={{"21","4096"}},height=40,width=1,depth=40,zlabel=}};
|
||||
|
||||
\pic[shift={(2,0,0)},fill={rgb:blue,1;red,2;green,4;white,7}] at (diff2-east) {DomainTransform={blockname=diff3,%
|
||||
numFilters={{"21","4096"}},height=40,width=1,depth=40,zlabel=}};
|
||||
|
||||
\pic[shift={(2,0,0)},fill={rgb:blue,1;red,2;green,4;white,7}] at (diff3-east) {DomainTransform={blockname=diff4,%
|
||||
numFilters={{"21","4096"}},height=40,width=1,depth=40,zlabel=}};
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Arrows on Domain Transform
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
\draw [connection1] (diff1-anchor)+(0,3,3) -- node{ } ++(0,3,-3);
|
||||
\draw [connection1] (diff1-anchor)+(0,3,3)-- node{\localmidarrow} ++(0,3,2.9);
|
||||
\draw [connection1] (diff1-anchor)+(0,3,-2.9) -- node{\localmidarrow} ++(0,3,-3);
|
||||
|
||||
\draw [connection1] (diff1-anchor)+(0,2,3) -- node{ } ++(0,2,-3);
|
||||
\draw [connection1] (diff1-anchor)+(0,2,3)-- node{\localmidarrow} ++(0,2,2.9);
|
||||
\draw [connection1] (diff1-anchor)+(0,2,-2.9) -- node{\localmidarrow} ++(0,2,-3);
|
||||
%%%%%%%%%%%%%%%%%%
|
||||
\draw [connection1] (diff2-anchor)+(0,-3,-3) -- node{ } ++(0,-3,3);
|
||||
\draw [connection1] (diff2-anchor)+(0,-3,-3)-- node{\localmidarrow} ++(0,-3,-2.9);
|
||||
\draw [connection1] (diff2-anchor)+(0,-3,2.9) -- node{\localmidarrow} ++(0,-3,3);
|
||||
|
||||
\draw [connection1] (diff2-anchor)+(0,-2,-3) -- node{ } ++(0,-2,3);
|
||||
\draw [connection1] (diff2-anchor)+(0,-2,-3)-- node{\localmidarrow} ++(0,-2,-2.9);
|
||||
\draw [connection1] (diff2-anchor)+(0,-2,2.9) -- node{\localmidarrow} ++(0,-2,3);
|
||||
%%%%%%%%%%%%%%%%%%
|
||||
\draw [connection1] (diff3-anchor)+(0,3,3) -- node{ } ++(0,-3,3);
|
||||
\draw [connection1] (diff3-anchor)+(0,3,3)-- node{\localmidarrow} ++(0,2.9,3);
|
||||
\draw [connection1] (diff3-anchor)+(0,-2.9,3) -- node{\localmidarrow} ++(0,-3,3);
|
||||
|
||||
\draw [connection1] (diff3-anchor)+(0,3,2) -- node{ } ++(0,-3,2);
|
||||
\draw [connection1] (diff3-anchor)+(0,3,2)-- node{\localmidarrow} ++(0,2.9,2);
|
||||
\draw [connection1] (diff3-anchor)+(0,-2.9,2) -- node{\localmidarrow} ++(0,-3,2);
|
||||
%%%%%%%%%%%%%%%%%%
|
||||
\draw [connection1] (diff4-anchor)+(0,-3,-3) -- node{ } ++(0,3,-3);
|
||||
\draw [connection1] (diff4-anchor)+(0,-3,-3)-- node{\localmidarrow} ++(0,-2.9,-3);
|
||||
\draw [connection1] (diff4-anchor)+(0,2.9,-3) -- node{\localmidarrow} ++(0,3,-3);
|
||||
|
||||
\draw [connection1] (diff4-anchor)+(0,-3,-2) -- node{ } ++(0,3,-2);
|
||||
\draw [connection1] (diff4-anchor)+(0,-3,-2)-- node{\localmidarrow} ++(0,-2.9,-2);
|
||||
\draw [connection1] (diff4-anchor)+(0,2.9,-2) -- node{\localmidarrow} ++(0,3,-2);
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw connections
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% ConvNet Connections\draw [connection] (crp1-east) -- node {\midarrow} (crp2-west);
|
||||
\draw [connection] (crp2-east) -- node {\midarrow} (crp3-west);
|
||||
\draw [connection] (crp3-east) -- node {\midarrow} (crp4-west);
|
||||
\draw [connection] (crp4-east) -- node {\midarrow} (crp5-west);
|
||||
\draw [connection] (crp5-east) -- node {\midarrow} (cp6_7-west);
|
||||
\draw [connection] (cp6_7-east) -- node {\midarrow} (score32-west);
|
||||
\draw [connection] (score32-east) -- node {\midarrow} (up16-west);
|
||||
% Diffusion Block internal connections
|
||||
\draw [connection] (up16-east) -- node {\midarrow} (diff1-west);
|
||||
\draw [connection] (diff1-east) -- node {\midarrow} (diff2-west);
|
||||
\draw [connection] (diff2-east) -- node {\midarrow} (diff3-west);
|
||||
\draw [connection] (diff3-east) -- node {\midarrow} (diff4-west);
|
||||
\draw [connection] (diff4-east) -- node {\midarrow} ++(2,0,0);
|
||||
|
||||
% EdgeNet Input Connections
|
||||
\draw [connection](crp1-south)--node {\midarrow}(edge-west-|crp1-south)--node {\midarrow}(edge-west-|crp2-south);
|
||||
\draw [connection](crp2-south)--node {\midarrow}(crp2_upx2-north);
|
||||
\draw [connection](crp2_upx2-south)--node {\midarrow}(edge-west-|crp2-south)--node {\midarrow}(edge-west-|crp3-south);
|
||||
\draw [connection](crp3-south)--node {\midarrow}(crp3_upx4-north);
|
||||
\draw [connection](crp3_upx4-south)--node {\midarrow}(edge-west-|crp3-south)--node {\midarrow}(edge-west);
|
||||
% EdgeNet Output Connections
|
||||
\draw [connection](edge-east)
|
||||
node[anchor=south west,inner sep = 10, yshift=-20, xshift=180,scale=2.3]{Edges}
|
||||
--node {\midarrow}(diff4-south |-edge-east)--node {\midarrow}(diff4-south);
|
||||
\draw [connection](diff3-south |-edge-east)--node {\midarrow}(diff3-south);
|
||||
\draw [connection](diff2-south |-edge-east)--node {\midarrow}(diff2-south);
|
||||
\draw [connection](diff1-south |-edge-east)--node {\midarrow}(diff1-south);
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
\end{tikzpicture}
|
||||
\end{document}
|
||||
Binary file not shown.
@@ -0,0 +1,87 @@
|
||||
\documentclass[border=15pt, multi, tikz]{standalone}
|
||||
%\usepackage{blocks}
|
||||
\usepackage{import}
|
||||
\subimport{../../layers/}{init}
|
||||
\usetikzlibrary{positioning}
|
||||
|
||||
\newcommand{\midarrow}{\tikz \draw[-Stealth,line width =0.8mm,draw=\edgecolor] (-0.3,0) -- ++(0.3,0);}
|
||||
\begin{document}
|
||||
\begin{tikzpicture}
|
||||
\tikzstyle{connection}=[ultra thick,every node/.style={sloped,allow upside down},draw=\edgecolor,opacity=0.7]
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw Layer Blocks
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% conv1_1,conv1_2,pool1
|
||||
\pic[shift={(0,0,0)}] at (0,0,0) {ConvReluPool={blockname=crp1,%
|
||||
numFilters={{"64","64","32"}},height=40,width={2,2},depth=40,zlabel=I}};
|
||||
% conv2_1,conv2_2,pool2
|
||||
\pic[shift={(2.1,0,0)}] at (crp1-east) {ConvReluPool={blockname=crp2,%
|
||||
numFilters={{"128","128"}},height=35,width={3,3},depth=35,zlabel=I/2}};
|
||||
%% conv3_1,conv3_2,conv3_3,pool3
|
||||
\pic[shift={(2,0,0)}] at (crp2-east) {ConvReluPool={blockname=crp3,%
|
||||
numFilters={{"256","256","256"}},height=30,width={4,4,4},depth=30,zlabel=I/4}};
|
||||
%% conv4_1,conv4_2,conv4_3,pool4
|
||||
\pic[shift={(1.8,0,0)}] at (crp3-east) {ConvReluPool={blockname=crp4,%
|
||||
numFilters={{"512","512","512"}},height=23,width={7,7,7},depth=23,zlabel=I/8}};
|
||||
%% conv5_1,conv5_2,conv5_3,pool5
|
||||
\pic[shift={(1.5,0,0)}] at (crp4-east) {ConvReluPool={blockname=crp5,%
|
||||
numFilters={{"512","512","512"}},height=15,width={7,7,7},depth=15,zlabel=I/16}};
|
||||
%% fc6, fc7
|
||||
\pic[shift={(1.2,0,0)}] at (crp5-east) {ConvRelu={blockname=cp6_7,%
|
||||
numFilters={{"4096","4096"}},height=10,width={10,10},depth=10,zlabel=I/32}};
|
||||
%% score32
|
||||
\pic[shift={(1,0,0)}] at (cp6_7-east) {Conv={blockname=score32,%
|
||||
numFilters={{"1","4096"}},height=10,width=1,depth=10,zlabel=I/32}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%Joining with previous streams (fcn-16)
|
||||
%% Upsampling Deconv Layer
|
||||
\pic[shift={(1,0,0)}] at (score32-east) {Deconv={blockname=up32,%
|
||||
numFilters={{"1","4096"}},height=15,width=1,depth=15,zlabel=I/16}};
|
||||
%% score16
|
||||
\pic[shift={(0,-4,0)}] at (up32-west) {Conv={blockname=score16,%
|
||||
numFilters={{"1","4096"}},height=15,width=1,depth=15,zlabel=I/16}};
|
||||
%% Elementwise sum between score16 and up32
|
||||
\pic[shift={(1.5,0,0)}] at (up32-east) {Sum={blockname=elt1,%
|
||||
numFilters={{"1","4096"}},height=15,width=1,depth=15,zlabel=I/16}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%Joining with previous streams (fcn-8)
|
||||
%% Upsampling Deconv Layer
|
||||
\pic[shift={(1,0,0)}] at (elt1-east) {Deconv={blockname=up16,%
|
||||
numFilters={{"1","4096"}},height=20,width=1,depth=20,zlabel=I/8}};
|
||||
%% score8
|
||||
\pic[shift={(0,-7,0)}] at (up16-west) {Conv={blockname=score8,%
|
||||
numFilters={{"1","4096"}},height=20,width=1,depth=20,zlabel=I/8}};
|
||||
%% Elementwise sum between score8 and up16
|
||||
\pic[shift={(1.5,0,0)}] at (up16-east) {Sum={blockname=elt2,%
|
||||
numFilters={{"1","4096"}},height=20,width=1,depth=20,zlabel=I/8}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Output
|
||||
%% Upsampling to original image size
|
||||
\pic[shift={(1,0,0)}] at (elt2-east) {Deconv={blockname=up8,%
|
||||
numFilters={{"1","4096"}},height=35,width=1,depth=35,zlabel=I}};
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% Draw connections
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\draw [connection] (crp1-east) -- node {\midarrow} (crp2-west);
|
||||
\draw [connection] (crp2-east) -- node {\midarrow} (crp3-west);
|
||||
\draw [connection] (crp3-east) -- node {\midarrow} (crp4-west);
|
||||
\draw [connection] (crp4-east) -- node {\midarrow} (crp5-west);
|
||||
\draw [connection] (crp5-east) -- node {\midarrow} (cp6_7-west);
|
||||
\draw [connection] (cp6_7-east) -- node {\midarrow} (score32-west);
|
||||
\draw [connection] (score32-east) -- node {\midarrow} (up32-west);
|
||||
|
||||
\path (crp4-east) -- (crp5-west) coordinate[pos=0.25] (between4_5) ;
|
||||
\draw [connection] (between4_5) -- node {\midarrow} (score16-west-|between4_5) -- node {\midarrow} (score16-west);
|
||||
\draw [connection] (up32-east) -- node {\midarrow} (elt1-west);
|
||||
\draw [connection] (score16-east) -- node {\midarrow} (score16-east -| elt1-south) -- node {\midarrow} (elt1-south);
|
||||
\draw [connection] (elt1-east) -- node {\midarrow} (up16-west);
|
||||
|
||||
\path (crp3-east) -- (crp4-west) coordinate[pos=0.25] (between3_4) ;
|
||||
\draw [connection] (between3_4) -- node {\midarrow} (score8-west-|between3_4) -- node {\midarrow} (score8-west);
|
||||
\draw [connection] (up16-east) -- node {\midarrow} (elt2-west);
|
||||
\draw [connection] (score8-east) -- node {\midarrow} (score8-east -| elt2-south)-- node {\midarrow} (elt2-south);
|
||||
\draw [connection] (elt2-east) -- node {\midarrow} (up8-west);
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
\end{tikzpicture}
|
||||
\end{document}\grid
|
||||
Reference in New Issue
Block a user