项目地址:https://github.com/sherlockchou86/video_pipe_c

往期文章:https://www.cnblogs.com/xiaozhi_5638/p/16857995.html

11月有3个更新,有兴趣的扫码加群交流。

支持推理结果序列化(vp_message_broker插件)

基于creal第三方库,对pipeline中的推理结果进行序列化输出。 序列化格式支持json和xml,输出位置支持Console、File、Socket(UDP)以及Kafka。

针对普通检测目标,序列化属性包括:

 1 通道号channel_index
2 帧序列号frame_index
3 原始帧宽度width
4 原始帧高度height
5 原始帧fps
6 目标集合 [
7 目标一级推理检测ID primary_class_id
8 目标一级推理标签 primary_label
9 目标一级推理置信度 primary_score
10 目标位置x
11 目标位置y
12 目标宽度width
13 目标高度height
14 目标二级推理分类ID集合 secondary_class_ids
15 目标二级推理分类标签集合 secondary_labels
16 目标二级推理分类置信度集合 secondary_scores
17 目标包含子目标 sub_targets集合 [
18 子目标位置x
19 子目标位置y
20 子目标宽度width
21 子目标高度height
22 子目标检测ID class_id
23 子目标检测标签 label
24 子目标检测置信度 score
25 子目标附加数据 attachments
26 ]
27 目标特征 embeddings
28 目标跟踪ID track_id
29 ]

适配jetson嵌入式设备(或其他arm64平台)

代码在jetson tx2上调通运行,推理后端支持opencv::dnn 和 tenssorrt(其他硬件平台使用对应的推理SDK),下面是代码运行在jetson tx2上的效果:

新增15sample说明

1-1-1_sample ↓

1个视频源输入,1种推理任务,1个输出。

1-1-N_sample ↓

1个视频源输入,1种推理任务,2个输出。

1-N-N_sample ↓

1个视频源输入,然后拆分成2个分支、2种推理任务,最后各自1个输出。

N-1-N_sample ↓

2个视频源输入,然后合并成1个分支、1种推理任务,最后拆开各自有多个输出。

N_N_sample ↓

各个pipeline独立运行互不干扰,每个pipe都是1-1-1结构(也可以是其他结构)。

paddle_infer_sample ↓

基于paddle推理后端的ocr文字识别。

trt_infer_sample ↓

基于tenssorrt推理后端的车辆检测。

src_des_sample ↓

演示SRC节点和DES节点如何工作,3种SRC节点(FILE,RTSP,UDP)和3种DES节点(SCREEN,RTMP,FAKE)。

face_tracking_sample ↓

演示基于vp_tracker_node的人脸跟踪。

vehicle_tracking_sample ↓

演示基于vp_tracker_node的车辆跟踪。

message_broker_sample ↓

演示推理结果序列化(xml->socket)

message_broker_sample2 ↓

演示推理结果序列化(json->console)

interaction_with_pipe_sample ↓

演示如何控制pipelien,比如开始、暂停某个通道。

record_sample ↓

演示录像功能。

vp_logger_sample ↓

演示日志接口使用。

