首页> 中国专利> 基于区域划分的边缘协同目标检测方法及装置

基于区域划分的边缘协同目标检测方法及装置

摘要

本发明实施例提供一种基于区域划分的边缘协同目标检测方法及装置,该方法包括:将当前视频帧划分为多个区域;对当前视频帧的每个区域进行编码后发送到边缘端,以供所述边缘端对每个区域进行解码,根据解码后的每个区域进行目标检测。本发明实施例将当前视频帧划分为多个区域,实现在视频清晰度较高时,大大降低视频传输的网络延迟;此外,通过对每个区域独立进行编码和解码,实现将区域目标检测结果及时返回设备端,有效降低目标检测的延迟,提高目标检测的精度。

著录项

  • 公开/公告号CN112347875A

    专利类型发明专利

  • 公开/公告日2021-02-09

    原文格式PDF

  • 申请/专利权人 清华大学;

    申请/专利号CN202011156787.2

  • 发明设计人 杨铮;王需;赵毅;

    申请日2020-10-26

  • 分类号G06K9/00(20060101);H04N19/172(20140101);H04N19/42(20140101);H04N19/44(20140101);H04N19/70(20140101);

  • 代理机构11002 北京路浩知识产权代理有限公司;

  • 代理人陈新生

  • 地址 100084 北京市海淀区双清路30号清华大学

  • 入库时间 2023-06-19 09:51:02

说明书

技术领域

本发明涉及目标检测技术领域,尤其涉及一种基于区域划分的边缘协同目标检测方法及装置。

背景技术

在移动端进行实时目标检测已经成为诸如自主导航、增强现实和智能监控等应用的关键技术。理想的目标检测方法应该同时保证高精度和低延迟。高精度要求设备能够检测出视野中尽可能多的目标,低延迟保证设备能够快速进行自主决策。

受限于设备端自身计算能力和内存资源的不足,仅仅依靠设备端难以运行实时高精度的目标检测模型,而将计算任务上传到云端又无法满足低延迟的要求。边缘计算的发展使得计算资源有限的移动设备,如无人机、机器人或者智能手机等,能够通过边端协同的方法实现高精度、低延迟的目标检测。边缘端具有比设备端更为强大的计算能力,能够针对高清的视频内容部署更加复杂的目标检测模型实现高精度的目标检测。边缘端和设备端的在地理空间的临近性能够实现相较于云端更低的网络延迟。图1显示了基于边端协同的实时目标检测框架。

随着移动端设备硬件的发展,摄像头可以获取到更加高清的视频内容,更加高清的视频有利于实现更高精度的目标检测。但同时通过无线网络上传高清的视频意味着更高的网络传输时间,从而导致更长的延迟。随着延迟的增加,设备捕捉的画面已经发生了较大的变化,因此会导致更大的目标检测误差。因此要想利用边缘端进行实时高精度的目标检测,需要解决网络延迟带来的挑战。

发明内容

本发明实施例提供一种基于区域划分的边缘协同目标检测方法及装置,用以解决现有技术中使用边缘端对高清视频进行目标检测网络延迟大,导致目标检测不准确的缺陷,通过降低网络延迟,提高目标检测的准确性。

本发明实施例提供一种基于区域划分的边缘协同目标检测方法,包括:

将当前视频帧划分为多个区域;

对当前视频帧的每个区域进行编码后发送到边缘端,以供所述边缘端对每个区域进行解码,根据解码后的每个区域进行目标检测。

根据本发明一个实施例的基于区域划分的边缘协同目标检测方法,将当前视频帧划分为多个区域的步骤包括:

基于HEVC将当前视频帧划分为M*N个区域;其中,M和N为正奇数;

将横坐标和纵坐标均为奇数的区域作为第一类型区域;其中,所述横坐标的范围为1至M,所述纵坐标的范围为1至N;

将每个视频帧中除所述第一类型区域以外的区域作为第二类型区域;其中,每个第一类型区域的面积大于每个第二类型区域的面积。

