一种融合多区域深度特征的奶牛个体身份识别方法与流程

专利2022-06-29  177


本发明涉及一种奶牛个体身份识别方法,具体涉及一种融合多区域深度特征(deeppartfeaturefusion,dpff)的奶牛个体识别方法。



背景技术:

奶牛的个体识别对精确畜牧业具有重要意义,可用于品种关联、自动行为分析、智能挤奶、奶牛健康监测、体重管理和其它活动。因此,奶牛的个体识别是其它应用的基础。

最近,计算机视觉已广泛应用于动物生物识别。基于计算机视觉的方法可以非接触地识别奶牛,分析奶牛行为。这些非接触式方法提高了个体识别实用性及其自动化程度,从而降低了管理成本。

综合现有文献可知,奶牛个体识别的相关工作主要利用到奶牛的四个区域,即口鼻部、脸部、背部和躯干,这四个区域的一些样本示例如图1(a-d)所示。kumar等提出了一种自动奶牛识别系统,该系统采用卷积神经网络(cnns)和深度置信网络(dbns)提取奶牛口鼻部图像的特征进行奶牛识别。尽管该系统具有较高的准确率,但是待识别的口鼻部区域太小,很难应用于实际生产。kumar等同时还提出了一种基于奶牛脸部图像的识别方法。该方法首先使用adaboost脸部检测算法来检测牛脸,并利用pca、lda、ica等技术提取牛脸特征。最后,通过训练支持向量机(svm)和增量支持向量机(isvm)来对牛脸进行分类。然而,由于头部运动和不均匀光照等因素增加了所采集脸部图像的复杂性,限制了基于脸部图像的奶牛个体识别性能。zin等使用帧间差和水平直方图来提取在旋转挤奶厅上的奶牛的背部图像,然后训练卷积神经网络识别奶牛。该方法验证了牛背图像用于奶牛个体识别的可能性。赵凯旋等提出了一种结合帧间差法和分段跨度分析提取奶牛躯干图像,然后使用卷积神经网络识别躯干图像的个体识别方法。在这种方法中,深度特征仅从奶牛的躯干区域中提取而来。

然而,使用奶牛躯干区域进行个体识别不仅取决于奶牛的目标检测,还取决于躯干区域的检测。此外,除了躯干区域,奶牛的侧视图像中的奶牛整体区域(图1e)还包含脖子以上(以下称为头部)区域和腿部区域,这些区域也能够提供有效的身份识别信息。与奶牛的口鼻部和脸部相比,奶牛的侧面更稳定,更容易检测,且当前几乎没有其它工作将奶牛侧视图像用于个体识别,因此,在之前的关于奶牛个体识别的工作中,使用105头奶牛的侧视目标图像训练了卷积神经网络。然而,奶牛各个区域都具有识别能力,现有的工作并不能通过对各个区域进行加权来完成奶牛个体识别。



技术实现要素:

为了更好地利用奶牛侧视目标图像的各个区域的深度特征,并更好地探索每个区域和多区域组合对奶牛个体识别的影响,本发明提供了一种融合多区域深度特征的奶牛个体身份识别方法。

本发明的目的是通过以下技术方案实现的:

一种融合多区域深度特征的奶牛个体身份识别方法,包括如下步骤:

步骤一、数据采集

通过图像采集设备采集奶牛通过挤奶通道的侧视图像序列;

步骤二、目标检测

将待检测图像输入到yolo目标检测模型中,提取每一帧图像中的奶牛整体区域作为待识别图像,并划分为两个数据集,一个作为训练集,一个作为验证集,其中,待识别图像按照下式进行选取:

式中,cow为待识别图像集合,为目标检测结果deti的面积,at为面积阈值,表示目标检测结果deti的类别名,n表示整个图像序列的目标检测结果个数,cow为待检测目标名;

步骤三、区域划分

将步骤二检测到的奶牛目标划分为头部、躯干和腿部三个区域,具体划分方法如下:

(1)执行两帧差分法获得运动奶牛的粗略轮廓;

(2)使用相应目标检测结果的边界在帧间差图像中定位目标奶牛,然后将其分为等距的垂直片段;

(3)获得每个片段中二值图像的真值的上下边界,并将上下边界之间的距离作为跨度;