VideoPipe可视化视频结构化框架更新总结(2022-12-9)的更多相关文章

  1. VideoPipe可视化视频结构化框架开源了!

    完成多路视频并行接入.解码.多级推理.结构化数据分析.上报.编码推流等过程,插件式/pipe式编程风格,功能上类似英伟达的deepstream和华为的mxvision,但底层核心不依赖复杂难懂的gst ...

  2. VideoPipe可视化视频结构化框架新增功能详解(2022-11-4)

    VideoPipe从国庆节上线源代码到现在经历过了一个月时间,期间吸引了若干小伙伴的参与,现将本阶段新增内容总结如下,有兴趣的朋友可以加微信拉群交流. 项目地址:https://github.com/ ...

  3. VP视频结构化框架

    完成多路视频并行接入.解码.多级推理.结构化数据分析.上报.编码推流等过程,插件式/pipe式编程风格,功能上类似英伟达的deepstream和华为的mxvision,但底层核心不依赖复杂难懂的gst ...

  4. 视频结构化 AI 推理流程

    「视频结构化」是一种 AI 落地的工程化实现,目的是把 AI 模型推理流程能够一般化.它输入视频,输出结构化数据,将结果给到业务系统去形成某些行业的解决方案. 换个角度,如果你想用摄像头来实现某些智能 ...

  5. [AI开发]基于DeepStream的视频结构化解决方案

    视频结构化的定义 利用深度学习技术实时分析视频中有价值的内容,并输出结构化数据.相比数据库中每条结构化数据记录,视频.图片.音频等属于非结构化数据,计算机程序不能直接识别非结构化数据,因此需要先将这些 ...

  6. [AI开发]视频结构化类应用的局限性

    算法不是通用的,基于深度学习的应用系统不但做不到通用,即使对于同一类业务场景,还需要为每个场景做定制.特殊处理,这样才能有可能到达实用标准.这种局限性在计算机视觉领域的应用中表现得尤其突出,本文介绍基 ...

  7. [AI开发]零代码分析视频结构化类应用结构设计

    视频结构化类应用涉及到的技术栈比较多,而且每种技术入门门槛都较高,比如视频接入存储.编解码.深度学习推理.rtmp流媒体等等.每个环节的水都非常深,单独拿出来可以写好几篇文章,如果没有个几年经验基本很 ...

  8. Spark如何与深度学习框架协作,处理非结构化数据

    随着大数据和AI业务的不断融合,大数据分析和处理过程中,通过深度学习技术对非结构化数据(如图片.音频.文本)进行大数据处理的业务场景越来越多.本文会介绍Spark如何与深度学习框架进行协同工作,在大数 ...

  9. seaborn线性关系数据可视化:时间线图|热图|结构化图表可视化

    一.线性关系数据可视化lmplot( ) 表示对所统计的数据做散点图,并拟合一个一元线性回归关系. lmplot(x, y, data, hue=None, col=None, row=None, p ...

  10. Android组件化框架设计与实践

    在目前移动互联网时代,每个 APP 就是流量入口,与过去 PC Web 浏览器时代不同的是,APP 的体验与迭代速度影响着用户的粘性,这同时也对从事移动开发人员提出更高要求,进而移动端框架也层出不穷. ...

随机推荐

  1. Elasticsearch 架构解析与最佳实践

    文章转载自:https://mp.weixin.qq.com/s/7pWNsUYbM4NyubZO6M3P5g

  2. ATT&CK系列一 知识点总结

    一.环境搭建1.环境搭建测试2.信息收集二.漏洞利用3.漏洞搜索与利用4.后台Getshell上传技巧5.系统信息收集6.主机密码收集三.内网搜集7.内网--继续信息收集8.内网攻击姿势--信息泄露9 ...

  3. 监控平台SkyWalking9入门实践

    简便快速的完成对分布式系统的监控: 一.业务背景 微服务作为当前系统架构的主流选型,虽然可以应对复杂的业务场景,但是随着业务扩展,微服务架构本身的复杂度也会膨胀,对于一些核心的业务流程,其请求链路会涉 ...

  4. 货币转换I

    A=input() if A[0] in ['U','u']: RMB=(eval(A[3:]))*6.78 print("RMB{:.2f}".format(RMB)) else ...

  5. SpringBoot的starter到底是什么?

    前言 我们都知道,Spring的功能非常强大,但也有些弊端.比如:我们需要手动去配置大量的参数,没有默认值,需要我们管理大量的jar包和它们的依赖. 为了提升Spring项目的开发效率,简化一些配置, ...

  6. 垃圾回收机制GC

    垃圾回收机制GC 我们已经知道,name = 'leethon'这一赋值变量的操作,是将变量与数据值相绑定. 而数据值是存储到内存中的,有时变量会重新赋值即绑定其他数据值,而使得原本的数据值无法通过变 ...

  7. P7114 [NOIP2020] 字符串匹配 (字符串hash+树状数组)

    好多题解用的扩展KMP(没学过,所以不用这种方法). 我们按照题目要求记F(s)表示s串的权值,可以预处理出前缀权值(用于A)和后缀权值(用于C),枚举AB的长度i=2~n-1,不需要分开枚举,我们只 ...

  8. EFCore (二)之 跟踪实体

    核心 SaveChanges() "已分离"和"未改变"的实体,SaveChanges()忽略: "已添加"的实体,SaveChanges( ...

  9. CSAPP实验attacklab

    attacklab 实验报告和答案文件都在 https://github.com/thkkk/attacklab

  10. 构建Springboot项目、实现简单的输出功能、将项目打包成可以执行的JAR包(详细图解过程)

    1.构建SpringBoot项目 大致流程 1.新建工程 2.选择环境配置.jdk版本 3.选择 依赖(可省略.后续要手动在pom文件写) 4.项目名 1.1 图解建立过程 1.2 项目结构 友情提示 ...