一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种协作式无人机检测方法、装置及设备与流程

2021-08-31 17:44:00 来源:中国专利 TAG:无人机 协作 检测方法 装置 检测
一种协作式无人机检测方法、装置及设备与流程

本申请涉及无人机检测领域,尤其是涉及一种协作式无人机检测方法、装置及设备。



背景技术:

随着无人机的大规模使用,某些无人机会影响正常的社会运转。例如,针对某些目标场景(如飞机场、特殊设施区域等禁飞区域)来说,无人机需要禁止在该目标场景内飞行,但是,由于各种原因,无人机可能会出现在目标场景内,因此,需要检测目标场景是否存在无人机,继而对无人机进行管理。

由于目标场景比较大,无法通过一个数据持有端检测目标场景的所有区域是否存在无人机,因此,目标场景通常会部署多个数据持有端,由各数据持有端独立采集目标场景的数据,并将数据发送给服务中心端。服务中心端基于所有数据持有端发送的数据进行无人机检测,分析目标场景是否存在无人机。

但是,在上述方式中,各数据持有端需要将所有数据实时发送给服务中心端,从而对数据通信链路造成较大压力。并且,无法保护各数据持有端的数据隐私,可能会造成数据持有端的数据泄漏,即,可能存在安全隐患。



技术实现要素:

本申请提供一种协作式无人机检测方法,应用于包括服务中心端和多个数据持有端的系统,所述方法应用于任一数据持有端,所述方法包括:

获取初始数据规范模型和初始无人机检测模型;

基于第一数据集对所述初始数据规范模型进行训练,得到目标数据规范模型;将所述第一数据集中的样本数据输入给所述目标数据规范模型,得到所述样本数据对应的规范后数据;其中,所述目标数据规范模型至少包括多个隐藏层,所述规范后数据是所述多个隐藏层中的目标隐藏层的输出数据;

利用所述第一数据集中的多个样本数据对应的多个规范后数据生成第二数据集;基于所述第二数据集对所述初始无人机检测模型进行训练,得到候选无人机检测模型,并从所述候选无人机检测模型中提取出模型参数;

将所述模型参数发送给所述服务中心端,以使所述服务中心端基于多个数据持有端发送的模型参数生成目标无人机检测模型;

从所述服务中心端获取所述目标无人机检测模型,并利用所述目标无人机检测模型检测目标场景是否存在无人机。

示例性的,所述基于第一数据集对所述初始数据规范模型进行训练,得到目标数据规范模型,包括:针对所述第一数据集中的样本数据,为所述样本数据添加噪声,得到加噪声数据;将所述加噪声数据输入给所述初始数据规范模型得到去噪声数据;确定所述去噪声数据与所述样本数据之间的损失值,并基于所述损失值对所述初始数据规范模型的网络参数进行调整,得到调整后的数据规范模型;确定调整后的数据规范模型是否已收敛;

若否,则将调整后的数据规范模型作为初始数据规范模型,返回执行将所述加噪声数据输入给所述初始数据规范模型得到去噪声数据的操作;

若是,则将调整后的数据规范模型作为目标数据规范模型。

示例性的,所述目标数据规范模型依次包括输入层、k个第一隐藏层、1个第二隐藏层、k个第三隐藏层和输出层,k为正整数,所述目标隐藏层为所述第二隐藏层;针对每个第一隐藏层,该第一隐藏层的输入数据的长度大于该第一隐藏层的输出数据的长度;针对所述第二隐藏层,所述第二隐藏层的输入数据的长度大于所述第二隐藏层的输出数据的长度;针对每个第三隐藏层,该第三隐藏层的输入数据的长度小于该第三隐藏层的输出数据的长度。

示例性的,利用所述第一数据集中的多个样本数据对应的多个规范后数据生成第二数据集,包括:针对第一数据集中的多个样本数据对应的每个规范后数据,确定该规范后数据对应的数据类型,该数据类型为图像类型、或音频类型、或射频类型;基于该数据类型确定目标位置和扩展位置,在所述目标位置处添加该规范后数据,在所述扩展位置处添加扩展数据,得到该规范后数据对应的目标数据;将该规范后数据对应的样本数据的标签值作为该目标数据的标签值;所述标签值用于表示该目标数据对应的是存在无人机或不存在无人机;基于各规范后数据对应的目标数据及各目标数据的标签值生成第二数据集。

示例性的,所述从所述候选无人机检测模型中提取出模型参数,将所述模型参数发送给所述服务中心端,包括:将所述第二数据集中的每个目标数据输入给所述候选无人机检测模型,得到该目标数据对应的第一检测结果;基于每个目标数据对应的第一检测结果及各目标数据的标签值,确定所述候选无人机检测模型对应的第一准确率;将所述第二数据集中的每个目标数据输入给所述初始无人机检测模型,得到该目标数据对应的第二检测结果;基于每个目标数据对应的第二检测结果及各目标数据的标签值,确定所述初始无人机检测模型对应的第二准确率;若所述第一准确率大于所述第二准确率,则从所述候选无人机检测模型中提取出模型参数,并将所述模型参数发送给所述服务中心端。

示例性的,所述服务中心端基于多个数据持有端发送的模型参数生成目标无人机检测模型,包括:针对每个数据持有端,获取该数据持有端对应的质量分数;其中,所述质量分数越高,则表示该数据持有端训练的候选无人机检测模型的性能越好;基于该数据持有端对应的质量分数确定该数据持有端对应的加权系数;其中,所述质量分数越高,则该数据持有端对应的加权系数越大;

基于每个数据持有端发送的模型参数及各数据持有端对应的加权系数确定目标参数,并基于所述目标参数生成目标无人机检测模型。

示例性的,所述利用所述目标无人机检测模型检测目标场景是否存在无人机,包括:将目标场景的待检测数据输入给所述目标数据规范模型,得到规范后数据,该规范后数据是所述目标数据规范模型的目标隐藏层的输出数据;

基于该规范后数据对应的数据类型确定目标位置和扩展位置,在所述目标位置处添加该规范后数据,在所述扩展位置处添加扩展数据,得到目标数据;

将所述目标数据输入给所述目标无人机检测模型,得到无人机检测结果,所述无人机检测结果用于表示所述目标场景存在无人机或者不存在无人机。

示例性的,所述方法还包括:所述服务中心端接收多个数据持有端发送的无人机检测结果,所述无人机检测结果为第一取值或者第二取值,所述第一取值表示所述目标场景存在无人机,所述第二取值表示所述目标场景不存在无人机;确定每个数据持有端对应的权重值,并基于每个数据持有端发送的无人机检测结果及各数据持有端对应的权重值确定目标检测结果;

若所述目标检测结果大于阈值,则确定所述目标场景存在无人机;

若所述目标检测结果不大于阈值,则确定所述目标场景不存在无人机。

本申请提供一种协作式无人机检测装置,应用于包括服务中心端和多个数据持有端的系统,所述装置应用于任一数据持有端,所述装置包括:

获取模块,用于获取初始数据规范模型和初始无人机检测模型;

训练模块,用于基于第一数据集对所述初始数据规范模型进行训练,得到目标数据规范模型;将第一数据集中的样本数据输入给所述目标数据规范模型,得到所述样本数据对应的规范后数据;其中,所述目标数据规范模型至少包括多个隐藏层,所述规范后数据是所述多个隐藏层中的目标隐藏层的输出数据;利用第一数据集中的多个样本数据对应的多个规范后数据生成第二数据集;基于第二数据集对所述初始无人机检测模型进行训练,得到候选无人机检测模型;

发送模块,用于在得到候选无人机检测模型后,从所述候选无人机检测模型中提取出模型参数,将所述模型参数发送给所述服务中心端,以使所述服务中心端基于多个数据持有端发送的模型参数生成目标无人机检测模型;