根据本发明一个实施例的基于区域划分的边缘协同目标检测方法,将当前视频帧划分为多个区域的步骤之后还包括:

对于任一第一类型区域,将与该第一类型区域相邻的第二类型区域和该第一类型区域作为一组区域,以供所述边缘端根据解码后的每组区域的组合进行目标检测。

根据本发明一个实施例的基于区域划分的边缘协同目标检测方法,对当前视频帧的每个区域进行编码后发送到边缘端,以供所述边缘端对每个区域进行解码,根据解码后的每个区域进行目标检测的步骤包括:

在当前视频帧的前一个视频帧完成编码后,将当前视频帧的每个区域压缩为数据码流;

将当前视频帧的每个区域的数据码流分别封装为数据包后发送到所述边缘端,以供所述边缘端对每个区域的数据包分别使用一个解码器线程进行并行解码。

根据本发明一个实施例的基于区域划分的边缘协同目标检测方法,对当前视频帧的每个区域进行编码的步骤包括:

根据当前视频帧的前一个视频帧中每组区域预先检测出的目标数量,确定当前视频帧中每组区域的第一类型区域的优先级;

根据每组区域中的第一类型区域的优先级,确定每组区域中第一类型区域的压缩步骤的优先级和数据码流封装步骤的优先级;

对于当前视频帧中任一第二类型区域,将与该第二类型区域相邻的所有第一类型区域的压缩步骤的优先级中的最大值作为该第二类型区域的压缩步骤的优先级,将与该第二类型区域相邻的所有第一类型区域的数据码流封装步骤的优先级中的最大值作为该第二类型区域的数据码流封装步骤的优先级;

根据当前视频帧中每个第一类型区域的压缩步骤的优先级和数据码流封装步骤的优先级对每个第一类型区域进行编码,根据当前视频帧中每个第二类型区域的压缩步骤的优先级和数据码流封装步骤的优先级对每个第二类型区域进行编码。

根据本发明一个实施例的基于区域划分的边缘协同目标检测方法,根据当前视频帧的前一个视频帧中每组区域预先检测出的目标数量,确定当前视频帧中每组区域的第一类型区域的优先级;根据每组区域中的第一类型区域的优先级,确定每组区域中第一类型区域的压缩步骤的优先级和数据码流封装步骤的优先级的步骤包括:

按照当前视频帧的前一个视频帧中每组区域包含的目标数量从小到大的顺序,对每组区域进行排序,生成每组区域的数组;

将所述数组中每组区域的索引作为每组区域中第一类型区域的优先级;

将每组区域中第一类型区域的优先级作为每组区域中第一类型区域的压缩步骤的优先级;

将每组区域中第一类型区域的压缩步骤的优先级加上当前视频帧中第一类型区域的数量,获取每组区域中第一类型区域的数据码流封装步骤的优先级。

根据本发明一个实施例的基于区域划分的边缘协同目标检测方法,将当前视频帧的每个区域的数据码流分别封装为数据包后发送到所述边缘端的步骤之前还包括:

根据当前视频帧的图像参数集,生成当前视频帧中每个区域的数据包的头信息;

将当前视频帧中每个区域的数据包的头信息发送给所述边缘端,以供所述边缘端根据所述头信息对当前视频帧的每个区域进行解码。

本发明实施例还提供一种基于区域划分的边缘协同目标检测装置,包括:

划分模块,用于将当前视频帧划分为多个区域;

编码模块,用于对当前视频帧的每个区域进行编码后发送到边缘端,以供所述边缘端对每个区域进行解码,根据解码后的每个区域进行目标检测。

本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于区域划分的边缘协同目标检测方法的步骤。

本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于区域划分的边缘协同目标检测方法的步骤。

