一体式纹身检测与识别方法和系统与流程

文档序号:18526986发布日期:2019-08-24 10:21阅读:555来源:国知局
一体式纹身检测与识别方法和系统与流程

本发明涉及计算机视觉、图像检索、纹身识别领域,并特别涉及一种一体式纹身检测与识别方法和系统。



背景技术:

在智能视频监控等应用中,爆发式增长的视频数据对身份识别高效性和准确性提出更高的要求,传统身份识别依赖于人脸、指纹和虹膜等主要生物特征,但在非可控场景和非配合的用户条件下,基于主要生物特征的身份识别系统经常因无法获取所需的生物特征数据而失效;此时,辅助生物特征可以为身份识别提供重要的辅助功能。自2009年开始美国的联邦调查局已经开始研发下一代身份识别系统,除了利用人脸、指纹、虹膜、掌纹等主要生物特征之外,还将纹身、疤痕、斑痣等辅助生物特征纳入下一代身份识别系统。

人类的纹身已经有超过5000多年的历史,在911恐怖袭击和印度洋海啸遇难者的遗体辨认中,纹身就被用于快速身份筛选。纹身识别技术的研究经历了从纹身关键字匹配到基于内容匹配的发展。早期的纹身匹配基于所标注的关键字进行,其中ansi/nist-itl1-2000标准中定义了8大类(人、动物、植物、旗帜、物体、抽象标记、符号、其它),这8大类纹身又进一步被划分问70个小类。基于关键字的纹身匹配技术存在的主要问题是:1)ansi/nist-itl1-2000标准中所定义的类别非常有限,不足以涵盖多样的纹身类型;2)同一纹身可能有不同的关键字表达方式;3)不同人在标注过程中的主观性和不一致性。基于内容的方法期望抽取边缘、颜色和纹理等特征(例如通过局部二值特征、gabor特征、尺度不变特征等),进而利用词袋模型(bag-of-words)建立能反映纹身图像内容的特征表达,用于自动纹身匹配。常用的分类器包括支持向量机,随机森林等。这些方法相比基于关键字的纹身匹配技术取得了更好的纹身匹配准确率,但所采用的特征是手工设计的,词典的构建也依赖于经验。近期,随着深度学习方法的兴起,基于内容的纹身匹配方法开始采用深度卷积神经网络来获取更有效的特征表达。

虽然针对纹身检测和匹配有一些研究,但由于人体的姿势,相机的角度,光照强度方向,图像分辨率,复杂背景等因素的变化,纹身识别与检索问题仍然具有很大的挑战性。或使用的纹身特征是预先记录好的,对于未记录的纹身特征无法进行匹配。或利用深度模型对纹身图像经过预处理之后,进行一个简单的多分类。而无法是对纹身进行检测和识别。或对采用关键点定位的方法进行纹身检测,一个关键点对应一个纹身特征,把所有的纹身特征拼凑起来进行纹身识别,识别过程比较繁琐,计算比较慢。

更重要的是,现有的大部分纹身匹配方法假定输入的查询和候选纹身图像是经过裁剪后的,在实际应用中,输入图像,特别是海量待查询图像通常是原始图像,纹身在原始图像中的位置和数量都是未知的。少量纹身匹配方法研究了纹身检测和纹身识别问题,但仍然将它们作为两个独立的任务,缺少对检测与识别任务相关性的统一考虑,以及检测与识别任务之间的特征共享。急需一种包含检测和识别的一体式纹身检测与紧凑分类特征学习技术,以在一个深度神经网络中同时处理纹身检测和紧凑特征学习两个任务,紧凑是指将模型输出的实值向量量化为二值向量,即只有0,1的二值向量。



技术实现要素:

本发明的目的是解决上述现有技术中无法同时进行纹身检测和识别的问题,并提出了一种在现实场景下使用原始图像的基础上,可以同时进行纹身的检测和紧凑特征学习的方法及系统。

针对现有技术的不足,本发明提出一种一体式纹身检测与识别方法,其中包括:

步骤1、将输入图像输入至包括多层残差网络的主干网络,得到该图像的卷积特征,将该卷积特征输入至区域候选框网络,检测得到纹身候选框,识别网络根据该纹身候选框的位置,将该纹身候选框内目标区域的特征池化到统一维度分别进行纹身分类和位置回归,得到该图像中纹身类别和精确候选框,通过特征学习将该精确候选框和该卷积特征投影到一个l2归一化的多维子空间中,得到实值向量,二值化该实值向量作为该输入图像的二值编码;

步骤2、将待查询图像作为该输入图像,执行步骤1,得到待查询图像的待查询二值编码;

步骤3、将多张候选纹身图象依次作为该输入图像,执行步骤1,得到每一张该候选纹身图象的候选二值编码;

步骤4、根据该待查询二值编码和所有该候选二值编码之间的汉明距离,将候选纹身图象按照汉明距离从小到大排序,作为与该待查询图像的纹身识别结果。

所述的一体式纹身检测与识别方法,其中该步骤1包括:将该精确候选框输入至具有感兴趣区域的特征池化层,以通过特征池化处理将该精确候选框的特征取出来送给紧凑特征学习分支,进行特征学习。

所述的一体式纹身检测与识别方法,其中采用交叉熵损失函数作为监督对该紧凑特征学习分支进行多分类的训练。

所述的一体式纹身检测与识别方法,其中该交叉熵损失函数为:

式中第一部分为softmaxloss,pi表示在一个minibatch内对第i个候选框预测的概率分布,代表在第i个候选框对应的类别标签,第二部分中k指的是特征长度,ai指的是在一个minibatch内第i个特征向量,e为元素均为1的k维向量,第三部分中mean(*)为计算特征向量的均值。

所述的一体式纹身检测与识别方法,其中步骤1中该二值编码的计算过程为:

bi=(sgn(s(xi)-0.5)+1)/2

xi为该实值向量中第i维实数,bi为该二值编码中的第i个编码。

本发明还提供了一种一体式纹身检测与识别系统,其中包括:

模块1、将输入图像输入至包括多层残差网络的主干网络,得到该图像的卷积特征,将该卷积特征输入至区域候选框网络,检测得到纹身候选框,识别网络根据该纹身候选框的位置,将该纹身候选框内目标区域的特征池化到统一维度分别进行纹身分类和位置回归,得到该图像中纹身类别和精确候选框,通过特征学习将该精确候选框和该卷积特征投影到一个l2归一化的多维子空间中,得到实值向量,二值化该实值向量作为该输入图像的二值编码;

模块2、将待查询图像作为该输入图像,执行模块1,得到待查询图像的待查询二值编码;

模块3、将多张候选纹身图象依次作为该输入图像,执行模块1,得到每一张该候选纹身图象的候选二值编码;

模块4、根据该待查询二值编码和所有该候选二值编码之间的汉明距离,将候选纹身图象按照汉明距离从小到大排序,作为与该待查询图像的纹身识别结果。

所述的一体式纹身检测与识别系统,其中该模块1包括:将该精确候选框输入至具有感兴趣区域的特征池化层,以通过特征池化处理将该精确候选框的特征取出来送给紧凑特征学习分支,进行特征学习。

所述的一体式纹身检测与识别系统,其中采用交叉熵损失函数作为监督对该紧凑特征学习分支进行多分类的训练。

所述的一体式纹身检测与识别系统,其中该交叉熵损失函数为:

式中第一部分为softmaxloss,pi表示在一个minibatch内对第i个候选框预测的概率分布,代表在第i个候选框对应的类别标签,第二部分中k指的是特征长度,ai指的是在一个minibatch内第i个特征向量,e为元素均为1的k维向量,第三部分中mean(*)为计算特征向量的均值。

所述的一体式纹身检测与识别系统,其中模块1中该二值编码的计算过程为:

bi=(sgn(s(xi)-0.5)+1)/2

xi为该实值向量中第i维实数,bi为该二值编码中的第i个编码。

由以上方案可知,本发明的优点在于:

本发明提出了一种一体式的端到端纹身检测与紧凑特征学习的深度神经网络,在网络训练阶段,采取基于图像拼合的样本增广方法,增大了网络的minibatch和纹身位置的多样性,以多任务的方式训练网络,会提升纹身检测和紧凑特征学习的效果。在网络模型预测阶段,输入一张图像,会产生纹身的精准预测框和对应区域的紧凑特征,产生的紧凑特征用于纹身识别,至此一体式解决纹身的检测和识别问题。本发明提出的方法是对所有的纹身图案进行特征提取,实时产生纹身特征,应用范围更广。且本发明是采用最新的基于深度学习的目标检测算法,将纹身检测出来并提取对应区域的纹身特征,特征比较具有代表性,识别过程简单,计算速度比较快。

附图说明

图1为本发明一体式端到端检测与紧凑特征学习网络结构示意图;

图2为本发明纹身识别过程示意图。

具体实施方式

本发明的关键点包括:

1、设计了一个一体式的端到端纹身检测与紧凑特征学习的深度神经网络。本网络是在目标检测faster-rcnn框架下,使用resnet-50(50层的残差网络)作为backbone(主干网络),在原始的rcnn两个分支(目标分类和位置回归)的基础上加入了第三个分支——紧凑特征学习分支。如附图1所示,给定一张图像,使用主干网络将原始像素映射到卷积特征。在这些卷积特征上建立一个纹身建议网络,用于产生纹身候选框,然后将这些候选框输入给一个拥有感兴趣区域的特征池化(roi-pooling)层的识别网络,识别网络会根据候选框的位置,将目标区域的特征池化到统一维度进行目标(纹身)分类,位置回归和紧凑特征学习;

2、基于精确的目标位置做特征池化和真实的纹身类别做监督信号用于紧凑特征学习。如附图1所示,因为位置回归分支会产生精确的目标位置,目标位置越准确识别效果越好,所以在紧凑特征学习分支中,使用精确回归之后的纹身检测框做特征池化进行紧凑特征的学习。因此,在网络的训练阶段,不同于一般的faster-rcnn网络只有两个监督信号(粗略的分类信号和位置回归信号)分别作用于两个分支,紧凑特征学习分支不仅需要精确的纹身位置信息还需要真实的精确类别信息,精确的纹身分类不同与粗略纹身的分类,粗略的分类只区分当前区域是否是纹身,精确的纹身分类是要区分当前区域的纹身是哪一类。然后,计算特征学习分支输出的纹身类别和真实的纹身类别的交叉熵损失softmaxwithloss作为特征学习分支的监督信号,精确的纹身分类保证了识别网络的泛化能力。通过这三个分支,本网络一体式得解决纹身检测和识别问题,并且能够提升纹身识别精度,保证网络的泛化能力;

3、基于图像拼合的样本增广方法。在faster-rcnn框架下,一个批次只能送进网络一张图像,如果加入水平反转,最多送入网络两张图像,所以在网络的训练过程中minibatch最大为2,而紧凑特征学习分支使用softmaxwithloss作为监督信号进行训练,而minibatch太小会导致网络无法收敛。我们采用的图像拼合策略是将一张固定大小的图像平均划分成多个区域,将一张原始纹身图像按照等比例缩放随机嵌入一个区域,保证每个区域有一张图像,如此便增大了一张图像中的纹身数量。图像拼合的样本增广方法不仅加大了训练过程中的minibatch,而且使得一张图像中的纹身位置信息更丰富,有利于提升纹身检测的效果,纹身检测效果的提升也会促进紧凑特征的学习。

为让本发明的上述特征和效果能阐述的更明确易懂,下文特举实施例,并配合说明书附图作详细说明如下。

本发明的实施过程具体包括以下步骤:

数据准备阶段:训练数据包括三部分,一部分来自公开的纹身数据集flickr,一部分来自互联网搜集到的纹身图像,一部分是以现有纹身为基础拼合而成的纹身图像。增广后的训练数据较增广前的训练数据能有效的提升训练效果。对于图像的拼合方式,例如将一张1000*600的空白图像平均分成4个或16个区域,为每个区域随机挑选一张原始纹身图像(不含拼合图像),保持该图像的长宽比不变做等比例缩放以适应空白区域的尺寸,然后将该图像嵌入到空白图像中,最后以整个数据集的均值填充不含图案的空白区域。

一体式的端到端纹身检测与紧凑特征学习的模型结构,该模型会输出每张图像中每个纹身的区域,该区域的置信度和该区域二值编码:

采用resnet-50作为基础cnn模型。在网络的最前端是一个7*7卷积层(称为conv1),后面是4个残差块(分别命名为conv2x到conv5x),每个块包含3,4,6,3个残差单元。

主干网络:我们利用conv1到conv4作为主干网络,从conv1到conv4,每两个conv之间直接连接,但是在conv内部,也就是在残差块的内部是残差连接。将一张图像输入到主干网络,主干网络会产生1024个通道的featuremap(特征图),这些特征图的分辨率为原图的1/16。

rpn(区域候选框网络):首先添加一个512*3*3卷积层,用来转换主干网络输出的特征图,然后为每个特征图位置关联9个锚点,并使用softmax分类器来判断每个锚点是否有目标,以及线性回归来调整其位置。将在非极大抑制后保留128个作为最终候选框。

纹身分类和位置回归分支:区域候选框网络会产生一些非纹身候选框,所以需要再次使用softmax和线性回归来过滤非纹身候选框。为了判别由区域建议网络产生的候选框是否是纹身,首先利用roi-pooling为每个候选框将对应的主干网络产生的特征池化到统一的尺度,然后将这些特征输入到resnet-50剩余的conv44到conv53部分,最后是globalavgpooling层将特征汇总成一个2048维的特征向量,分别输入给纹身分类分支和线性回归分支。纹身分类分支采用softmaxwithloss作为监督信号,线性回归分支采用smooth-l1loss作为监督信号,进一步优化候选框的范围。纹身分类分支输出的是纹身区域的置信度,作用是为了判别一个区域是否是纹身,不是纹身的区域会被抑制掉。线性回归分支并没有直接和紧凑特征学习分支相连,线性回归分支将进一步优化过的候选框输入给roi-pooling,roi-pooling将接收到的区域的特征取出来送给紧凑特征学习分支。

紧凑特征学习分支:将精准预测之后的纹身检测框和主干网络输出的特征图,输入给roipooling,然后送给特征学习分支,将这些特征投影到一个l2归一化的256维子空间中,则预测过程中,将256维的实值向量做二值化,随后只需评估目标纹身与候选纹身之间的汉明距离。

在训练阶段,我们采用softmaxwithloss损失函数作为监督信号进行一个多分类的训练,以对紧凑特征学习分支进行训练,训好后该紧凑特征学习分支可以为不同的纹身实例输出不同的二值编码。(训练过程是采用分类损失进行训练,测试过程会把分类隐层拿掉,只保留到分类层的前一层即可输出实值向量)。公式如下:

这里的wt是指全连接层的权重,xj是指第j个节点的输入,n表示类别数,p是指当前候选框被预测为第j类的概率,j为类别标签。lcls代表交叉熵损失,yi表示如果当前候选框的类别标签为i,yi为1否则为0。

特征二值化。在紧凑特征学习分支中,我们将输出的256维实值向量输入给一个sigmoid函数,sigmoid函数如下:

sigmoid函数的值域在0-1之间,xi为输入向量的第i个数,我们以0.5为阈值,二值编码函数如下:

bi=(sgn(s(xi)-0.5)+1)/2

这里的xi代表了256维实值向量中的第i个实数,bi指的是256维实数特征中的第i个编码,i的取值范围是0-255。

相似度度量。计算两个编码的汉明距离,公式如下:

d(x,y)=∑x(i)⊕y(j)

这里的x,y代表256位的二值编码,i=0,1,..255,⊕表示异或。

