# 图像分类

Source: [https://docs.qualcomm.com/doc/80-70022-50SC/topic/gst-ai-classification.html](https://docs.qualcomm.com/doc/80-70022-50SC/topic/gst-ai-classification.html)

**gst-ai-classification** 应用程序可以识别图像中的主体。这些用例是使用 Qualcomm Neural Processing SDK、LiteRT 或 Qualcomm AI Engine Direct 模型实现的。

下图展示了一个 pipeline：从摄像头、文件源、USB 源或实时流传输协议 (RTSP) 接收视频流，对其进行预处理，然后在 AI 硬件上运行推理。结果可以显示在屏幕上，保存为编码的 MP4 文件，或通过 RTSP 服务器进行流传输。

有关用于分类的插件的信息，请参见 [Pipeline 流](https://docs.qualcomm.com/doc/80-70022-50SC/topic/gst-ai-classification.html#gst-ai-classification__section_j5t_2jq_nbc)。

Figure : gst-ai-classification pipeline
            
            <!--?xml version="1.0" encoding="UTF-8" standalone="no"?-->

<!-- Generated by Microsoft Visio, SVG Export gst_ai_classification_pipeline.svg gst_ai_classification_pipeline -->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="14.5833in" height="5.10417in" viewbox="0 0 1050 367.5" xml:space="preserve" color-interpolation-filters="sRGB" class="st15"><v:documentproperties v:langid="1033" v:viewmarkup="false"></v:documentproperties>
<style>.svg-1 .st1 { fill: #fafafa; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st2 { fill: #d2d7e1; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st3 { fill: #2a2aea; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st4 { fill: #ffffff; font-family: Roboto; font-size: 0.874992em }
.svg-1 .st5 { fill: #007884; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st6 { stroke: #000000; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st7 { fill: #000000; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st8 { font-size: 1em }
.svg-1 .st9 { fill: none; stroke: none; stroke-linecap: butt; stroke-width: 0.75 }
.svg-1 .st10 { fill: #000000; font-family: Roboto; font-size: 0.874992em }
.svg-1 .st11 { fill: none; stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5 }
.svg-1 .st12 { fill: none }
.svg-1 .st13 { stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5 }
.svg-1 .st14 { fill: #000000; font-family: SimHei; font-size: 0.874992em }
.svg-1 .st15 { fill: none; fill-rule: evenodd; font-size: 12px; overflow: visible; stroke-linecap: square; stroke-miterlimit: 3 }</style>
<g v:mid="0" v:index="1" v:groupcontext="foregroundPage">	<title>gst_ai_classification_pipeline</title>	<v:pageproperties v:drawingscale="1" v:pagescale="1" v:drawingunits="19" v:shadowoffsetx="9" v:shadowoffsety="-9"></v:pageproperties>	<g id="shape2-1" v:mid="2" v:groupcontext="shape" transform="translate(0.375092,-0.375108)">		<title>Sheet.2</title>		<path d="M0 361.88 A5.62513 5.62513 -180 0 0 5.62 367.5 L1043.62 367.5 A5.62513 5.62513 -180 0 0 1049.25 361.88 L1049.25					 6.38 A5.62513 5.62513 -180 0 0 1043.62 0.75 L5.62 0.75 A5.62513 5.62513 -180 0 0 0 6.38 L0 361.88 Z" class="st1"></path>	</g>	<g id="shape3-3" v:mid="3" v:groupcontext="shape" transform="translate(1.27898E-13,-1.62725E-05)">		<title>Sheet.3</title>		<path d="M1044 0.75 C1046.89 0.75 1049.25 3.11 1049.25 6 L1049.25 361.5 C1049.25 364.39 1046.89 366.75 1044 366.75 L6					 366.75 C3.11 366.75 0.75 364.39 0.75 361.5 L0.75 6 C0.75 3.11 3.11 0.75 6 0.75 L1044 0.75 ZM1044 0 L6 0					 C2.69 0 0 2.69 0 6 L0 361.5 C0 364.81 2.69 367.5 6 367.5 L1044 367.5 C1047.31 367.5 1050 364.81 1050 361.5					 L1050 6 C1050 2.69 1047.31 0 1044 0 Z" class="st2"></path>	</g>	<g id="shape5-5" v:mid="5" v:groupcontext="shape" transform="translate(796.78,-36.2843)">		<title>Sheet.5</title>		<desc>qtivcomposer</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="39" cy="212.868" width="78.01" height="309.265"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L75 367.5 A3.00007 3.00007 -180 0 0 78 364.5 L78 61.24 A3.00007 3.00007					 -180 0 0 75 58.24 L3 58.24 A3.00007 3.00007 -180 0 0 0 61.24 L0 364.5 Z" class="st3"></path>		<text x="6.94" y="216.47" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtivcomposer</text>		</g>	<g id="shape6-8" v:mid="6" v:groupcontext="shape" transform="translate(388.118,-36.2843)">		<title>Sheet.6</title>		<desc>tee</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="22.526" cy="250.547" width="45.06" height="233.905"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L42.05 367.5 A3.00007 3.00007 -180 0 0 45.05 364.5 L45.05 136.59					 A3.00007 3.00007 -180 0 0 42.05 133.59 L3 133.59 A3.00007 3.00007 -180 0 0 -0 136.59 L0 364.5 Z" class="st5"></path>		<text x="15.25" y="254.15" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>tee</text>		</g>	<g id="shape7-11" v:mid="7" v:groupcontext="shape" transform="translate(54.5595,-124.615)">		<title>Sheet.7</title>		<desc>rtspsrc</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="32.25" cy="345" width="64.5" height="45"></v:textrect>		<path d="M-0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L61.5 367.5 A3.00007 3.00007 -180 0 0 64.5 364.5 L64.5 325.5 A3.00007					 3.00007 -180 0 0 61.5 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 -0 325.5 L0 364.5 Z" class="st5"></path>		<text x="15.87" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>rtspsrc</text>		</g>	<g id="group8-14" transform="translate(119.059,-144.124)" v:mid="8" v:groupcontext="group">		<title>Sheet.8</title>		<g id="shape9-15" v:mid="9" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.9</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape10-18" v:mid="10" v:groupcontext="shape" transform="translate(8.60701,1.13687E-13)">			<title>Sheet.10</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape11-20" v:mid="11" v:groupcontext="shape" transform="translate(45.0578,-147.115)">		<title>Sheet.11</title>		<path d="M0 367.5 L9.5 367.5" class="st6"></path>	</g>	<g id="shape12-23" v:mid="12" v:groupcontext="shape" transform="translate(132.9,-124.615)">		<title>Sheet.12</title>		<desc>rtph264 depay</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="35.625" cy="345" width="71.26" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L68.25 367.5 A3.00007 3.00007 -180 0 0 71.25 364.5 L71.25 325.5 A3.00007					 3.00007 -180 0 0 68.25 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 -0 325.5 L0 364.5 Z" class="st5"></path>		<text x="17.45" y="341.63" class="st4" v:langid="1033"><v:paragraph v:spline="-1" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>rtph264<v:newlinechar></v:newlinechar><tspan x="21.6" dy="1.107em" class="st8">depay </tspan> </text>		</g>	<g id="group13-27" transform="translate(204.15,-144.124)" v:mid="13" v:groupcontext="group">		<title>Sheet.13</title>		<g id="shape14-28" v:mid="14" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.14</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape15-31" v:mid="15" v:groupcontext="shape" transform="translate(8.607,1.13687E-13)">			<title>Sheet.15</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape16-33" v:mid="16" v:groupcontext="shape" transform="translate(217.99,-124.615)">		<title>Sheet.16</title>		<desc>h264parse</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="35.625" cy="345" width="71.26" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L68.25 367.5 A3.00007 3.00007 -180 0 0 71.25 364.5 L71.25 325.5 A3.00007					 3.00007 -180 0 0 68.25 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 -0 325.5 L0 364.5 Z" class="st5"></path>		<text x="10.82" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>h264parse</text>		</g>	<g id="group17-36" transform="translate(289.24,-144.124)" v:mid="17" v:groupcontext="group">		<title>Sheet.17</title>		<g id="shape18-37" v:mid="18" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.18</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape19-40" v:mid="19" v:groupcontext="shape" transform="translate(8.607,1.13687E-13)">			<title>Sheet.19</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape20-42" v:mid="20" v:groupcontext="shape" transform="translate(303.08,-124.615)">		<title>Sheet.20</title>		<desc>V4l2h264dec</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="35.625" cy="345" width="71.26" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L68.25 367.5 A3.00007 3.00007 -180 0 0 71.25 364.5 L71.25 325.5 A3.00007					 3.00007 -180 0 0 68.25 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 -0 325.5 L0 364.5 Z" class="st5"></path>		<text x="4.89" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>V4l2h264dec</text>		</g>	<g id="group21-45" transform="translate(374.33,-144.124)" v:mid="21" v:groupcontext="group">		<title>Sheet.21</title>		<g id="shape22-46" v:mid="22" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.22</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape23-49" v:mid="23" v:groupcontext="shape" transform="translate(8.607,1.13687E-13)">			<title>Sheet.23</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="group24-51" transform="translate(433.17,-144.124)" v:mid="24" v:groupcontext="group">		<title>Sheet.24</title>		<g id="shape25-52" v:mid="25" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.25</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape26-55" v:mid="26" v:groupcontext="shape" transform="translate(8.607,1.13687E-13)">			<title>Sheet.26</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape27-57" v:mid="27" v:groupcontext="shape" transform="translate(447.01,-124.615)">		<title>Sheet.27</title>		<desc>qtimlvconverter</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="345" width="90.01" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L87 367.5 A3.00007 3.00007 -180 0 0 90 364.5 L90 325.5 A3.00007 3.00007					 -180 0 0 87 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="8.6" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimlvconverter</text>		</g>	<g id="group28-60" transform="translate(537.01,-144.124)" v:mid="28" v:groupcontext="group">		<title>Sheet.28</title>		<g id="shape29-61" v:mid="29" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.29</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape30-64" v:mid="30" v:groupcontext="shape" transform="translate(8.60701,1.13687E-13)">			<title>Sheet.30</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape31-66" v:mid="31" v:groupcontext="shape" transform="translate(550.85,-124.615)">		<title>Sheet.31</title>		<desc>qtimltflite/qtimlsnpe/ qtimlqnn</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="41.25" cy="345" width="82.51" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L79.5 367.5 A3.00007 3.00007 -180 0 0 82.5 364.5 L82.5 325.5 A3.00007					 3.00007 -180 0 0 79.5 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="16.66" y="336.38" class="st4" v:langid="1033"><v:paragraph v:spline="-1" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimltflite/<tspan x="15.91" dy="1em" class="st8">qtimlsnpe/ </tspan><tspan x="20.62" dy="1.107em" class="st8">qtimlqnn</tspan></text>		</g>	<g id="group32-71" transform="translate(633.35,-144.124)" v:mid="32" v:groupcontext="group">		<title>Sheet.32</title>		<g id="shape33-72" v:mid="33" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.33</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape34-75" v:mid="34" v:groupcontext="shape" transform="translate(8.60699,1.13687E-13)">			<title>Sheet.34</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape35-77" v:mid="35" v:groupcontext="shape" transform="translate(647.19,-124.615)">		<title>Sheet.35</title>		<desc>qtimlpostprocess</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="54.375" cy="345" width="108.75" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L105.75 367.5 A3.00007 3.00007 -180 0 0 108.75 364.5 L108.75 325.5					 A3.00007 3.00007 -180 0 0 105.75 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="13.51" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimlpostprocess</text>		</g>	<g id="group36-80" transform="translate(755.94,-144.124)" v:mid="36" v:groupcontext="group">		<title>Sheet.36</title>		<g id="shape37-81" v:mid="37" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.37</title>			<path d="M0 367.5 L36.48 367.5" class="st6"></path>		</g>		<g id="shape38-84" v:mid="38" v:groupcontext="shape" transform="translate(35.607,1.13687E-13)">			<title>Sheet.38</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape48-86" v:mid="48" v:groupcontext="shape" transform="translate(759.513,-150.377)">		<title>Sheet.48</title>		<desc>sink_1</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="31.5" cy="361.2" width="63.01" height="12.6"></v:textrect>		<rect x="0" y="354.9" width="63" height="12.6" class="st9"></rect>		<text x="0" y="364.35" class="st10" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>sink_1</text>		</g>	<g id="group49-89" transform="translate(433.17,-174.122)" v:mid="49" v:groupcontext="group">		<title>Sheet.49</title>		<g id="shape50-90" v:mid="50" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.50</title>			<path d="M0 367.5 L359.25 367.5" class="st6"></path>		</g>		<g id="shape51-93" v:mid="51" v:groupcontext="shape" transform="translate(358.377,-5.68434E-14)">			<title>Sheet.51</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape52-95" v:mid="52" v:groupcontext="shape" transform="translate(759.513,-178.973)">		<title>Sheet.52</title>		<desc>sink_0</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="31.5" cy="361.2" width="63.01" height="12.6"></v:textrect>		<rect x="0" y="354.9" width="63" height="12.6" class="st9"></rect>		<text x="0" y="364.35" class="st10" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>sink_0</text>		</g>	<g id="group53-98" transform="translate(433.17,-55.7925)" v:mid="53" v:groupcontext="group">		<title>Sheet.53</title>		<g id="shape54-99" v:mid="54" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.54</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape55-102" v:mid="55" v:groupcontext="shape" transform="translate(8.607,1.13687E-13)">			<title>Sheet.55</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape56-104" v:mid="56" v:groupcontext="shape" transform="translate(447.01,-36.2843)">		<title>Sheet.56</title>		<desc>qtimlvconverter</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="345" width="90.01" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L87 367.5 A3.00007 3.00007 -180 0 0 90 364.5 L90 325.5 A3.00007 3.00007					 -180 0 0 87 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="8.6" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimlvconverter</text>		</g>	<g id="group57-107" transform="translate(537.01,-55.7925)" v:mid="57" v:groupcontext="group">		<title>Sheet.57</title>		<g id="shape58-108" v:mid="58" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.58</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape59-111" v:mid="59" v:groupcontext="shape" transform="translate(8.60701,1.13687E-13)">			<title>Sheet.59</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape60-113" v:mid="60" v:groupcontext="shape" transform="translate(550.85,-36.2843)">		<title>Sheet.60</title>		<desc>qtimltflite/qtimlsnpe/ qtimlqnn</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="41.25" cy="345" width="82.51" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L79.5 367.5 A3.00007 3.00007 -180 0 0 82.5 364.5 L82.5 325.5 A3.00007					 3.00007 -180 0 0 79.5 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="16.66" y="336.38" class="st4" v:langid="1033"><v:paragraph v:spline="-1" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimltflite/<tspan x="15.91" dy="1em" class="st8">qtimlsnpe/ </tspan><tspan x="20.62" dy="1.107em" class="st8">qtimlqnn</tspan></text>		</g>	<g id="group61-118" transform="translate(633.35,-55.7925)" v:mid="61" v:groupcontext="group">		<title>Sheet.61</title>		<g id="shape62-119" v:mid="62" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.62</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape63-122" v:mid="63" v:groupcontext="shape" transform="translate(8.60699,1.13687E-13)">			<title>Sheet.63</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape64-124" v:mid="64" v:groupcontext="shape" transform="translate(647.19,-36.2843)">		<title>Sheet.64</title>		<desc>qtimlpostprocess</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="54.375" cy="345" width="108.75" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L105.75 367.5 A3.00007 3.00007 -180 0 0 108.75 364.5 L108.75 325.5					 A3.00007 3.00007 -180 0 0 105.75 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="13.51" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimlpostprocess</text>		</g>	<g id="group65-127" transform="translate(755.94,-55.7925)" v:mid="65" v:groupcontext="group">		<title>Sheet.65</title>		<g id="shape66-128" v:mid="66" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.66</title>			<path d="M0 367.5 L36.48 367.5" class="st6"></path>		</g>		<g id="shape67-131" v:mid="67" v:groupcontext="shape" transform="translate(35.607,1.13687E-13)">			<title>Sheet.67</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape71-133" v:mid="71" v:groupcontext="shape" transform="translate(759.513,-62.0457)">		<title>Sheet.71</title>		<desc>sink_1</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="31.5" cy="361.2" width="63.01" height="12.6"></v:textrect>		<rect x="0" y="354.9" width="63" height="12.6" class="st9"></rect>		<text x="0" y="364.35" class="st10" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>sink_1</text>		</g>	<g id="group72-136" transform="translate(433.17,-85.7908)" v:mid="72" v:groupcontext="group">		<title>Sheet.72</title>		<g id="shape73-137" v:mid="73" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.73</title>			<path d="M0 367.5 L359.25 367.5" class="st6"></path>		</g>		<g id="shape74-140" v:mid="74" v:groupcontext="shape" transform="translate(358.377,-5.68434E-14)">			<title>Sheet.74</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape75-142" v:mid="75" v:groupcontext="shape" transform="translate(759.513,-90.642)">		<title>Sheet.75</title>		<desc>sink_0</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="31.5" cy="361.2" width="63.01" height="12.6"></v:textrect>		<rect x="0" y="354.9" width="63" height="12.6" class="st9"></rect>		<text x="0" y="364.35" class="st10" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>sink_0</text>		</g>	<g id="shape76-145" v:mid="76" v:groupcontext="shape" transform="translate(17.3855,-312.978)">		<title>Sheet.76</title>		<path d="M16.88 345.9 L10.13 345.9 L6.75 349.95 L2.7 349.95 C1.21 349.95 0 351.16 0 352.65 L0 364.8 C0 366.29 1.21 367.5					 2.7 367.5 L24.3 367.5 C25.79 367.5 27 366.29 27 364.8 L27 352.65 C27 351.16 25.79 349.95 24.3 349.95 L20.25					 349.95 L16.88 345.9 Z" class="st11"></path>	</g>	<g id="shape77-147" v:mid="77" v:groupcontext="shape" transform="translate(26.8355,-319.728)">		<title>Sheet.77</title>		<ellipse cx="4.05" cy="363.45" rx="4.05" ry="4.05" class="st11"></ellipse>	</g>	<g id="shape78-149" v:mid="78" v:groupcontext="shape" transform="translate(17.3855,-218.572)">		<title>Sheet.78</title>		<path d="M18.56 333.75 L3.38 333.75 C1.51 333.75 0 335.26 0 337.13 L0 364.13 C0 365.99 1.51 367.5 3.38 367.5 L23.63 367.5					 C25.49 367.5 27 365.99 27 364.13 L27 342.19 L18.56 333.75 Z" class="st11"></path>	</g>	<g id="shape79-151" v:mid="79" v:groupcontext="shape" transform="translate(34.2605,-242.197)">		<title>Sheet.79</title>		<path d="M0 357.38 L0 364.13 C0 365.99 1.51 367.5 3.38 367.5 L10.13 367.5 L0 357.38 Z" class="st12"></path>		<path d="M0 357.38 L0 364.13 C0 365.99 1.51 367.5 3.38 367.5 L10.13 367.5" class="st13"></path>	</g>	<g id="shape80-154" v:mid="80" v:groupcontext="shape" transform="translate(27.5105,-227.009)">		<title>Sheet.80</title>		<path d="M0 357.38 L8.44 362.44 L0 367.5 L0 357.38 Z" class="st11"></path>	</g>	<g id="shape81-156" v:mid="81" v:groupcontext="shape" transform="translate(28.1854,-142.623)">		<title>Sheet.81</title>		<path d="M0 360.27 C0 359.71 0.46 359.26 1.01 359.26 C1.2 359.26 1.38 359.31 1.54 359.41 L6.49 362.44 C6.96 362.74 7.11					 363.36 6.82 363.84 C6.74 363.97 6.62 364.09 6.49 364.17 L1.54 367.21 C1.07 367.5 0.44 367.35 0.15 366.87					 C0.05 366.71 0 366.53 0 366.34 L0 360.27 Z" class="st11"></path>	</g>	<g id="shape82-158" v:mid="82" v:groupcontext="shape" transform="translate(24.1355,-131.965)">		<title>Sheet.82</title>		<path d="M0 367.5 L13.5 367.5 L0 367.5 Z" class="st12"></path>		<path d="M0 367.5 L13.5 367.5" class="st13"></path>	</g>	<g id="shape83-161" v:mid="83" v:groupcontext="shape" transform="translate(17.3855,-137.365)">		<title>Sheet.83</title>		<path d="M0 366 A1.50003 1.50003 -180 0 0 1.5 367.5 L25.5 367.5 A1.50003 1.50003 -180 0 0 27 366 L27 350.1 A1.50003 1.50003					 -180 0 0 25.5 348.6 L1.5 348.6 A1.50003 1.50003 -180 0 0 -0 350.1 L0 366 Z" class="st11"></path>	</g>	<g id="shape84-163" v:mid="84" v:groupcontext="shape" transform="translate(54.5595,-212.947)">		<title>Sheet.84</title>		<desc>filesrc</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="32.25" cy="345" width="64.5" height="45"></v:textrect>		<path d="M-0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L61.5 367.5 A3.00007 3.00007 -180 0 0 64.5 364.5 L64.5 325.5 A3.00007					 3.00007 -180 0 0 61.5 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 -0 325.5 L0 364.5 Z" class="st5"></path>		<text x="17.87" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>filesrc</text>		</g>	<g id="group85-166" transform="translate(119.059,-232.455)" v:mid="85" v:groupcontext="group">		<title>Sheet.85</title>		<g id="shape86-167" v:mid="86" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.86</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape87-170" v:mid="87" v:groupcontext="shape" transform="translate(8.60701,-5.68434E-14)">			<title>Sheet.87</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape88-172" v:mid="88" v:groupcontext="shape" transform="translate(45.0578,-235.447)">		<title>Sheet.88</title>		<path d="M0 367.5 L9.5 367.5" class="st6"></path>	</g>	<g id="shape89-175" v:mid="89" v:groupcontext="shape" transform="translate(132.9,-212.947)">		<title>Sheet.89</title>		<desc>qtdemux</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="35.625" cy="345" width="71.26" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L68.25 367.5 A3.00007 3.00007 -180 0 0 71.25 364.5 L71.25 325.5 A3.00007					 3.00007 -180 0 0 68.25 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 -0 325.5 L0 364.5 Z" class="st5"></path>		<text x="15.09" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtdemux</text>		</g>	<g id="group90-178" transform="translate(204.15,-232.455)" v:mid="90" v:groupcontext="group">		<title>Sheet.90</title>		<g id="shape91-179" v:mid="91" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.91</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape92-182" v:mid="92" v:groupcontext="shape" transform="translate(8.607,-5.68434E-14)">			<title>Sheet.92</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape93-184" v:mid="93" v:groupcontext="shape" transform="translate(217.99,-212.947)">		<title>Sheet.93</title>		<desc>h264parse</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="35.625" cy="345" width="71.26" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L68.25 367.5 A3.00007 3.00007 -180 0 0 71.25 364.5 L71.25 325.5 A3.00007					 3.00007 -180 0 0 68.25 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 -0 325.5 L0 364.5 Z" class="st5"></path>		<text x="10.82" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>h264parse</text>		</g>	<g id="group94-187" transform="translate(289.24,-232.455)" v:mid="94" v:groupcontext="group">		<title>Sheet.94</title>		<g id="shape95-188" v:mid="95" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.95</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape96-191" v:mid="96" v:groupcontext="shape" transform="translate(8.607,-5.68434E-14)">			<title>Sheet.96</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape97-193" v:mid="97" v:groupcontext="shape" transform="translate(303.08,-212.947)">		<title>Sheet.97</title>		<desc>V4l2h264dec</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="35.625" cy="345" width="71.26" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L68.25 367.5 A3.00007 3.00007 -180 0 0 71.25 364.5 L71.25 325.5 A3.00007					 3.00007 -180 0 0 68.25 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 -0 325.5 L0 364.5 Z" class="st5"></path>		<text x="4.89" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>V4l2h264dec</text>		</g>	<g id="group98-196" transform="translate(374.33,-232.455)" v:mid="98" v:groupcontext="group">		<title>Sheet.98</title>		<g id="shape99-197" v:mid="99" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.99</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape100-200" v:mid="100" v:groupcontext="shape" transform="translate(8.607,-5.68434E-14)">			<title>Sheet.100</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="group101-202" transform="translate(433.17,-232.455)" v:mid="101" v:groupcontext="group">		<title>Sheet.101</title>		<g id="shape102-203" v:mid="102" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.102</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape103-206" v:mid="103" v:groupcontext="shape" transform="translate(8.607,-5.68434E-14)">			<title>Sheet.103</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape104-208" v:mid="104" v:groupcontext="shape" transform="translate(447.01,-212.947)">		<title>Sheet.104</title>		<desc>qtimlvconverter</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="345" width="90.01" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L87 367.5 A3.00007 3.00007 -180 0 0 90 364.5 L90 325.5 A3.00007 3.00007					 -180 0 0 87 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="8.6" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimlvconverter</text>		</g>	<g id="group105-211" transform="translate(537.01,-232.455)" v:mid="105" v:groupcontext="group">		<title>Sheet.105</title>		<g id="shape106-212" v:mid="106" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.106</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape107-215" v:mid="107" v:groupcontext="shape" transform="translate(8.60701,-5.68434E-14)">			<title>Sheet.107</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape108-217" v:mid="108" v:groupcontext="shape" transform="translate(550.85,-212.947)">		<title>Sheet.108</title>		<desc>qtimltflite/qtimlsnpe/ qtimlqnn</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="41.25" cy="345" width="82.51" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L79.5 367.5 A3.00007 3.00007 -180 0 0 82.5 364.5 L82.5 325.5 A3.00007					 3.00007 -180 0 0 79.5 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="16.66" y="336.38" class="st4" v:langid="1033"><v:paragraph v:spline="-1" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimltflite/<tspan x="15.91" dy="1em" class="st8">qtimlsnpe/ </tspan><tspan x="20.62" dy="1.107em" class="st8">qtimlqnn</tspan></text>		</g>	<g id="group109-222" transform="translate(633.35,-232.455)" v:mid="109" v:groupcontext="group">		<title>Sheet.109</title>		<g id="shape110-223" v:mid="110" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.110</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape111-226" v:mid="111" v:groupcontext="shape" transform="translate(8.60699,-5.68434E-14)">			<title>Sheet.111</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape112-228" v:mid="112" v:groupcontext="shape" transform="translate(647.19,-212.947)">		<title>Sheet.112</title>		<desc>qtimlpostprocess</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="54.375" cy="345" width="108.75" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L105.75 367.5 A3.00007 3.00007 -180 0 0 108.75 364.5 L108.75 325.5					 A3.00007 3.00007 -180 0 0 105.75 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="13.51" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimlpostprocess</text>		</g>	<g id="group113-231" transform="translate(755.94,-232.455)" v:mid="113" v:groupcontext="group">		<title>Sheet.113</title>		<g id="shape114-232" v:mid="114" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.114</title>			<path d="M0 367.5 L36.48 367.5" class="st6"></path>		</g>		<g id="shape115-235" v:mid="115" v:groupcontext="shape" transform="translate(35.607,-5.68434E-14)">			<title>Sheet.115</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape123-237" v:mid="123" v:groupcontext="shape" transform="translate(759.513,-238.708)">		<title>Sheet.123</title>		<desc>sink_1</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="31.5" cy="361.2" width="63.01" height="12.6"></v:textrect>		<rect x="0" y="354.9" width="63" height="12.6" class="st9"></rect>		<text x="0" y="364.35" class="st10" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>sink_1</text>		</g>	<g id="group124-240" transform="translate(433.17,-262.456)" v:mid="124" v:groupcontext="group">		<title>Sheet.124</title>		<g id="shape125-241" v:mid="125" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.125</title>			<path d="M0 367.5 L359.25 367.5" class="st6"></path>		</g>		<g id="shape126-244" v:mid="126" v:groupcontext="shape" transform="translate(358.377,-5.68434E-14)">			<title>Sheet.126</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape127-246" v:mid="127" v:groupcontext="shape" transform="translate(759.513,-267.189)">		<title>Sheet.127</title>		<desc>sink_0</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="31.5" cy="361.2" width="63.01" height="12.6"></v:textrect>		<rect x="0" y="354.9" width="63" height="12.6" class="st9"></rect>		<text x="0" y="364.35" class="st10" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>sink_0</text>		</g>	<g id="shape128-249" v:mid="128" v:groupcontext="shape" transform="translate(54.5595,-301.278)">		<title>Sheet.128</title>		<desc>qtiqmmfsrc</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="32.25" cy="345" width="64.5" height="45"></v:textrect>		<path d="M-0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L61.5 367.5 A3.00007 3.00007 -180 0 0 64.5 364.5 L64.5 325.5 A3.00007					 3.00007 -180 0 0 61.5 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 -0 325.5 L0 364.5 Z" class="st3"></path>		<text x="5.04" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtiqmmfsrc</text>		</g>	<g id="shape129-252" v:mid="129" v:groupcontext="shape" transform="translate(45.0578,-323.778)">		<title>Sheet.129</title>		<path d="M0 367.5 L9.5 367.5" class="st6"></path>	</g>	<g id="shape130-255" v:mid="130" v:groupcontext="shape" transform="translate(447.01,-286.278)">		<title>Sheet.130</title>		<desc>qtimlvconverter</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="345" width="90.01" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L87 367.5 A3.00007 3.00007 -180 0 0 90 364.5 L90 325.5 A3.00007 3.00007					 -180 0 0 87 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="8.6" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimlvconverter</text>		</g>	<g id="group131-258" transform="translate(537.01,-305.786)" v:mid="131" v:groupcontext="group">		<title>Sheet.131</title>		<g id="shape132-259" v:mid="132" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.132</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape133-262" v:mid="133" v:groupcontext="shape" transform="translate(8.60701,0)">			<title>Sheet.133</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape134-264" v:mid="134" v:groupcontext="shape" transform="translate(550.85,-286.278)">		<title>Sheet.134</title>		<desc>qtimltflite/qtimlsnpe/ qtimlqnn</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="41.25" cy="345" width="82.51" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L79.5 367.5 A3.00007 3.00007 -180 0 0 82.5 364.5 L82.5 325.5 A3.00007					 3.00007 -180 0 0 79.5 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="16.66" y="336.38" class="st4" v:langid="1033"><v:paragraph v:spline="-1" v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimltflite/<tspan x="15.91" dy="1em" class="st8">qtimlsnpe/ </tspan><tspan x="20.62" dy="1.107em" class="st8">qtimlqnn</tspan></text>		</g>	<g id="group135-269" transform="translate(633.35,-305.786)" v:mid="135" v:groupcontext="group">		<title>Sheet.135</title>		<g id="shape136-270" v:mid="136" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.136</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape137-273" v:mid="137" v:groupcontext="shape" transform="translate(8.60699,0)">			<title>Sheet.137</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape138-275" v:mid="138" v:groupcontext="shape" transform="translate(647.19,-286.278)">		<title>Sheet.138</title>		<desc>qtimlpostprocess</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="54.375" cy="345" width="108.75" height="45"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L105.75 367.5 A3.00007 3.00007 -180 0 0 108.75 364.5 L108.75 325.5					 A3.00007 3.00007 -180 0 0 105.75 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st3"></path>		<text x="13.51" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtimlpostprocess</text>		</g>	<g id="group139-278" transform="translate(755.94,-305.786)" v:mid="139" v:groupcontext="group">		<title>Sheet.139</title>		<g id="shape140-279" v:mid="140" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.140</title>			<path d="M0 367.5 L36.48 367.5" class="st6"></path>		</g>		<g id="shape141-282" v:mid="141" v:groupcontext="shape" transform="translate(35.607,0)">			<title>Sheet.141</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape146-284" v:mid="146" v:groupcontext="shape" transform="translate(759.513,-311.31)">		<title>Sheet.146</title>		<desc>sink_1</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="31.5" cy="361.2" width="63.01" height="12.6"></v:textrect>		<rect x="0" y="354.9" width="63" height="12.6" class="st9"></rect>		<text x="0" y="364.35" class="st10" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>sink_1</text>		</g>	<g id="group147-287" transform="translate(119.059,-335.786)" v:mid="147" v:groupcontext="group">		<title>Sheet.147</title>		<g id="shape148-288" v:mid="148" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.148</title>			<path d="M0 367.5 L673.36 367.5" class="st6"></path>		</g>		<g id="shape149-291" v:mid="149" v:groupcontext="shape" transform="translate(672.488,0)">			<title>Sheet.149</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape150-293" v:mid="150" v:groupcontext="shape" transform="translate(759.513,-340.523)">		<title>Sheet.150</title>		<desc>sink_0</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="31.5" cy="361.2" width="63.01" height="12.6"></v:textrect>		<rect x="0" y="354.9" width="63" height="12.6" class="st9"></rect>		<text x="0" y="364.35" class="st10" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>sink_0</text>		</g>	<g id="shape158-296" v:mid="158" v:groupcontext="shape" transform="translate(54.5595,-36.2843)">		<title>Sheet.158</title>		<desc>v4l2src</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="32.25" cy="345" width="64.5" height="45"></v:textrect>		<path d="M-0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L61.5 367.5 A3.00007 3.00007 -180 0 0 64.5 364.5 L64.5 325.5 A3.00007					 3.00007 -180 0 0 61.5 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 -0 325.5 L0 364.5 Z" class="st5"></path>		<text x="15.31" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>v4l2src</text>		</g>	<g id="group159-299" transform="translate(119.059,-55.7926)" v:mid="159" v:groupcontext="group">		<title>Sheet.159</title>		<g id="shape160-300" v:mid="160" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.160</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape161-303" v:mid="161" v:groupcontext="shape" transform="translate(8.60701,-5.68434E-14)">			<title>Sheet.161</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape162-305" v:mid="162" v:groupcontext="shape" transform="translate(45.0578,-58.7843)">		<title>Sheet.162</title>		<path d="M0 367.5 L9.5 367.5" class="st6"></path>	</g>	<g id="shape163-308" v:mid="163" v:groupcontext="shape" transform="translate(132.9,-36.2843)">		<title>Sheet.163</title>		<desc>v4l2src_caps</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="39.375" cy="345" width="78.75" height="45"></v:textrect>		<path d="M-0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L75.75 367.5 A3.00007 3.00007 -180 0 0 78.75 364.5 L78.75 325.5					 A3.00007 3.00007 -180 0 0 75.75 322.5 L3 322.5 A3.00007 3.00007 -180 0 0 0 325.5 L0 364.5 Z" class="st5"></path>		<text x="8.81" y="348.6" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>v4l2src_caps</text>		</g>	<g id="group164-311" transform="translate(211.65,-55.7926)" v:mid="164" v:groupcontext="group">		<title>Sheet.164</title>		<g id="shape165-312" v:mid="165" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.165</title>			<path d="M0 367.5 L172.16 367.5" class="st6"></path>		</g>		<g id="shape166-315" v:mid="166" v:groupcontext="shape" transform="translate(171.287,-5.68434E-14)">			<title>Sheet.166</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="group169-317" transform="translate(20.532,-40.3601)" v:mid="169" v:groupcontext="group">		<title>Sheet.169</title>		<g id="shape170-318" v:mid="170" v:groupcontext="shape" transform="translate(-1.9984E-13,-6.00405)">			<title>Sheet.170</title>			<ellipse cx="12.0081" cy="355.492" rx="12.0081" ry="12.0081" class="st11"></ellipse>		</g>		<g id="shape171-320" v:mid="171" v:groupcontext="shape" transform="translate(7.50506,-13.5091)">			<title>Sheet.171</title>			<ellipse cx="4.50304" cy="362.997" rx="4.50304" ry="4.50304" class="st11"></ellipse>		</g>		<g id="shape172-322" v:mid="172" v:groupcontext="shape" transform="translate(4.50304,0)">			<title>Sheet.172</title>			<path d="M0 367.5 L15.01 367.5 L0 367.5 Z" class="st12"></path>			<path d="M0 367.5 L15.01 367.5" class="st13"></path>		</g>		<g id="shape173-325" v:mid="173" v:groupcontext="shape" transform="translate(12.0081,-5.68434E-14)">			<title>Sheet.173</title>			<path d="M0 367.5 L0 361.5 L0 367.5 Z" class="st12"></path>			<path d="M0 367.5 L0 361.5" class="st13"></path>		</g>	</g>	<g id="group176-328" transform="translate(874.832,-295.323)" v:mid="176" v:groupcontext="group">		<title>Sheet.176</title>		<g id="shape177-329" v:mid="177" v:groupcontext="shape" transform="translate(0,-2.9918)">			<title>Sheet.177</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape178-332" v:mid="178" v:groupcontext="shape" transform="translate(8.60701,1.7053E-13)">			<title>Sheet.178</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape180-334" v:mid="180" v:groupcontext="shape" transform="translate(989.324,-289.621)">		<title>Sheet.180</title>		<path d="M-0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L27 367.5 A3.00007 3.00007 -180 0 0 30 364.5 L30 349.5 A3.00007					 3.00007 -180 0 0 27 346.5 L3 346.5 A3.00007 3.00007 -180 0 0 -0 349.5 L0 364.5 Z" class="st11"></path>	</g>	<g id="shape181-336" v:mid="181" v:groupcontext="shape" transform="translate(998.324,-283.621)">		<title>Sheet.181</title>		<path d="M0 367.5 L12 367.5" class="st13"></path>	</g>	<g id="shape182-339" v:mid="182" v:groupcontext="shape" transform="translate(1371.82,77.8788) rotate(90)">		<title>Sheet.182</title>		<path d="M0 367.5 L6 367.5" class="st13"></path>	</g>	<g id="shape183-342" v:mid="183" v:groupcontext="shape" transform="translate(978.079,-298.314)">		<title>Sheet.183</title>		<path d="M0 367.5 L11.25 367.5" class="st6"></path>	</g>	<g id="shape184-345" v:mid="184" v:groupcontext="shape" transform="translate(888.672,-270.189)">		<title>Sheet.184</title>		<desc>Waylandsink</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="339.375" width="90.01" height="56.25"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L87 367.5 A3.00007 3.00007 -180 0 0 90 364.5 L90 314.25 A3.00007					 3.00007 -180 0 0 87 311.25 L3 311.25 A3.00007 3.00007 -180 0 0 -0 314.25 L0 364.5 Z" class="st5"></path>		<text x="15.48" y="342.97" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>Waylandsink</text>		</g>	<g id="group187-348" transform="translate(874.78,-187.925)" v:mid="187" v:groupcontext="group">		<title>Sheet.187</title>		<g id="shape188-349" v:mid="188" v:groupcontext="shape" transform="translate(0,-2.99178)">			<title>Sheet.188</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape189-352" v:mid="189" v:groupcontext="shape" transform="translate(8.60696,1.13687E-13)">			<title>Sheet.189</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape191-354" v:mid="191" v:groupcontext="shape" transform="translate(978.079,-190.917)">		<title>Sheet.191</title>		<path d="M0 367.5 L12 367.5" class="st6"></path>	</g>	<g id="shape192-357" v:mid="192" v:groupcontext="shape" transform="translate(888.672,-162.792)">		<title>Sheet.192</title>		<desc>filesink</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="339.375" width="90.01" height="56.25"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L87 367.5 A3.00007 3.00007 -180 0 0 90 364.5 L90 314.25 A3.00007					 3.00007 -180 0 0 87 311.25 L3 311.25 A3.00007 3.00007 -180 0 0 -0 314.25 L0 364.5 Z" class="st5"></path>		<text x="28.31" y="342.97" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>filesink</text>		</g>	<g id="shape194-360" v:mid="194" v:groupcontext="shape" transform="translate(990.824,-174.042)">		<title>Sheet.194</title>		<path d="M18.56 333.75 L3.37 333.75 C1.51 333.75 0 335.26 0 337.13 L0 364.13 C0 365.99 1.51 367.5 3.37 367.5 L23.62 367.5					 C25.49 367.5 27 365.99 27 364.13 L27 342.19 L18.56 333.75 Z" class="st11"></path>	</g>	<g id="shape195-362" v:mid="195" v:groupcontext="shape" transform="translate(1007.7,-197.667)">		<title>Sheet.195</title>		<path d="M0 357.38 L0 364.13 C0 365.99 1.51 367.5 3.37 367.5 L10.12 367.5 L0 357.38 Z" class="st12"></path>		<path d="M0 357.38 L0 364.13 C0 365.99 1.51 367.5 3.37 367.5 L10.12 367.5" class="st13"></path>	</g>	<g id="shape196-365" v:mid="196" v:groupcontext="shape" transform="translate(1000.95,-182.479)">		<title>Sheet.196</title>		<path d="M0 357.38 L8.44 362.44 L0 367.5 L0 357.38 Z" class="st11"></path>	</g>	<g id="group198-367" transform="translate(874.78,-80.5272)" v:mid="198" v:groupcontext="group">		<title>Sheet.198</title>		<g id="shape199-368" v:mid="199" v:groupcontext="shape" transform="translate(0,-2.99181)">			<title>Sheet.199</title>			<path d="M0 367.5 L9.48 367.5" class="st6"></path>		</g>		<g id="shape200-371" v:mid="200" v:groupcontext="shape" transform="translate(8.60696,1.13687E-13)">			<title>Sheet.200</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="shape202-373" v:mid="202" v:groupcontext="shape" transform="translate(978.079,-83.519)">		<title>Sheet.202</title>		<path d="M0 367.5 L11.25 367.5" class="st6"></path>	</g>	<g id="shape203-376" v:mid="203" v:groupcontext="shape" transform="translate(888.672,-55.394)">		<title>Sheet.203</title>		<desc>qtirtspbin</desc>		<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>		<v:textrect cx="45" cy="339.375" width="90.01" height="56.25"></v:textrect>		<path d="M0 364.5 A3.00007 3.00007 -180 0 0 3 367.5 L87 367.5 A3.00007 3.00007 -180 0 0 90 364.5 L90 314.25 A3.00007					 3.00007 -180 0 0 87 311.25 L3 311.25 A3.00007 3.00007 -180 0 0 -0 314.25 L0 364.5 Z" class="st5"></path>		<text x="22.77" y="342.97" class="st4" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>qtirtspbin</text>		</g>	<g id="shape205-379" v:mid="205" v:groupcontext="shape" transform="translate(1001.32,-80.6674)">		<title>Sheet.205</title>		<path d="M0 359.47 C0 358.85 0.51 358.34 1.13 358.34 C1.33 358.34 1.54 358.4 1.71 358.51 L7.21 361.88 C7.74 362.21 7.9					 362.9 7.58 363.43 C7.49 363.58 7.36 363.71 7.21 363.8 L1.71 367.18 C1.18 367.5 0.49 367.33 0.17 366.8 C0.06					 366.63 0 366.42 0 366.22 L0 359.47 Z" class="st11"></path>	</g>	<g id="shape206-381" v:mid="206" v:groupcontext="shape" transform="translate(996.824,-68.8257)">		<title>Sheet.206</title>		<path d="M0 367.5 L15 367.5 L0 367.5 Z" class="st12"></path>		<path d="M0 367.5 L15 367.5" class="st13"></path>	</g>	<g id="shape207-384" v:mid="207" v:groupcontext="shape" transform="translate(989.324,-74.8257)">		<title>Sheet.207</title>		<path d="M-0 366 A1.50003 1.50003 -180 0 0 1.5 367.5 L28.5 367.5 A1.50003 1.50003 -180 0 0 30 366 L30 348 A1.50003 1.50003					 -180 0 0 28.5 346.5 L1.5 346.5 A1.50003 1.50003 -180 0 0 -0 348 L0 366 Z" class="st11"></path>	</g>	<g id="group208-386" transform="translate(119.06,-305.786)" v:mid="208" v:groupcontext="group">		<title>Sheet.208</title>		<g id="shape209-387" v:mid="209" v:groupcontext="shape" transform="translate(0,-2.99179)">			<title>Sheet.209</title>			<path d="M0 367.5 L323.59 367.5" class="st6"></path>		</g>		<g id="shape210-390" v:mid="210" v:groupcontext="shape" transform="translate(322.717,0)">			<title>Sheet.210</title>			<path d="M0 367.5 L5.18 364.51 L0 361.52 L0 367.5 Z" class="st7"></path>		</g>	</g>	<g id="group211-392" transform="translate(909.199,-12.0674)" v:mid="211" v:groupcontext="group">		<title>Sheet.211</title>		<g id="shape153-393" v:mid="153" v:groupcontext="shape" transform="translate(15.1882,0)">			<title>Sheet.153</title>			<desc>Qualcomm</desc>			<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>			<v:textrect cx="27.9404" cy="361.2" width="55.89" height="12.6"></v:textrect>			<rect x="0" y="354.9" width="55.8807" height="12.6" class="st9"></rect>			<text x="0" y="364.35" class="st10" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>Qualcomm  </text>			</g>		<g id="shape154-396" v:mid="154" v:groupcontext="shape" transform="translate(1.26898E-13,-0.218627)">			<title>Sheet.154</title>			<path d="M0 366 A1.50003 1.50003 -180 0 0 1.5 367.5 L10.5 367.5 A1.50003 1.50003 -180 0 0 12 366 L12 357 A1.50003						 1.50003 -180 0 0 10.5 355.5 L1.5 355.5 A1.50003 1.50003 -180 0 0 0 357 L0 366 Z" class="st3"></path>		</g>		<g id="shape156-398" v:mid="156" v:groupcontext="shape" transform="translate(89.1246,0)">			<title>Sheet.156</title>			<desc>开源</desc>			<v:textblock v:margins="rect(0,0,0,0)"></v:textblock>			<v:textrect cx="10.5" cy="361.2" width="21" height="12.6"></v:textrect>			<rect x="0" y="354.9" width="21" height="12.6" class="st9"></rect>			<text x="0" y="364.69" class="st14" v:langid="1033"><v:paragraph></v:paragraph><v:tablist></v:tablist>开源</text>			</g>		<g id="shape157-401" v:mid="157" v:groupcontext="shape" transform="translate(73.9363,-0.218627)">			<title>Sheet.157</title>			<path d="M0 366 A1.50003 1.50003 -180 0 0 1.5 367.5 L10.5 367.5 A1.50003 1.50003 -180 0 0 12 366 L12 357 A1.50003						 1.50003 -180 0 0 10.5 355.5 L1.5 355.5 A1.50003 1.50003 -180 0 0 0 357 L0 366 Z" class="st5"></path>		</g>	</g></g>
</svg>

## 示例模型和标签文件

| Runtime | 模型文件 | 标签文件 |
| --- | --- | --- |
| Qualcomm Neural Processing SDK | <var class="keyword varname">inceptionv3.dlc</var> | <var class="keyword varname">classification.json</var> |
| LiteRT | <var class="keyword varname">inception_v3_quantized.tflite</var> | <var class="keyword varname">classification.json</var> |
| Qualcomm AI Engine Direct | <var class="keyword varname">inception_v3_quantized.bin</var> | <var class="keyword varname">classification.json</var> |
|  |  |  |
|  |  |  |

## 在目标设备上运行应用程序

示例应用程序使用 /etc/configs/config\_classification.json文件读取输入参数。

要创建自己的 config JSON 文件，请使用 [config_classification.json](https://git.codelinaro.org/clo/le/platform/vendor/qcom-opensource/gst-plugins-qti-oss/-/blob/imsdk.lnx.2.0.0.r2-rel/gst-sample-apps/gst-ai-classification/config_classification.json?ref_type=heads) 作为参考。

1. 确保您已完成[前提条件](https://docs.qualcomm.com/doc/80-70022-50SC/topic/download-model-and-label-files.html)。
2. 根据模型、输入流和其他属性更新 config JSON 文件。关于更多详细信息，请参阅 [Config JSON 字段说明](https://docs.qualcomm.com/doc/80-70022-50SC/topic/gst-ai-classification.html#gst-ai-classification__section_lcw_2zj_32c)。
3. 使用以下格式的 config\_classification.json文件。 

        { 
          "file-path": "<path-to-input-video>",
          "ml-framework": "<snpe or tflite or qnn framework>",
          "model": "<path-to-model-file>",
          "labels": "<path-to-label-file>",
          "threshold": <post processsing threshold, integer value from 1 to 100>,
          "runtime": "<dsp, gpu, cpu runtime>",
          "output-tye": "waylandsink or filesink or rtspsink"
        }Copy to clipboard

例如，使用文件输入、LiteRT 模型、DSP runtime 和自定义阈值来运行应用程序：

        {
        "file-path": "/etc/media/video.mp4", 
        "ml-framework": "tflite",
        "model": "/etc/models/inception_v3_quantized.tflite", 
        "labels": "/etc/labels/classification.json", 
        "threshold": 40,
        "runtime": "dsp",
        "output-type": "waylandsink"
        }Copy to clipboard
4. 运行 gst-ai-classification
                        应用程序：

        gst-ai-classification --config-file=/etc/configs/config_classification.jsonCopy to clipboard

Note: 对于 USB 摄像头输入，在配置文件中设置
                            `video-format`、`resolution` 和
                            `framerate` 参数以匹配摄像头的功能。要查看摄像头功能，请参阅[配置 USB 摄像头](https://docs.qualcomm.com/bundle/publicresource/topics/80-70022-8/usb.html#configure-usb-camera)。
5. 要显示可用的帮助选项，请在 SSH shell 中运行以下命令：

        gst-ai-classification -hCopy to clipboard
6. 要停止用例，请按 CTRL +
                            C。

## 预期输出

经过分类的目标显示在本地显示器上。

Figure : gst-ai-classification 应用程序的预期输出
                
                ![](data:image/png;base64,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)

## Pipeline 流

下表列出了目标分类 pipeline 中使用的插件：

| 插件 | 说明 |
| --- | --- |
| 摄像头源：[qtiqmmfsrc](https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtiqmmfsrc.html) | <ul class="ul" id="gst-ai-classification__ul_zyl_gj1_mcc"><br>                                    <li class="li">从摄像头采集实时流。</li><br><br>                                    <li class="li">使用 tee 拆分流进行推理。</li><br><br>                                </ul> |
| 文件源：filesrc | <ul class="ul" id="gst-ai-classification__ul_z1z_x4f_w1c"><br>                                    <li class="li">使用 filesrc 采集视频流，然后使用 qtdemux 对视频流进行解复用。</li><br><br>                                    <li class="li">使用 tee 拆分流进行推理。</li><br><br>                                </ul> |
| RTSP 源：rtspsrc | <ul class="ul" id="gst-ai-classification__ul_vsj_2r4_tbc"><br>                                    <li class="li">使用 rtspsrc 采集 RTSP 流，然后使用 rtph264depay 进行视频提取。</li><br><br>                                    <li class="li">使用 tee 拆分流进行推理。</li><br><br>                                </ul> |
| USB 摄像头源：v4l2src | <ul class="ul" id="gst-ai-classification__ul_n5t_fvw_ngc"><br>                                    <li class="li">从 USB 摄像头采集实时流。</li><br><br>                                    <li class="li">使用 tee 拆分流进行推理。</li><br><br>                                </ul> |
| h264parse | 渲染 H.264 视频。 |
| [v4l2h264dec](https://docs.qualcomm.com/doc/80-70022-50SC/topic/v4l2h264dec.html) | 解码视频 |
| [qtimlvconverter](https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtimlvconverter.html) | <ol class="ol" id="gst-ai-classification__ol_j34_ddg_q1c"><br>                                    <li class="li">在其接收端口上接收视频流。</li><br><br>                                    <li class="li">对流数据执行以下预处理。当模型需要浮点值作为输入时，会执行此预处理。<ol class="ol" type="a" id="gst-ai-classification__ol_m5z_cpr_lbc"><br>                                            <li class="li">颜色转换</li><br><br>                                            <li class="li">缩放（放大或缩小）</li><br><br>                                            <li class="li">归一化</li><br><br>                                        </ol><br></li><br><br>                                    <li class="li">将预处理的视频流转换为其发送端口上的张量数据流。 </li><br><br>                                </ol><br><br>                                <br>张量数据流用于 pipeline 后期的推理。 |
| 推理插件：<ul class="ul" id="gst-ai-classification__ul_k3l_35k_pdc"><br>                                    <li class="li"><a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtimlsnpe.html">qtimlsnpe</a></li><br><br>                                    <li class="li"><a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtimltflite.html">qtimltflite</a></li><br><br>                                    <li class="li"><a href="https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtimlqnn.html">qtimlqnn</a></li><br><br>                                </ul> | <ol class="ol" id="gst-ai-classification__ol_l2x_zjq_nbc"><br>                                    <li class="li">推理 runtime 在其接收端口上接收到张量数据后，会运行推理。</li><br><br>                                    <li class="li">生成一个张量数据流，并在其发送端口上显示推理结果。</li><br><br>                                </ol> |
| qtimlpostprocess | 处理来自任何分类模型的推理结果。<ol class="ol" id="gst-ai-classification__ol_ol3_dky_kbc"><br>                                    <li class="li">将阈值应用于所选结果数。 </li><br><br>                                    <li class="li">加载 MobileNet-softmax 后处理模块。 </li><br><br>                                    <li class="li">将结果生成为带有分类标签的视频帧。</li><br><br>                                    <li class="li">将这些处理后的结果发送到 qtivcomposer 的接收端口。</li><br><br>                                </ol> |
| [qtivcomposer](https://docs.qualcomm.com/doc/80-70022-50SC/topic/qtivcomposer.html) | <ol class="ol" id="gst-ai-classification__ol_dmb_2vr_lbc"><br>                                    <li class="li">将接收端口获取的内容组成帧。</li><br><br>                                    <li class="li">将包含这些组合帧的 GStreamer 缓存推送到其发送端口。</li><br><br>                                </ol> |
| [Waylandsink](https://docs.qualcomm.com/doc/80-70022-50SC/topic/waylandsink.html) | <ol class="ol" id="gst-ai-classification__ol_kjr_fvr_lbc"><br>                                    <li class="li">Waylandsink 将其接收端口上接收的视频流提交给 Weston。</li><br><br>                                    <li class="li">Weston 在本地显示器上渲染视频流。</li><br><br>                                </ol> |
| filesink | 获取其接收端口上接收的视频流，并且将其另存为 H.264 编码的 MP4 文件。 |
| qtirtspbin | <ol class="ol" id="gst-ai-classification__ol_lgz_svw_ngc"><br>                                    <li class="li">用作网络接收器。</li><br><br>                                    <li class="li">将 UDP 数据包传输到网络。</li><br><br>                                </ol> |

## Config JSON 字段说明

可用于配置 JSON 文件和运行用例的不同参数如下：

| 字段 | 值/描述 |
| :--- | :--- |
| **ml-framework** | 请使用以下模型之一：<ul class="ul" id="gst-ai-classification__ul_prm_gck_32c"><br>                                    <li class="li"><code class="ph codeph">snpe</code>：Qualcomm Neural Processing SDK</li><br><br>                                    <li class="li"><code class="ph codeph">tflite</code>：LiteRT</li><br><br>                                    <li class="li"><code class="ph codeph">qnn</code>：Qualcomm AI Engine direct</li><br><br>                                </ul> |
| **runtime** | 请使用以下 runtime 之一：<ul class="ul" id="gst-ai-classification__ul_mry_nck_32c"><br>                                    <li class="li"><code class="ph codeph">cpu</code></li><br><br>                                    <li class="li"><code class="ph codeph">gpu</code></li><br><br>                                    <li class="li"><code class="ph codeph">dsp</code></li><br><br>                                </ul> |
| **output-ip-address** | 输出服务器 IP 地址。 |
| **port** | 输出服务器端口。 |
| **USB camera video-format and resolution** | 使用以下视频格式之一：<br><ul class="ul" id="gst-ai-classification__ul_rty_hww_ngc"><br>                                    <li class="li"><code class="ph codeph">nv12</code></li><br><br>                                    <li class="li"><code class="ph codeph">yuy2</code></li><br><br>                                    <li class="li"><code class="ph codeph">mjpeg</code></li><br><br>                                </ul><br><br>                                <br>使用以下分辨率参数：<br><ul class="ul" id="gst-ai-classification__ul_dfz_lww_ngc"><br>                                    <li class="li"><code class="ph codeph">width</code>：输入 USB 摄像头源分辨率宽度。</li><br><br>                                    <li class="li"><code class="ph codeph">height</code>：输入 USB 摄像头源分辨率高度。</li><br><br>                                    <li class="li"><code class="ph codeph">framerate</code>：输入 USB 摄像头源帧率。</li><br><br>                                </ul> |
| **output-file** | 输出文件的名称。默认输出文件为 `output_classification.mp4`。 |
| **output-type** | 使用以下输出类型之一：<br><ul class="ul" id="gst-ai-classification__ul_jx3_www_ngc"><br>                                    <li class="li"><code class="ph codeph">waylandsink</code>：在 Wayland 上显示输出。</li><br><br>                                    <li class="li"><code class="ph codeph">filesink</code>：将输出存储在文件中。</li><br><br>                                    <li class="li"><code class="ph codeph">rtspsink</code>：在服务器上进行流输出。</li><br><br>                                </ul> |
| **Input source** | 请使用以下输入源之一：<ul class="ul" id="gst-ai-classification__ul_xym_rck_32c"><br>                                    <li class="li"><code class="ph codeph">camera</code>：主 (0) 或辅助 (1)。</li><br><br>                                    <li class="li"><code class="ph codeph">file-path</code>：视频文件的目录路径。</li><br><br>                                    <li class="li"><code class="ph codeph">rtsp-ip-port</code>：RTSP 流的地址：<u class="ph u"><var class="keyword varname">rtsp://&lt;ip&gt;:&lt;port&gt;/&lt;stream&gt;</var></u>。</li><br><br>                                    <li class="li"><code class="ph codeph">usb-camera</code>：将 <code class="ph codeph">enable-usb-camera</code> 设置为 TRUE 以使用 USB 摄像头作为输入源。</li><br><br>                                </ul> |

## 相关信息

- [使用 LiteRT 进行图像分类和显示](https://docs.qualcomm.com/doc/80-70022-50SC/topic/single-camera-stream-with-image-classification-and-display-with-litert.html)
- [使用 LiteRT 进行图像分类和编码](https://docs.qualcomm.com/doc/80-70022-50SC/topic/single-camera-stream-with-image-classification-and-encode.html)
- [使用 Neural Processing SDK 进行图像分类和显示](https://docs.qualcomm.com/doc/80-70022-50SC/topic/single-camera-stream-with-image-classification-and-display-with-mobilenet-v1.html)
- [使用 Neural Processing SDK 进行图像分类和编码](https://docs.qualcomm.com/doc/80-70022-50SC/topic/single-camera-stream-with-image-classification-and-encode-with-mobilenet-v1.html)

**Parent Topic:** [运行 AI/ML 示例应用程序](https://docs.qualcomm.com/doc/80-70022-50SC/topic/ai-ml-sample-applications.html)

Last Published: Nov 05, 2025

[Previous Topic
前提条件](https://docs.qualcomm.com/bundle/publicresource/80-70022-50SC/topics/download-model-and-label-files.md) [Next Topic
目标检测](https://docs.qualcomm.com/bundle/publicresource/80-70022-50SC/topics/gst-ai-object-detection.md)