一种基于边缘服务器的视频目标检测方法、设备及介质与流程

文档序号:33908086发布日期:2023-04-21 12:09阅读:102来源:国知局
一种基于边缘服务器的视频目标检测方法、设备及介质与流程

本说明书涉及目标检测,尤其涉及一种基于边缘服务器的视频目标检测方法、设备及介质。


背景技术:

1、在某些工业场景或者时效要求较高的应用场景中,部署在云服务器上的目标检测模型,由于数据传输的延迟、网络异常等原因往往无法满足实时性要求。然而,目标检测模型可直接部署在靠近数据采集端的边缘服务器,缩短视觉数据与检测结果在云端服务器和数据采集端的传输时间,保证视觉任务的实时性。

2、在视频目标检测领域,不仅模型的推理时间会严重影响视频流的延迟,视频ai应用程序中视频的前处理和模型输出的后处理也是影响视频流延迟的重要因素。目前,一般的视觉ai应用程序都是开发团队亲自开发部署,这样不仅耗费大量的人力时间,并且无法保证处理时间的实时性。


技术实现思路

1、本说明书一个或多个实施例提供了一种基于边缘服务器的视频目标检测方法、设备及介质,用于解决如下技术问题:一般的视觉ai应用程序都是开发团队亲自开发部署,这样不仅耗费大量的人力时间,并且无法保证处理时间的实时性。

2、本说明书一个或多个实施例采用下述技术方案:

3、本说明书一个或多个实施例提供一种基于边缘服务器的视频目标检测方法,其特征在于,所述方法包括:获取预先训练的目标检测最优模型和多路视频流数据,其中,所述视频流数据属于不同的输入源;在边缘服务器中,将所述目标检测最优模型转换为onnx模型,并将所述onnx模型转换为tensor rt引擎;根据预先构建的目标检测管道应用、所述tensor rt引擎以及预先构建的动态库,对所述多路视频流数据进行目标检测,得到目标检测结果,其中,所述目标检测管道应用用于将所述多路视频流数据转换为多个图像数据,以及将所述目标检测结果以视频流形式输出,所述动态库用于对输出结果进行后处理。

4、进一步地,获取预先训练的目标检测最优模型,具体包括:获取目标检测模型和目标检测数据集,其中,所述目标检测模型为yolox-tiny网络结构,所述目标检测数据集中包括标注完成的训练数据;使用所述目标检测数据集中所述标注完成的训练数据,对所述目标检测模型进行模型训练,得到所述目标检测最优模型。

5、进一步地,在边缘服务器中,将所述目标检测最优模型转换为onnx模型,并将所述onnx模型转换为tensor rt引擎,具体包括:在边缘服务器中,借助pytorch框架的指定函数,将所述最优目标检测模型转换为onnx模型;将所述onnx模型移植到配置有tensor rt库的边缘服务器中,通过所述tensor rt库中的指定工具,对所述onnx模型进行最优量化及转换,得到所述tensor rt引擎。

6、进一步地,根据预先构建的目标检测管道应用、所述tensor rt引擎以及预先构建的动态库,对所述多路视频流数据进行目标检测,得到目标检测结果之前,所述方法还包括:通过编程技术,对目标检测模型的输出特征图进行后处理操作,将所述后处理操作进行编译,构建动态库。

7、进一步地,对目标检测模型的输出特征图进行后处理操作,具体包括:获取目标检测模型输入图像的输入尺寸和模型检测过程中的卷积步长;根据所述输入尺寸和所述卷积步长,将所述目标检测模型的输出特征图中的目标框大小进行解码,得到目标框在所述输入图像中的原始尺寸,其中,所述原始尺寸在所述输入图像中的比例与所述输出特征图中的目标框在所述输出特征图中的比例相同;获取所述目标检测模型输出的多个目标框的目标框分数;将每个所述目标框分数与预设的分数阈值进行对比,将低于所述分数阈值的目标框进行过滤,得到符合要求的多个指定目标框;计算所述多个指定目标框中任意两个指定目标框之间的交并比,其中,所述交并比为两个指定目标框共同区域的面积与指定目标框面积的比值;通过预设算法,对所述交并比大于预设阈值的多个指定目标框进行合并,得到后处理结果。