(4)对每个片段的边界和进行分析,提取出上边界较高且跨度较大的片段作为包含躯干和腿部的片段,将这些片段中较高的下边界作为躯干和腿部的边界;

(5)根据几何关系将除躯干和腿部外的剩余区域作为头部区域;

步骤四、个体识别

使用步骤三的奶牛各区域图像数据集构建一个融合多区域深度特征的奶牛个体识别模型,利用该模型进行个体识别,具体方法如下:

(1)使用已进行数据增强的奶牛各区域图像对三个独立的alexnet模型进行微调,每个alexnet模型包括输入层、conv1、conv2、conv3、conv4、conv5、fc6、fc7和fc8,conv1至conv5是卷积层,其中conv1、conv2和conv5包含池化层,fc6至fc8是全连接层,除fc8外每一层后面都使用了relu激活函数;

(2)将图像样本数据集中的奶牛图像的各区域分别送到三个经过微调的alexnet模型中,以从这三个区域中提取深度特征;

(3)通过加权求和策略对头部、躯干和腿部的深度特征进行融合,生成最终的奶牛身份特征;

(4)使用训练集样本训练svm模型,在测试阶段,将验证集中的奶牛图像输入到svm模型中进行预测,即得到最终识别结果。

相比于现有技术,本发明具有如下优点:

1、本发明提出了一种融合多区域深度特征框架,可以提取出更多的区分性特征,实现奶牛个体识别。

2、本发明分析了奶牛的各个区域及其组合对个体识别的贡献,从而确定了最佳组合。

3、本发明在包含93头奶牛侧视图像的数据集上验证了提出的识别方法,识别准确率达到98.36%,相关实验证明了该方法在奶牛个体识别中的有效性和良好潜力,并取得了优于现有工作的性能。

4、本发明提出了一种使用奶牛侧面图像进行个体识别的方法,该方法可以应用于个性化行为检测和奶牛智能分析的一些领域,如跛行检测、饮水行为分析、体型线性评定、乳腺炎检测和个体定位等。此外,它可以为基于其它视角的奶牛个体识别以及奶牛饲养的其它应用领域提供参考。

附图说明

图1为奶牛个体识别中的一些感兴趣区域,(a)口鼻部,(b)脸部,(c)背部,(d)躯干,(e)奶牛整体区域;

图2为挤奶厅布局图,δ表示相机位置;

图3为奶牛识别流程图;

图4为目标检测示例,(a)0号奶牛目标检测结果,(b)34号奶牛目标检测结果;

图5为区域划分示例;

图6为融合多区域深度特征的奶牛个体识别模型结构;

图7为四幅输入图像与第一个卷积层的特征叠加图(第一行到第四行依次为头部、躯干、腿部和整体区域的特征叠加图);

图8为特征响应图示例。

具体实施方式

下面结合附图对本发明的技术方案作进一步的说明,但并不局限于此,凡是对本发明技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的保护范围中。

本发明提供了一种融合多区域深度特征的奶牛个体身份识别方法,所述方法首先通过图像采集设备采集奶牛通过挤奶通道的侧视图像序列,然后对yolo目标检测模型进行了微调,提取每一帧图像中的奶牛整体区域作为待检测图像,并划分为两个数据集,一个作为训练集,一个作为验证集。接下来,提出一个区域划分方法,将检测到的奶牛目标划分为头部,躯干和腿部三个区域,并训练了三个独立的卷积神经网络(cnns),以从这三个区域分别提取深度特征。最后,设计了一个特征融合策略将提取到的特征进行融合,并使用融合特征训练支持向量机(svm)模型,完成奶牛的个体识别。在本发明中,不仅分析了三种特征融合策略的识别性能,而且还验证了所提出的融合奶牛侧面各区域深度特征的模型的识别性能优于使用侧视整体目标图像、单个区域和任意两个区域的组合的方法。具体内容如下:

一、数据准备

1、数据采集