本发明实施例提供的基于区域划分的边缘协同目标检测方法及装置,一方面通过对当前视频帧划分的每个区域进行单独编码后即可立即发送到边缘端进行解码和目标检测,在视频清晰度较高时,大大降低视频传输的网络延迟;另一方面,边缘端在接收到每个区域的编码后即可对每个区域单独进行解码,根据解码后的每个区域进行目标检测,并将目标检测结果返回设备端,有效降低目标检测的延迟,提高目标检测的精度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是现有技术中基于边端协同的实时目标检测框架示意图;

图2是本发明实施例提供的一种基于区域划分的边缘协同目标检测方法的流程示意图;

图3是本发明实施例提供的一种基于区域划分的边缘协同目标检测方法中基于HEVC区域划分的结构示意图;

图4是现有技术中Kvazaar视频编码器编码的流程示意图;

图5是本发明实施例提供的一种基于区域划分的边缘协同目标检测方法中视频编码器编码的流程示意图;

图6是本发明实施例提供的一种基于区域划分的边缘协同目标检测方法中视频编码器的任务调度的流程示意图;

图7是本发明实施例提供的一种基于区域划分的边缘协同目标检测方法完整的流程示意图;

图8是本发明实施例提供的一种基于区域划分的边缘协同目标检测装置的结构示意图;

图9是本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面结合图2描述本发明实施例的基于区域划分的边缘协同目标检测方法,该方法包括:S201,将当前视频帧划分为多个区域;

具体地,设备端通过摄像头采集视频,获取当前视频帧。可以将当前视频帧按照预设的尺寸划分为多个区域;也可以基于HEVC(High Efficiency Video Coding,高效率视频编码)将当前视频帧按照行和列划分为多个区域,图3为基于HEVC区域划分的结构示意图。本发明实施例不限于对当前视频帧进行区域划分的方法。

S202,对当前视频帧的每个区域进行编码后发送到边缘端,以供所述边缘端对每个区域进行解码,根据解码后的每个区域进行目标检测。

其中,视频编码指通过压缩技术,将原始视频格式的文件转换成另一种视频格式文件。将当前视频帧进行区域划分后,可以将当前视频帧的每个区域按照位置的前后顺序进行编码,也可以按照区域的优先级进行编码。然后将完成编码的区域发送到边缘端,边缘端对该区域进行解码。可以将该区域的解码结果直接发送目标检测队列,对其单独进行目标检测;也可以将该区域的解码结果与其他区域的解码结果组合后发送到目标检测队列,对组合的解码结果进行并行目标检测。单个区域或组合区域的目标检测完成后,将其目标检测结果返回设备端。当接收到单个区域或组合区域的编码后即可进行解码和目标检测,有效降低目标检测的平均延迟。

本实施例一方面通过对当前视频帧划分的每个区域进行单独编码后即可立即发送到边缘端进行解码和目标检测,在视频清晰度较高时,大大降低视频传输的网络延迟;另一方面,边缘端在接收到每个区域的编码后即可对每个区域单独进行解码,根据解码后的每个区域进行目标检测,并将目标检测结果返回设备端,有效降低目标检测的延迟,提高目标检测的精度。

在上述实施例的基础上,本实施例中将当前视频帧划分为多个区域的步骤包括:基于HEVC将当前视频帧划分为M*N个区域;其中,M和N为正奇数;将横坐标和纵坐标均为奇数的区域作为第一类型区域;其中,所述横坐标的范围为1至M,所述纵坐标的范围为1至N;将每个视频帧中除所述第一类型区域以外的区域作为第二类型区域;其中,每个第一类型区域的面积大于每个第二类型区域的面积。

具体地,采用HEVC方法根据预设的列数M和行数N将当前视频帧划分为M*N个区域,将划分的每个区域称为一个Tile(并行块),每个Tile为一个矩形区域。此外,每个Tile可以使用坐标(i,j)表示,其中i∈[1,M],j∈[1,N]。如图3所示,将视频帧划分为5*3个Tile,其中第一行第一列的Tile的坐标为(1,1),第一行第二列的Tile的坐标为(2,1),以此类推可以得到该视频帧的所有Tile的坐标。

