音视频项目中的算法处理流程

背景

基于君正的ptz ipc

PTZ :在安防监控应用中是 Pan/Tilt/Zoom 的简写,代表云台全方位(左右/上下)移动及镜头变倍、变焦控制。

音视频项目流程

算法的处理流程

算法流程

IVS

在ivs中对接了SDK中的三个算法

  • move track———— 移动追踪
  • person detection——人型侦测
  • person track————人型追踪

base

算法的信息处理,选用了消息队列
将算法的种类、数据等,放在消息队列中进行处理
在这里插入图片描述
这里的处理不是很好,在进队列的时候,move和PD在结构体中使用的是单独的成员,PT成员使用的是更通用的方法,应将三种算法都用通用的方式进行定义,像最后三行。

event

再将队列传给事件处理中心event.c
在事件处理中心中获取消息队列中的信息,并进行对应的处理
moveDet
在这里插入图片描述
PD
在这里插入图片描述
PT
在这里插入图片描述
在进行算法的处理时,需要用到图片。
于是在事件处理中心中,要调用上层的function,上层是tuya的方案

这里使用的是回调函数。

为什么中间层调用上层函数要用回调?

一般在工作中,我们只在上层调下层的函数。如中间层调底层,上层调中间层。

当然可以底层调中间层,中间层调上层。运行不会出错,但是不合法。

算法相关的总体流程

音视频项目流程

在这里插入图片描述

  • frame source——视频源输出
  • IVS——————算法处理(这里用的是通道0 360p的码流)
    这里主要是一些init和tuya config配置,主要是开关、区域、灵敏度等
  • VENC——————视频编码
  • MQTT——————上传至TUYA服务器的协议

猜你喜欢

转载自blog.csdn.net/qq_28258885/article/details/114818539