deepstream 札记(3)----插件介绍,小例子介绍,论坛地址

原文
1、首先时钟调整到最佳状态

sudo nvpmodel -m 0 
sudo jetson_clocks

2、运行参考应用程序使用

deepstream-app -c <path_to_config_file>

For deb installation, you can find sample configuration files under /opt/nvidia/deepstream/deepstream-4.0/samples directory.
Enter this command to see application usage:
$ deepstream-app --help
3、dGPU [discrete GPU]指的是英伟达显卡那些安装再x86_64上的分离式的GPU
4、Plugins
1)gst-dsexample—怎么开发,插入自己的组件
2)gst-nvmsgconv—转换元数据格式
3)gst-nvmsgbroker—sending data to the server
4)gst-nvinfer—调用tensorRT为了推理
5)gst-nvmultistreamtiler–辅助显示,比如一个屏幕显示四个
6)gst-nvmsgbroker—用于传输
7)gst-nveglglessink—渲染


1、source—Decoder—preprocess[resize,颜色转换,归一化]【用到cuda的加速】—TensorRT[网络优化]—poseprocess【bodering box等等】—OSD/Display Msg broker
多路的话比如内存优化,模型共享问题,让decoder,gpu跑满
2、sample_apps/deepstream-app 改config文件就能完成换模型
3、metadata—保存每一个模块输出的结果,每个gst连接的纽带,在gst-nvstreammux初始化,metadata附着在buffer上
metadata结构:
1)NvDsbatchMeta描述整个batch的情况【一个batch好几帧图像】
2)NvDsFrameMeta描述每一帧
3)NvDsDisplayMeta 就是描述几个人,几辆车,左上角那个
NvDsObjectMeta描述框出的人啊,车啊
4)NvDsClassifierMeta 描述object比如车的颜色,种类啊
metadata可以自定义的deepstream-user-metadata-test
4、deepstream-test3就是多路示例,test5是怎么跟微软的云做交互
1)deepstream-app是把大部分都串起来了
2)dewarper-test 展示camer还原的
3)image-decode jpeg图片解码的例子
4)infer-tensor 不一定要拿网络最后的输出,可以拿任意一个layer的输出
5)nvof-test 光流的例子
6)perf-demo 输入时video,关于类似花分类那个
7)segmentation 分割例子 Unet网络

sample_apps
├── deepstream-app
├      端到端示例演示了4级联神经网络(1个一级检测器和3个二级分类器)的多相机流,并显示平铺输出。
├── deepstream-dewarper-test
├      演示单个或多个360度摄像机流的扭曲功能。从CSV文件读取相机校准参数,
├      并在显示屏上渲染过道和斑点表面。
├── deepstream-gst-metadata-test
├      演示如何在DeepStream管道中的Gst-nvstreammux插件之前设置元数据,
├      以及如何在Gst-nvstreammux之后访问元数据。
├── deepstream-image-decode-test
├      建立在deepstream-test3上,以演示图像解码而不是视频。本示例使用自定义解码箱,
├      因此可以将MJPEG编解码器用作输入。
├── deepstream-infer-tensor-meta-test
├      演示如何将nvinfer张量输出作为元数据传递和访问。
├── deepstream-nvof-test
├      演示单个或多个流的光流功能。本示例使用两个GStreamer插件(Gst-nvof和Gst-nvofvisual)。
├      Gst-nvof元素生成MV(运动矢量)数据并将其作为用户元数据附加。Gst-nvofvisual元素使用
├      预定义的色轮矩阵可视化MV数据。
├── deepstream-perf-demo
├      对目录中的所有流顺序执行单通道级联推理和对象跟踪。
├── deepstream-segmentation-test
├      演示使用语义或工业神经网络对多流视频或图像进行分割,并将输出呈现到显示器。
├── deepstream-test1
├      有关如何对单个H.264流使用DeepStream元素的简单示例:filesrc→decode解码→nvstreammux→nvinfer
├   (主检测器)→nvosd→renderer渲染器。
├── deepstream-test2
├      简单的应用程序,建立在test1之上,显示额外的属性,如跟踪和二级分类属性。
├── deepstream-test3
├      基于deepstream-test1(简单测试应用程序1)构建,以演示如何:
├     •在管道中使用多个来源
├     •使用uridecodebin接受任何类型的输入(例如RTSP /文件),任何GStreamer支持的容器格式以及任何编解码器
├     •配置Gst-nvstreammux生成一批帧并推断出这些帧以提高资源利用率
├     •提取流元数据,其中包含有关批处理缓冲区中的帧的有用信息
├── deepstream-test4
├     基于deepstream-test1 构建单个H.264流:filesrc,decode,nvstreammux,nvinfer,nvosd, renderer演示如何:
├     •在管道中使用Gst-nvmsgconv和Gst-nvmsgbroker插件
├     •创建NVDS_META_EVENT_MSG类型的元数据并将其附加到缓冲区
├     •将 NVDS_META_EVENT_MSG用于不同类型的对象,例如车辆和人
├     •实现元数据通过extMsg字段扩展的“复制”和“免费”功能
├── deepstream-test5
├     建立在deepstream-app之上。展示:
├     •在管道中将Gst-nvmsgconv和Gst-nvmsgbroker插件用于多流
├     •如何从配置文件中将Gst-nvmsgbroker插件配置为接收器插件(适用于KAFKA,Azure等)
├     •如何处理来自RTSP服务器或摄像机的RTCP发送者报告,以及如何将Gst Buffer PTS转换为UTC时间戳。
├    欲了解更多详情,请参阅该RTCP发送者报告回调函数test5_rtcp_sender_report_callback注册和使用的  deepstream_test5_app_main.c。
├     使用rtpmanager元素的“ handle-sync”信号进行GStreamer回调注册的过程记录在apps-common /src / deepstream_source_bin.c中。
├──deepstream-user-metadata-test
├    演示如何向DeepStream的任何组件中添加自定义或用户特定的元数据。测试代码将一个填充有用户
├    数据的16字节数组附加到所选组件。数据在另一个组件中检索。
————————————————
版权声明:本文为CSDN博主「ZONG_XP」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zong596568821xp/article/details/103919762

5、就是将config替换成yolo的config,不会去论坛地址提问

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章