CN112200062B - 一种基于神经网络的目标检测方法、装置、机器可读介质及设备 - Google Patents
一种基于神经网络的目标检测方法、装置、机器可读介质及设备 Download PDFInfo
- Publication number
- CN112200062B CN112200062B CN202011069007.0A CN202011069007A CN112200062B CN 112200062 B CN112200062 B CN 112200062B CN 202011069007 A CN202011069007 A CN 202011069007A CN 112200062 B CN112200062 B CN 112200062B
- Authority
- CN
- China
- Prior art keywords
- loss
- network
- distillation
- target
- knowledge
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 66
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 34
- 238000000034 method Methods 0.000 claims abstract description 49
- 238000013140 knowledge distillation Methods 0.000 claims abstract description 39
- 238000012549 training Methods 0.000 claims abstract description 37
- 230000008569 process Effects 0.000 claims abstract description 19
- 238000004821 distillation Methods 0.000 claims description 58
- 238000010586 diagram Methods 0.000 claims description 38
- 239000011159 matrix material Substances 0.000 claims description 21
- 238000010276 construction Methods 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 8
- 238000010606 normalization Methods 0.000 claims description 8
- 238000011176 pooling Methods 0.000 claims description 8
- 239000000284 extract Substances 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 20
- 238000012545 processing Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 10
- 238000000605 extraction Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000002203 pretreatment Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
- G06V20/53—Recognition of crowd images, e.g. recognition of crowd congestion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
- G06Q50/205—Education administration or guidance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Educational Technology (AREA)
- Tourism & Hospitality (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Strategic Management (AREA)
- Biophysics (AREA)
- Educational Administration (AREA)
- Multimedia (AREA)
- Molecular Biology (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- General Business, Economics & Management (AREA)
- Image Analysis (AREA)
Abstract
本发明提出一种基于神经网络的目标检测方法,包括:构建教师网络;通过样本图像集训练所述教师网络;构建学生网络,其中所述学生网络的参数量小于所述教师网络的参数量;在采用知识蒸馏提取所述教师网络训练获得的知识并迁移到所述学生网络的过程中,通过样本图像集对所述学生网络进行训练;通过训练后的学生网络,对输入的图像进行目标检测。本发明通过深度神经网络自动提取目标所需特征,避免了人工设计提取低层次抽象特征的问题。通过知识蒸馏,使得小网络在检测精度接近于大网络的同时保证了较高的检测速度,从而满足了目标检测中对于准确性和实时性的双重要求。
Description
技术领域
本发明涉及图像处理领域,具体涉及一种基于神经网络的目标检测方法、装置、机器可读介质及设备。
背景技术
头肩检测技术存在很多应用场景比如人群计数、密度估计、客流统计,但是在实际应用场景中客户不仅对于头肩检测精度有着比较高的要求,同时对于头肩检测的实时性也有着非常高的要求。
传统的头肩检测方法通常是采用Hog特征提取以及SVM分类器或者采用haar特征提取加adaboost级联技术,但是这些传统方法通常需要人工设计来提取特征,容易受到光照、遮挡等因素的干扰和影响,造成头肩检测性能的下降,很难满足目前实际应用场景对于头肩检测性能的要求。
另一方面,虽然目前存在一些利用深度神经网络进行头肩检测的方法和技术,但是目前的头肩检测技术及方法很难在精度和实时性两者中达到平衡:既取得较高的精度又有很好的准确性。目前的头肩检测如果采用较大较深的深度神经网络可能会在检测精度表现较优,但是实时性很难保证。如果采用较小的深度神经网络可能会在实时性方面表现较优,但在检测精度上又很难保证。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于神经网络的目标检测方法方法、装置、机器可读介质及设备,用于解决现有技术存在的问题。
为实现上述目的及其他相关目的,本发明提供一种基于神经网络的目标检测方法,包括:
构建教师网络;
通过样本图像集训练所述教师网络;
构建学生网络,其中所述学生网络的参数量小于所述教师网络的参数量;
在采用知识蒸馏提取所述教师网络训练获得的知识并迁移到所述学生网络的过程中,通过样本图像集对所述学生网络进行训练;
通过训练后的学生网络,对输入的图像进行目标检测。
可选地,在知识蒸馏过程中,对教师网络输出的特征图进行知识蒸馏,并将蒸馏出的知识迁移到所述学生网络中。
可选地,所述教师网络包括依次连接的卷积单元、批量归一化单元、函数激活单元和池化单元;所述卷积单元包括依次连接的多个卷积子单元,每个卷积子单元输出一特征图;每个卷积子单元包括多个铺叠设置的卷积层。
可选地,所述对教师网络输出的特征图进行知识蒸馏包括:确定目标蒸馏区域,对所述目标蒸馏区域的特征图进行知识蒸馏,其中目标蒸馏区域的确定方法包括:
将样本图像中标注的目标框以不同的尺度分别映射到对应的卷积子单元输出的特征图上;
构建与特征图大小相同的矩阵;
判断所述特征图中是否存在目标框;
若所述特征图中存在目标框,则将所构建的矩阵的对应区域的值置为1,否则置为0,从而形成0-1蒸馏mask;蒸馏mask中值为1对应的特征区域即为目标蒸馏区域。
可选地,根据损失函数判断所述学生网络的收敛结果,所述损失函数为:
loss=lossA+λ·lossB
其中,lossA为学生网络在标注数据下的检测损失,lossB为学生网络在从教师网络上提取监督信息时的蒸馏损失,λ为目标的检测损失和蒸馏损失之间的权重系数;所述lossA包括包括目标框中心点损失lossxy,目标框大小损失losswh,目标框是否存在目标的置信度损失lossconf以及分类损失losscls,具体为:lossA=lossxy+losswh+lossconf+losscls。
可选地,所述lossB为
为实现上述目的及其他相关目的,本发明提供一种基于神经网络的目标检测装置,包括:
第一网络构建模块,用于构建教师网络;
第一训练模块,用于通过样本图像集训练所述教师网络;
第二网络构建模块,用于构建学生网络,其中所述学生网络的参数量小于所述教师网络的参数量;
第二训练模块,用于在采用知识蒸馏提取所述教师网络训练获得的知识并迁移到所述学生网络的过程中,通过样本图像集对所述学生网络进行训练;
目标检测模块,用于通过训练后的学生网络,对输入的图像进行目标检测。
可选地,在知识蒸馏过程中,对教师网络输出的特征图进行知识蒸馏,并将蒸馏出的知识迁移到所述学生网络中。
可选地,所述教师网络包括依次连接的卷积单元、批量归一化单元、函数激活单元和池化单元;所述卷积单元包括依次连接的多个卷积子单元,每个卷积子单元输出一特征图;每个卷积子单元包括多个铺叠设置的卷积层。
可选地,所述第二训练模块包括:
蒸馏区域确定子模块,用于确定目标蒸馏区域;
知识蒸馏子模块,用于对所述目标蒸馏区域的特征图进行知识蒸馏,其中目标区域确定子模块包括:
映射单元,用于将样本图像中标注的目标框以不同的尺度分别映射到对应的特征图上;
矩阵构建单元,用于构建与特征图大小相同的矩阵;
目标框单元,用于判断所述特征图中是否存在目标框;若所述特征图中存在目标,则将所构建的矩阵的对应区域的值置为1,否则置为0,从而形成0-1蒸馏mask;蒸馏mask中值为1对应的特征区域即为目标蒸馏区域。
可选地,根据损失函数判断所述学生网络的收敛结果,所述损失函数为:
loss=lossA+λ·lossB
其中,lossA为学生网络在标注数据下的检测损失,lossB为学生网络在从教师网络上提取监督信息时的蒸馏损失,λ为目标的检测损失和蒸馏损失之间的权重系数;所述lossA包括包括目标框中心点损失lossxy,目标框大小损失losswh,目标框是否存在目标的置信度损失lossconf以及分类损失losscls,具体为:lossA=lossxy+losswh+lossconf+losscls。
可选地,所述lossB为
为实现上述目的及其他相关目的,本发明还提供一种设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当所述一个或多个处理器执行时,使得所述设备执行前述的一个或多个所述的方法。
为实现上述目的及其他相关目的,本发明还提供一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得设备执行前述的一个或多个所述的方法。
如上所述,本发明提供的一种基于神经网络的目标检测方法、装置、机器可读介质及设备、装置、机器可读介质及设备,具有以下有益效果:
本发明的一种基于神经网络的目标检测方法,包括:构建教师网络;通过样本图像集训练所述教师网络;构建学生网络,其中所述学生网络的参数量小于所述教师网络的参数量;在采用知识蒸馏提取所述教师网络训练获得的知识并迁移到所述学生网络的过程中,通过样本图像集对所述学生网络进行训练;通过训练后的学生网络,对输入的图像进行目标检测。本发明通过深度神经网络自动提取目标所需特征,避免了人工设计提取低层次抽象特征的问题。通过知识蒸馏,使得小网络在检测精度接近于大网络的同时保证了较高的检测速度,从而满足了目标检测中对于准确性和实时性的双重要求。
附图说明
图1为本发明一实施例一种基于神经网络的目标检测方法的流程图;
图2为本发明一实施例基于神经网络的目标检测方法示意图;
图3为本发明知识蒸馏过程的示意图;
图4为本发明一实施例确定蒸馏区域方法的流程图;
图5为本发明一实施例一种基于神经网络的目标检测装置结构示意图;
图6为本发明一实施例中终端设备的硬件结构示意图;
图7为本发明一实施例中终端设备的硬件结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
如图1所示,一种目标检测模型构建方法,包括:
S11构建教师网络;
S12通过样本图像集训练所述教师网络;
S13构建学生网络,其中所述学生网络的参数量小于所述教师网络的参数量;
S14在采用知识蒸馏提取所述教师网络训练获得的知识并迁移到所述学生网络的过程中,通过样本图像集对所述学生网络进行训练;
S15通过训练后的学生网络,对输入的图像进行目标检测。
本发明通过深度神经网络自动提取目标所需特征,避免了传统测方法中人工设计提取低层次抽象特征的问题。通过知识蒸馏,使得小网络(学生网络)在检测精度接近于大网络(教师网络)的同时保证了较高的检测速度,从而满足了目标检测中对于准确性和实时性的双重要求。
如图2所示,其中的一个神经网络可以包括骨干网(backbone)、颈部网(neck)、头部网(head)。每一个网络均由卷积、批量归一化、函数激活、池化等操作组成。其中骨干网采用一个较大较深的神经网络,在本实施例中,所述教师网络可以采用如图2的骨干网,通过样本图像集训练所述教师网络。当然在另一实施例中,教师网络可以是一个完整的神经网络,该教师网络经过训练后可以直接用于目标检测。
在步骤S14中,所述的知识蒸馏是知识的提取,可以将一个神经网络学习到的知识转移到另外一个神经网络。其中,知识蒸馏的过程可以如图3所示,其中,中间矩形框表示的是知识,Data表示的是数据,Input layer为输入层,Hint layers为隐含层,out layer为输出层.,Teacher Model为教师模型。在知识蒸馏中,知识在不同的任务任务场景中具有不同定义,没有一个严格的定义。知识包括基于关系的知识Relation-Based Knowledge、基于特征的知识Feature-Based Knowledge、基于响应的知识Response-Based Knowledge。在本实施例中,指的是基于特征的知识。
在本实施例中,所述的一个神经网络可以是教师网络,另一个神经网络提的是学生网络。一般来说,教师网络具有强大的能力和表现,而学生网络则更为紧凑。那么通过知识蒸馏,希望学生网络能尽可能逼近亦或是超过教师网络,从而用更少的复杂度来获得类似的预测效果。这里的教师网络往往是一个模型尺寸较大、结构较复杂、运算量较高但性能较好的网络,例如,教师网络可以采用包括但不限于ResNet-152、DenseNet-264、Darknet-53等网络结构。这里的学生网络是一个网络尺寸较小、结构较简单、运算量较低但性能较差的网络,例如,学生网络可以采用包括但不限于ResNet-18,因此,通过知识蒸馏可以在教师网络与学生网络之间进行知识迁移,使得学生网络学习教师网络的监督信息。在学生网络学习到教师网络的监督信息的同时,利用样本图像集对学生网络进行训练。
在一实施例中,所述教师网络包括依次连接的卷积单元、批量归一化单元、函数激活单元和池化单元。在训练教师网络的过程中,选取一个较大较深的深度学习网络作为教师网络提取图像中的特征信息,在由样本图像组成的训练集上训练,以获得具有较高检测准确度的教师网络。在教师网络中,所述卷积单元包括依次连接多个卷积子单元,每个卷积子单元输出一特征图;每个卷积子单元包括多个铺叠设置的卷积层。比如,若卷积单元包括20层卷积层,那个可以把1~5卷积层作为一个卷积单元,6~15卷积层作为一个卷积单元,16~20卷积层作为一个卷积单元,每个卷积单元输出一个特征图。
在一实施例中,所述学生网络包括依次连接的卷积单元、批量归一化单元、函数激活单元和池化单元。在学生网络中,所述卷积单元包括依次连接多个卷积子单元,每个卷积子单元输出一特征图;每个卷积子单元包括多个铺叠设置的卷积层。比如,若卷积单元包括10层卷积层,那个可以把1~3卷积层作为一个卷积单元,4~7卷积层作为一个卷积单元,8~10卷积层作为一个卷积单元,每个卷积单元输出一个特征图。需要说明的是,学生网络每个卷积单元输出的特征图的大小与教师网络每个卷积单元输出的特征图的大小相同,其具有一一对应的关系,即学生网络第一个卷积单元输出的特征图的大小与教师网络第一个卷积单元输出的特征图的大小相同,学生网络第二个卷积单元输出的特征图的大小与教师网络第二个卷积单元输出的特征图的大小相同,学生网络第三个卷积单元输出的特征图的大小与教师网络第三个卷积单元输出的特征图的大小相同。
需要说明的是,在知识蒸馏过程中,通过对教师网络输出的特征图进行知识蒸馏,并将蒸馏出的知识迁移到所述学生网络中。
在对教师网络输出的特征图进行知识蒸馏的过程中,图像中不会只存在目标区域,还会存在目标区域以外的区域,可以理解为干扰区域,因此,为了减小计算量,在进行知识蒸馏时,可以只对目标区域的特征进行学习。目标区域相应的被叫作目标蒸馏区域,通过对该目标蒸馏区域进行蒸馏,一方面可以降低对全特征图进行蒸馏带来的噪声信息,这些噪声信息可能会掩盖学生网络对于教师网络监督信息的提取,另一方面可以避免对所有区域进行蒸馏以减少计算量。
具体地,如图4所示,在知识蒸馏过程中,目标蒸馏区域的确定方法包括:
S41将样本图像中标注的目标框以不同的尺度分别映射到对应的卷积子单元输出的特征图上;
其中,目标框以不同的尺度可以理解为,在样本图像中对目标进行标注会形成一个目标框,将这个目标框进行不同尺度的变换,比如,0.5x,1.0x,1.5x等等。其中,每个尺度对应教师网络中每个卷积单元输出的一个特征图。尺度最大的目标框对应由低层的卷积层输出的特征图,尺度最小的目标框对应由高层的卷积层输出的特征图.例如1.5x的目标框对应1~5卷积层构成的卷积单元输出的特征图,1.0x的目标框对应6~15卷积层构成的卷积单元输出的特征图,0.5x的目标框对应17~20卷积层构成的卷积单元输出的特征图。
S42构建与特征图大小相同的矩阵;
S43判断所述特征图中是否存在目标框;
若所述特征图中存在目标框,则将所构建的矩阵的对应区域的值置为1,否则置为0,从而形成0-1蒸馏mask;蒸馏mask中值为1对应的特征区域即为目标蒸馏区域。
在一实施例中,根据损失函数判断所述学生网络的收敛结果,所述损失函数为:
loss=lossA+λ·lossB
其中,lossA为学生网络在标注数据下的检测损失,lossB为学生网络在从教师网络上提取监督信息时的蒸馏损失,λ为目标的检测损失和蒸馏损失之间的权重系数。
所述lossA包括包括目标框中心点损失lossxy,目标框大小损失losswh,目标框是否存在目标的置信度损失lossconf以及分类损失losscls,具体为:lossA=lossxy+losswh+lossconf+losscls。
所述lossB为
在经过前述步骤得到学生网络,还需要对学生网络进行训练,具体地,将学生网络在含有样本图像中的训练集中进行训练,在不过拟合的情况下,在所述的损失函数loss达到最小值,即获得训练后的学生网络。通过训练后的学生网络,对输入的图像进行目标检测。
在一实施例中,将待检测图像输入到训练后的学生网络进行检测,获得目标的预测框以及每一个框对应的置信度得分。根据应用场景设定指定的阈值,将预测框中对应的置信度得分小于指定阈值的框丢弃,保留置信度得分大于阈值的预测框,即获得目标。
在另一实施例中,将如图2所示神经网络中的教师网络替换成训练后的学生网络,形成所述目标检测模型。通过所述神经网络模型对输入的图像进行目标检测。
在一实施例中,在利用样本图像对教师网络进行训练之前,需要对样本图像进行预处理;这里的样本图像可以是一个或多个识别对象的多帧图像,如头肩图像、人脸图像、植物图像、建筑图像、汽车图像等;其中,预处理的方法为:
将图像进行不同程度的亮度动态调整,对比度动态调整、亮度动态调节、饱和度动态调整、随机旋转以及模糊处理等以实现在线增强方式和离线增强方式相结合。从最大程度上避免光线、模糊、遮挡等因素带来的干扰影响。
如图5所示,一种目标检测模型构建装置,包括:
第一网络构建模块51,用于构建教师网络;
第一训练模块52,用于通过样本图像集训练所述教师网络;
第二网络构建模块53,用于构建学生网络,其中所述学生网络的参数量小于所述教师网络的参数量;
第二训练模块54,用于在采用知识蒸馏提取所述教师网络训练获得的知识并迁移到所述学生网络的过程中,通过样本图像集对所述学生网络进行训练;
目标检测模块55,用于通过训练后的学生网络,对输入的图像进行目标检测。
在一实施例中,在知识蒸馏过程中,对教师网络输出的特征图进行知识蒸馏,并将蒸馏出的知识迁移到所述学生网络中。
在一实施例中,所述教师网络包括依次连接的卷积单元、批量归一化单元、函数激活单元和池化单元;所述卷积单元包括依次连接的多个卷积子单元,每个卷积子单元输出一特征图;每个卷积子单元包括多个铺叠设置的卷积层。
在一实施例中,所述第二训练模块包括:
蒸馏区域确定子模块,用于确定目标蒸馏区域;
知识蒸馏子模块,用于对所述目标蒸馏区域的特征图进行知识蒸馏,其中目标区域确定子模块包括:
映射单元,用于将样本图像中标注的目标框以不同的尺度分别映射到对应的特征图上;
矩阵构建单元,用于构建与特征图大小相同的矩阵;
目标框单元,用于判断所述特征图中是否存在目标框;若所述特征图中存在目标,则将所构建的矩阵的对应区域的值置为1,否则置为0,从而形成0-1蒸馏mask;蒸馏mask中值为1对应的特征区域即为目标蒸馏区域。
在一实施例中,根据损失函数判断所述学生网络的收敛结果,所述损失函数为:
loss=lossA+λ·lossB
其中,lossA为学生网络在标注数据下的检测损失,lossB为学生网络在从教师网络上提取监督信息时的蒸馏损失,λ为目标的检测损失和蒸馏损失之间的权重系数;所述lossA包括包括目标框中心点损失lossxy,目标框大小损失losswh,目标框是否存在目标的置信度损失lossconf以及分类损失losscls,具体为:lossA=lossxy+losswh+lossconf+losscls。
在一实施例中,所述lossB为
在本实施例中,该装置实施例与前述的方法实施例相对应,具体功能和技术效果参照上述实施例即可,此处不再赘述。
本申请实施例还提供了一种设备,该设备可以包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述设备执行图1所述的方法。在实际应用中,该设备可以作为终端设备,也可以作为服务器,终端设备的例子可以包括:智能手机、平板电脑、电子书阅读器、MP3(动态影像专家压缩标准语音层面3,Moving Picture Experts GroupAudio Layer III)播放器、MP4(动态影像专家压缩标准语音层面4,Moving Picture Experts Group Audio Layer IV)播放器、膝上型便携计算机、车载电脑、台式计算机、机顶盒、智能电视机、可穿戴设备等等,本申请实施例对于具体的设备不加以限制。
本申请实施例还提供了一种非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在设备时,可以使得该设备执行本申请实施例的图1中方法所包含步骤的指令(instructions)。
图6为本申请一实施例提供的终端设备的硬件结构示意图。如图所示,该终端设备可以包括:输入设备1100、第一处理器1101、输出设备1102、第一存储器1103和至少一个通信总线1104。通信总线1104用于实现元件之间的通信连接。第一存储器1103可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,第一存储器1103中可以存储各种程序,用于完成各种处理功能以及实现本实施例的方法步骤。
可选的,上述第一处理器1101例如可以为中央处理器(Central ProcessingUnit,简称CPU)、应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,该第一处理器1101通过有线或无线连接耦合到上述输入设备1100和输出设备1102。
可选的,上述输入设备1100可以包括多种输入设备,例如可以包括面向用户的用户接口、面向设备的设备接口、软件的可编程接口、摄像头、传感器中至少一种。可选的,该面向设备的设备接口可以是用于设备与设备之间进行数据传输的有线接口、还可以是用于设备与设备之间进行数据传输的硬件插入接口(例如USB接口、串口等);可选的,该面向用户的用户接口例如可以是面向用户的控制按键、用于接收语音输入的语音输入设备以及用户接收用户触摸输入的触摸感知设备(例如具有触摸感应功能的触摸屏、触控板等);可选的,上述软件的可编程接口例如可以是供用户编辑或者修改程序的入口,例如芯片的输入引脚接口或者输入接口等;输出设备1102可以包括显示器、音响等输出设备。
在本实施例中,该终端设备的处理器包括用于执行各设备中各模块的功能,具体功能和技术效果参照上述实施例即可,此处不再赘述。
图7为本申请的一个实施例提供的终端设备的硬件结构示意图。图7是对图6在实现过程中的一个具体的实施例。如图所示,本实施例的终端设备可以包括第二处理器1201以及第二存储器1202。
第二处理器1201执行第二存储器1202所存放的计算机程序代码,实现上述实施例中图1所述方法。
第二存储器1202被配置为存储各种类型的数据以支持在终端设备的操作。这些数据的示例包括用于在终端设备上操作的任何应用程序或方法的指令,例如消息,图片,视频等。第二存储器1202可能包含随机存取存储器(random access memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
可选地,第二处理器1201设置在处理组件1200中。该终端设备还可以包括:通信组件1203,电源组件1204,多媒体组件1205,语音组件1206,输入/输出接口1207和/或传感器组件1208。终端设备具体所包含的组件等依据实际需求设定,本实施例对此不作限定。
处理组件1200通常控制终端设备的整体操作。处理组件1200可以包括一个或多个第二处理器1201来执行指令,以完成上述数据处理方法中的全部或部分步骤。此外,处理组件1200可以包括一个或多个模块,便于处理组件1200和其他组件之间的交互。例如,处理组件1200可以包括多媒体模块,以方便多媒体组件1205和处理组件1200之间的交互。
电源组件1204为终端设备的各种组件提供电力。电源组件1204可以包括电源管理系统,一个或多个电源,及其他与为终端设备生成、管理和分配电力相关联的组件。
多媒体组件1205包括在终端设备和用户之间的提供一个输出接口的显示屏。在一些实施例中,显示屏可以包括液晶显示器(LCD)和触摸面板(TP)。如果显示屏包括触摸面板,显示屏可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
语音组件1206被配置为输出和/或输入语音信号。例如,语音组件1206包括一个麦克风(MIC),当终端设备处于操作模式,如语音识别模式时,麦克风被配置为接收外部语音信号。所接收的语音信号可以被进一步存储在第二存储器1202或经由通信组件1203发送。在一些实施例中,语音组件1206还包括一个扬声器,用于输出语音信号。
输入/输出接口1207为处理组件1200和外围接口模块之间提供接口,上述外围接口模块可以是点击轮,按钮等。这些按钮可包括但不限于:音量按钮、启动按钮和锁定按钮。
传感器组件1208包括一个或多个传感器,用于为终端设备提供各个方面的状态评估。例如,传感器组件1208可以检测到终端设备的打开/关闭状态,组件的相对定位,用户与终端设备接触的存在或不存在。传感器组件1208可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在,包括检测用户与终端设备间的距离。在一些实施例中,该传感器组件1208还可以包括摄像头等。
通信组件1203被配置为便于终端设备和其他设备之间有线或无线方式的通信。终端设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个实施例中,该终端设备中可以包括SIM卡插槽,该SIM卡插槽用于插入SIM卡,使得终端设备可以登录GPRS网络,通过互联网与服务器建立通信。
由上可知,在图7实施例中所涉及的通信组件1203、语音组件1206以及输入/输出接口1207、传感器组件1208均可以作为图6实施例中的输入设备的实现方式。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种基于神经网络的目标检测方法,其特征在于,包括:
构建教师网络;
通过样本图像集训练所述教师网络;
构建学生网络,其中所述学生网络的参数量小于所述教师网络的参数量;
在采用知识蒸馏提取所述教师网络训练获得的知识并迁移到所述学生网络的过程中,通过样本图像集对所述学生网络进行训练;
通过训练后的学生网络,对输入的图像进行目标检测;
根据损失函数判断所述学生网络的收敛结果,所述损失函数为:
其中,loss A 为学生网络在标注数据下的检测损失,loss B 为学生网络在从教师网络上提取监督信息时的蒸馏损失,λ为目标的检测损失和蒸馏损失之间的权重系数;所述loss A 包括目标框中心点损失loss xy ,目标框大小损失loss wh ,目标框是否存在目标的置信度损失loss conf 以及分类损失loss cls ,具体为:loss A =loss xy +loss wh +loss conf +loss cls ;所述loss B 为
2.根据权利要求1所述的基于神经网络的目标检测方法,其特征在于,在知识蒸馏过程中,对教师网络输出的特征图进行知识蒸馏,并将蒸馏出的知识迁移到所述学生网络中。
3.根据权利要求1所述的基于神经网络的目标检测方法,其特征在于,所述教师网络包括依次连接的卷积单元、批量归一化单元、函数激活单元和池化单元;所述卷积单元包括依次连接的多个卷积子单元,每个卷积子单元输出一特征图;每个卷积子单元包括多个铺叠设置的卷积层。
4.根据权利要求2所述的基于神经网络的目标检测方法,其特征在于,所述对教师网络输出的特征图进行知识蒸馏包括:确定目标蒸馏区域,对所述目标蒸馏区域的特征图进行知识蒸馏,其中目标蒸馏区域的确定方法包括:
将样本图像中标注的目标框以不同的尺度分别映射到对应的卷积子单元输出的特征图上;
构建与特征图大小相同的矩阵;
判断所述特征图中是否存在目标框;
若所述特征图中存在目标框,则将所构建的矩阵的对应区域的值置为1,否则置为0,从而形成0-1蒸馏mask;蒸馏mask中值为1对应的特征区域即为目标蒸馏区域。
5.一种基于神经网络的目标检测装置,其特征在于,包括:
第一网络构建模块,用于构建教师网络;
第一训练模块,用于通过样本图像集训练所述教师网络;
第二网络构建模块,用于构建学生网络,其中所述学生网络的参数量小于所述教师网络的参数量;
第二训练模块,用于在采用知识蒸馏提取所述教师网络训练获得的知识并迁移到所述学生网络的过程中,通过样本图像集对所述学生网络进行训练;
目标检测模块,用于通过训练后的学生网络,对输入的图像进行目标检测;
根据损失函数判断所述学生网络的收敛结果,所述损失函数为:
其中,loss A 为学生网络在标注数据下的检测损失,loss B 为学生网络在从教师网络上提取监督信息时的蒸馏损失,λ为目标的检测损失和蒸馏损失之间的权重系数;所述loss A 包括目标框中心点损失loss xy ,目标框大小损失loss wh ,目标框是否存在目标的置信度损失loss conf 以及分类损失loss cls ,具体为:loss A =loss xy +loss wh +loss conf +loss cls ;所述loss B 为
6.根据权利要求5所述的基于神经网络的目标检测装置,其特征在于,在知识蒸馏过程中,对教师网络输出的特征图进行知识蒸馏,并将蒸馏出的知识迁移到所述学生网络中。
7.根据权利要求5所述的基于神经网络的目标检测装置,其特征在于,所述教师网络包括依次连接的卷积单元、批量归一化单元、函数激活单元和池化单元;所述卷积单元包括依次连接的多个卷积子单元,每个卷积子单元输出一特征图;每个卷积子单元包括多个铺叠设置的卷积层。
8.根据权利要求6所述的基于神经网络的目标检测装置,其特征在于,所述第二训练模块包括:
蒸馏区域确定子模块,用于确定目标蒸馏区域;
知识蒸馏子模块,用于对所述目标蒸馏区域的特征图进行知识蒸馏,其中目标区域确定子模块包括:
映射单元,用于将样本图像中标注的目标框以不同的尺度分别映射到对应的特征图上;
矩阵构建单元,用于构建与特征图大小相同的矩阵;
目标框单元,用于判断所述特征图中是否存在目标框;若所述特征图中存在目标,则将所构建的矩阵的对应区域的值置为1,否则置为0,从而形成0-1蒸馏mask;蒸馏mask中值为1对应的特征区域即为目标蒸馏区域。
9.一种基于神经网络的目标检测设备,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当所述一个或多个处理器执行时,使得所述设备执行如权利要求1-4中一个或多个所述的方法。
10.一个或多个机器可读介质,其特征在于,其上存储有指令,当由一个或多个处理器执行时,使得设备执行如权利要求1-4中一个或多个所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011069007.0A CN112200062B (zh) | 2020-09-30 | 2020-09-30 | 一种基于神经网络的目标检测方法、装置、机器可读介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011069007.0A CN112200062B (zh) | 2020-09-30 | 2020-09-30 | 一种基于神经网络的目标检测方法、装置、机器可读介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112200062A CN112200062A (zh) | 2021-01-08 |
CN112200062B true CN112200062B (zh) | 2021-09-28 |
Family
ID=74014062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011069007.0A Active CN112200062B (zh) | 2020-09-30 | 2020-09-30 | 一种基于神经网络的目标检测方法、装置、机器可读介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112200062B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112712052A (zh) * | 2021-01-13 | 2021-04-27 | 安徽水天信息科技有限公司 | 一种机场全景视频中微弱目标的检测识别方法 |
CN113033767A (zh) * | 2021-02-19 | 2021-06-25 | 北京大学 | 基于知识蒸馏的神经网络的数据压缩恢复方法及系统 |
CN112949766A (zh) * | 2021-04-07 | 2021-06-11 | 成都数之联科技有限公司 | 目标区域检测模型训练方法及系统及装置及介质 |
CN112801236B (zh) * | 2021-04-14 | 2022-03-11 | 腾讯科技(深圳)有限公司 | 图像识别模型的迁移方法、装置、设备及存储介质 |
CN113095251B (zh) * | 2021-04-20 | 2022-05-27 | 清华大学深圳国际研究生院 | 一种人体姿态估计方法及系统 |
CN113159073B (zh) * | 2021-04-23 | 2022-11-18 | 上海芯翌智能科技有限公司 | 知识蒸馏方法及装置、存储介质、终端 |
CN113221709B (zh) * | 2021-04-30 | 2022-11-25 | 芜湖美的厨卫电器制造有限公司 | 用于识别用户运动的方法、装置及热水器 |
CN113657483A (zh) * | 2021-08-14 | 2021-11-16 | 北京百度网讯科技有限公司 | 模型训练方法、目标检测方法、装置、设备以及存储介质 |
CN114842449A (zh) * | 2022-05-10 | 2022-08-02 | 安徽蔚来智驾科技有限公司 | 目标检测方法、电子设备、介质及车辆 |
CN115082880B (zh) * | 2022-05-25 | 2024-06-28 | 安徽蔚来智驾科技有限公司 | 目标检测方法、电子设备、介质及车辆 |
CN115019060A (zh) * | 2022-07-12 | 2022-09-06 | 北京百度网讯科技有限公司 | 目标识别方法、目标识别模型的训练方法及装置 |
CN115527083B (zh) * | 2022-09-27 | 2023-04-11 | 中电金信软件有限公司 | 图像标注方法、装置和电子设备 |
CN117875406A (zh) * | 2023-10-27 | 2024-04-12 | 上海湃道智能科技有限公司 | 基于特征丰富度的知识蒸馏方法、系统、电子设备和介质 |
CN118447487A (zh) * | 2024-05-27 | 2024-08-06 | 济南大学 | 一种基于局部与全局知识蒸馏的驾驶分心检测方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108764462A (zh) * | 2018-05-29 | 2018-11-06 | 成都视观天下科技有限公司 | 一种基于知识蒸馏的卷积神经网络优化方法 |
CN108830813A (zh) * | 2018-06-12 | 2018-11-16 | 福建帝视信息科技有限公司 | 一种基于知识蒸馏的图像超分辨率增强方法 |
CN108898168A (zh) * | 2018-06-19 | 2018-11-27 | 清华大学 | 用于目标检测的卷积神经网络模型的压缩方法和系统 |
CN110059740A (zh) * | 2019-04-12 | 2019-07-26 | 杭州电子科技大学 | 一种针对嵌入式移动端的深度学习语义分割模型压缩方法 |
CN110097084A (zh) * | 2019-04-03 | 2019-08-06 | 浙江大学 | 通过投射特征训练多任务学生网络的知识融合方法 |
CN110163344A (zh) * | 2019-04-26 | 2019-08-23 | 北京迈格威科技有限公司 | 神经网络训练方法、装置、设备和存储介质 |
CN110443784A (zh) * | 2019-07-11 | 2019-11-12 | 中国科学院大学 | 一种有效的显著性预测模型方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107247989B (zh) * | 2017-06-15 | 2020-11-24 | 北京图森智途科技有限公司 | 一种实时的计算机视觉处理方法及装置 |
CN108921294A (zh) * | 2018-07-11 | 2018-11-30 | 浙江大学 | 一种用于神经网络加速的渐进式块知识蒸馏方法 |
-
2020
- 2020-09-30 CN CN202011069007.0A patent/CN112200062B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108764462A (zh) * | 2018-05-29 | 2018-11-06 | 成都视观天下科技有限公司 | 一种基于知识蒸馏的卷积神经网络优化方法 |
CN108830813A (zh) * | 2018-06-12 | 2018-11-16 | 福建帝视信息科技有限公司 | 一种基于知识蒸馏的图像超分辨率增强方法 |
CN108898168A (zh) * | 2018-06-19 | 2018-11-27 | 清华大学 | 用于目标检测的卷积神经网络模型的压缩方法和系统 |
CN110097084A (zh) * | 2019-04-03 | 2019-08-06 | 浙江大学 | 通过投射特征训练多任务学生网络的知识融合方法 |
CN110059740A (zh) * | 2019-04-12 | 2019-07-26 | 杭州电子科技大学 | 一种针对嵌入式移动端的深度学习语义分割模型压缩方法 |
CN110163344A (zh) * | 2019-04-26 | 2019-08-23 | 北京迈格威科技有限公司 | 神经网络训练方法、装置、设备和存储介质 |
CN110443784A (zh) * | 2019-07-11 | 2019-11-12 | 中国科学院大学 | 一种有效的显著性预测模型方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112200062A (zh) | 2021-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112200062B (zh) | 一种基于神经网络的目标检测方法、装置、机器可读介质及设备 | |
CN109543714B (zh) | 数据特征的获取方法、装置、电子设备及存储介质 | |
CN113994384A (zh) | 使用机器学习的图像着色 | |
CN111444826B (zh) | 视频检测方法、装置、存储介质及计算机设备 | |
CN111539412B (zh) | 一种基于ocr的图像分析方法、系统、设备及介质 | |
CN112200318B (zh) | 一种目标检测方法、装置、机器可读介质及设备 | |
CN113515942A (zh) | 文本处理方法、装置、计算机设备及存储介质 | |
CN111739027A (zh) | 一种图像处理方法、装置、设备及可读存储介质 | |
WO2020244151A1 (zh) | 图像处理方法、装置、终端及存储介质 | |
CN109871843A (zh) | 字符识别方法和装置、用于字符识别的装置 | |
CN111950570B (zh) | 目标图像提取方法、神经网络训练方法及装置 | |
CN112733970B (zh) | 图像分类模型处理方法、图像分类方法及装置 | |
CN113050860B (zh) | 一种控件识别方法和相关装置 | |
CN112215171A (zh) | 目标检测方法、装置、设备及计算机可读存储介质 | |
WO2022161302A1 (zh) | 动作识别方法、装置、设备、存储介质及计算机程序产品 | |
CN118096924B (zh) | 图像处理方法、装置、设备及存储介质 | |
CN113642359B (zh) | 人脸图像生成方法、装置、电子设备及存储介质 | |
CN111914850B (zh) | 图片特征提取方法、装置、服务器和介质 | |
CN112036307A (zh) | 图像处理方法及装置、电子设备和存储介质 | |
CN115331057A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN111818364B (zh) | 视频融合方法、系统、设备及介质 | |
CN116434253A (zh) | 图像处理方法、装置、设备、存储介质及产品 | |
CN114283422A (zh) | 一种手写字体生成方法、装置、电子设备和存储介质 | |
CN111862105A (zh) | 图像的区域处理方法、装置和电子设备 | |
CN113196279A (zh) | 一种面部属性的识别方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A neural network-based object detection method, device, machine readable medium, and device Effective date of registration: 20230918 Granted publication date: 20210928 Pledgee: Bank of China Co.,Ltd. Nansha Branch of Guangdong Free Trade Pilot Area Pledgor: GUANGZHOU CLOUDWALK ARTIFICIAL INTELLIGENCE TECHNOLOGY Co.,Ltd. Registration number: Y2023980057268 |