本发明所有实验图像采集于中国黑龙江省哈尔滨市双城康达畜牧场的挤奶厅,采集时间为2017年11月,采集对象为荷斯坦奶牛。牛场的挤奶厅布局如图2所示,挤奶厅由2×12的平行挤奶区域和返回通道组成。挤奶区域的长度为17.8m,宽度为1.6m,返回通道的长度为7.5m,宽度为2.4m。奶牛在挤奶结束后会依次通过返回通道,一台可旋转的asusxtion2深度相机被放置在图2中的“δ”处,用于采集奶牛的侧视图像序列,水平的相机用于采集从右侧挤奶区域的奶牛(图2中上面的通道),倾斜的相机用于采集从左侧挤奶区域的奶牛(图2中下面的通道),并确保视野的大小大于奶牛个体尺寸。本发明共采集93头奶牛的有效侧视图像序列。图像序列以.oni格式保存,帧率为30fps,分辨率为640(水平)×480(垂直)。

2、实验数据

为了简化实验,本发明对93头奶牛从0到92进行编号,而不是直接使用奶牛的耳标号。每头奶牛的持续时长约为6s,在这6s中,整头奶牛出现在视野中的持续时长约为2s,图像序列帧率为30fps。在采集过程中存在部分帧丢失和相邻奶牛部分重叠的情况,对采集图像序列进行后处理与分析后,去除了奶牛重叠部分与重叠帧,其余的帧被分配到相应奶牛类别,形成待检测图像。通过对yolo目标检测模型微调后提取出奶牛侧视目标图像958幅,对每头奶牛的侧视图像按7:3的比例随机划分为训练集和验证集,最终得到训练集图像593幅,验证集图像365幅。

二、方法

本发明提出的方法的流程如图3所示。首先将待检测图像输入到yolo目标检测模型中,提取感兴趣奶牛目标。然后将感兴趣奶牛目标划分为头部、躯干和腿部三个区域。将划分的局部区域分别送到卷积神经网络进行特征提取,并对区域特征进行融合后形成最终的奶牛身份特征,最后利用由融合特征训练得到的svm模型实现奶牛个体识别。详细介绍如下:

1、目标检测

为了检测出每幅奶牛图片中奶牛的位置,并且抑制背景噪声和不同奶牛的干扰,本发明采用了yolo目标检测模型,该模型在mscoco数据集上预训练的目标检测深度模型,它能检测出图片中所有已训练类别目标的位置,实现目标的实时检测,目标检测结果如图4所示。本发明将每个感兴趣的奶牛图像分配到相应的奶牛类别中,形成待识别的图像。使用下式选取待识别图像:

其中,cow为待识别图像集合,为目标检测结果deti的面积,at为面积阈值,为了筛选出每幅图像中的显著的感兴趣奶牛,at根据经验设置为0.25×(640×480)。表示目标检测结果deti的类别名,n表示整个图像序列的目标检测结果个数。本发明挑选目标名为cow并且面积大于at的检测结果,由于模型还可以检测出头部被遮挡或超出视野的奶牛,为了验证多区域特征融合实验,通过后处理手动删除了不包含头部的目标检测结果,其余结果用于接下来的个体识别。

2、区域划分

为了分别提取各区域的特征,需要将奶牛目标分为三区域:头部、躯干和腿部。本发明根据赵凯旋等的工作改进了一种提取躯干区域的方法,然后再根据各区域的几何关系划分出头部和腿部。

首先执行两帧差分法(在两个相邻帧的灰度图上做差运算并转换为二值图像)来获得运动奶牛的粗略轮廓。接下来使用相应目标检测结果的边界在帧间差图像中定位目标奶牛,然后将其分为等距的垂直片段。获得每个片段中二值图像的真值的上下边界,并将上下边界之间的距离作为跨度,然后对每个片段的边界和进行分析,提取出上边界较高且跨度较大的片段作为包含躯干和腿部的片段,将这些片段中较高的下边界作为躯干和腿部的边界,最后根据几何关系将除躯干和腿部外的剩余区域作为头部区域。区域划分示例如图5所示。

3、个体识别

