一种基于二值化网络分组训练的车辆检测方法与流程

文档序号:20780487发布日期:2020-05-19 21:11阅读:454来源:国知局
一种基于二值化网络分组训练的车辆检测方法与流程

本发明涉及图像识别技术领域,尤其是一种基于二值化网络分组训练的车辆检测方法。



背景技术:

车辆检测是发展车辆辅助驾驶、全自动驾驶必须研究的问题之一。深度神经网络dnn极大地推动了各种计算机任务的发展,特别是在计算机视觉领域。然而,计算机视觉领域重大发展的关键因素之一是gpu的出现,使得运算速度提升了10-30倍。现有的车辆检测方法在高性能服务器取得优越的效果,但网络结构也逐渐变得复杂。这种复杂的识别系统需要大量内存和计算资源,无法应用于嵌入式平台上,即无法应用于车辆上。



技术实现要素:

本发明提供一种基于二值化网络分组训练的车辆检测方法,以解决全精度卷积神经网络难以在嵌入式系统实现的问题。

一种基于二值化网络分组训练的车辆检测方法,先构建并训练网络模型,然后通过训练好的网络模型对车辆进行检测,构建和训练网络模型主要包括以下步骤:

1、收集大量汽车行驶过程中行车记录仪拍摄到的包含车辆的图片,构成包含车辆的数据集,将数据集从数量上分为训练集、验证集和测试集三部分;

2、构建全精度卷积神经网络,该全精度卷积神经网络使用9个固定大小的锚点框,获取车辆在每个锚点框中存在的概率,通过非极大值抑制法产生车辆检测结果;

3、将全精度卷积神经网络逐步分组创建为二值化卷积神经网络;

4、利用训练集对二值化卷积神经网络进行训练。

进一步的,所述步骤2的全精度卷积神经网络主要由53个卷积层、2个上采样层和1个检测层组成;前端使用残差神经网络提取特征,后端通过卷积生成不同大小的特征图。

进一步的,对全精度卷积神经网络输出的特征进行3种尺度预测,在卷积层交替使用1×1和3×3卷积核提取特征。

进一步的,所述步骤3中将全精度卷积神经网络逐步分组具体为,将全精度卷积神经网络t组进行二值化,遵循相反的顺序,即从tn到t1进行二值化,二值化公式其中lcls和lloc分别是目标检测的分类和定位损失,λ是每个损失阶段的权重,分别为全精度卷积神经网络和二值化网络的第i层特征响应,w是输入权重,ya是全精度卷积神经网络的期望输出,yb是二值化网络的期望输出,h是二元权卷积层的指标集。

进一步的,利用符号函数将全精度卷积神经网络的权重二值化,卷积操作为其中c=sign(w);二值化卷积神经网络第一层和最后一层保持全精度权重。

本发明的有益效果:将全精度卷积神经网络创建为二值化卷积神经网络,通过所有参数量化的方式,实现了网络的压缩与加速,推动了深度学习算法在嵌入式终端上的应用;将全精度卷积神经网络采用逐步分组的方式进行二值化,有效地解决了由于网络量化造成的大幅度精度损失的问题。

附图说明

图1为二值化网络分组训练结构示意图;

图2为本发明网络结构示意图。

具体实施方式

下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明的实施例是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

实施例1

一种基于二值化网络分组训练的车辆检测方法,先构建并训练网络模型,然后通过训练好的网络模型对车辆进行检测,构建和训练网络模型主要包括以下步骤:

1、收集大量汽车行驶过程中行车记录仪拍摄到的包含车辆的图片,构成包含车辆的数据集。数据集优选包含各种尺度的车辆,以及昏暗条件下的图片数据,有利于增加网络的鲁棒性。将数据集从数量上分为训练集、验证集和测试集三部分。

由于车辆行驶过程中通常是通过行车记录仪实时拍摄红绿灯情况的,因此,收集图片的来源也最好来源于行车记录仪的视频截图,将行车记录仪拍摄视频按照固定频率进行分帧处理并保留包含车辆的图片进行处理分析。

2、构建全精度卷积神经网络,该全精度卷积神经网络使用9个固定大小的锚点框,获取车辆在每个锚点框中存在的概率,通过非极大值抑制法产生车辆检测结果。

使用锚点框的数量是极其重要的超参数,最后锚点框尺寸使用kmeans算法计算得到,本实施例使用的锚点框尺寸分别为(8×10)、(12×18)、(17×24)、(24×30)、(37×40)、(63×77)、(74×86)、(113×134)、(170×194)。

全精度卷积神经网络主要由53个卷积层、2个上采样层和1个检测层组成。在考虑网络结构时,充分考虑对行人定位模块的初始化问题,没有使用softmax,因为发现它对于网络的良好性能是不必要的,这里仅使用独立的逻辑分类器。模型前端使用残差神经网络提取特征,后端通过卷积生成不同大小的特征图。对全精度卷积神经网络输出的特征进行3种尺度预测,充分利用不同卷积层得到的特征图分辨率不同的特性,即低卷积层分辨率高,有利于检测小目标,高卷积层感受野大,有利于检测大目标;与此同时,在卷积层交替使用1×1和3×3卷积核提取特征,提取细节特征,更有利于检测小目标车辆。

全精度卷积神经网络的损失函数fl(pt)=-(1-pt)γlg(pt),其中p∈[0,1],y=1是图片车辆标签,γ是可以调节的参数,本实施例取γ=2,当γ=0时,就是普通的交叉熵函数。

3、将全精度卷积神经网络逐步分组创建为二值化卷积神经网络,如图1所示。

将全精度卷积神经网络逐步分组具体为,将全精度卷积神经网络t组进行二值化,遵循相反的顺序,即从tn到t1进行二值化,二值化公式其中lcls和lloc分别是目标检测的分类和定位损失,λ是每个损失阶段的权重,分别为全精度卷积神经网络和二值化网络的第i层特征响应,w是输入权重,ya是全精度卷积神经网络的期望输出,yb是二值化网络的期望输出,h是二元权卷积层的指标集。

利用符号函数将全精度卷积神经网络的权重二值化,卷积操作为其中c=sign(w);二值化卷积神经网络第一层和最后一层保持全精度权重。

对于二进制卷积神经网络,前几层的二值化会造成较大的精度损失,而后几层的二值化效果甚微。首先将层分离成组,然后逐步对组进行二进制化,遵循相反的顺序,即从最后一组到第一组进行二值化,这种阶段性的训练非常有效。虽然二进制卷积神经网络可以从零开始训练,但是使用预先训练好的全精度卷积神经网络网络进行微调,可以获得更快、更好的收敛性。本发明使用全精度卷积神经网络来初始化二值化卷积神经网络,并对初始化的二值化卷积神经网络进行微调。

全精度卷积神经网络的权重是固定的,二进制卷积神经网络模仿全精度卷积神经网络的特征响应,优化二进制卷积神经网络。其中,二进制卷积神经网络第一层和最后一层保持全精度权重。

4、利用训练集对二值化卷积神经网络进行训练。

这里需要说明的是,本发明未特殊强调部分,均属于本领域技术人员根据现有目标识别技术可以或容易知晓如何实现的。图2为本发明网络结构示意图。

显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域及相关领域的普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1