1.本发明涉及人工智能技术领域,尤其涉及目标检测系统、训练方法及目标检测方法。
背景技术:2.目标检测任务是找出图像或视频中人们感兴趣的物体,并同时检测出它们的位置和大小。目标检测技术发展至今已经有几十年的时间,从技术的发展脉络看,可以划分为传统目标检测算法时期(2014年之前)以及之后的基于机器学习的目标检测算法。
3.传统目标检测算法主要基于手工提取特征,手工的缺陷主要在于计算量大,识别效果比较差,而且人工成本也非常高。随着机器学习的各种新算法成熟,目标检测技术得到了质的飞跃,基于cnn以及yolo的各种目标检测算法不断创新出来,大大提高了目标检测的识别能力和准确率。
4.这些层出不穷的新算法和新模型,功能越来越强大,网络深度也越来越深,网络结构也越来越复杂,而模型过大,其带来的问题就是其计算成本就越来越高,速度也受到了影响,因此无法在移动设备端使用和部署,因为移动端设备内存较小,同时移动设备计算量相当于服务器较低,导致目标检测模型不能部署和满足不了实时检测的需求。
技术实现要素:5.本发明为解决现有技术中存在的技术问题,提供一种目标检测系统,包括第一网络和第二网络,
6.第一网络用以对输入图片进行特征抽取,并给第二网络传递知识,包括依次连接的第一输入单元、第一特征抽取单元和第一预测单元,以及与第一预测单元的输出分别连接的第一定位单元和第一分类单元;
7.第二网络用以对输入图片进行特征抽取,并从第一个网络中学习,包括依次连接的第二输入单元、第二特征抽取单元和第二预测单元,以及与第二预测单元的输出分别连接的第二定位单元和第二分类单元。
8.进一步地,第二网络用以对输入图片进行特征抽取,并从第一个网络中学习为:第二特征抽取单元根据第一特征抽取单元的损失进行学习和更新参数,学习使用的损失函数为kl loss。
9.进一步地,第二网络用以对输入图片进行特征抽取,并从第一个网络中学习为:第二预测单元根据第一预测单元的损失进行学习和更新参数,学习使用的损失函数为kl loss。
10.进一步地,第二网络用以对输入图片进行特征抽取,并从第一个网络中学习为:第二分类单元根据第一分类单元的损失进行学习和更新参数,学习使用的损失函数为kl loss。
11.进一步地,第二网络用以对输入图片进行特征抽取,并从第一个网络中学习为:第
二定位单元根据第一定位单元的损失进行学习和更新参数,学习使用的损失函数为mse loss。
12.进一步地,第一分类单元和第二分类单元的输出均使用交叉熵损失函数进行损失计算。
13.进一步地,第一定位单元和第二定位单元的输出均使用smooth l1损失函数进行损失计算。
14.本发明还提供一种目标检测系统的训练方法,应用于目标检测系统中,包括步骤:
15.对第一网络和第二网络的各个单元进行联合蒸馏,用以将第一网络和第二网络的各个单元输入的参数进行压缩;
16.输入标签图片至第一网络和第二网络;
17.第一网络输出的损失函数为nms-loss,根据损失值更新第一网络;
18.第二网络根据第一网络的损失进行学习和更新参数,第二网络输出的损失函数为nms-loss与第一网络的损失函数之和。
19.本发明还一种目标检测方法,应用于目标检测系统中,包括步骤:
20.获取图片信息;
21.对图片信息进行处理,并给出检测结果,
22.所述目标检测系统为所述的目标检测系统。
23.本发明还提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如所述的目标检测方法。
24.本发明公开的方法和系统中所述模块,在实际应用中,即可以在一台目标服务器上部署多个模块,也可以每一模块独立部署在不同的目标服务器上,特别的,根据需要,为了提供更强大的计算处理能力,也可以根据需要将模块部署到集群目标服务器上。
25.由此可见,本发明采取的目标检测系统包括第一网络和第二网络,对第一网络和第二网络中的各个单元进行联合蒸馏处理,使得网络中的各个层的参数都被压缩,此外,本技术的第二网络不仅从输入的图片中进行学习,还从第一网络中进行学习,从而可以在压缩模型的同时不影响检测的准确率。
26.为了对本发明有更清楚全面的了解,下面结合附图,对本发明的具体实施方式进行详细描述。
附图说明
27.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
28.图1为本技术实施例的目标检测系统结构示意图。
29.其中:
30.第一输入单元10、第一特征抽取单元11、第一预测单元12,第一定位单元13和第一分类单元14。
31.第二输入单元10、第二特征抽取单元21和第二预测单元22,第二定位单元23和第二分类单元24。
具体实施方式
32.本技术针对现有技术的技术缺陷,提出一种新型的目标检测系统,包括第一网络和第二网络,对第一网络和第二网络中的各个单元进行联合蒸馏处理,使得网络中的各个层的参数都被压缩,此外,本技术的第二网络不仅从输入的图片中进行学习,还从第一网络中进行学习,从而可以在压缩模型的同时不影响检测的准确率。
33.请参阅图1,下面结合各种优选的实施方式进一步说明本技术的技术方案。
34.第一网络用以对输入图片进行特征抽取,并给第二网络传递知识,包括依次连接的第一输入单元、第一特征抽取单元和第一预测单元,以及与第一预测单元的输出分别连接的第一定位单元和第一分类单元;
35.第二网络用以对输入图片进行特征抽取,并从第一个网络中学习,包括依次连接的第二输入单元、第二特征抽取单元和第二预测单元,以及与第二预测单元的输出分别连接的第二定位单元和第二分类单元。
36.为了进一步提高特征抽取的准确率,第二网络可以从第一个网络中学习:第二网络中的第二特征抽取单元根据第一特征抽取单元的损失进行学习和更新参数,学习使用的损失函数为kl loss。
37.作为可选的学习方式,也可以从预测单元中进行学习,即第二预测单元根据第一预测单元的损失进行学习和更新参数,学习使用的损失函数为kl loss。
38.作为可选的学习方式,也可以从分类单元中进行学习,即第一分类单元第二分类单元根据第一分类单元的损失进行学习和更新参数,学习使用的损失函数为kl loss。
39.作为可选的学习方式,也可以从定位单元中进行学习,即第二定位单元根据第一定位单元的损失进行学习和更新参数,学习使用的损失函数为mse loss。
40.作为一种更优选的的学习方式,可以将第二网络的各个模块即第二输入单元、第二特征抽取单元、第二预测单元,第二定位单元、第二分类单元分别与第一网络对应的功能单元进行学习。
41.本技术实施例中,第一分类单元和第二分类单元的输出均使用交叉熵损失函数进行损失计算。
42.本技术实施例中,第一定位单元和第二定位单元的输出均使用smooth l1损失函数进行损失计算。
43.上述实施例中,第一输入单元、第一输入单元主要是用来对输入的图片进行缩放等操作,将图像转化成适合于后续特征提取的格式图片,可以选择线性网络实现,也可以使用cnn或者其他网络结构来实现。
44.第一特征抽取单元和第二特征抽取单元可以使用如fpn或者darknet等模型来实现。
45.第一定位单元和第二定位单元可以使用ssd、yolo等来实现。
46.第一分类单元和第二分类单元可以使用一些分类器如softamx来实现。
47.基于上述实施例的目标检测系统,其训练方法为:首先对第一网络和第二网络的
各个单元进行联合蒸馏,使得所有蒸馏的层参数都被压缩,从而可以大大缩了模型。
48.输入标签图片至第一网络和第二网络,
49.第一网络输出的损失函数为nms-loss,并根据损失值对第一网络进行学习和更新。
50.第二网络根据第一网络的损失进行学习和更新参数,输出的损失函数为nms-loss与第一网络的损失函数之和,如此,第一网络可以把知识传递给第二网络进行学习,从而能够大大提高了目标检测的准确率。
51.基于上述实施例,本技术提供一种目标检测方法,应用于目标检测系统中,包括步骤:
52.获取图片信息;
53.对图片信息进行处理,并给出检测结果,
54.所述目标检测系统为上述实施例的目标检测系统,具体实施方案请参阅上述内容,不再详述。
55.本技术实施例还提供一种计算机可读存储介质,所述存储介质中存储有指令或者程序,所述指令或者程序由处理器加载并执行如上述任一所述的目标检测方法。
56.本技术实施例还提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如上述任一所述的目标检测方法。
57.需要说明的是,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过计算机程序来指令相关的硬件来完成,所述计算机程序可以存储于计算机可读存储介质中,所述存储介质可以包括但不限于:只读存储器(rom,read only memory)、随机存取存储器(ram,random access memory)、磁盘或光盘等。
58.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
技术特征:1.一种目标检测系统,包括第一网络和第二网络,其特征是:第一网络用以对输入图片进行特征抽取,并给第二网络传递知识,包括依次连接的第一输入单元、第一特征抽取单元和第一预测单元,以及与第一预测单元的输出分别连接的第一定位单元和第一分类单元;第二网络用以对输入图片进行特征抽取,并从第一个网络中学习,包括依次连接的第二输入单元、第二特征抽取单元和第二预测单元,以及与第二预测单元的输出分别连接的第二定位单元和第二分类单元。2.如权利要求1所述的目标检测系统,其特征是,第二网络用以对输入图片进行特征抽取,并从第一个网络中学习为:第二特征抽取单元根据第一特征抽取单元的损失进行学习和更新参数,学习使用的损失函数为kl loss。3.如权利要求1所述的目标检测系统,其特征是,第二网络用以对输入图片进行特征抽取,并从第一个网络中学习为:第二预测单元根据第一预测单元的损失进行学习和更新参数,学习使用的损失函数为kl loss。4.如权利要求1所述的目标检测系统,其特征是,第二网络用以对输入图片进行特征抽取,并从第一个网络中学习为:第二分类单元根据第一分类单元的损失进行学习和更新参数,学习使用的损失函数为kl loss。5.如权利要求1所述的目标检测系统,其特征是,第二网络用以对输入图片进行特征抽取,并从第一个网络中学习为:第二定位单元根据第一定位单元的损失进行学习和更新参数,学习使用的损失函数为mse loss。6.如权利要求1所述的目标检测系统,其特征是,第一分类单元和第二分类单元的输出均使用交叉熵损失函数进行损失计算。7.如权利要求1所述的目标检测系统,其特征是,第一定位单元和第二定位单元的输出均使用smooth l1损失函数进行损失计算。8.一种目标检测系统的训练方法,应用于目标检测系统中,其特征是,包括步骤:对第一网络和第二网络的各个单元进行联合蒸馏,用以将第一网络和第二网络的各个单元输入的参数进行压缩;输入标签图片至第一网络和第二网络;第一网络输出的损失函数为nms-loss,根据损失值更新第一网络;第二网络根据第一网络的损失进行学习和更新参数,第二网络输出的损失函数为nms-loss与第一网络的损失函数之和。9.一种目标检测方法,应用于目标检测系统中,包括步骤:获取图片信息;对图片信息进行处理,并给出检测结果,其特征是,所述目标检测系统为权利要求1-7所述的目标检测系统。10.一种电子设备,其特征是,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求9所述的目标检测方法。
技术总结本发明公开一种目标检测系统、训练方法及目标检测方法,其目标检测系统包括第一网络和第二网络,第一网络用以对输入图片进行特征抽取,并给第二网络传递知识,包括依次连接的第一输入单元、第一特征抽取单元和第一预测单元,以及与第一预测单元的输出分别连接的第一定位单元和第一分类单元;第二网络用以对输入图片进行特征抽取,并从第一个网络中学习,包括依次连接的第二输入单元、第二特征抽取单元和第二预测单元,以及与第二预测单元的输出分别连接的第二定位单元和第二分类单元。本发明可以在压缩模型的同时不影响检测的准确率。可以在压缩模型的同时不影响检测的准确率。可以在压缩模型的同时不影响检测的准确率。
技术研发人员:曾祥云 朱姬渊
受保护的技术使用者:上海易康源医疗健康科技有限公司
技术研发日:2022.03.28
技术公布日:2022/7/5