给定一个待查询纹身的256位二值编码,我们的目标是找到与待查纹身汉明距离最小的纹身图像,纹身相似度匹配公式如下:

mind(x,yk)

这里的x是指查询样本的二值编码,yk指的是待查询集合中的任意一个样本的二值编码。

模型训练。本网络采用多任务端到端的方式训练,学习率设置为0.001,迭代40000次降一次学习率,一共迭代50000次。每foward(前向传播)两次backward(反向传播)一次。本网络的损失函数定义为:

αβγ是超参数,固定值。ncls表示在一个minibatch中所有候选框的数量,nreg表示在一个minibatch中含有纹身的候选框数量,表示在一个minibatch中,含有精细的类别标注的候选框的数量。这里i是每一个候选框在一个批训练minibatch中的序号,第一部分lcls作为二分类的监督信号,ci代表一个候选框中有纹身的可能性,如果包含纹身为1,否则为0。第二部分作为位置回归的监督信号,ti为一个包含4个参数的向量,表示预测的纹身位置,当候选框包含纹身时,作为ti的ground-truth是回归的的目标。第三部份为紧凑特征学习的监督信号,紧凑特征学习分支的损失函数为:

第一部分为softmaxloss,pi表示在一个minibatch内,对第i个候选框预测的概率分布,p的计算方式上文已经给出,代表在第i个候选框对应的类别标签,第二部分中,k指的是特征长度,k一般为256,ai指的是特征向量,e为元素都为1的k维向量,第二部分限制特征向0和1分散,第三部分中mean(*)为计算特征向量的均值,第三部分要求0和1的分布均匀。

纹身识别过程。模型测试示意图如图2所示:

如图2所示,将待查询图像和候选数据库输入网络提取特征,特征二值化之后,计算待查询图像和所有候选图像之间的汉明距离,将候选图像按照汉明距离从小到大排序,生成与待查询图像相似的纹身图像列表。

以下为与上述方法实施例对应的系统实施例,本实施方式可与上述实施方式互相配合实施。上述实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在上述实施方式中。

本发明还提供了一种一体式纹身检测与识别系统,其中包括:

模块1、将输入图像输入至包括多层残差网络的主干网络,得到该图像的卷积特征,将该卷积特征输入至区域候选框网络,检测得到纹身候选框,识别网络根据该纹身候选框的位置,将该纹身候选框内目标区域的特征池化到统一维度分别进行纹身分类和位置回归,得到该图像中纹身类别和精确候选框,通过特征学习将该精确候选框和该卷积特征投影到一个l2归一化的多维子空间中,得到实值向量,二值化该实值向量作为该输入图像的二值编码;

模块2、将待查询图像作为该输入图像,执行模块1,得到待查询图像的待查询二值编码;

模块3、将多张候选纹身图象依次作为该输入图像,执行模块1,得到每一张该候选纹身图象的候选二值编码;

模块4、根据该待查询二值编码和所有该候选二值编码之间的汉明距离,将候选纹身图象按照汉明距离从小到大排序,作为与该待查询图像的纹身识别结果。

所述的一体式纹身检测与识别系统,其中该模块1包括:将该精确候选框输入至具有感兴趣区域的特征池化层,以通过特征池化处理将该精确候选框的特征取出来送给紧凑特征学习分支,进行特征学习。

所述的一体式纹身检测与识别系统,其中采用交叉熵损失函数作为监督对该紧凑特征学习分支进行多分类的训练。

所述的一体式纹身检测与识别系统,其中该交叉熵损失函数为:

式中第一部分为softmaxloss,pi表示在一个minibatch内对第i个候选框预测的概率分布,代表在第i个候选框对应的类别标签,第二部分中k指的是特征长度,ai指的是在一个minibatch内第i个特征向量,e为元素均为1的k维向量,第三部分中mean(*)为计算特征向量的均值。

所述的一体式纹身检测与识别系统,其中模块1中该二值编码的计算过程为:

bi=(sgn(s(xi)-0.5)+1)/2

xi为该实值向量中第i维实数,bi为该二值编码中的第i个编码。

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