所述获取模块,还用于从所述服务中心端获取所述目标无人机检测模型,并利用所述目标无人机检测模型检测目标场景是否存在无人机。

本申请提供一种数据持有端,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;

所述处理器用于执行机器可执行指令,以实现如下步骤:

获取初始数据规范模型和初始无人机检测模型;

基于第一数据集对所述初始数据规范模型进行训练,得到目标数据规范模型;将所述第一数据集中的样本数据输入给所述目标数据规范模型,得到所述样本数据对应的规范后数据;其中,所述目标数据规范模型至少包括多个隐藏层,所述规范后数据是所述多个隐藏层中的目标隐藏层的输出数据;

利用所述第一数据集中的多个样本数据对应的多个规范后数据生成第二数据集;基于所述第二数据集对所述初始无人机检测模型进行训练,得到候选无人机检测模型,并从所述候选无人机检测模型中提取出模型参数;

将所述模型参数发送给服务中心端,以使所述服务中心端基于多个数据持有端发送的模型参数生成目标无人机检测模型;

从所述服务中心端获取所述目标无人机检测模型,并利用所述目标无人机检测模型检测目标场景是否存在无人机。

由以上技术方案可见,本申请实施例中,通过数据持有端将不同维度数据规范为统一数据格式,再对服务中心端下发的无人机检测模型进行训练,将训练后的模型参数发送给服务中心端,由服务中心端基于多个模型参数更新无人机检测模型,将更新后的无人机检测模型发送给各数据持有端,使得各数据持有端基于更新后的无人机检测模型进行无人机检测,提高无人机检测能力,提高无人机检测的准确率,可以应用在各类无人机检测场景中,提高无人机检测的鲁棒性。在上述方式中,各数据持有端不需要将数据发送给服务中心端,仅将模型参数发送给服务中心端,减轻对通信链路的压力,且不需要进行数据共享,能够保护各数据持有端的数据隐私,不会造成数据泄漏,不存在安全隐患。

附图说明

为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。

图1是本申请一种实施方式中的协作式无人机检测方法的流程示意图;

图2是本申请一种实施方式中的协作式无人机检测方法的流程示意图;

图3是本申请一种实施方式中的协作式无人机检测装置的结构示意图。

具体实施方式

在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

本申请实施例中提出一种协作式无人机检测方法,该方法可以应用于包括服务中心端和多个数据持有端的系统,该方法可以应用于任一数据持有端,参见图1所示,为该协作式无人机检测方法的流程示意图,该方法可以包括:

步骤101、获取初始数据规范模型和初始无人机检测模型。

比如说,可以从服务中心端获取初始数据规范模型,也可以从数据持有端本地获取已存储的初始数据规范模型,对此不做限制。

又例如,可以从服务中心端获取初始无人机检测模型,也可以从数据持有端本地获取已存储的初始无人机检测模型,对此不做限制。

步骤102、基于第一数据集对该初始数据规范模型进行训练,得到目标数据规范模型(为了区分方便,将训练后的数据规范模型称为目标数据规范模型)。

示例性的,在步骤102中,可以采用如下步骤训练得到目标数据规范模型:

步骤1021、针对第一数据集中的样本数据(如每个样本数据),为该样本数据添加噪声,得到加噪声数据,该加噪声数据是一个存在噪声的数据。

步骤1022、将该加噪声数据输入给初始数据规范模型得到去噪声数据。

比如说,将该加噪声数据输入给初始数据规范模型后,初始数据规范模型可以对该加噪声数据进行处理,并将处理后的数据称为去噪声数据。

步骤1023、确定该去噪声数据与该样本数据之间的损失值,并基于该损失值对初始数据规范模型的网络参数进行调整,得到调整后的数据规范模型。

比如说,可以预先配置损失函数,该损失函数的输入是去噪声数据和样本数据,如去噪声数据与样本数据的距离值等,该损失函数的输出是损失值。基于此,在得到样本数据对应的去噪声数据后,可以将该样本数据和该去噪声数据代入该损失函数,得到该去噪声数据与该样本数据之间的损失值。

在得到该损失值之后,就可以基于该损失值对初始数据规范模型的网络参数进行调整,对此调整方式不做限制,例如,可以采用梯度下降法等对初始数据规范模型的网络参数进行调整,网络参数的调整目标是,使去噪声数据与样本数据之间的损失值越来越小,最终使得去噪声数据与样本数据接近。

步骤1024、确定调整后的数据规范模型是否已收敛。

比如说,若损失值小于预设阈值(可以根据经验配置,对此不做限制,如大于0但与0接近的数值),则确定调整后的数据规范模型已收敛,若损失值不小于预设阈值,则确定调整后的数据规范模型未收敛。

若否,则可以执行步骤1025,若是,则可以执行步骤1026。

步骤1025、将调整后的数据规范模型作为初始数据规范模型,返回执行将该加噪声数据输入给初始数据规范模型得到去噪声数据的操作,也就是说,将该加噪声数据输入给调整后的数据规范模型,从而得到新的去噪声数据,然后,继续确定该新的去噪声数据与该样本数据之间的损失值,以此类推。

步骤1026、将调整后的数据规范模型作为目标数据规范模型。至此,完成初始数据规范模型的训练过程,得到已训练完成的目标数据规范模型。

综上所述,可以得到目标数据规范模型,完成步骤102,执行后续步骤。

步骤103、将第一数据集中的样本数据输入给目标数据规范模型,得到该样本数据对应的规范后数据。示例性的,目标数据规范模型至少可以包括多个隐藏层,该规范后数据可以是多个隐藏层中的目标隐藏层的输出数据。

在一种可能的实施方式中,目标数据规范模型依次包括输入层、k个第一隐藏层、1个第二隐藏层、k个第三隐藏层和输出层,k可以为正整数,在此基础上,该目标隐藏层可以为第二隐藏层,也就是说,该规范后数据可以是第二隐藏层的输出数据。比如说,针对第一数据集中的每个样本数据,先将该样本数据输入给输入层,将输入层的输出数据输入给首个第一隐藏层,将首个第一隐藏层的输出数据输入给第二个第一隐藏层,以此类推,将最后一个第一隐藏层的输出数据输入给第二隐藏层,第二隐藏层对该数据进行处理后,得到第二隐藏层的输出数据,而第二隐藏层的输出数据就是规范后数据。

示例性的,针对每个第一隐藏层来说,该第一隐藏层的输入数据的长度大于该第一隐藏层的输出数据的长度;针对第二隐藏层来说,第二隐藏层的输入数据的长度大于第二隐藏层的输出数据的长度;针对每个第三隐藏层来说,该第三隐藏层的输入数据的长度小于该第三隐藏层的输出数据的长度。

步骤104、利用第一数据集中的多个样本数据对应的多个规范后数据生成第二数据集。比如说,在步骤104中,可以采用如下步骤生成第二数据集:

步骤1041、针对第一数据集中的多个样本数据对应的每个规范后数据,确定该规范后数据对应的数据类型,该数据类型可以为图像类型(表示该规范后数据对应的样本数据是图像数据)、或音频类型(表示该规范后数据对应的样本数据是音频数据)、或射频类型(表示该规范后数据对应的样本数据是射频数据)。当然,上述只是数据类型的几个示例,对此数据类型不做限制。

步骤1042、基于该数据类型确定目标位置和扩展位置,在该目标位置处添加该规范后数据,在该扩展位置处添加扩展数据(可以根据经验配置,如可以为全0或者全1等,对此不做限制),得到该规范后数据对应的目标数据。

比如说,假设一共存在三种数据类型,如图像类型、音频类型、射频类型等,规范后数据的数据长度为m比特,则目标数据为3m比特。可以预先配置所有数据类型的顺序关系,如顺序关系依次是图像类型、音频类型、射频类型。