根据Tile的坐标可以将其划分为两种类型,若任一Tile的坐标(i,j)满足横坐标i和纵坐标j均为奇数的条件,则将该Tile作为第一类型区域,称为Primary-Tile;若Tile的坐标不满足上述条件,则将该Tile作为第二类型区域,称为Overlap-Tile。其中,Overlap-Tile的大小需要满足能够覆盖视频帧中的最大目标。通常,在每一帧视频中,目标的大小相对于整个视频画面足够小,所以,每个Overlap–Tile的面积小于每个Primary-Tile的面积。每一视频帧中每个Tile的宽度和高度可以相同,也可以不相同。

在上述实施例的基础上,本实施例中将当前视频帧划分为多个区域的步骤之后还包括:对于任一第一类型区域,将与该第一类型区域相邻的第二类型区域和该第一类型区域作为一组区域,以供所述边缘端根据解码后的每组区域的组合进行目标检测。

具体地,为了避免当前视频帧划分为多个区域后,目标被Tile边界分割导致该目标检测失败,将每一个Primary-Tile与其相邻的Overlap–Tile作为一组区域,称为Tile-Group。如图3所示,将坐标为(1,1)的Primary-Tile与坐标为(1,2)、(2,1)和(2,2)的Primary-Tile作为一组Tile-Group。每个Tile-Group中包含一个Primary-Tile和至少一个Overlap-Tile。此外,本实施例将预设的列数M和行数N均设置为奇数,使得每一个Overlap-Tile都至少属于两个Tile-Group,尽可能地避免目标被Tile边界分割,提高目标检测的准确性。边缘端根据解码后的每组Tile-Group进行目标检测,并及时将每组Tile-Group检测结果返回设备端,可以有效地较低网络时延。

在上述实施例的基础上,本实施例中对当前视频帧的每个区域进行编码后发送到边缘端,以供所述边缘端对每个区域进行解码,根据解码后的每个区域进行目标检测的步骤包括:在当前视频帧的前一个视频帧完成编码后,将当前视频帧的每个区域压缩为数据码流;将当前视频帧的每个区域的数据码流分别封装为数据包后发送到所述边缘端,以供所述边缘端对每个区域的数据包分别使用一个解码器线程进行并行解码。

具体地,对每个Tile进行编码时分为两个步骤,首先在视频编码层面将每个Tile的视频画面压缩为数据码流,然后通过对视频编码器在网络抽象层将当前视频帧的每个区域的数据码流封装为数据包。如图4所示为现有的Kvazaar视频编码器编码的流程示意图。该视频编码器首先在视频编码层面将每个Tile的视频画面压缩为数据码流,等待所有Tile的视频画面均压缩为数据码流后将其封装为一个数据包。该视频解码器虽然在视频编码层面实现了并行处理,但是在网络抽象层面上仍然是以视频帧为单位,导致每个Tile编码完成后不能立即发送到边缘端。

为了减小视频传输的延迟,确保每一个Tile编码完成后能够立即将其数据包发送到边缘端。本实施例将视频编码器在网络抽象层的编码任务进行修改,将数据封装步骤针对每一个Tile进行独立的拆分,使得每一个Tile对应一个码流任务,即将当前视频帧的每个Tile的数据码流进行独立封装。每个码流任务均依赖于该视频帧的图像参数集(PictureParamater Set,PPS)任务,来确保图像参数集中的帧头信息能够先于Tile码流传输到边缘端。任一Tile封装完成后立即将其数据包发送到边缘端。此外,该视频编码器采用一个虚拟码流来标识当前视频帧中所有的Tile完成编码并传输到边缘端。当前视频帧的所有Tile编码任务完成之后,才能执行下一个视频帧的编码任务。如图5所示为视频编码器编码的流程示意图。