近来,卷积神经网络通过学习原始图像的深度特征在视觉识别/分类任务中取得了不错的成果。考虑到一些奶牛的纹理信息较少,很难用传统算法从这些奶牛中人工定义可辨识特征。因此,本发明采用卷积神经网络提取奶牛各区域的深度特征。根据在先前的工作中使用不同的卷积神经网络识别奶牛的实验结果,选择性能最高的网络alexnet作为本发明的基础网络。alexnet是一个典型的卷积神经网络,在imagenet竞赛中具有较高的分类性能。由于奶牛的侧视图像中的头部、躯干和腿部区域都包含丰富的轮廓和纹理特征。因此,本发明提出了一个称为“融合多区域深度特征(deeppartfeaturefusion,dpff)”的奶牛个体识别模型。在该模型中,为了提取三个区域的深度特征,训练了三个独立的经过微调的alexnet模型。对于每个微调的alexnet网络,使用相应区域的图像作为模型的输入,并使用在imagenet上预先训练的权重作为模型的初始参数,通过更新alexnet的最后两层的参数来微调新模型。dpff模型结构如图6所示,conv1至conv5是卷积层,其中conv1、conv2和conv5包含池化层,fc6至fc8是全连接层。除fc8外每一层后面都使用了relu激活函数。本发明首先训练了三个独立的卷积神经网络(使用三个区域的训练集来微调alexnet模型),以从这三个区域中提取深度特征(softmax层的特征)。然后,通过加权求和策略对特征进行融合,生成最终的奶牛身份特征。最后,训练svm分类器来识别个体奶牛。

为了避免过拟合,通过水平翻转和随机裁剪的方式对头部、躯干和腿部的数据进行增强。首先,将数据集中奶牛各区域的原始图像输入到alexnet中训练模型。在执行多次卷积和池化操作之后,预测结果由最后一个全连接层生成。本发明的数据集中有93头奶牛,因此alexnet的最后一个全连接层由93个神经元堆叠而成,并将结果输入到93维的softmax层,代表将输入奶牛分类到某一类别的概率。

在计算预测结果与实际类别之间的误差后,使用随机梯度下降法来最小化损失函数并实现网络参数的更新。在模型收敛之后,获得网络的一组最佳参数,这就是通过训练获得的模型。接下来,将图像样本数据集中的奶牛图像的各区域输入到该模型中进行特征提取,利用加权求和的方式将头部、躯干和腿部特征进行融合,形成最终的奶牛身份特征。

最后,使用训练集样本训练svm模型。在测试阶段,将验证集中的奶牛图像输入到svm模型中进行预测,即得到最终识别结果。

三、实验结果与分析

1、识别结果与分析

在本发明中,分别对头部、躯干和腿部区域组成的数据集进行数据增强,使用三个区域的训练集训练三个独立的经过微调的alexnet网络,分别提取三个区域的深度特征。训练卷积神经网络模型时对三个网络的参数进行统一设置。其中批处理大小为122,学习率初始值为0.01,当模型损失函数小幅波动时,将学习率设置为前一个学习率的1/10。每次迭代使用365幅验证图像对模型进行评估。待模型收敛后进行特征提取与融合,并训练svm模型进行分类。svm模型的核函数选用径向基函数(rbf),惩罚系数c与gamma值为最优经验值。本发明使用准确率作为评价指标,即验证集中被正确预测样本所占百分比。本发明提出的dpff与相关方法、现有工作在相同指标上的识别性能比较如表1所示。

表1识别性能比较

从表1可以看出传统识别方法的准确率较低。考虑到卷积神经网络可以提取奶牛的轮廓和纹理等深度特征,赵凯旋等使用了改进的lenet5对奶牛的躯干区域的灰度图像进行了分类。该方法的识别准确率比图像距离度量法和sift匹配法分别提高了57.60%、52.66%,显示出了更好的性能。本发明还在无额外优化的情况下在本发明的躯干图像数据集上实现了他们的模型,其准确率为69.86%。可能的原因是本发明的数据集中奶牛类别更多,许多奶牛的主要颜色是黑色。当躯干区域接近纯黑色时,很难像赵凯旋等那样提取有效的身份特征,因此需要更好地提取像奶牛轮廓和纹理等可辨识特征。

由于在侧视图像中的奶牛目标比躯干区域包含更多的轮廓特征。因此,本发明使用微调的alexnet模型在包含105头和93头奶牛的两个数据集上对整体奶牛图像数据集的识别准确率分别达到了96.65%和97.78%,该方法展现出了比赵凯旋等更好的性能。