在此基础上,假设数据类型是图像类型,则目标数据的前m比特为目标位置,在该目标位置处添加长度为m比特的规范后数据,目标数据的后2m比特为扩展位置,在该扩展位置处添加长度为2m比特的全0,从而得到目标数据。

假设数据类型是音频类型,则目标数据的前m比特为扩展位置,在该扩展位置处添加长度为m比特的全0,目标数据的中间m比特为目标位置,在该目标位置处添加长度为m比特的规范后数据,目标数据的后m比特为扩展位置,在该扩展位置处添加长度为m比特的全0,从而得到目标数据。

针对射频类型,目标数据的前2m比特为扩展位置,在该扩展位置处添加全0,目标数据的后m比特为目标位置,在该目标位置处添加规范后数据。

步骤1043、将该规范后数据对应的样本数据的标签值作为该目标数据的标签值,该标签值用于表示该目标数据对应的是存在无人机或不存在无人机。

比如说,针对第一数据集中的每个样本数据,该样本数据具有对应的标签值,该标签值可以为第一取值或者第二取值,若该标签值为第一取值,则表示该样本数据对应的是存在无人机,若该标签值为第二取值,则表示该样本数据对应的是不存在无人机。在此基础上,在将该样本数据输入给目标数据规范模型,得到规范后数据,并得到该规范后数据对应的目标数据后,就可以将该样本数据对应的标签值作为该目标数据对应的标签值,该标签值可以为第一取值或者第二取值,若该标签值为第一取值,则表示该目标数据对应的是存在无人机,若该标签值为第二取值,则表示该目标数据对应的是不存在无人机。

步骤1044、基于各规范后数据对应的目标数据及各目标数据的标签值生成第二数据集,即该第二数据集包括目标数据及目标数据的标签值。

综上所述,可以得到第二数据集,完成步骤104,执行后续步骤。

步骤105、基于第二数据集对初始无人机检测模型进行训练,得到候选无人机检测模型。比如说,第二数据集可以包括多个目标数据以及各目标数据的标签值,基于该第二数据集就可以对初始无人机检测模型进行训练,对此训练过程不做限制,将已经完成训练的无人机检测模型称为候选无人机检测模型。

步骤106、从候选无人机检测模型中提取出模型参数,并将该模型参数发送给服务中心端。由于多个数据持有端均可以向服务中心端发送模型参数,则服务中心端基于多个数据持有端发送的模型参数生成目标无人机检测模型。

示例性的,针对每个数据持有端来说,该数据持有端得到候选无人机检测模型之后,还可以将第二数据集中的每个目标数据输入给候选无人机检测模型,得到该目标数据对应的第一检测结果;基于每个目标数据对应的第一检测结果及各目标数据的标签值,确定候选无人机检测模型对应的第一准确率(如第一检测结果正确的数量与第一检测结果总数量的比例)。以及,将第二数据集中的每个目标数据输入给初始无人机检测模型(即还未经过训练的无人机检测模型),得到该目标数据对应的第二检测结果;基于每个目标数据对应的第二检测结果及各目标数据的标签值,确定初始无人机检测模型对应的第二准确率。

若第一准确率大于第二准确率,则可以从候选无人机检测模型中提取出模型参数,并将模型参数发送给服务中心端。或者,若第一准确率不大于第二准确率,则不需要将候选无人机检测模型中的模型参数发送给服务中心端。

示例性的,服务中心端可以采用如下步骤生成目标无人机检测模型:针对每个数据持有端,获取该数据持有端对应的质量分数,该质量分数越高,则表示该数据持有端训练的候选无人机检测模型的性能越好。然后,基于该数据持有端对应的质量分数确定该数据持有端对应的加权系数,该质量分数越高,则该数据持有端对应的加权系数越大。然后,基于每个数据持有端发送的模型参数及各数据持有端对应的加权系数确定目标参数,也就是说,基于模型参数及加权系数进行加权运算,得到目标参数。然后,基于该目标参数生成目标无人机检测模型,比如说,通过该目标参数替换初始无人机检测模型(即步骤101中的初始无人机检测模型)中的模型参数,得到目标无人机检测模型。

步骤107、从服务中心端获取该目标无人机检测模型,并利用该目标无人机检测模型检测目标场景是否存在无人机。

比如说,服务中心端在得到目标无人机检测模型之后,可以将该目标无人机检测模型发送给各数据持有端,也就是说,数据持有端可以从服务中心端获取到该目标无人机检测模型,在得到该目标无人机检测模型后,数据持有端就可以利用该目标无人机检测模型检测目标场景是否存在无人机。

针对每个数据持有端,在无人机检测过程中,可以基于目标无人机检测模型检测目标场景是否存在无人机,比如说,采用如下步骤检测是否存在无人机:

步骤1071、将目标场景的待检测数据输入给目标数据规范模型,得到规范后数据,该规范后数据是该目标数据规范模型的目标隐藏层的输出数据。

比如说,可以获取目标场景的待检测数据,如图像数据、音频数据、射频数据等,并将该待检测数据输入给目标数据规范模型,得到该待检测数据对应的规范后数据,该实现过程与步骤103类似,在此不再重复赘述。

步骤1072、基于规范后数据对应的数据类型确定目标位置和扩展位置,在目标位置处添加该规范后数据,在扩展位置处添加扩展数据,得到目标数据。

比如说,在得到规范后数据后,可以将规范后数据转换为该待检测数据对应的目标数据,实现过程可以参见步骤1041和步骤1042,在此不再重复赘述。

步骤1073、将该待检测数据对应的目标数据输入给该目标无人机检测模型,得到无人机检测结果,该无人机检测结果用于表示目标场景存在无人机或者不存在无人机。比如说,在将该目标数据输入给目标无人机检测模型之后,目标无人机检测模型可以对该目标数据进行处理,对此处理过程不做限制,从而得到无人机检测结果,该无人机检测结果可以为第一取值或者第二取值。其中,若该无人机检测结果为第一取值(如1),则表示目标场景存在无人机,若该无人机检测结果为第二取值(如0),则表示目标场景不存在无人机。

在一种可能的实施方式中,针对每个数据持有端来说,该数据持有端得到无人机检测结果之后,还可以将无人机检测结果发送给服务中心端,以使服务中心端基于多个数据持有端发送的无人机检测结果确定目标检测结果。

比如说,服务中心端可以接收多个数据持有端发送的无人机检测结果,针对每个无人机检测结果,该无人机检测结果可以为第一取值或者第二取值,第一取值表示目标场景存在无人机,第二取值表示目标场景不存在无人机。确定每个数据持有端对应的权重值,并基于每个数据持有端发送的无人机检测结果及各数据持有端对应的权重值确定目标检测结果,如进行加权运算得到目标检测结果。在此基础上,若该目标检测结果大于阈值,则确定目标场景存在无人机;若该目标检测结果不大于阈值,则确定目标场景不存在无人机。

在上述实施例中,是以无人机检测为例,在实际应用中,除了检测目标场景是否存在无人机,还可以检测其它类型的对象,只要由服务中心端和多个数据持有端共同实现协作式检测即可。比如说,在智能交通领域,上述多个数据持有端可以为多个摄像机,可以将上述无人机检测模型替换为车辆检测模型(车辆检测模型的结构与无人机检测模型的结构相同或不同),且保持数据规范模型不变,在此基础上,就可以采用上述实施例检测目标场景是否存在车辆。

又例如,在机器人领域,上述多个数据持有端可以为多个机器人,可以将上述无人机检测模型替换为物品检测模型,且保持数据规范模型不变,在此基础上,就可以采用上述实施例检测目标场景是否存在物品(快递包裹、条码等)。

又例如,在船舶识别领域,上述多个数据持有端可以为多个摄像机,可以将上述无人机检测模型替换为船舶检测模型,且保持数据规范模型不变,在此基础上,就可以采用上述实施例检测目标场景是否存在船舶(如采砂船等)。