将每个Tile编码的数据包发送到边缘端后,若将其按照Tile的扫描顺序依次发送给解码器,则仅仅第一个Tile的位置会被记录,而其他Tile通过记录的偏离位置来计算其对应的位置,导致不同Tile之间的解码会存在相互依赖关系。为了使得每一个Tile的数据包都能够独立的解码,在编码和解码的过程中均强制编码器和解码器将每一个Tile均视为第一个Tile。对每个Tile数据包分别使用一个解码器线程进行并行解码。服务端收到当前视频帧的图像参数集中的帧头信息时,将帧头信息发送给相应的解码器。边缘端接收任一Tile数据包时,则把该数据包发送给相应的解码器进行解码。

在上述实施例的基础上,本实施例中对当前视频帧的每个区域进行编码的步骤包括:根据当前视频帧的前一个视频帧中每组区域预先检测出的目标数量,确定当前视频帧中每组区域的第一类型区域的优先级;根据每组区域中的第一类型区域的优先级,确定每组区域中第一类型区域的压缩步骤的优先级和数据码流封装步骤的优先级;对于当前视频帧中任一第二类型区域,将与该第二类型区域相邻的所有第一类型区域的压缩步骤的优先级中的最大值作为该第二类型区域的压缩步骤的优先级,将与该第二类型区域相邻的所有第一类型区域的数据码流封装步骤的优先级中的最大值作为该第二类型区域的数据码流封装步骤的优先级;根据当前视频帧中每个第一类型区域的压缩步骤的优先级和数据码流封装步骤的优先级对每个第一类型区域进行编码,根据当前视频帧中每个第二类型区域的压缩步骤的优先级和数据码流封装步骤的优先级对每个第二类型区域进行编码。

具体地,对当前视频帧的每个Tile进行编码时根据Tile的内容确定Tile的编码优先级。根据前一个视频帧的检测结果,确定当前视频帧的中每组Tile-Group预先检测出的目标数量。每组Tile-Group包含一个Primary-Tile。根据每组Tile-Group的目标数量可以确定其对应的Primary-Tile的优先级。Tile-Group预先检测出的目标数量越多,其对应的Primary-Tile的优先级越高。按照Primary-Tile的优先级从高到低的顺序依次将Primary-Tile压缩为数据码流。在任务调度的过程中,当任一Primary-Tile的压缩步骤完成之后,为了保证尽可能早的调度其对应的数据码流封装步骤,将该Primary-Tile的数据码流封装步骤设置为高于所有Primary-Tile压缩步骤的优先级。

对于当前视频帧中任一Overlap-Tile,通过将其压缩步骤的优先级设置为与该Overlap-Tile相邻的Primary-Tile中压缩步骤的优先级最大值;相应地,将其封装步骤的优先级设置为与该Overlap-Tile相邻的Primary-Tile封装步骤中的优先级最大值,可以保证当任一Primary-Tile将数据包上传到边缘端时,其对应的Tile-Group的数据包能被尽快上传到边缘端,从而尽快对该Tile-Group进行目标检测。

根据各Tile的压缩步骤的优先级和数据码流封装步骤的优先级对其进行编码。若任一Tile压缩步骤的优先级在压缩步骤中最高,则其数据码流封装步骤的优先级在数据码流封装步骤中也是最高的。故任一Tile压缩步骤完成后,其数据码流封装步骤会尽早地被调度。通过编码优先级可以自动确定各Tile编码的先后顺序。Tile的编码先后顺序不同,各组Tile-Group目标检测的先后顺序也不同。

在上述实施例的基础上,本实施例中根据当前视频帧的前一个视频帧中每组区域预先检测出的目标数量,确定当前视频帧中每组区域的第一类型区域的优先级;根据每组区域中的第一类型区域的优先级,确定每组区域中第一类型区域的压缩步骤的优先级和数据码流封装步骤的优先级的步骤包括:按照当前视频帧的前一个视频帧中每组区域包含的目标数量从小到大的顺序,对每组区域进行排序,生成每组区域的数组;将所述数组中每组区域的索引作为每组区域中第一类型区域的优先级;将每组区域中第一类型区域的优先级作为每组区域中第一类型区域的压缩步骤的优先级;将每组区域中第一类型区域的压缩步骤的优先级加上当前视频帧中第一类型区域的数量,获取每组区域中第一类型区域的数据码流封装步骤的优先级。