8、进一步地,根据预先构建的目标检测管道应用、所述tensor rt引擎以及预先构建的动态库,对所述多路视频流数据进行目标检测,得到目标检测结果,具体包括:根据预先构建的目标检测管道应用,对所述多路视频流数据进行解码处理,得到处理后的多个图像数据;将所述多个图像数据,通过所述tensor rt引擎,进行检测,得到多个输出目标检测图像;通过所述动态库,对所述多个输出目标检测图像进行后处理,得到多个标注后的目标检测图像;根据预先构建的目标检测管道应用,将所述多个标注后的目标检测图像转化为视频流形式,得到目标检测结果。

9、进一步地,根据预先构建的目标检测管道应用,对所述多路视频流数据进行解码处理,得到处理后的多个图像数据,具体包括:确定所述多路视频流数据的输入源,根据预先构建的目标检测管道应用和每路视频流数据的输入源,建立与所述输入源对应的解码器插件;通过与所述输入源对应的解码器插件,对所述多路视频流数据进行解码处理,得到多路解码视频流数据;对所述多路解码视频流数据进行尺寸缩放和通道变换,得到处理后的多路解码视频流数据;通过指定插件,将所述处理后的多路解码视频流数据进行整合,得到一组解码视频流数据,以便于将所述解码视频流数据转换为图像数据。

10、进一步地,根据预先构建的目标检测管道应用,将所述多个标注后的目标检测图像转化为视频流形式,得到目标检测结果,具体包括:将所述多个标注后的目标检测图像,按照所述目标检测图像对应的视频流数据,分为多组,得到多组目标检测图像,其中,每组目标检测图像包括多个标注后的目标检测图像,且所述多个标注后的目标检测图像属于同一路视频流数据;将每组目标检测图像中的多个标注后的目标检测图像进行检测结果绘制,生成每组目标检测图像对应的标注目标检测视频流;将多路标注目标检测视频流作为目标检测结果。

11、本说明书一个或多个实施例提供一种基于边缘服务器的视频目标检测设备,包括:

12、至少一个处理器;以及,

13、与所述至少一个处理器通信连接的存储器;其中,

14、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:

15、获取预先训练的目标检测最优模型和多路视频流数据,其中,所述视频流数据属于不同的输入源;在边缘服务器中,将所述目标检测最优模型转换为onnx模型,并将所述onnx模型转换为tensor rt引擎;根据预先构建的目标检测管道应用、所述tensor rt引擎以及预先构建的动态库,对所述多路视频流数据进行目标检测,得到目标检测结果,其中,所述目标检测管道应用用于将所述多路视频流数据转换为多个图像数据,以及将所述目标检测结果以视频流形式输出,所述动态库用于对输出结果进行后处理。

16、本说明书一个或多个实施例提供的一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:

17、获取预先训练的目标检测最优模型和多路视频流数据,其中,所述视频流数据属于不同的输入源;在边缘服务器中,将所述目标检测最优模型转换为onnx模型,并将所述onnx模型转换为tensor rt引擎;根据预先构建的目标检测管道应用、所述tensor rt引擎以及预先构建的动态库,对所述多路视频流数据进行目标检测,得到目标检测结果,其中,所述目标检测管道应用用于将所述多路视频流数据转换为多个图像数据,以及将所述目标检测结果以视频流形式输出,所述动态库用于对输出结果进行后处理。

18、本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:通过上述技术方案,通过对目标检测模型在边缘服务器上的部署优化处理,实现了实时视频目标检测的功能,保证了视频目标检测任务的实时性和准确性,同时为开发团队提供一种开发高性能视频应用程序的实践方法,有效解决现有开发团队在视频应用程序的开发和部署上时间耗费过大的问题,使得开发团队减少在视频应用程序上的开发及部署时间。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1