又例如,在森林火灾识别领域,上述多个数据持有端可以为多个摄像机,可以将上述无人机检测模型替换为森林火灾检测模型,且保持数据规范模型不变,在此基础上,就可以采用上述实施例检测目标场景是否存在森林火灾。

当然,上述只是几个检测示例,对此不做限制,可以采用上述实施例检测任意类型的对象,将无人机检测模型替换为相应类型的对象检测模型即可,比如说,将无人机检测模型替换为车牌检测模型(用于检测车牌)、车辆类别检测模型(用于检测车辆类别)、指纹检测模型(用于检测指纹)、人脸检测模型(用于检测人脸)等等,对此检测模型的类型不做限制。

由以上技术方案可见,本申请实施例中,通过数据持有端将不同维度数据规范为统一数据格式,再对服务中心端下发的无人机检测模型进行训练,将训练后的模型参数发送给服务中心端,由服务中心端基于多个模型参数更新无人机检测模型,将更新后的无人机检测模型发送给各数据持有端,使得各数据持有端基于更新后的无人机检测模型进行无人机检测,提高无人机检测能力,提高无人机检测的准确率,可以应用在各类无人机检测场景中,提高无人机检测的鲁棒性。在上述方式中,各数据持有端不需要将数据发送给服务中心端,仅将模型参数发送给服务中心端,减轻对通信链路的压力,且不需要进行数据共享,能够保护各数据持有端的数据隐私,不会造成数据泄漏,不存在安全隐患。

以下结合具体应用场景,对协作式无人机检测方法进行详细说明。

为了检测目标场景是否存在无人机,可以采用基于图像的无人机检测方法、或采用基于音频的无人机检测方法、或采用基于射频的无人机检测方法。比如说,在目标场景部署多个数据持有端,针对每个数据持有端来说,该数据持有端可以是用于采集图像数据的终端设备,也可以是用于采集音频数据的终端设备,还可以是用于采集射频数据的终端设备。在此基础上,由各数据持有端独立采集目标场景的数据,并将数据发送给服务中心端。服务中心端基于所有数据持有端发送的数据进行无人机检测,分析目标场景是否存在无人机。

但是,各数据持有端需要将所有数据实时发送给服务中心端,从而对数据通信链路造成较大压力。无法保护各数据持有端的数据隐私,可能会造成数据持有端的数据泄漏,即可能存在安全隐患。不同类型的数据不互通,结果不能复用,无法有效进行多类型数据的融合。例如,无法基于图像数据和音频数据共同分析是否存在无人机。不同干扰因素导致无人机检测方法准确率下降。例如,鸟类的存在、光线的差异导致基于图像数据的无人机检测方法准确率下降,无线射频繁杂的环境导致基于射频数据的无人机检测方法准确率下降,声源众多且嘈杂的环境导致基于音频数据的无人机检测方法准确率下降。

针对上述问题,本申请实施例中提出一种协作式无人机检测方法,在数据持有端不需要共享数据的前提下,结合不同维度的无人机检测手段解决无人机检测问题,也就是说,可以同时基于图像数据、音频数据和射频数据进行无人机检测,对数据持有端进行了隐私保护,也提高了无人机检测的准确率。

本申请实施例中,通过数据持有端将不同维度的数据规范为统一数据格式,再对服务中心端下发的无人机检测模型进行训练,将训练后的模型参数发送给服务中心端,服务中心端通过参数融合方法集成各数据持有端的模型参数更新无人机检测模型,并迭代至无人机检测模型的测试结果稳定,最终将更新后的无人机检测模型发送给各数据持有端,使得各数据持有端基于更新后的无人机检测模型进行无人机检测,提高无人机检测能力,提高无人机检测的准确率。

本申请实施例中,为了保证各数据持有端的隐私,各数据持有端不上传原始数据,仅上传模型参数。各数据持有端的原始数据包括但不限于有标签的图像数据、有标签的音频数据和有标签的射频数据,以及实时采集的图像数据、音频数据和射频数据。各数据持有端对自身的原始数据进行数据规范,并训练统一结构的无人机检测模型,再上传已训练完成的无人机检测模型的模型参数。

本申请实施例中,为了保证不同检测方法的统一结合,可以进行数据规范和统一训练,考虑到不同检测方法依赖的数据类型不同,但数据中都包含一种信息,即是否存在无人机,因此,可以通过数据规范将该信息提取出来统一训练无人机检测模型,从而实现不同检测方法(如基于图像的无人机检测方法、基于音频的无人机检测方法、基于射频的无人机检测方法)的有效结合。

本申请实施例中提出一种协作式无人机检测方法,该方法可以包括协同训练过程和协同检测过程。在协同训练过程中,针对每个数据持有端来说,可以训练得到目标数据规范模型和候选无人机检测模型,针对服务中心端来说,可以训练得到目标无人机检测模型。在协同检测过程中,针对每个数据持有端来说,可以基于目标数据规范模型和目标无人机检测模型进行无人机检测。

示例性的,针对协同训练过程来说,仅当数据持有端的持有数据不同时才进行训练,否则,只需要训练多个持有相同数据的一个数据持有端。比如说,数据持有端a和数据持有端b都持有图像数据,且持有的图像数据集不同,则数据持有端a和数据持有端b都需要参与协同训练,若持有的图像数据集相同,则数据持有端a需要参与协同训练,数据持有端b不需要参与协同训练,直接使用数据持有端a的训练结果。又例如,数据持有端c持有图像数据,数据持有端d持有音频数据,则数据持有端c和数据持有端d都需要参与协同训练。

参见图2所示,为协作式无人机检测方法的流程示意图,该方法可以包括:

步骤201,服务中心端获取数据规范模型(为了区分方便,可以将该数据规范模型记为初始数据规范模型)和无人机检测模型(为了区分方便,可以将该无人机检测模型记为初始无人机检测模型),并将该初始数据规范模型发送到各个数据持有端,并将该初始无人机检测模型发送到各个数据持有端。

示例性的,服务中心端可以预先配置初始数据规范模型,对此初始数据规范模型的结构不做限制,该初始数据规范模型可以记为model_norm。

初始数据规范模型的作用可以包括但不限于:提取不同格式数据(如图像数据、音频数据、射频数据等)中的同一纬度数据,即:是否存在无人机。将不同格式数据规范为同一表现形式的数据,以便输入到无人机检测模型中。

初始数据规范模型可以是采用主成分分析方法构建的网络模型,也可以是采用自编码器构建的网络模型,对此初始数据规范模型的结构不做限制。比如说,以初始数据规范模型是栈式去噪自编码器为例进行说明,栈式去燥自编码器是一种神经网络结构,通过对比输入数据和输出数据的差异来训练神经网络,栈式去燥自编码器具有抗噪能力更强、模型训练结果鲁棒性更强等特点。

初始数据规范模型可以依次包括输入层、k个第一隐藏层、1个第二隐藏层、k个第三隐藏层和输出层,即存在奇数个隐藏层,k为正整数。针对每个第一隐藏层,该第一隐藏层的输入数据的长度大于该第一隐藏层的输出数据的长度。针对第二隐藏层,第二隐藏层的输入数据的长度大于第二隐藏层的输出数据的长度。针对每个第三隐藏层,该第三隐藏层的输入数据的长度小于该第三隐藏层的输出数据的长度。后续以k为2为例,初始数据规范模型依次包括输入层、隐藏层1、隐藏层2、隐藏层3、隐藏层4、隐藏层5和输出层,当然,k的取值还可以为1、3、4等,对此不做限制。在该应用场景下,隐藏层1和隐藏层2是第一隐藏层,隐藏层3是第二隐藏层,隐藏层4和隐藏层5是第三隐藏层。

