2555| 0
|
[官方资料] Jetson Nano 2GB 系列文章(19):Utils 的 videoOutput 工具 |
上一篇文章为大家深入地讲解了 videoSource() 这个非常强大的输入源处理模块,本文的重点将聚焦在 videoOutput() 这个输出标的处理模块。 videoOutput() 与 videoSource() 几乎具备一致的特性。这里直接列出了 videoOutput() 所支持的输出种类与媒体格式:
2.支持 4 种视频输出格式:MKV、MP4、AVI 与 FLV 3.支持 5 种媒体输出格式:H.264、H.265、VP8、VP9 与 MJPEG 4.支持 4 种图像格式:JPG、PNG、TGA 与 BMP 5.自动根据数据源,调用合适的 NVDEC 解码功能 6.调用 CUDA 核处理大部分基础图像处理任务 我们在前面已经熟悉了将结果输出到显示器上的方式,接下来就来体验其他几种输出方式,这对于将来开发边缘应用是非常有帮助的。要知道绝大部分的边缘计算场景,都是不能在设备上直接连上显示器的,那么此时如何观看该设备上所监控到的视频内容呢?通常就是将输入源所获取的数据,做完深度学习推理识别之后的结果,做以下两种处理方式:
至于使用哪种方式,必须根据实际场景而定。而本文的重点就是带着大家,对这两种用法进行试验,并借此学会这些使用方法。 这个 6 行代码,让人看起来非常轻松,却又支持了绝大部分常用的输入、输出形态与格式。 接下来的重点,就是将代码内的 INPUT 与 OUTPUT 做有效的置换,试试以下几种组合状况: 1.从 CSI 摄像头读入,然后输出存放至 csi.mp4 视频文件,这个相对直观,因此不多做说明。在观察 jetson-stats 时,若输出为视频文件,NVENC 编码器的功能就启动了。 2.用 VisionWorks 的范例视频 signs.avi 作为输入,输出成个别帧图像到 OUTPUT 目录里。视频长度为 22 秒,输出后生成 44 张图像,就是每 0.5 秒生成一张图像,不过实际生成的数量并不一定,与其他相关参数也有关。 3.这个组合是本文的重点实验,因为 RTP 视频流转向的实用性非常高,操作较为复杂,必须在发送端与接收端之间进行配合,因此需要花点时间说明并演示。
执行步骤:
(2) 用 VLC 播放软件,适用于 Windows、Mac、Ubuntu 操作系统: 这时候,如果你打开 Jetson Nano 2GB 的 jetson-stats 监控软件,也会看到左下角“NVDEC”处于执行的状态。 如果我们这时候将 “物件检测” 的推理识别功能打开的话,会出现怎样的结果呢?先将前面代码中的 “#” 部分取消,开启对象检测的功能,执行一次看看就知道,是否如下图一样会出现检测的结果。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed