Rename files and folders
This commit is contained in:
1 parent
4aea167b89
commit
61dd330c24
20 files changed
+114
-145
No files matched your search
@@ -0,0 +1,97 @@
|
||||
|
||||
\usetikzlibrary{arrows,matrix}
|
||||
\usetikzlibrary{fit}
|
||||
\usetikzlibrary{intersections}
|
||||
|
||||
\pgfdeclarelayer{background}
|
||||
\pgfdeclarelayer{foreground}
|
||||
\pgfsetlayers{background,main,foreground}
|
||||
|
||||
|
||||
\def\scale{1}
|
||||
|
||||
|
||||
\begin{tikzpicture}[
|
||||
font=\scriptsize,
|
||||
auto,
|
||||
node distance=1cm,
|
||||
scale=\scale,
|
||||
every node/.style={scale=\scale},
|
||||
template/.style={thick, text centered},
|
||||
block/.style={template, rectangle, text width=1.3cm, ,inner sep=3, minimum height=.6cm},
|
||||
arrow/.style={template, draw, -latex},
|
||||
point/.style={template, draw, fill=black, circle,inner sep=0, minimum size=3}
|
||||
]
|
||||
|
||||
% Define extra block styles
|
||||
\tikzstyle{sumBlock} = [template, draw, circle, inner sep=0cm, minimum size=0.3cm]
|
||||
\tikzstyle{refBlockNoDraw} = [block, fill=TikZColorFill]
|
||||
\tikzstyle{refBlock} = [refBlockNoDraw, draw]
|
||||
\tikzstyle{propBlockNoDraw} = [block, fill=TikZColorFillProp]
|
||||
\tikzstyle{propBlock} = [propBlockNoDraw,draw]
|
||||
|
||||
|
||||
\tikzstyle{MainArrow} = [arrow]
|
||||
\tikzstyle{SignallArrow} = [arrow, dashed]
|
||||
|
||||
|
||||
%% Encoder/Decoder
|
||||
\node [refBlock, text width=1.6cm, minimum height=1cm] (Encoder) at (0,0) {Reference \\ Encoder};
|
||||
|
||||
%% RPS
|
||||
\node [propBlockNoDraw, text width=2.6cm, minimum height=1cm, right=.3 of Encoder, yshift=1.3cm] (EXP) {Reference Selection \\ Transcoding};
|
||||
\node [refBlockNoDraw, text width=2.6cm, above=-0.03 of EXP.north west, anchor=south west] (RPSDec) {Decoder};
|
||||
\path[MainArrow,-] (EXP.south west) |- (RPSDec.north east) |- (EXP.south west);
|
||||
\path[MainArrow,-,densely dotted] (EXP.north west) -- (EXP.north east); % Draw inside lines
|
||||
\path[MainArrow] (Encoder -| EXP) node[point] {} -- (EXP);
|
||||
|
||||
|
||||
|
||||
%% NALU Loss and EC optimisation
|
||||
\node [propBlock, above=.8 of RPSDec, text width=2.6cm, minimum height=2cm] (ConcOpt) {Loss simulation \\ \& \\ Saliency-weighted EC Optimisation};
|
||||
\path[MainArrow] (RPSDec) -- (ConcOpt);
|
||||
|
||||
\node [propBlock, right=of ConcOpt.north east, anchor=north west, text width=1.6cm] (Scalable0) {EL Encoder \\(20\%)};
|
||||
\node [propBlock, right=of ConcOpt.south east, anchor=south west, text width=1.6cm] (Scalable1) {EL Encoder \\(10\%)};
|
||||
|
||||
\path[MainArrow] (ConcOpt.east |- Scalable0) -- (Scalable0);
|
||||
\path[MainArrow] (ConcOpt.east |- Scalable1) -- (Scalable1);
|
||||
|
||||
|
||||
\node [propBlock, minimum height=.8cm, text width=2cm, right=2 of Encoder, yshift=-1cm] (StreamParser) {Stream Parser};
|
||||
\path[MainArrow] (Encoder -| StreamParser) node[point] {} -- (StreamParser);
|
||||
|
||||
\node [propBlock, minimum height=.8cm, text width=2cm, below=.3 of StreamParser] (VideoParser) {Video analyser};
|
||||
|
||||
\node[text width=.7cm, text centered] (Input) at (-2,5) {Input video};
|
||||
|
||||
|
||||
\path[MainArrow] (Input |- Encoder) node[point] {} |- (VideoParser);
|
||||
\path[MainArrow] (Input) |- (Encoder);
|
||||
\path[MainArrow] (Input |- EXP) node[point] {} |- (EXP);
|
||||
\path[MainArrow] (Input |- ConcOpt) node[point] {} -- (ConcOpt);
|
||||
|
||||
|
||||
% Mux and output
|
||||
\path (Encoder.south) -- (Encoder |- ConcOpt.north) node[midway] (middleRef) {}; % Find middle ref
|
||||
\node [propBlock, right=9 of middleRef, text width=5.5cm, rotate=-90, anchor=center, minimum height=1.1cm] (Mux) {Optimal stream selection};
|
||||
\node [right of=Mux, node distance=2.8cm, coordinate] (Out) {};
|
||||
|
||||
\tikzstyle{OutputLabels} = [pos=1, anchor=south east, text width=2cm, align=right]
|
||||
|
||||
\path[MainArrow] (Encoder) -- (Mux.south |- Encoder) node[OutputLabels] {\SMEC};
|
||||
\path[MainArrow] (EXP) -- (Mux.south |- EXP) node[OutputLabels] {\SMEXP};
|
||||
\path[MainArrow] (Scalable1) -- (Mux.south |- Scalable1) node[OutputLabels] {\SMEXPELTEN};
|
||||
\path[MainArrow] (Scalable0) -- (Mux.south |- Scalable0) node[OutputLabels] {\SMEXPELTWEN};
|
||||
\path[MainArrow] (Mux) -- (Out) node[above, midway, text width=2cm, text centered] {Optimal \\ Robust Steam};
|
||||
|
||||
\node [text centered, text width=1.5cm, minimum height=1cm, below=.3 of Mux.east, xshift=1.9cm] (Channel) {Channel Conditions};
|
||||
|
||||
|
||||
\path[SignallArrow] (StreamParser) -| (Mux.-6) node (b1) [pos=.3, anchor=center] {\footnotesize /} node[right=-.2 of b1, yshift=-6, inner sep=0] {\footnotesize 3};
|
||||
\path[SignallArrow] (VideoParser) -| (Mux.0) node (b2) at( b1 |- VideoParser) [anchor=center] {\footnotesize /} node[right=-.2 of b2, yshift=-6, inner sep=0] {\footnotesize 2};
|
||||
\path[SignallArrow] (Channel) -| (Mux.6);
|
||||
|
||||
\end{tikzpicture}
|
||||
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
\def\layersep{3cm}
|
||||
\begin{tikzpicture}[shorten >=1pt,->, node distance=\layersep,font=\small, yscale=1.2]
|
||||
\tikzstyle{neuron}=[circle,fill=black!25,minimum size=17pt,inner sep=0pt]
|
||||
\tikzstyle{input neuron}=[neuron, fill=TikZColorFillDark];
|
||||
\tikzstyle{hidden neuron}=[neuron, fill=TikZColorFill];
|
||||
\tikzstyle{output neuron}=[neuron, fill=TikZColorFillProp ];
|
||||
\tikzstyle{annot} = [text width=4em, text centered]
|
||||
|
||||
% Draw the hidden layer nodes
|
||||
\foreach \hidden / \y in {1,2,3,4,6}
|
||||
\path[yshift=0cm] node[hidden neuron] (H-\hidden) at (\layersep,-\y cm) {};
|
||||
\path[yshift=0cm] node[rotate=90] (H-5) at (\layersep,-5 cm) {...};
|
||||
|
||||
|
||||
\node[input neuron, pin={[pin edge={latex-,thick,black}]left:SI}] (I-1) at (0,-1) {};
|
||||
\node[input neuron, pin={[pin edge={latex-,thick,black}]left:TI}] (I-2) at (0,-2) {};
|
||||
\node[input neuron, pin={[pin edge={latex-,thick,black}]left:Inter(\%)}] (I-3) at (0,-3) {};
|
||||
\node[input neuron, pin={[pin edge={latex-,thick,black}]left:AVG\_MV}] (I-4) at (0,-4) {};
|
||||
\node[input neuron, pin={[pin edge={latex-,thick,black}]left:Bitrate}] (I-5) at (0,-5) {};
|
||||
\node[input neuron, pin={[pin edge={latex-,thick,black}]left:PLR}] (I-6) at (0,-6) {};
|
||||
|
||||
% Draw the output layer nodes
|
||||
\foreach \name / \y in {1,...,4}
|
||||
% This is the same as writing \foreach \name / \y in {1/1,2/2,3/3,4/4}
|
||||
%\node[output neuron, pin={[pin edge={-latex,thick,black}]right:M\y}] (O-\name) at (2*\layersep,-0.5-\y) {};
|
||||
\node[yshift=-1cm, output neuron] (O-\name) at (2*\layersep,-\y) {};
|
||||
\node[yshift=-1cm,output neuron] (O-O) at (3*\layersep,-2.5) {};
|
||||
|
||||
% Connect every node in the input layer with every node in the hidden layer.
|
||||
\foreach \source in {1,...,6}
|
||||
\foreach \hidden in {1,2,3,4,6}
|
||||
\path (I-\source) edge (H-\hidden);
|
||||
|
||||
% Connect every node in the hidden layer with the output layer
|
||||
\foreach \hidden in {1,2,3,4,6}
|
||||
\foreach \dest in {1,...,4}
|
||||
\path (H-\hidden) edge (O-\dest);
|
||||
|
||||
\foreach \out in {1,...,4}
|
||||
\path[draw] (O-\out) -- (O-O) node[pos=.3,above] {\scriptsize S\out};
|
||||
|
||||
\path[draw] (O-O) -- ++(1.5,0) node[pos=0, above, anchor=south west] {\SMEC...\SMEXPELTWEN};
|
||||
|
||||
% Annotate the layers
|
||||
\node[annot,above of=H-1, node distance=.8cm] (hl) {Hidden};
|
||||
\node[annot,left of=hl] (il) {Input};
|
||||
\node[annot,right of=hl] (ol) {Output};
|
||||
\node[annot,above=0 of hl] {Layers};
|
||||
\path[draw,-] (il.north west) -- (ol.north east);
|
||||
\end{tikzpicture}
|
||||
Reference in new issue
Block a user