初始数据规范模型中各层神经元个数可以是:[m1,m2,m3,m4,m5,m6,m7],也就是说,输入层的神经元个数是m1,隐藏层1的神经元个数是m2,隐藏层2的神经元个数是m3,隐藏层3的神经元个数是m4,隐藏层4的神经元个数是m5,隐藏层5的神经元个数是m6,输出层的神经元个数是m7。

在上述各层神经元个数中,m1大于m2,m2大于m3,m3大于m4,m4小于m5,m5小于m6,m6小于m7,比如说,初始数据规范模型中各层神经元个数是:[65536,256,128,96,128,256,65536],当然,上述取值只是示例。

不同数据类型的数据持有端的初始数据规范模型中,除了隐藏层3的神经元数目相同外,其它层的神经元个数可以不同,也可以相同。例如,针对图像数据的数据持有端、音频数据的数据持有端、射频数据的数据持有端来说,初始数据规范模型的隐藏层3的神经元数目均是96。但是,对于输入层、隐藏层1、隐藏层2、隐藏层4、隐藏层5和输出层来说,神经元个数可以不同。

示例性的,服务中心端可以预先配置初始无人机检测模型,对此初始无人机检测模型的结构不做限制,该初始无人机检测模型可以记为model_detect。

初始无人机检测模型的作用可以包括但不限于:根据输入数据判断是否存在无人机。初始无人机检测模型可以是采用逻辑回归构建的网络模型,也可以是采用深度神经网络构建的网络模型,还可以是采用卷积神经网络构建的网络模型,还可以是采用循环神经网络构建的网络模型,对此初始无人机检测模型的结构不做限制,以初始无人机检测模型是深度神经网络为例进行说明。

初始无人机检测模型可以依次包括输入层、隐藏层1、隐藏层2、隐藏层3和输出层,对此隐藏层的数量不做限制,可以任意配置隐藏层的数量。

初始无人机检测模型中各层神经元个数可以是:[n1,n2,n3,n4,n5],也就是说,输入层的神经元个数是n1,隐藏层1的神经元个数是n2,隐藏层2的神经元个数是n3,隐藏层3的神经元个数是n4,输出层的神经元个数是n5。

n1可以是m4*p,p表示数据类型的总数量,假设存在3种数据类型,则n1是m4*3,如m4为96时,n1是288(96*3),n5可以是1,对于n2,n3,n4,可以任意设置,对此不做限制。比如说,初始无人机检测模型中各层神经元个数是:[288(96*3),1024,1024,1024,1],当然,上述取值只是示例。

不同数据类型的数据持有端的初始无人机检测模型中,各层神经元个数可以不同,也可以相同,后续以各层神经元个数相同为例进行说明。

步骤202,针对每个数据持有端,该数据持有端基于第一数据集中的样本数据对初始数据规范模型进行训练,得到已训练的目标数据规范模型,并基于目标数据规范模型对第一数据集中的样本数据进行数据规范,得到目标数据。

示例性的,数据持有端可以构建第一数据集,该第一数据集可以包括样本数据(如多个样本数据)和每个样本数据对应的标签值。该样本数据可以是图像数据、或者音频数据、或者射频数据,该标签值可以为第一取值或者第二取值。若该标签值为第一取值(如1),则表示该样本数据对应的是存在无人机,若该标签值为第二取值(如0),则表示该样本数据对应的是不存在无人机。

在一种可能的实施方式中,步骤202可以通过以下步骤实现:

步骤2021、针对第一数据集中的每个样本数据(后续以图像数据data_source为例),将该图像数据处理为长度为m1的数组data_input_norm。比如说,由于初始数据规范模型中各层神经元个数依次是[m1,m2,m3,m4,m5,m6,m7],因此,将该图像数据处理为长度为m1的数组data_input_norm,比如说,当m1是65536时,可以将该图像数据处理为长度为65536的数组data_input_norm。

步骤2022、针对每个样本数据对应的数组data_input_norm,可以为该数组data_input_norm添加噪声,得到加噪声数据,比如说,在数组data_input_norm的每个位置上添加噪声,得到加噪声数据data_input_norm_noise。

示例性的,针对该噪声来说,可以是根据经验配置的取值,也可以是基于数据持有端的特征信息(如ip地址、mac地址、序列号中的至少一个)生成的噪声,对此噪声的取值不做限制。比如说,可以基于数据持有端的ip地址、mac地址和序列号生成随机数种子randomseed,并根据该随机数种子确定噪声,继而在数组data_input_norm上增加噪声,得到加噪声数据data_input_norm_noise。

步骤2023、基于第一数据集中的每个样本数据对应的加噪声数据,即多个加噪声数据,将每个加噪声数据输入给初始数据规范模型得到去噪声数据。

比如说,针对每个加噪声数据,将长度为m1的加噪声数据输入给初始数据规范模型的输入层,输入层对数据进行处理,得到长度为m1的输出数据,将长度为m1的输出数据输入给隐藏层1。隐藏层1对数据进行处理,得到长度为m2的输出数据,将长度为m2的输出数据输入给隐藏层2,以此类推,直到将长度为m7的输出数据输入给输出层,输出层对数据进行处理,得到长度为m7的去噪声数据,即与该加噪声数据对应的去噪声数据data_output_norm_noise。

步骤2024、通过比较样本数据对应的去噪声数据data_output_norm_noise与样本数据对应的数组data_input_norm之间的差异(即损失值),不断调整初始数据规范模型的网络参数,一直到去噪声数据data_output_norm_noise与数组data_input_norm之间的差异趋于稳定(即损失值小于预设阈值),可以停止调整初始数据规范模型的网络参数,得到已训练完成的目标数据规范模型。

比如说,计算data_output_norm_noise与data_input_norm的损失值,基于该损失值对初始数据规范模型的网络参数进行调整,得到调整后的数据规范模型,网络参数的调整目标是,使data_output_norm_noise与data_input_norm的损失值越来越小,最终使得data_output_norm_noise与data_input_norm接近。确定调整后的数据规范模型是否已收敛。若否,则将调整后的数据规范模型作为初始数据规范模型,返回执行将每个加噪声数据输入给初始数据规范模型得到去噪声数据的操作。若是,则将调整后的数据规范模型作为目标数据规范模型,记为model_norm_final,并存储已训练完成的目标数据规范模型。

步骤2025、基于目标数据规范模型model_norm_final,将第一数据集中的每个样本数据输入给目标数据规范模型,得到该样本数据对应的规范后数据。

比如说,目标数据规范模型依次包括输入层、k个第一隐藏层、1个第二隐藏层、k个第三隐藏层和输出层,针对每个第一隐藏层,该第一隐藏层的输入数据的长度大于该第一隐藏层的输出数据的长度;针对第二隐藏层,第二隐藏层的输入数据的长度大于第二隐藏层的输出数据的长度;针对每个第三隐藏层,该第三隐藏层的输入数据的长度小于该第三隐藏层的输出数据的长度。

目标数据规范模型的结构与初始数据规范模型的结构可以相同,例如,目标数据规范模型依次包括输入层、隐藏层1、隐藏层2、隐藏层3、隐藏层4、隐藏层5和输出层。比如说,目标数据规范模型中各层神经元个数可以依次是:[m1,m2,m3,m4,m5,m6,m7],如可以为[65536,256,128,96,128,256,65536]。

针对第一数据集来说,可以将第一数据集中的每个样本数据转换为长度为m1的数组data_input_norm,从而得到新数据集,假设样本数据的总数量为n,则新数据集dataset_input_norm=[data_input_norm_1,data_input_norm_2,…,data_input_norm_n]。然后,将新数据集中的每个数组data_input_norm输入到目标数据规范模型model_norm_final,并将多个隐藏层中的目标隐藏层的输出数据作为规范后数据。比如说,目标隐藏层是中间位置的隐藏层(即第二隐藏层,即隐藏层3),因此,可以提取隐藏层3的输出数据作为规范后数据,该规范后数据的长度可以为m4,如规范后数据可以为长度是96位的数组。

