可视化一系列图像

可视化一系列图像

我想显示一些这样的图像:在此处输入图片描述

问题不在于箭头,而在于帧。我希望图表能够告诉我们,每幅图像都是一个视频的帧。感谢 FHZ 的提示,我学会了搜索什么。这是我目前得到的结果。 在此处输入图片描述 这是代码:

\begin{tikzpicture}[x={(1,0)},y={(0,0.9)},z={({cos(5)},{sin(20)})}]
        
        \node[canvas is yz plane at x = 0, transform shape](p1){\includegraphics[width=4cm]{tree1}};
        
        \node[canvas is yz plane at x = 3, transform shape](p2){\includegraphics[width=4cm]{tree2}};
        
        \node[canvas is yz plane at x = 6, transform shape](p3){\includegraphics[width=4cm]{tree3}};
        
        
        
    \end{tikzpicture}

我认为这在某种程度上表明了图像是视频的帧,但看起来不太好看。所以我愿意听取建议。谢谢,Felix

答案1

编辑: 答案考虑问题的第一个版本。

链中有倾斜节点:

\documentclass[tikz, border=3.141592]{standalone}
\usetikzlibrary{arrows.meta,
                chains,
                patterns.meta, positioning,
                quotes}

\begin{document}
    \begin{tikzpicture}[auto=right,
node distance = 2mm and 1mm,
  start chain = going left,
   arl/.style = {Straight Barb-Straight Barb, shorten >=1pt, shorten <=1pt},
   arr/.style = {-Straight Barb},
every edge quotes/.style = {inner sep=2pt, font=\footnotesize, align=center},
     N/.style = {draw, minimum size=16mm, yslant=0.5, node contents={}, 
                 outer sep=0pt, yshift=8mm, on chain},
    Np/.style = {N, postaction={pattern={Lines[angle=-30,distance={3pt},line width=0.2pt]},
                                pattern color=gray}}
                        ]
    \foreach \x in {1,2,...,8}
{
\ifnum\x<5
    \node (n\x) [Np];
\else
    \node (n\x) [N];
\fi
}
\coordinate[above=of n1.north east] (t);
\coordinate[below=of n1.south west] (b);
\draw [arr] (t) to ["Transmission Order"] (n8.east |- t);
\draw [arl] (b -| n1.west) to ["Frames in Scene B" '] (b -| n4.west);
\draw [arl] (b -| n5.west) to ["Frames in Scene A" '] (b -| n8.west);
\draw [arr] 
            (n5.west |- b) to ["Scene\\ Change"] (n4.west |-b);
    \end{tikzpicture}
\end{document} 

在此处输入图片描述

或者

在此处输入图片描述

\documentclass[tikz, border=3.141592]{standalone}
\usetikzlibrary{arrows.meta,
                chains,
                patterns.meta, positioning,
                quotes}

\begin{document}
    \begin{tikzpicture}[auto=right,
node distance = 2mm and -8mm,
  start chain = going right,
   arl/.style = {Straight Barb-Straight Barb, shorten >=1pt, shorten <=1pt},
   arr/.style = {-Straight Barb},
every edge quotes/.style = {inner sep=2pt, font=\footnotesize, align=center},
     N/.style = {draw, fill=white, minimum size=16mm, yslant=0.75, node contents={}, 
                 outer sep=0pt, yshift=-12mm, on chain},
    Np/.style = {N, postaction={pattern={Lines[angle=-30,distance={3pt},line width=0.2pt]},
                                pattern color=gray}}
                        ]
    \foreach \x in {1,2,...,8}
{
\ifnum\x>4
    \node (n\x) [Np];
\else
    \node (n\x) [N];
\fi
}
\coordinate[above=of n1.north east] (t);
\coordinate[below=of n1.south west] (b);
\draw [arr] (t -| n8.east) to ["Transmission Order"] (t);
\draw [arl] (b -| n1.west) to [bend right=10, "Frames in\\ Scene A"] (b -| n4.west);
\draw [arl] (b -| n5.west) to [bend right=10, "Frames in\\ Scene B"] (b -| n8.west);
\draw [arr] 
            (n4.west |- b) to [bend right=60,"Scene\\ Change"] (n5.west |-b);
    \end{tikzpicture}
\end{document} 

答案2

使用\foreach循环绘制图形并命名节点。节点称为bottom1、...、bottom8top1、...、top8。使用这些来定位箭头。

在此处输入图片描述

\documentclass{article}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}[every node/.style={inner sep=0pt, outer sep=0pt, minimum width=0pt, minimum height=6pt, font={\footnotesize}}]
\foreach \n in {1,...,4}{
    \draw (\n,0) node(bottom\n){}--(\n+.8,.8)--(\n+.8,2)node(top\n){}--(\n,1.2)--cycle;}
\foreach \n in {5,...,8}{
    \draw[fill=gray!30] (\n,0) node(bottom\n){}--(\n+.8,.8)--(\n+.8,2)node(top\n){}--(\n,1.2)--cycle;}
\draw [latex-] (top1.north)--node[above=1mm]{Transmission Order}(top8.north);
\draw [latex-latex] (bottom1.south)to[bend right=5]node[below=1mm]{Frames in Scene A}(bottom4.south);
\draw [latex-latex] (bottom5.south)to[bend right=5]node[below=1mm]{Frames in Scene B}(bottom8.south);
\draw [-latex, looseness=2] ([yshift=-1mm]bottom4.south)to[bend right=75]node[below=1mm]{Scene Change}([yshift=-1mm]bottom5.south);
\end{tikzpicture}

\end{document}

相关内容