一种基于孪生神经网络的车辆身份判别方法与流程

文档序号:21366035发布日期:2020-07-04 04:41阅读:251来源:国知局
一种基于孪生神经网络的车辆身份判别方法与流程

本发明属于图像处理领域,涉及一种基于孪生神经网络的车辆身份判别方法。



背景技术:

目前车辆身份的判别主要依靠车牌号的识别,但是该方法对于拍摄角度引起的车牌不可见,以及套牌车辆等问题时,却无能为力。对于车辆身份的判别,除了车牌之外,车身的颜色、车辆的外形、车标以及车窗上的张贴物等等都可以作为辅助判断的依据。



技术实现要素:

本发明公开了一种基于孪生神经网络的车辆身份判别方法。将拍摄到的车辆图片与图片库中原有的图片一起放入神经网络中,通过其相似程度的判断,来确定是否为同一车辆。

本发明中主要采用的技术方案为:

一种基于孪生神经网络的车辆身份判别方法,具体步骤如下:

步骤s1:构建孪生神经网络,其结构为:两支提取特征的卷积神经网络,后接距离度量层,再接概率计算层;

步骤s2:在veri-wild数据集上训练上述网络;

步骤s3:构建具体应用场景的数据集,并继续训练上述网络;

步骤s4:构建具体应用场景中的目标车辆图片库;

步骤s5:现场抓拍图片,并利用已经训练好的网络判断是否为目标车辆。

所述步骤s1中的具体网络结构为:

s1.1:两支特征提取网络为卷积神经网络,包含vggnet、googlenet、resnet等在内所有卷积层与池化层的复合而成的网络均可使用。假设h1为样本1在特征提取层的输出,h2为样本2在特征提取层的输出;

s1.2:距离度量层为加权l1计算层,通过以下公式计算两个特征向量之间的距离:

其中,αj为对应的系数。

s1.3:概率计算层为全连接层,其中每层的节点个数应根据实际情况按经验设定,将距离度量层输出结果带入sigmoid函数归一化:

最终,整个网络的输出为概率值y。

所述步骤s2中的具体网络的训练步骤为:

s2.1:每次训练时,按样本对训练网络,从训练集中随机选两张图片为一对输入网络。两张图片为相同车辆的为正样本对,两张图片为不同车辆的为负样本对。设置正负样本对各占训练样本总数的50%;

s2.2:将一个正样本和一个负样本放入网络,依次经过特征提取层,距离度量层,概率计算层,最后得出样本对的概率估计值,并带入对比损失函数:

l=∑yd2+(1-y)max(margin-d,0)2

其中,margin为预设值。

s2.3:网络根据损失函数反向传播以自动调整参数。

所述步骤s3中的构建具体应用场景的数据集并进一步训练网络步骤为:

s3.1:根据应用需求在实际场地拍摄若干张与实际抓拍时位置、角度、时间等近似的照片,组成小型数据集(大于1000张)。

s3.2:与权利要求2所述的训练方法相同,在该小型数据集上进一步训练网络。

所述步骤s5中的利用已经训练好的网络判断是否为目标车辆的步骤为:

s5.1:将抓拍到的图片与目标车辆库中该车牌的图片放入已训练好的网络中。

s5.2:网络自动计算两张图片各自的特征,和两个特征向量之间的距离,最后输出概率值y。

s5.3:若网络输出y大于“0.5”,则为同一辆车;否则,为不同的车。

本发明使用孪生卷积神经网络综合各种车辆的信息对车辆身份进行判别。该问题的研究可以用于停车场的车辆身份判别、路口监控环境中的车流量计数、以及监控中嫌疑车辆的判定等等。孪生神经网络可以有效判断两个物体是否为同一个物体,通过大量的训练,希望能解决车辆身份的判别问题。

附图说明

图1本发明方法流程图;

图2孪生神经网络单次训练过程;

图3应用场景数据集展示;

图4目标车辆库中某一车辆的图片展示;

图5套牌车辆;

图6目标车辆库中该车牌对应的真正车辆的图片。

具体实施方式

为了使本技术领域的人员更好地理解本申请中的技术方案,下面对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

下面结合以某停车场抓拍图像为例附图对本发明的技术方案做了进一步的详细说明。

如图1所示,一种基于孪生神经网络的车辆身份判别方法,具体步骤如下:

步骤s1:构建孪生神经网络,其结构为:两支提取特征的卷积神经网络,后接距离度量层,再接概率计算层;

步骤s2:在veri-wild数据集上训练上述网络;

步骤s3:构建具体应用场景的数据集,并继续训练上述网络;

步骤s4:构建具体应用场景中的目标车辆图片库,部分示例如图3所示;

步骤s5:现场抓拍图片,并利用已经训练好的网络判断是否为目标车辆。

所述步骤s1中孪生神经网络的具体网络结构为:

s1.1:两支特征提取网络为卷积神经网络,包含vggnet、googlenet、resnet等在内所有卷积层与池化层的复合而成的网络均可使用。假设h1为样本1在特征提取层的输出,h2为样本2在特征提取层的输出;

s1.2:距离度量层为加权l1计算层,通过以下公式计算两个特征向量之间的距离:

其中,αj为对应的系数。

s1.3:概率计算层为全连接层,其中每层的节点个数应根据实际情况按经验设定,将距离度量层输出结果带入sigmoid函数归一化:

最终,整个网络的输出为概率值y。

如图2所示,所述步骤s2中的具体网络的训练步骤为:

s2.1:每次训练时,按样本对训练网络,从训练集中随机选两张图片为一对输入网络。两张图片为相同车辆的为正样本对,两张图片为不同车辆的为负样本对。设置正负样本对各占训练样本总数的50%;

s2.2:将一个正样本和一个负样本放入网络,依次经过特征提取层,距离度量层,概率计算层,最后得出样本对的概率估计值,并带入对比损失函数:

l=∑yd2+(1-y)max(margin-d,0)2

其中,margin为预设值。

s2.3:网络根据损失函数反向传播以自动调整参数。

所述步骤s3中的构建具体应用场景的数据集并进一步训练网络步骤为:

s3.1:根据应用需求在实际场地拍摄若干张与实际抓拍时位置、角度、时间等近似的照片,组成小型数据集(大于1000张)。

s3.2:与步骤s1所述的训练方法相同,在该小型数据集上进一步训练网络。

所述步骤s4中的构建具体应用场景中的目标车辆图片库步骤为:

s4.1:将所有在停车场登记过的车辆按一定角度、距离,每辆车拍摄一张照片存入目标车辆库,以便和抓拍图像比对,图4为其中目标车辆库中某一车辆的图片。

所述步骤s5中的利用已经训练好的网络判断是否为目标车辆的步骤为:

s5.1:将抓拍到的图片与目标车辆库中该车牌的图片放入已训练好的网络中。

s5.2:网络自动计算两张图片各自的特征,和两个特征向量之间的距离,最后输出概率值y。

s5.3:若网络输出y大于“0.5”,则为同一辆车;否则,为不同的车。

图5为套牌车辆,在与目标车辆库中该车牌的车比对时,成功辨别出为套牌车;图6为该真实车辆在不同于目标车辆库中该车辆的角度下抓拍的照片,经网络对比,成功判断出为同一辆车。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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