将n个数组data_input_norm输入到目标数据规范模型model_norm_final后,得到n个规范后数据,将n个规范后数据记为dataset_norm=[data_norm_1,data_norm_2,…,data_norm_n],每个规范后数据为长度是96位的数组。

步骤2026、对每个样本数据对应的规范后数据进行扩展,得到该样本数据对应的目标数据,并基于每个样本数据对应的目标数据构建第二数据集。

比如说,针对每个规范后数据来说,可以确定该规范后数据对应的数据类型,该数据类型可以如图像类型、或音频类型、或射频类型等,基于该数据类型确定目标位置和扩展位置,在该目标位置处添加该规范后数据,在该扩展位置处添加扩展数据(如全0),从而得到该规范后数据对应的目标数据。

由于第一数据集中的每个样本数据具有对应的标签值,因此,可以将规范后数据对应的样本数据的标签值作为目标数据的标签值,该标签值可以为第一取值或者第二取值。若该标签值为第一取值,则表示目标数据对应的是存在无人机,若该标签值为第二取值,则表示目标数据对应的是不存在无人机。

综上所述,得到每个样本数据对应的目标数据,且目标数据具有对应的标签值,继而构建第二数据集,第二数据集包括目标数据及目标数据的标签值。

比如说,对n个规范后数据dataset_norm=[data_norm_1,data_norm_2,…,data_norm_n]进行扩展,得到n个目标数据,基于这n个目标数据构建第二数据集,即第二数据集包括目标数据和目标数据的标签值。该第二数据集记为dataset_norm_expand=[[data_norm_1_expand,label_1],[data_norm_2_expand,label_2],…,[data_norm_n_expand,label_n]]。data_norm_1_expand表示样本数据1对应的目标数据,label_1表示该目标数据的标签值,以此类推。

针对每个目标数据来说,假设规范后数据为长度是96位的数组,且数据类型的总数量为3,则该目标数据可以是288(96*3)位的数组。对于图像数据来说,第1-第96位是规范后数据,第97-第288位是全0。对于音频数据来说,第1-第96位是全0,第97-第192位是规范后数据,第193-第288位是全0。对于射频数据来说,第1-第192位是全0,第193-第288位为是规范后数据。

至此,完成步骤202,训练得到目标数据规范模型,可以执行后续步骤。

步骤203,数据持有端基于第二数据集对初始无人机检测模型进行训练,得到已训练的候选无人机检测模型。在初始无人机检测模型的训练过程中,初始无人机检测模型的输入是第二数据集中的目标数据,初始无人机检测模型的输出是该目标数据对应的标签值(表示是否存在无人机)。在初始无人机检测模型训练完成后,将候选无人机检测模型中的模型参数发送给服务中心端。

示例性的,数据持有端可以构建第二数据集,该第二数据集可以包括目标数据(如多个目标数据)和每个目标数据对应的标签值。该标签值可以为第一取值或者第二取值,若该标签值为第一取值,则表示该目标数据对应的是存在无人机,若该标签值为第二取值,则表示该目标数据对应的是不存在无人机。

示例性的,数据持有端可以利用第二数据集对初始无人机检测模型进行训练,通过比较初始无人机检测模型的输出与第二数据集中的标签值(如label_1等)是否一致进行训练,即,能够不断调整初始无人机检测模型的网络参数。

当初始无人机检测模型的输出与第二数据集中的标签值趋于稳定后完成训练,可以停止调整初始无人机检测模型的网络参数,从而得到已训练完成的候选无人机检测模型,将该候选无人机检测模型记为model_detect_tran。

示例性的,在得到候选无人机检测模型后,可以将第二数据集中的每个目标数据输入给候选无人机检测模型,得到该目标数据对应的第一检测结果;基于每个目标数据对应的第一检测结果及各目标数据的标签值,确定候选无人机检测模型对应的第一准确率。比如说,若目标数据对应的第一检测结果与该目标数据的标签值匹配(如二者相同),则将正确数量加1,若目标数据对应的第一检测结果与该目标数据的标签值不匹配(如二者不同),则将错误数量加1。在对第二数据集中的所有目标数据进行上述处理后,可以得到正确数量和错误数量,而正确数量与总数量(即正确数量 错误数量)的比例,就是第一准确率。

同理,可以将第二数据集中的每个目标数据输入给初始无人机检测模型,得到该目标数据对应的第二检测结果;基于每个目标数据对应的第二检测结果及各目标数据的标签值,可以确定初始无人机检测模型对应的第二准确率。

在此基础上,若第一准确率大于第二准确率,则说明候选无人机检测模型的性能优于初始无人机检测模型的性能,可以从候选无人机检测模型中提取出模型参数,并将该模型参数发送给服务中心端。比如说,模型参数是无人机检测模型中需要调整的参数,本文中的模型参数均是指会发生变化的参数值。例如,在对初始无人机检测模型进行训练时,可以对初始无人机检测模型中的参数a进行调整,则模型参数是候选无人机检测模型中的参数a的参数值,即调整后的参数a的参数值,也就是训练过程中最终确定的参数a的参数值。

若第一准确率不大于第二准确率,则说明初始无人机检测模型的性能优于候选无人机检测模型的性能,不需要将候选无人机检测模型中的模型参数发送给服务中心端,即不上传模型参数。即使不上传模型参数,数据持有端也可以向服务中心端告知本轮迭代的结果,即“false”,表示没有更优的模型参数。

步骤204,服务中心端基于多个数据持有端发送的模型参数生成目标无人机检测模型,并将该目标无人机检测模型发送给每个数据持有端。

在一种可能的实施方式中,步骤204可以通过以下步骤实现:

步骤2041、服务中心端获取每个数据持有端对应的质量分数,该质量分数越高,则表示该数据持有端训练的候选无人机检测模型的性能越好,该质量分数越低,则表示该数据持有端训练的候选无人机检测模型的性能越差。

比如说,针对每个数据持有端来说,服务中心端可以获取该数据持有端对应的场景信息和/或样本数据总数量,并基于场景信息和/或样本数据总数量确定该数据持有端对应的质量分数。当然,场景信息和样本数据总数量只是确定质量分数的两个示例,对此不做限制,还可以基于其它特征信息确定质量分数。

例如,在基于场景信息确定该数据持有端对应的质量分数时,针对基于图像数据进行无人机检测的数据持有端来说,若数据持有端所在场景中的鸟类较多(如鸟类数量大于预设阈值),则该数据持有端对应的质量分数较低,若数据持有端所在场景中的鸟类较少或者没有鸟类(如鸟类数量不大于上述预设阈值),则该数据持有端对应的质量分数较高。此外,针对基于音频数据进行无人机检测的数据持有端来说,若数据持有端所在场景中的噪音较多(如机场附近等),则该数据持有端对应的质量分数较低,若数据持有端所在场景中的噪音较少或者没有噪音,则该数据持有端对应的质量分数较高。此外,针对基于射频数据进行无人机检测的数据持有端来说,若数据持有端所在场景中的射频信号较多,则该数据持有端对应的质量分数较低,若数据持有端所在场景中的射频信号较少或者没有射频信号,则该数据持有端对应的质量分数较高。

当然,上述只是基于场景信息确定质量分数的示例,对此不做限制,只要某场景下的候选无人机检测模型的性能越好时,该场景的质量分数越高即可。

例如,在基于样本数据总数量确定该数据持有端对应的质量分数时,数据持有端是基于第二数据集训练得到候选无人机检测模型,且第二数据集中的目标数据总数量与第一数据集中的样本数据总数量相同,因此,在第一数据集中的样本数据总数量越多时,该数据持有端对应的质量分数越高,在第一数据集中的样本数据总数量越少时,该数据持有端对应的质量分数越低。当然,上述只是基于样本数据总数量确定质量分数的示例,对此确定方式不做限制。