然而,除了奶牛整体目标外,侧视图像的头部、躯干和腿部均包含丰富的轮廓、纹理特征且具有一定的区分度,也可以用来提取深度特征。因此,针对这些方法的上述缺点而提出的综合各区域特征进行奶牛个体识别的dpff模型准确率达到了98.36%,展示出了比其它方法更好的性能。

从表1给出的实验结果可以得出结论:使用整体区域进行奶牛个体识别优于躯干区域,且综合各区域特征的奶牛个体识别方法优于前两者。

2、特征图分析

为验证本发明的卷积神经网络是否有效地提取了奶牛特征,本发明输出了奶牛头部、躯干、腿部和整体目标四个区域的输入图像与第一个卷积层特征的叠加图,如图7所示。从32张特征叠加图中可以发现,该模型有效地提取了奶牛各个区域的轮廓和纹理等特征。它还展示了卷积运算具有良好的滤波和平滑效果,能够减少噪声,增强信号特征,并将输入图像映射到不同的灰度空间,从而确保了网络在不同光照条件下抵抗外部干扰的能力。

图8展示出了三张特征响应图,该响应图由本发明的卷积神经网络中最后一个卷积层的特征图与同一奶牛目标输入图像的叠加而来。从这张图中发现头部、躯干和腿部明显被激活。因此,可以得出结论,包括头部、躯干和腿部区域信息的侧视图像可以被卷积神经网络用来学习可辨识特征,最终实现奶牛个别识别。

3、区域组合分析

为了分析奶牛各区域组合的识别性能,本发明对奶牛头部、躯干和腿部三个区域的所有可能组合进行了个体识别。本发明采用了三种识别方法:通过计算特征相似度进行显式特征匹配的分类方法(以下简称dpff-matching),直接根据融合特征的特征值进行分类的方法(以下简称dpff-softmax)与本发明提出的基于svm模型分类方法(dpff)。特征融合的方式采用对softmax层进行加权求和,特征融合的各区域权重系数wi(i=1,2,3)取值为步长为0.1的所有可能组合。上述三种识别方法的区域组合的识别性能和最短耗时如表2所示。

表2区域组合的识别性能

在本发明中,使用dpff-matching来验证人体生物特征识别文献中常用的深度学习方法,将常用的欧几里得距离作为相似度。在表2中,“耗时”表示相应识别方法的最短cpu运行时间。如表2所示,融合三个区域特征的dpff方法达到了最高的准确率,且耗时相对较短。实验结果证明,与其它两种方法相比,dpff方法具有高准确率,高效率的优点。

从表2单区域的实验结果可以发现,除了躯干区域以外,头部和腿部区域也具有识别不同奶牛的能力,且使用dpff-softmax方法对单区域识别的准确率高于dpff-matching和dpff。

对于多区域,表2中多区域组合的相关权重均由最优经验参数组成。其中达到了最高识别准确率的头部、躯干和腿部的组合在dpff-matching、dpff-softmax和dpff三种方法下的实验结果对应的权重系数比值是2:7:1/2:6:2/2:5:3、2:6:2、2:5:3。从该权重系数比值可以发现,躯干区域对于奶牛个体识别的贡献最高,其次是腿部,最后是头部。从多区域组合的实验结果还可发现,使用dpff方法对多区域识别的准确率普遍高于dpff-matching和dpff-softmax。在头部 腿部、躯干 腿部与头部 躯干 腿部的组合下,dpff方法的准确率相较于dpff-matching、dpff-softmax分别提高了0%,0.27%,0.55%和1.39%,0.27%和0.55%。

最终可以得出结论,使用dpff方法综合头部、躯干和腿部区域进行奶牛个体识别达到了最高的98.36%的准确率,证明综合三个区域的个体识别优于单独的区域与部分区域的组合。

4、融合策略分析

在进行区域特征融合时,除了对应特征值加权求和(以下简称weightedsum)外,本发明还尝试了其它两种融合策略:对各区域特征值求和(以下简称sum)和对各区域对应特征值取最大值(以下简称max)。三种融合策略在dpff-softmax和dpff两种识别方法下的准确率如表3所示。

