CN117974991B - 目标检测模型的生成方法、目标检测方法及其装置 - Google Patents
目标检测模型的生成方法、目标检测方法及其装置 Download PDFInfo
- Publication number
- CN117974991B CN117974991B CN202410386901.2A CN202410386901A CN117974991B CN 117974991 B CN117974991 B CN 117974991B CN 202410386901 A CN202410386901 A CN 202410386901A CN 117974991 B CN117974991 B CN 117974991B
- Authority
- CN
- China
- Prior art keywords
- model
- teacher
- student
- generating
- function
- 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 72
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000012549 training Methods 0.000 claims abstract description 18
- 238000004821 distillation Methods 0.000 claims description 28
- 238000005457 optimization Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 12
- 238000010586 diagram Methods 0.000 claims description 7
- 238000011176 pooling Methods 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 3
- 230000004913 activation Effects 0.000 claims description 2
- 230000004927 fusion Effects 0.000 abstract description 3
- 238000013140 knowledge distillation Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 43
- 230000006872 improvement Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 230000016776 visual perception Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- 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
- G06N3/0455—Auto-encoder networks; Encoder-decoder 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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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/0495—Quantised networks; Sparse networks; Compressed 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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
- G06N3/096—Transfer learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- 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/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
- G06V20/584—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of vehicle lights or traffic lights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/08—Detecting or categorising vehicles
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明提供一种目标检测模型的生成方法、目标检测方法及其装置,该生成方法包括:获取用于交通信号灯检测的第一数据集,以及用于车辆检测的第二数据集;生成基于YOLO模型的第一教师模型和第二教师模型,并使用第一、第二数据集分别对第一、第二教师模型进行训练,并生成学生模型;之后,对第一教师模型和第二教师模型B的信息融合;之后,加入一个自编码器来实现特征图压缩的功能,从而实现保留关键信息的同时缩减模型体积,也缩减了模型的参数规模;之后,使用知识蒸馏将第一、第二教师模型蒸馏到学生模型中。从而实现了一个能够识别交通信号灯和车辆的模型,而且,在保证检测准确的前提下,缩小模型规模以提高运行效率。
Description
技术领域
本发明涉及自动驾驶技术领域,尤其涉及一种目标检测模型的生成方法、目标检测方法及其装置。
背景技术
随着科技的进步,自动驾驶得到越来越广泛的应用,自动驾驶技术一般包括以下几个方面:(1)环境感知:使用摄像头和传感器来捕获车辆周围的视觉信息,包括道路、交通信号、车辆、行人、建筑物等。这些信息帮助自动驾驶车辆理解当前行驶环境;(2)障碍物检测和跟踪:可以检测和跟踪道路上的障碍物,如其他车辆、行人或动物。这有助于规划安全的驾驶路径,并及时采取避障措施;(3)车道检测和保持:通过识别道路上的车道线,视觉感知系统可以帮助车辆保持在正确的车道内行驶,并遵循交通规则;(4)交通信号灯识别:自动驾驶车辆需要识别和理解交通信号、标志和标线,以便适时减速、停车或加速;(5)数据记录和分析:视觉感知系统记录并存储驾驶过程中的视觉数据,这对事故调查、车辆性能改进和安全验证非常重要。
其中,如何识别交通信号灯和车辆,就成为一个亟待解决的问题。
发明内容
本发明的目的在于提供一种目标检测模型的生成方法、目标检测方法及其装置。
为了实现上述发明目的之一,本发明一实施方式提供了一种目标检测模型的生成方法、目标检测方法及其装置,具体包括:一种目标检测模型的生成方法,包括以下步骤:获取用于交通信号灯检测的第一数据集,以及用于车辆检测的第二数据集;生成基于YOLO模型的第一教师模型A,并使用第一数据集对第一教师模型A进行训练;生成基于YOLO模型的第二教师模型B,并使用第二数据集对第二教师模型B进行训练;生成学生模型S,第一、第二教师模型和学生模型S具有相同的层数Num,其中,Num为自然数,Num>2;第一教师模型A执行个检测任务,第二教师模型B执行/>个检测任务,其中,/>和/>均为自然数;i的初始值为1,持续执行操作,直至i>Num;所述操作具体包括:/>,/>为第一教师模型A的第i层的特征图,/>为第二教师模型B的第i层的特征图,/>为学生模型S的第i层的特征图,/>是合并操作;在学生模型S中添加编码器,所述编码器用于将高维的输入F1变成低纬的隐变量F2,解码器用于把隐变量F2还原为初始的高维变量,解码得到的结果为/>,编码器/>,解码器为,其中,/>为二维卷积操作,卷积核为(1,1);/>为二维反卷积操作,反卷积核大小为(1,1);为池化函数,/>为上采样函数;编码器的编码过程的优化目标函数以及解码器的解码过程的优化目标函数均为/>,/>为距离函数;学生模型S的第j层的输出/>,其中,/>为激活函数,其中,/>为学生模型S的第j/>层的特征图;学生模型S的第j层的损失函数,其中,j为自然数,j=1,2,...,Num;持续使用随机梯度下降SGD来更新学生模型S的参数,直至损失收敛;对所述学生模型S执行自蒸馏处理。
作为本发明一实施方式的进一步改进,激活函数具体为/>。
作为本发明一实施方式的进一步改进,距离函数具体为均方误差函数。
作为本发明一实施方式的进一步改进,所述对所述学生模型S执行自蒸馏处理具体包括:对所述学生模型S的每个自身特征F均进行特征蒸馏处理,并计相邻层的损失函数:;通过软标签计算其蒸馏损失,蒸馏损失为,其中,/>为带蒸馏温度系数的函数,K为蒸馏的温度系数,/>是模型中的参数;整体的训练损失/>,其中,/>为交叉熵损失。
作为本发明一实施方式的进一步改进,取值范围为[1,3],/>取值范围为[50,150]。
作为本发明一实施方式的进一步改进,,其中,T为蒸馏的温度。
作为本发明一实施方式的进一步改进,取值范围为[0.5,1.5]。
本发明实施例还提供了一种目标检测模型的生成装置,包括以下模块:信号获取模块,用于获取用于交通信号灯检测的第一数据集,以及用于车辆检测的第二数据集;生成基于YOLO模型的第一教师模型A,并使用第一数据集对第一教师模型A进行训练;生成基于YOLO模型的第二教师模型B,并使用第二数据集对第二教师模型B进行训练;生成学生模型S,第一、第二教师模型和学生模型S具有相同的层数Num,其中,Num为自然数,Num>2;合并模块,用于第一教师模型A执行个检测任务,第二教师模型B执行/>个检测任务,其中,/>和均为自然数;i的初始值为1,持续执行操作,直至i>Num;所述操作具体包括:,/>为第一教师模型A的第i层的特征图,/>为第二教师模型B的第i层的特征图,/>为学生模型S的第i层的特征图,/>是合并操作;修改模块,用于在学生模型S中添加编码器,所述编码器用于将高维的输入F1变成低纬的隐变量F2,解码器用于把隐变量F2还原为初始的高维变量,解码得到的结果为/>,编码器,解码器为,其中,/>为二维卷积操作,卷积核为(1,1);/>为二维反卷积操作,反卷积核大小为(1,1);为池化函数,/>为上采样函数;编码器的编码过程的优化目标函数以及解码器的解码过程的优化目标函数均为/>,/>为距离函数;学生模型S的第j层的输出/>,其中,/>为激活函数,其中,/>为学生模型S的第j/>层的特征图;学生模型S的第j层的损失函数,其中,j为自然数,j=1,2,...,Num;调参模块,用于持续使用随机梯度下降SGD来更新学生模型S的参数,直至损失收敛;对所述学生模型S执行自蒸馏处理。
本发明实施例还提供了一种目标检测方法,包括以下步骤:执行上述的生成方法,得到学生模型S;获取图像帧,对所述图像帧进行裁剪处理,对所述图像帧执行归一化处理,将所火速图像帧输入到所述学生模型S,得到检测结果。
本发明实施例还提供了一种目标检测装置,包括以下模块:模型生成模块,用于执行上述的生成方法,得到学生模型S;检测模块,用于获取图像帧,对所述图像帧进行裁剪处理,对所述图像帧执行归一化处理,将所火速图像帧输入到所述学生模型S,得到检测结果。
相对于现有技术,本发明的技术效果在于:本发明实施例提供了一种目标检测模型的生成方法、目标检测方法及其装置,该生成方法包括:获取用于交通信号灯检测的第一数据集,以及用于车辆检测的第二数据集;生成基于YOLO模型的第一教师模型和第二教师模型,并使用第一、第二数据集分别对第一、第二教师模型进行训练,并生成学生模型;之后,对第一教师模型和第二教师模型B的信息融合;之后,加入一个自编码器来实现特征图压缩的功能,从而实现保留关键信息的同时缩减模型体积,也缩减了模型的参数规模;之后,使用知识蒸馏将第一、第二教师模型蒸馏到学生模型中。从而实现了一个能够识别交通信号灯和车辆的模型,而且,在保证检测准确的前提下,缩小模型规模以提高运行效率。
附图说明
图1是本发明实施例中的目标检测模型的生成方法的流程示意图;
图2是本发明实施例中的目标检测模型的生成方法的实验结果图。
具体实施方式
以下描述和附图充分地示出本文的具体实施方案,以使本领域的技术人员能够实践它们。一些实施方案的部分和特征可以被包括在或替换其他实施方案的部分和特征。本文的实施方案的范围包括权利要求书的整个范围,以及权利要求书的所有可获得的等同物。本文中,术语“第一”、“第二”等仅被用来将一个元素与另一个元素区分开来,而不要求或者暗示这些元素之间存在任何实际的关系或者顺序。实际上第一元素也能够被称为第二元素,反之亦然。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非行他性的包含,从而使得包括一系列要素的结构、装置或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种结构、装置或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不行除在包括所述要素的结构、装置或者设备中还存在另外的相同要素。本文中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中的术语“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本文和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。在本文的描述中,除非另有规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是机械连接或电连接,也可以是两个元件内部的连通,可以是直接相连,也可以通过中间媒介间接相连,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
本发明实施例一提供了一种目标检测模型的生成方法,如图1所示,包括以下步骤:
步骤101:获取用于交通信号灯检测的第一数据集,以及用于车辆检测的第二数据集;生成基于YOLO模型的第一教师模型A,并使用第一数据集对第一教师模型A进行训练;生成基于YOLO模型的第二教师模型B,并使用第二数据集对第二教师模型B进行训练;生成学生模型S,第一、第二教师模型和学生模型S具有相同的层数Num,其中,Num为自然数,Num>2。
这里,第一教师模型A和第二教师模型B可以基于YOLOv1框架,YOLOv1框架的论文地址为https://arxiv.org/abs/1506.02640。还可以基于YOLOv2框架,YOLOv2框架的论文地址为https://arxiv.org/abs/1612.08242。还可以基于YOLOv3框架,YOLOv3框架的论文地址为https://pjreddie.com/media/files/papers/YOLOv3.pdf。还可以基于YOLOv4框架,YOLOv4框架的论文地址为https://arxiv.org/abs/2004.10934。还可以基于YOLOv5框架、YOLOv6框架、YOLOv7框架和YOLOv8框架。
这里,可以理解的是,隐变量能够使得学生模型S学习到关键信息。优化目标函数能够使得和/>的距离最小,可选的,/>为MSE(Mean-Square Error,均方误差)函数,误差越小参数性能越好。
步骤102:第一教师模型A执行个检测任务,第二教师模型B执行/>个检测任务,其中,/>和/>均为自然数;i的初始值为1,持续执行操作,直至i>Num;所述操作具体包括:,/>为第一教师模型A的第i层的特征图,/>为第二教师模型B的第i层的特征图,/>为学生模型S的第i层的特征图,/>是合并操作;
该步骤能够实现缩减模型的参数规模,加入一个自编码器来实现特征图压缩的功能,从而实现保留关键信息的同时缩减模型体积的目的。
这个步骤实现了对第一教师模型A和第二教师模型B的信息融合,假设第一教师模型A中的一个特征向量为,第二教师模型B的一个特征向量/>。
步骤103:在学生模型S中添加编码器,所述编码器用于将高维的输入F1变成低纬的隐变量F2,解码器用于把隐变量F2还原为初始的高维变量,解码得到的结果为,编码器,解码器为,其中,/>为二维卷积操作,卷积核为(1,1);/>为二维反卷积操作,反卷积核大小为(1,1);为池化函数,/>为上采样函数;编码器的编码过程的优化目标函数以及解码器的解码过程的优化目标函数均为/>,/>为距离函数;学生模型S的第j层的输出/>,其中,/>为激活函数,其中,/>为学生模型S的第j/>层的特征图;学生模型S的第j层的损失函数,其中,j为自然数,j=1,2,...,Num;在这一步为了实现缩减模型的参数规模,加入一个自编码器来实现特征图压缩的功能,从而实现保留关键信息的同时缩减模型体积的目的。
步骤104:持续使用随机梯度下降SGD来更新学生模型S的参数,直至损失收敛;对所述学生模型S执行自蒸馏处理。
该目标检测模型的生成方法能够在保证检测准确的前提下,缩小模型规模以提高运行效率。一般来说,模型部署中出现效率降低的情况,会直接使用较小规模的模型,这种方法虽然能够直接减少模型参数,但是准确率也会降低。本发明采用知识蒸馏的方法,在缩小模型规模和提高运行效率的同时,保证检测的准确率不会明显降低。此外,还能够在车载嵌入式设备上部署较大的视觉感知模型。车载嵌入式设备自身的架构和功耗限制,决定了其只能执行较轻量化的任务。但是深度学习模型有大量参数,还需要进行张量运算,所以模型的部署存在一定困难。本发明通过上述知识合并的手段,将原本执行多个检测任务的模型合并为一个模型,仅使用一个模型就能完成多个检测任务,由此合理利用设备的算力来实现深度学习模型在车载嵌入式设备上的部署。
本实施例中,激活函数具体为/>。
本实施例中,距离函数具体为均方误差函数。
本实施例中,所述对所述学生模型S执行自蒸馏处理具体包括:对所述学生模型S的每个自身特征F均进行特征蒸馏处理,并计相邻层的损失函数:;通过软标签计算其蒸馏损失,蒸馏损失为,其中,/>为带蒸馏温度系数的函数,K为蒸馏的温度系数,/>是模型中的参数;整体的训练损失/>,其中,/>为交叉熵损失。
本实施例中,取值范围为[1,3],/>取值范围为[50,150]。
本实施例中,,其中,T为蒸馏的温度。
本实施例中,取值范围为[0.5,1.5]。
在实验的过程中,发明使用一台以GMSL(Gigabit Multimedia Serial Links,千兆多媒体串行链路)接口通讯的单目相机和具有相应接口的Jetson Orin嵌入式设备,相机被固定于车顶,并以线束方式和Jetson Orin设备相连。使用OpenCV库的接口可以读取相机信息,利用该相机采集包含道路红绿灯目标的第一数据集,完成后续标注工作后,基于YOLOv8框架可以训练出一个能够进行红绿灯检测的第一教师模型A。使用网络上开源的YOLOv8模型(第二教师模型B),其中已经包含了车辆等检测功能。
由于两个模型均基于YOLOv8框架,即同构模型,通过知识合并技术,将两个模型每层的特征图进行操作。之后,使用自编码器技术,以最小化解编码损失/>为目标进行自编码。本发明中使用的模型为分类模型,解码部分被舍去,直接使用子编码器输出的结果。计算合并后每层的输出并计算损失函数,之后通过SGD持续更新参数,直至损失收敛,即可得到一个学生模型/>。随后通过对学生模型/>进行自蒸馏,主要是通过最小化整体损失/>直至收敛得到新的学生模型S。
本发明实施例二提供了一种目标检测模型的生成装置,包括以下模块:
信号获取模块,用于获取用于交通信号灯检测的第一数据集,以及用于车辆检测的第二数据集;生成基于YOLO模型的第一教师模型A,并使用第一数据集对第一教师模型A进行训练;生成基于YOLO模型的第二教师模型B,并使用第二数据集对第二教师模型B进行训练;生成学生模型S,第一、第二教师模型和学生模型S具有相同的层数Num,其中,Num为自然数,Num>2。
合并模块,用于第一教师模型A执行个检测任务,第二教师模型B执行/>个检测任务,其中,/>和/>均为自然数;i的初始值为1,持续执行操作,直至i>Num;所述操作具体包括:/>,/>为第一教师模型A的第i层的特征图,/>为第二教师模型B的第i层的特征图,/>为学生模型S的第i层的特征图,/>是合并操作。
修改模块,用于在学生模型S中添加编码器,所述编码器用于将高维的输入F1变成低纬的隐变量F2,解码器用于把隐变量F2还原为初始的高维变量,解码得到的结果为,编码器/>,解码器为,其中,/>为二维卷积操作,卷积核为(1,1);/>为二维反卷积操作,反卷积核大小为(1,1);为池化函数,/>为上采样函数;编码器的编码过程的优化目标函数以及解码器的解码过程的优化目标函数均为/>,/>为距离函数;学生模型S的第j层的输出/>,其中,/>为激活函数,其中,/>为学生模型S的第j/>层的特征图;学生模型S的第j层的损失函数,其中,j为自然数,j=1,2,...,Num。
调参模块,用于持续使用随机梯度下降SGD来更新学生模型S的参数,直至损失收敛;对所述学生模型S执行自蒸馏处理。
本发明实施例三提供了一种目标检测方法,包括以下步骤:
执行实施例一中的生成方法,得到学生模型S。
获取图像帧,对所述图像帧进行裁剪处理,对所述图像帧执行归一化处理,将所火速图像帧输入到所述学生模型S,得到检测结果。
本发明实施例四提供了一种目标检测装置,包括以下模块:
模型生成模块,用于执行实施例一中的生成方法,得到学生模型S。
检测模块,用于获取图像帧,对所述图像帧进行裁剪处理,对所述图像帧执行归一化处理,将所火速图像帧输入到所述学生模型S,得到检测结果。
相机采集图像,通过裁剪和归一化,将图像裁剪为640*640,即YOLOv8的模型输入尺寸。归一化可以将所有特征调整到相同的尺度上,方便模型训练;还可以消除图像的亮度变化对模型的影响,使得模型更加关注图像的形状和结构信息。处理后的图像作为学生模型的输入/>。在车载设备上,通过Nvidia的TensorRT技术,模型/>会先开辟一部分GPU显存空间并创建张量,随后模型S会对图像/>进行推理并得到检测结果。由于模型推理出的检测框会存在重叠现象,需要去除一些冗余框并保留置信度最高的框。输出检测结果。如图2所示,模型会分别输出红绿灯检测结果和车辆目标检测结果。
需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种目标检测模型的生成方法,其特征在于,包括以下步骤:
获取用于交通信号灯检测的第一数据集,以及用于车辆检测的第二数据集;生成基于YOLO模型的第一教师模型A,并使用第一数据集对第一教师模型A进行训练;生成基于YOLO模型的第二教师模型B,并使用第二数据集对第二教师模型B进行训练;生成学生模型S,第一、第二教师模型和学生模型S具有相同的层数Num,其中,Num为自然数,Num>2;
第一教师模型A执行个检测任务,第二教师模型B执行/>个检测任务,其中,/>和/>均为自然数;i的初始值为1,持续执行操作,直至i>Num;所述操作具体包括:,/>为第一教师模型A的第i层的特征图,/>为第二教师模型B的第i层的特征图,/>为学生模型S的第i层的特征图,/>是合并操作;
在学生模型S中添加编码器,所述编码器用于将高维的输入F1变成低纬的隐变量F2,解码器用于把隐变量F2还原为初始的高维变量,解码得到的结果为,编码器,解码器为,其中,/>为二维卷积操作,卷积核为(1,1);/>为二维反卷积操作,反卷积核大小为(1,1);为池化函数,/>为上采样函数;编码器的编码过程的优化目标函数以及解码器的解码过程的优化目标函数均为/>,/>为距离函数;学生模型S的第j层的输出/>,其中,/>为激活函数,其中,/>为学生模型S的第j/>层的特征图;学生模型S的第j层的损失函数,其中,j为自然数,j=1,2,...,Num;
持续使用随机梯度下降SGD来更新学生模型S的参数,直至损失收敛;对所述学生模型S执行自蒸馏处理。
2.根据权利要求1所述的生成方法,其特征在于,
激活函数具体为/>。
3.根据权利要求1所述的生成方法,其特征在于,
距离函数具体为均方误差函数。
4.根据权利要求1所述的生成方法,其特征在于,所述对所述学生模型S执行自蒸馏处理具体包括:
对所述学生模型S的每个自身特征F均进行特征蒸馏处理,并计相邻层的损失函数:;
通过软标签计算其蒸馏损失,蒸馏损失为,其中,为带蒸馏温度系数的函数,K为蒸馏的温度系数,/>是模型中的参数;整体的训练损失/>,其中,/>为交叉熵损失。
5.根据权利要求4所述的生成方法,其特征在于:
取值范围为[1,3],/>取值范围为[50,150]。
6.根据权利要求4所述的生成方法,其特征在于:
,其中,T为蒸馏的温度。
7.根据权利要求4所述的生成方法,其特征在于:
取值范围为[0.5,1.5]。
8.一种目标检测模型的生成装置,其特征在于,包括以下模块:
信号获取模块,用于获取用于交通信号灯检测的第一数据集,以及用于车辆检测的第二数据集;生成基于YOLO模型的第一教师模型A,并使用第一数据集对第一教师模型A进行训练;生成基于YOLO模型的第二教师模型B,并使用第二数据集对第二教师模型B进行训练;生成学生模型S,第一、第二教师模型和学生模型S具有相同的层数Num,其中,Num为自然数,Num>2;
合并模块,用于第一教师模型A执行个检测任务,第二教师模型B执行/>个检测任务,其中,/>和/>均为自然数;i的初始值为1,持续执行操作,直至i>Num;所述操作具体包括:,/>为第一教师模型A的第i层的特征图,/>为第二教师模型B的第i层的特征图,/>为学生模型S的第i层的特征图,/>是合并操作;
修改模块,用于在学生模型S中添加编码器,所述编码器用于将高维的输入F1变成低纬的隐变量F2,解码器用于把隐变量F2还原为初始的高维变量,解码得到的结果为,编码器,解码器为,其中,/>为二维卷积操作,卷积核为(1,1);/>为二维反卷积操作,反卷积核大小为(1,1);为池化函数,/>为上采样函数;编码器的编码过程的优化目标函数以及解码器的解码过程的优化目标函数均为/>,/>为距离函数;学生模型S的第j层的输出/>,其中,/>为激活函数,其中,/>为学生模型S的第j/>层的特征图;学生模型S的第j层的损失函数,其中,j为自然数,j=1,2,...,Num;
调参模块,用于持续使用随机梯度下降SGD来更新学生模型S的参数,直至损失收敛;对所述学生模型S执行自蒸馏处理。
9.一种目标检测方法,其特征在于,包括以下步骤:
执行权利要求1-7任一项所述的生成方法,得到学生模型S;
获取图像帧,对所述图像帧进行裁剪处理,对所述图像帧执行归一化处理,将所火速图像帧输入到所述学生模型S,得到检测结果。
10.一种目标检测装置,其特征在于,包括以下模块:
模型生成模块,用于执行权利要求1-7任一项所述的生成方法,得到学生模型S;
检测模块,用于获取图像帧,对所述图像帧进行裁剪处理,对所述图像帧执行归一化处理,将所火速图像帧输入到所述学生模型S,得到检测结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410386901.2A CN117974991B (zh) | 2024-04-01 | 2024-04-01 | 目标检测模型的生成方法、目标检测方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410386901.2A CN117974991B (zh) | 2024-04-01 | 2024-04-01 | 目标检测模型的生成方法、目标检测方法及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117974991A CN117974991A (zh) | 2024-05-03 |
CN117974991B true CN117974991B (zh) | 2024-06-14 |
Family
ID=90859830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410386901.2A Active CN117974991B (zh) | 2024-04-01 | 2024-04-01 | 目标检测模型的生成方法、目标检测方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117974991B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109389183A (zh) * | 2018-11-05 | 2019-02-26 | 南京信息工程大学 | 混沌背景中基于优化组合支持向量机的微弱信号检测方法 |
CN110163344A (zh) * | 2019-04-26 | 2019-08-23 | 北京迈格威科技有限公司 | 神经网络训练方法、装置、设备和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230153943A1 (en) * | 2021-11-16 | 2023-05-18 | Adobe Inc. | Multi-scale distillation for low-resolution detection |
CN114663848A (zh) * | 2022-03-23 | 2022-06-24 | 京东鲲鹏(江苏)科技有限公司 | 一种基于知识蒸馏的目标检测方法和装置 |
CN115690708A (zh) * | 2022-10-21 | 2023-02-03 | 苏州轻棹科技有限公司 | 基于跨模态知识蒸馏训练三维目标检测模型的方法和装置 |
-
2024
- 2024-04-01 CN CN202410386901.2A patent/CN117974991B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109389183A (zh) * | 2018-11-05 | 2019-02-26 | 南京信息工程大学 | 混沌背景中基于优化组合支持向量机的微弱信号检测方法 |
CN110163344A (zh) * | 2019-04-26 | 2019-08-23 | 北京迈格威科技有限公司 | 神经网络训练方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117974991A (zh) | 2024-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11899748B2 (en) | System, method, and apparatus for a neural network model for a vehicle | |
CN111582189A (zh) | 交通信号灯识别方法、装置、车载控制终端及机动车 | |
EP3579144A2 (en) | Visual perception method, apparatus, device, and medium based on an autonomous vehicle | |
CN111460919A (zh) | 一种基于改进YOLOv3的单目视觉道路目标检测及距离估计方法 | |
WO2020007589A1 (en) | Training a deep convolutional neural network for individual routes | |
CN112307978A (zh) | 目标检测方法、装置、电子设备及可读存储介质 | |
US11663294B2 (en) | System and method for training a model using localized textual supervision | |
KR102206684B1 (ko) | 주행 상황 및 운전 습관을 분석하기 위한 학습 방법 및 이를 수행하는 장치 | |
CN115273032A (zh) | 交通标志识别方法、装置、设备及介质 | |
CN117710764A (zh) | 多任务感知网络的训练方法、设备及介质 | |
CN113128415B (zh) | 一种环境辨别方法、系统、设备及存储介质 | |
CN118038409A (zh) | 车辆可行驶区域检测方法、装置、电子设备及存储介质 | |
CN117929703A (zh) | 基于人脸检测功能的酒精浓度快速检测棒监测预警系统 | |
CN117974991B (zh) | 目标检测模型的生成方法、目标检测方法及其装置 | |
CN113657161A (zh) | 一种非标小障碍物检测方法、装置与自动驾驶系统 | |
Prakash et al. | Multiple Objects Identification for Autonomous Car using YOLO and CNN | |
CN117198056A (zh) | 路口交通指挥模型的构建方法及相关装置、应用 | |
CN116824537A (zh) | 一种自动驾驶多任务视觉感知方法 | |
Subhashini et al. | Review on lane and object detection for accident prevention in automated cars | |
Michalewicz | AI-Driven Systems for Autonomous Vehicle Road Sign Detection and Classification | |
Vazquez | Human-Centric Smart Cities: A Digital Twin-Oriented Design of Interactive Autonomous Vehicles | |
US20240351592A1 (en) | Support tools for av testing | |
CN116890881B (zh) | 一种车辆变道决策生成方法及装置、电子设备和存储介质 | |
Ramakrishnan et al. | Autonomous Vehicle Image Classification using Deep Learning | |
CN118097604B (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 |