具体地,获取当前视频帧的前一个视频帧中每组Tile-Group预先检测的目标数量,将其按照从小到大的顺序进行排列,并将其存放到数组中。其中该数组的索引p∈[0,S),S为Primary-Tile的数量,其计算公式为

在上述各实施例的基础上,本实施例中将当前视频帧的每个区域的数据码流分别封装为数据包后发送到所述边缘端的步骤之前还包括:根据当前视频帧的图像参数集,生成当前视频帧中每个区域的数据包的头信息;将当前视频帧中每个区域的数据包的头信息发送给所述边缘端,以供所述边缘端根据所述头信息对当前视频帧的每个区域进行解码。

其中,图像参数集中包含当前视频帧的图像信息、各Tile坐标信息和各Tile在当前视频帧中的编号。每个Tile的数据码流封装步骤均依赖于该帧的图像参数集任务。通过图像参数集可以生成每个Tile的数据包头信息。对当前视频帧的每个Tile进行编码后发送到边缘端之前,首先将每个Tile数据包的头信息发送到边缘端,根据Tile数据包的头信息确定每个Tile的坐标,根据坐标将其按照在Tile-Group的坐标位置进行合并。当边缘端接收到多个Tile,对其进行解码后获知多个Tile能够组成一个Tile-Group,则将其合并为一张子图,并发送到目标检测的队列中,该队列则在多个目标检测进程之间调度目标检测任务。每个目标检测任务完成之后将检测结果立即发送给设备端,设备端根据检测结果进行智能决策或者视频渲染。此外,为了减少深度学习进程在显卡上调度时的上下文切换的代价,本实施例在进行目标检测任务时,将GPU(Graphics Processing Unit,图形处理器)工作在MPS(Multi-process Service,多进程服务)模式。如图7所示为基于区域划分的边缘协同目标检测方法的完整流程示意图。

下面对本发明实施例提供的基于区域划分的边缘协同目标检测装置进行描述,下文描述的基于区域划分的边缘协同目标检测装置与上文描述的基于区域划分的边缘协同目标检测方法可相互对应参照。

如图8所示,本实施例提供一种基于区域划分的边缘协同目标检测装置,包括划分模块801和编码模块802,其中:

划分模块801用于将当前视频帧划分为多个区域;

具体地,设备端通过摄像头采集视频,获取当前视频帧。可以将当前视频帧按照预设的尺寸划分为多个区域;也可以基于HEVC将当前视频帧按照行和列划分为多个区域。本发明实施例不限于对当前视频帧进行区域划分的方法。

编码模块802用于对当前视频帧的每个区域进行编码后发送到边缘端,以供所述边缘端对每个区域进行解码,根据解码后的每个区域进行目标检测。

其中,视频编码指通过压缩技术,将原始视频格式的文件转换成另一种视频格式文件。将当前视频帧进行区域划分后,可以将当前视频帧的每个区域按照位置的前后顺序进行编码,也可以按照区域的优先级进行编码。然后将完成编码的区域发送到边缘端,边缘端对该区域进行解码。可以将该区域的解码结果直接发送目标检测队列,对其单独进行目标检测;也可以将该区域的解码结果与其他区域的解码结果组合后发送到目标检测队列,对组合的解码结果进行并行目标检测。单个区域或组合区域的目标检测完成后,将其目标检测的结果返回设备端。当接收到单个区域或组合区域的编码后即可进行解码和目标检测,有效降低目标检测的平均延迟。

本实施例一方面通过对当前视频帧划分的每个区域进行单独编码后即可立即发送到边缘端进行解码和目标检测,在视频清晰度较高时,大大降低视频传输的网络延迟;另一方面,边缘端在接收到每个区域的编码后即可对每个区域单独进行解码,根据解码后的每个区域进行目标检测,并将目标检测结果返回设备端,有效降低目标检测的延迟,提高目标检测的精度。