综上所述,服务中心端可以获取每个数据持有端对应的质量分数,对此质量分数的获取方式不做限制,只要数据持有端训练的候选无人机检测模型的性能越好时,则该数据持有端对应的质量分数越高即可,在此不再赘述。

步骤2042、针对每个数据持有端,服务中心端基于该数据持有端对应的质量分数确定该数据持有端对应的加权系数,该质量分数越高,则该数据持有端对应的加权系数越大,该质量分数越低,则该数据持有端对应的加权系数越小。

例如,基于每个数据持有端对应的质量分数对所有数据持有端进行排序,如按照质量分数从高到低的顺序排序,或按照质量分数从低到高的顺序排序,以从高到低的顺序排序为例。基于排序后的所有数据持有端,第一个数据持有端对应的加权系数为weight1,第二个数据持有端对应的加权系数为weight2,以此类推,若存在p个数据持有端,第p个数据持有端对应的加权系数为weightp。

又例如,预先配置质量分数区间与加权系数的映射关系,质量分数区间越高,则加权系数越大,质量分数区间越低,则加权系数越小。在此基础上,在得到数据持有端对应的质量分数后,确定该质量分数所在的质量分数区间,将该质量分数区间对应的加权系数作为该数据持有端对应的加权系数。

又例如,可以根据质量分数计算出加权系数,某数据持有端的加权系数为该数据持有端的质量分数除以所有数据持有端的质量分数之和,即:

(quality_n)/((quality_1 quality_2 ⋯ quality_p))

quality_n表示第n个数据持有端的质量分数,p表示数据持有端的总数量。

当然,上述方式只是示例,对此不做限制,只要质量分数越高,数据持有端对应的加权系数越大,质量分数越低,数据持有端对应的加权系数越小即可。

步骤2043、服务中心端基于每个数据持有端发送的模型参数及各数据持有端对应的加权系数确定目标参数,即通过加权运算得到目标参数。

比如说,采用如下公式确定目标参数:(w1*weight1 w2*weight2 … wp*weightp)/(weight1 weight2 … weightp)。w1表示第一个数据持有端发送的模型参数,weight1表示第一个数据持有端对应的加权系数,w2表示第二个数据持有端发送的模型参数,weight2表示第二个数据持有端对应的加权系数,…,wp表示第p个数据持有端发送的模型参数,weightp表示第p个数据持有端对应的加权系数。又例如,采用如下公式确定目标参数:(w1*weight1 w2*weight2 … wp*weightp wc*weightc)/(weight1 weight2 … weightp weightc)。上述公式中,wc表示初始无人机检测模型(即步骤201中的初始无人机检测模型)中的模型参数,weightc表示初始无人机检测模型对应的加权系数,该加权系数weightc可以根据经验进行配置。

当然,上述只是确定目标参数的示例,对此确定方式不做限制。

步骤2044、服务中心端基于该目标参数生成目标无人机检测模型,即通过该目标参数替换初始无人机检测模型中的模型参数,得到目标无人机检测模型。

比如说,初始无人机检测模型中存在模型参数a1、模型参数b1和模型参数c1,服务中心端确定出模型参数a1对应的目标参数a2、模型参数b1对应的目标参数b2、模型参数c1对应的目标参数c2之后,通过目标参数a2替换初始无人机检测模型中的模型参数a1,通过目标参数b2替换初始无人机检测模型中的模型参数b1,通过目标参数c2替换初始无人机检测模型中的模型参数c1,在完成上述操作后,可以将更新后的无人机检测模型记为目标无人机检测模型。

至此,完成步骤204,得到目标无人机检测模型,在得到目标无人机检测模型后,可以基于该目标无人机检测模型执行后续步骤,即执行协同检测。或者,将目标无人机检测模型作为初始无人机检测模型,将初始无人机检测模型发送给各数据持有端,重新执行上述流程,由各数据持有端重新训练候选无人机检测模型,以此类推,直到各数据持有端重新训练的候选无人机检测模型的性能低于初始无人机检测模型,不再向服务中心端发送模型参数,所有数据持有端均不再发送模型参数后,服务中心端将最后一次的无人机检测模型作为目标无人机检测模型,基于该目标无人机检测模型执行后续步骤,即执行协同检测。

至此,完成无人机检测模型的训练过程,已完成训练的无人机检测模型为目标无人机检测模型,可以记为model_detect_final,服务中心端可以将目标无人机检测模型发送给各数据持有端,由各数据持有端基于目标无人机检测模型进行协同检测,也就是说,模型协同训练过程结束,执行协同检测流程。

示例性的,继续参见图2所示,该协同检测流程还可以包括以下步骤:

步骤205,针对每个数据持有端,该数据持有端采集目标场景的待检测数据(如图像数据、或音频数据、或射频数据),并将待检测数据转换为目标数据。

比如说,数据持有端可以周期性的采集目标场景的待检测数据,例如,针对每个数据持有端来说,均每隔1分钟采集一次目标场景的待检测数据。

在得到目标场景的待检测数据后,数据持有端可以将该待检测数据输入给目标数据规范模型,得到该待检测数据对应的规范后数据,该规范后数据可以是目标数据规范模型的目标隐藏层的输出数据,该实现过程与步骤2025的过程类似,只是将样本数据替换为待检测数据,在此不再重复赘述。

在得到待检测数据对应的规范后数据后,可以对规范后数据进行扩展,得到该待检测数据对应的目标数据。比如说,基于规范后数据对应的数据类型确定目标位置和扩展位置,在目标位置处添加该规范后数据,在扩展位置处添加扩展数据,得到目标数据,该过程与步骤2026类似,在此不再重复赘述。

步骤206,数据持有端将该待检测数据对应的目标数据输入给目标无人机检测模型,得到无人机检测结果,该无人机检测结果用于表示目标场景存在无人机或者不存在无人机。比如说,该无人机检测结果可以为第一取值或者第二取值,若该无人机检测结果为第一取值(如1),则表示目标场景存在无人机,若该无人机检测结果为第二取值(如0),则表示目标场景不存在无人机。

至此,针对每个数据持有端来说,该数据持有端可以确定该待检测数据对应的无人机检测结果,继而确定目标场景存在无人机或者不存在无人机。

示例性的,针对每个数据持有端来说,在得到无人机检测结果之后,还可以将无人机检测结果发送给服务中心端,即服务中心端可以得到各数据持有端发送的无人机检测结果,并对这些无人机检测结果进行汇聚,参见后续步骤。

步骤207,服务中心端接收多个数据持有端发送的无人机检测结果,并基于多个数据持有端发送的无人机检测结果确定目标检测结果。

在一种可能的实施方式中,步骤207可以通过以下步骤实现:

步骤2071、服务中心端确定每个数据持有端对应的权重值。比如说,可以预先配置每个数据持有端对应的权重值。或者,可以基于每个数据持有端对应的质量分数确定该数据持有端对应的权重值,确定方式参见步骤2041和步骤2042,将数据持有端对应的加权系数替换为权重值即可,在此不再重复赘述。

步骤2072、服务中心端基于每个数据持有端发送的无人机检测结果及各数据持有端对应的权重值确定目标检测结果,如进行加权运算得到目标检测结果。比如说,可以采用如下公式确定出目标检测结果:(e1*k1 e2*k2 … ep*kp)/(k1 k2 … kp)。上述公式中,e1表示第一个数据持有端发送的无人机检测结果,该无人机检测结果可以为第一取值(如1)或者第二取值(如0),k1表示第一个数据持有端对应的权重值,e2表示第二个数据持有端发送的无人机检测结果,k2表示第二个数据持有端对应的权重值,…,ep表示第p个数据持有端发送的无人机检测结果,kp表示第p个数据持有端对应的权重值。