表3各融合策略的识别性能比较

从表3给出的实验结果可以发现,采用加权求和策略的dpff方法达到了最高的准确率,在三种融合策略下使用svm模型进行分类普遍比直接根据softmax层对应的融合特征进行分类效果好,在三种融合策略中,加权求和的性能普遍优于其它两种融合策略。


技术特征:

1.一种融合多区域深度特征的奶牛个体身份识别方法,其特征在于所述方法包括如下步骤:

步骤一、数据采集

通过图像采集设备采集奶牛通过挤奶通道的侧视图像序列;

步骤二、目标检测

将待检测图像输入到yolo目标检测模型中,提取每一帧图像中的奶牛整体区域作为待识别图像,并划分为两个数据集,一个作为训练集,一个作为验证集;

步骤三、区域划分

将步骤二检测到的奶牛目标划分为头部、躯干和腿部三个区域;

步骤四、个体识别

使用步骤三的奶牛各区域图像数据集构建一个融合多区域深度特征的奶牛个体识别模型,利用该模型进行个体识别。

2.根据权利要求1所述的融合多区域深度特征的奶牛个体身份识别方法,其特征在于所述步骤二中,待识别图像按照下式进行选取:

式中,cow为待识别图像集合,为目标检测结果deti的面积,at为面积阈值,表示目标检测结果deti的类别名,n表示整个图像序列的目标检测结果个数,cow为待检测目标名。

3.根据权利要求1所述的融合多区域深度特征的奶牛个体身份识别方法,其特征在于所述步骤三中,头部、躯干和腿部的具体划分方法如下:

(1)执行两帧差分法获得运动奶牛的粗略轮廓;

(2)使用相应目标检测结果的边界在帧间差图像中定位目标奶牛,然后将其分为等距的垂直片段;

(3)获得每个片段中二值图像的真值的上下边界,并将上下边界之间的距离作为跨度;

(4)对每个片段的边界和进行分析,提取出上边界较高且跨度较大的片段作为包含躯干和腿部的片段,将这些片段中较高的下边界作为躯干和腿部的边界;

(5)根据几何关系将除躯干和腿部外的剩余区域作为头部区域。

4.根据权利要求1所述的融合多区域深度特征的奶牛个体身份识别方法,其特征在于所述步骤四的具体方法如下:

(1)使用已进行数据增强的奶牛各区域图像对三个独立的alexnet模型进行微调;

(2)将图像样本数据集中的奶牛图像的各区域分别送到三个经过微调的alexnet模型中,以从这三个区域中提取深度特征;

(3)通过加权求和策略对头部、躯干和腿部的深度特征进行融合,生成最终的奶牛身份特征;

(4)使用训练集样本训练svm模型,在测试阶段,将验证集中的奶牛图像输入到svm模型中进行预测,即得到最终识别结果。

5.根据权利要求4所述的融合多区域深度特征的奶牛个体身份识别方法,其特征在所述alexnet模型包括输入层、conv1、conv2、conv3、conv4、conv5、fc6、fc7和fc8,conv1至conv5是卷积层,其中conv1、conv2和conv5包含池化层,fc6至fc8是全连接层,除fc8外每一层后面都使用了relu激活函数。

技术总结
本发明公开了一种融合多区域深度特征的奶牛个体身份识别方法,所述方法首先通过图像采集设备采集奶牛通过挤奶通道的侧视图像序列,然后对YOLO目标检测模型进行了微调,提取每一帧图像中的奶牛整体区域作为待检测图像。接下来,提出一个区域划分方法,将检测到的奶牛目标划分为头部,躯干和腿部三个区域,并训练了三个独立的卷积神经网络(CNNs),以从这三个区域分别提取深度特征。最后,设计了一个特征融合策略将提取到的特征进行融合,并使用融合特征训练SVM模型,完成奶牛的个体识别。本发明能够更好地利用奶牛侧视目标图像的各个区域的深度特征,并更好地探索每个区域和多区域组合对奶牛个体识别的影响。

技术研发人员:戴百生;沈维政;胡亨琪;李润泽;姜丽;张永根;熊本海
受保护的技术使用者:东北农业大学
技术研发日:2020.02.03
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-16432.html

最新回复(0)