Files
icassp2027-experiment/manuscript/targeted/figures/system_overview_onecolumn.tex
T

72 lines
2.7 KiB
TeX
Raw Normal View History

\documentclass[tikz,border=2pt]{standalone}
\usetikzlibrary{arrows.meta}
\definecolor{navy}{HTML}{19324A}
\definecolor{bluefill}{HTML}{EAF1F7}
\definecolor{teal}{HTML}{087F78}
\definecolor{tealfill}{HTML}{E6F4F1}
\definecolor{orange}{HTML}{B85D0F}
\definecolor{orangefill}{HTML}{FFF0DF}
\begin{document}
\begin{tikzpicture}[
font=\sffamily\footnotesize,
>=Latex,
flow/.style={-{Latex[length=1.7mm]},draw=navy,line width=.7pt}]
\node[anchor=west,font=\sffamily\footnotesize\bfseries,text=navy]
at (.05,5.45) {(a) Short-window encoder evidence (SWE)};
\node[anchor=east,font=\sffamily\scriptsize,text=navy]
at (8.25,5.45) {inputs $\leq t_n$};
\draw[draw=navy,fill=bluefill,rounded corners=2pt]
(.10,4.48) rectangle (3.80,5.18);
\node[align=center,text=navy] at (1.95,4.83)
{Frozen Omni Thinker\\global AV context $G$};
\draw[draw=teal,fill=tealfill,rounded corners=2pt]
(.10,3.57) rectangle (3.80,4.27);
\node[align=center,text=teal] at (1.95,3.92)
{Frozen audio encoder\\recent 1-s audio $A$};
\draw[draw=teal,fill=tealfill,dashed,rounded corners=2pt]
(.10,2.48) rectangle (3.80,3.43);
\node[align=center,text=teal] at (1.95,2.955)
{Frozen visual encoder\\recent person-crop clues $V$};
\draw[draw=navy,line width=.7pt] (3.80,4.83) -- (4.38,4.83)
-- (4.38,2.955) -- (3.80,2.955);
\draw[draw=teal,line width=.7pt] (3.80,3.92) -- (4.38,3.92);
\draw[flow] (4.38,3.92) -- (4.85,3.92);
\draw[draw=navy,fill=bluefill,rounded corners=2pt]
(4.95,3.57) rectangle (6.40,4.27);
\node[align=center,text=navy] at (5.675,3.92) {Fusion\\head};
\draw[flow] (6.40,3.92) -- (6.78,3.92);
\draw[draw=orange,fill=orangefill,rounded corners=2pt]
(6.88,3.57) rectangle (8.30,4.27);
\node[align=center,text=orange] at (7.59,3.92)
{Future\\activity};
\draw[draw=navy!35,line width=.5pt] (.05,2.34) -- (8.30,2.34);
\node[anchor=west,font=\sffamily\footnotesize\bfseries,text=navy]
at (.05,2.07) {(b) Partial-tail refresh (PTR)};
\node[font=\sffamily\scriptsize,text=navy] at (1.58,1.70)
{reused completed blocks};
\node[font=\sffamily\scriptsize,text=orange] at (4.08,1.70)
{observed at $t_n$};
\foreach \x in {.15,1.15,2.15} {
\draw[draw=navy,fill=bluefill,rounded corners=1pt]
(\x,1.08) rectangle ++(.88,.46);
\node[text=navy] at (\x+.44,1.31) {2 s};
}
\draw[draw=orange,fill=orangefill,rounded corners=1pt]
(3.20,1.08) rectangle (4.95,1.54);
\node[text=orange] at (4.075,1.31) {partial tail};
\draw[flow] (4.95,1.31) -- (5.41,1.31);
\draw[draw=navy,fill=bluefill,rounded corners=2pt]
(5.51,.96) rectangle (8.30,1.66);
\node[align=center,text=navy] at (6.905,1.31)
{Temporary Thinker\\readout $G_t$};
\node[anchor=west,font=\sffamily\scriptsize,text=navy]
at (.15,.53) {Only completed blocks enter persistent history; the tail is not committed.};
\end{tikzpicture}
\end{document}