步骤2073、若该目标检测结果大于阈值(可以根据经验配置,如位于0-1之间的数值,如0.5、0.6、0.7、0.8等,对此不做限制),则服务中心端确定目标场景存在无人机。若该目标检测结果不大于该阈值,则服务中心端确定目标场景不存在无人机。至此,服务中心端可以对所有无人机检测结果进行汇总,得到目标检测结果,并基于目标检测结果分析出目标场景是否存在无人机。

至此,完成协同检测流程,也就是说,每个周期执行一次协同检测流程。

在一种可能的实施方式中,还可以对无人机检测模型进行更新,无人机检测模型的更新触发条件可以任意配置。例如,可以是固定时间周期触发无人机检测模型的更新,如每个月更新一次无人机检测模型,或每周更新一次无人机检测模型。又例如,基于误报次数触发无人机检测模型的更新,即根据步骤206和步骤207的结果,每个数据持有端单独累积误报次数(如数据持有端的无人机检测结果与服务中心端的目标检测结果不匹配时,将误报次数加1)。针对每个数据持有端,若该数据持有端的误报次数与已有数据量(即该数据持有端的总上报次数)的比值达到阈值therehold_update_1(可以根据经验配置,如0.1等),则该数据持有端申请发起无人机检测模型的更新。若发起更新的数据持有端的总数量与所有数据持有端的总数量的比值达到阈值therehold_update_2(可以根据经验配置,如0.8等),则进行无人机检测模型的更新。

在需要进行无人机检测模型的更新时,可以将上述目标无人机检测模型作为初始无人机检测模型,并将初始无人机检测模型发送给各数据持有端,由各数据持有端利用已有的标签数据迭代步骤203和步骤204,从而完成无人机检测模型的更新,得到新的目标无人机检测模型,并将新的目标无人机检测模型发送给各数据持有端。针对各数据持有端已有的标签数据,该标签数据可以包括第二数据集中的目标数据及其标签值,以及待检测数据及其目标检测结果(即标签值,如第一取值或者第二取值等),对此标签数据不做限制。

由以上技术方案可见,本申请实施例中,可以实现无人机协同训练和无人机协同检测,通过数据持有端数据规范和模型训练、服务中心端分发和汇聚的思路,保证数据持有端数据的隐私。通过数据规范模型,保证不同检测方法能够相互结合协同训练同一个检测模型,统一完成无人机检测模型的训练和检测。能够应用在各类无人机检测场景中,提高了检测方法的鲁棒性。

基于与上述方法同样的申请构思,本申请实施例中提出一种协作式无人机检测装置,应用于包括服务中心端和多个数据持有端的系统,所述装置应用于任一数据持有端,参见图3所示,为所述装置的结构示意图,所述装置包括:

获取模块31,用于获取初始数据规范模型和初始无人机检测模型;训练模块32,用于基于第一数据集对所述初始数据规范模型进行训练,得到目标数据规范模型;将第一数据集中的样本数据输入给所述目标数据规范模型,得到所述样本数据对应的规范后数据;其中,所述目标数据规范模型至少包括多个隐藏层,所述规范后数据是所述多个隐藏层中的目标隐藏层的输出数据;利用第一数据集中的多个样本数据对应的多个规范后数据生成第二数据集;基于第二数据集对所述初始无人机检测模型进行训练,得到候选无人机检测模型;发送模块33,用于在得到候选无人机检测模型后,从所述候选无人机检测模型中提取出模型参数,将所述模型参数发送给所述服务中心端,以使所述服务中心端基于多个数据持有端发送的模型参数生成目标无人机检测模型;所述获取模块31,还用于从所述服务中心端获取所述目标无人机检测模型,并利用所述目标无人机检测模型检测目标场景是否存在无人机。

示例性的,所述训练模块32基于第一数据集对所述初始数据规范模型进行训练,得到目标数据规范模型时具体用于:针对第一数据集中的样本数据,为样本数据添加噪声,得到加噪声数据;将加噪声数据输入给初始数据规范模型得到去噪声数据;确定所述去噪声数据与样本数据之间的损失值,基于所述损失值对初始数据规范模型的网络参数进行调整,得到调整后的数据规范模型;确定调整后的数据规范模型是否已收敛;若否,则将调整后的数据规范模型作为初始数据规范模型,返回执行将加噪声数据输入给初始数据规范模型得到去噪声数据的操作;若是,则将调整后的数据规范模型作为目标数据规范模型。

示例性的,所述训练模块32利用第一数据集中的多个样本数据对应的多个规范后数据生成第二数据集时具体用于:针对第一数据集中的多个样本数据对应的每个规范后数据,确定该规范后数据对应的数据类型,该数据类型为图像类型、或音频类型、或射频类型;基于该数据类型确定目标位置和扩展位置,在目标位置处添加该规范后数据,在扩展位置处添加扩展数据,得到该规范后数据对应的目标数据;将该规范后数据对应的样本数据的标签值作为该目标数据的标签值,该标签值用于表示该目标数据对应的是存在无人机或不存在无人机;基于各规范后数据对应的目标数据及各目标数据的标签值生成第二数据集。

示例性的,所述发送模块33从所述候选无人机检测模型中提取出模型参数,将所述模型参数发送给所述服务中心端时具体用于:将第二数据集中的每个目标数据输入给所述候选无人机检测模型,得到该目标数据对应的第一检测结果;基于每个目标数据对应的第一检测结果及各目标数据的标签值,确定所述候选无人机检测模型对应的第一准确率;将第二数据集中的每个目标数据输入给所述初始无人机检测模型,得到该目标数据对应的第二检测结果;基于每个目标数据对应的第二检测结果及各目标数据的标签值,确定所述初始无人机检测模型对应的第二准确率;若第一准确率大于第二准确率,则从所述候选无人机检测模型中提取出模型参数,并将所述模型参数发送给所述服务中心端。

示例性的,所述获取模块32利用所述目标无人机检测模型检测目标场景是否存在无人机时具体用于:将目标场景的待检测数据输入给所述目标数据规范模型,得到规范后数据,该规范后数据是目标数据规范模型的目标隐藏层的输出数据;基于该规范后数据对应的数据类型确定目标位置和扩展位置,在目标位置处添加该规范后数据,在扩展位置处添加扩展数据,得到目标数据;将目标数据输入给目标无人机检测模型,得到无人机检测结果,所述无人机检测结果用于表示所述目标场景存在无人机或者不存在无人机。

基于与上述方法同样的申请构思,本申请实施例提出一种数据持有端,数据持有端包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行指令;处理器用于执行机器可执行指令以实现如下步骤:

获取初始数据规范模型和初始无人机检测模型;

基于第一数据集对所述初始数据规范模型进行训练,得到目标数据规范模型;将所述第一数据集中的样本数据输入给所述目标数据规范模型,得到所述样本数据对应的规范后数据;其中,所述目标数据规范模型至少包括多个隐藏层,所述规范后数据是所述多个隐藏层中的目标隐藏层的输出数据;

利用所述第一数据集中的多个样本数据对应的多个规范后数据生成第二数据集;基于所述第二数据集对所述初始无人机检测模型进行训练,得到候选无人机检测模型,并从所述候选无人机检测模型中提取出模型参数;

将所述模型参数发送给所述服务中心端,以使所述服务中心端基于多个数据持有端发送的模型参数生成目标无人机检测模型;

从所述服务中心端获取所述目标无人机检测模型,并利用所述目标无人机检测模型检测目标场景是否存在无人机。

基于与上述方法同样的申请构思,本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被处理器执行时,能够实现本申请上述示例公开的协作式无人机检测方法。

其中,上述机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:ram(radomaccessmemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