在上述实施例的基础上,本实施例中划分模块具体用于:基于HEVC将当前视频帧划分为M*N个区域;其中,M和N为正奇数;将横坐标和纵坐标均为奇数的区域作为第一类型区域;其中,所述横坐标的范围为1至M,所述纵坐标的范围为1至N;将每个视频帧中除所述第一类型区域以外的区域作为第二类型区域;其中,每个第一类型区域的面积大于每个第二类型区域的面积。

在上述实施例的基础上,本实施例中还包括组合模块具体用于:对于任一第一类型区域,将与该第一类型区域相邻的第二类型区域和该第一类型区域作为一组区域,以供所述边缘端根据解码后的每组区域的组合进行目标检测。

在上述实施例的基础上,本实施例中编码模块具体用于:在当前视频帧的前一个视频帧完成编码后,将当前视频帧的每个区域压缩为数据码流;将当前视频帧的每个区域的数据码流分别封装为数据包后发送到所述边缘端,以供所述边缘端对每个区域的数据包分别使用一个解码器线程进行并行解码。

在上述实施例的基础上,本实施例中编码模块还用于:根据当前视频帧的前一个视频帧中每组区域预先检测出的目标数量,确定当前视频帧中每组区域的第一类型区域的优先级;根据每组区域中的第一类型区域的优先级,确定每组区域中第一类型区域的压缩步骤的优先级和数据码流封装步骤的优先级;对于当前视频帧中任一第二类型区域,将与该第二类型区域相邻的所有第一类型区域的压缩步骤的优先级中的最大值作为该第二类型区域的压缩步骤的优先级,将与该第二类型区域相邻的所有第一类型区域的数据码流封装步骤的优先级中的最大值作为该第二类型区域的数据码流封装步骤的优先级;根据当前视频帧中每个第一类型区域的压缩步骤的优先级和数据码流封装步骤的优先级对每个第一类型区域进行编码,根据当前视频帧中每个第二类型区域的压缩步骤的优先级和数据码流封装步骤的优先级对每个第二类型区域进行编码。

在上述实施例的基础上,本实施例中还包括获取模块具体用于:按照当前视频帧的前一个视频帧中每组区域包含的目标数量从小到大的顺序,对每组区域进行排序,生成每组区域的数组;将所述数组中每组区域的索引作为每组区域中第一类型区域的优先级;将每组区域中第一类型区域的优先级作为每组区域中第一类型区域的压缩步骤的优先级;将每组区域中第一类型区域的压缩步骤的优先级加上当前视频帧中第一类型区域的数量,获取每组区域中第一类型区域的数据码流封装步骤的优先级。

在上述各实施例的基础上,本实施例中还包括检测模块具体用于:根据当前视频帧的图像参数集,生成当前视频帧中每个区域的数据包的头信息;将当前视频帧中每个区域的数据包的头信息发送给所述边缘端,以供所述边缘端根据所述头信息对当前视频帧的每个区域进行解码。

图9示例了一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)901、通信接口(Communications Interface)902、存储器(memory)903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信。处理器901可以调用存储器903中的逻辑指令,以执行基于区域划分的边缘协同目标检测方法,该方法包括:将当前视频帧划分为多个区域;对当前视频帧的每个区域进行编码后发送到边缘端,以供所述边缘端对每个区域进行解码,根据解码后的每个区域进行目标检测。

此外,上述的存储器903中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的基于区域划分的边缘协同目标检测方法,该方法包括:将当前视频帧划分为多个区域;对当前视频帧的每个区域进行编码后发送到边缘端,以供所述边缘端对每个区域进行解码,根据解码后的每个区域进行目标检测。

又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的基于区域划分的边缘协同目标检测方法,该方法包括:将当前视频帧划分为多个区域;对当前视频帧的每个区域进行编码后发送到边缘端,以供所述边缘端对每个区域进行解码,根据解码后的每个区域进行目标检测。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号