APP下载

基于动态多特征变量的黄羽肉鸡跛行状态定量评价方法

2018-09-17沈明霞李嘉位陆明洲刘龙申孙玉文

农业机械学报 2018年9期
关键词:步幅步态决策树

沈明霞 李嘉位 陆明洲 刘龙申 孙玉文 李 泊

(1.南京农业大学工学院, 南京 210031; 2.江苏省智能化农业装备重点实验室, 南京 210031)

0 引言

跛行程度是对肉鸡腿部健康状态和损伤判断的标准化描述[1]。随着肉鸡集约化与规模化养殖的推广,培育期大幅缩短,但肉鸡腿部疾病发生率较为常见,肉鸡有明显跛行的占总量的20.66%[2-3]。跛行肉鸡的存在比例与现代化养殖要求相悖,既降低了动物福利水平,又影响了肉鸡生产的品质与产量。

对跛行进行早期识别,是对肉鸡疾病进行预防的有效途径。肉鸡跛行经典评价方法是KESTIN等[4]提出的鸟类步态六级评分标准(Gait score, GS),其中GS0~GS5 6个级别分别表示从腿部健康到严重病态的情况,如表1所示。

表1 鸟类步态评分标准说明Tab.1 Gait score introduction of six-class definition

AYDIN等[5]的研究证明肉鸡步态得分可以作为跛足衡量指标。对肉鸡进行GS人工分类时,主观性强,准确度差,易受到环境影响,而基于视频的跛行评价算法为肉鸡步态的自动判别提供了支持。NAAS等[6]开发了一套协同算法,通过图像分析单只肉鸡的行走速度与加速度,实现对肉鸡进行GS0~GS5的自动分类,在GS3、GS4等极端分数上取得了接近100%的准确率,但针对GS1和GS2的判断准确率仅为50%。 DAWKINS等[7]通过使用光流算法来调查鸡群的行为,揭示了光流与肉鸡步态评分水平之间的关系。AYDIN[8]通过3D相机研究肉鸡的躺卧时间,提出了一种自动评估肉鸡跛足的方法,以评估肉鸡跛足的严重程度,得出肉鸡躺卧时间与传统肉鸡的步态评分之间存在着明显负相关的结论。在相近领域,劳凤丹等[9]通过贝叶斯模型基于10个特征量实现了对蛋鸡日常行为的分类。赵凯旋[10]通过奶牛行走视频中对四肢进行定位和跟踪,得出了奶牛运动曲线,并通过交叉验证的决策树建立了奶牛3分制步态评分模型,识别奶牛跛行总体精度达到90.18%。肉鸡腿部健康与步态评价相关的研究,国内尚未见文献报道。

本文基于C4.5决策树模型,从肉鸡步态视频中提取速度、步频、步幅、步幅差等动态指标,并将其作为训练特征,以提高对GS1、GS2等轻微病态步态识别的准确率。最终以GS为依据,提出一种新的肉鸡步态评分鉴别与分类方法,为肉鸡健康预警提供技术支持。

1 材料和装置

1.1 实验对象

实验于2017年12月—2018年1月在滁州市温氏集团牧业的全椒肉鸡养殖中心进行,共选取黄羽肉鸡267只,日龄在40~45 d之间,质量在0.6~1.2 kg之间,鸡舍温度(21±5)℃。实验前将木质步行道放入鸡舍7 d,以使肉鸡适应实验环境,消除实验时的环境应激性。以KESTIN步态评分标准[4]为依据,经过动物科学相关专家人工鉴定,选取肉鸡的步态分布结果如表2所示。其中GS5步态因为其走动能力极差,难以采集步态视频,且强迫其走动有违动物福利要求,故未被作为实验对象,实际参与实验研究肉鸡260只,每只鸡记录2次行走视频,共记录步态数据520条。

表2 实验鸡基本情况Tab.2 Basic condition of experimental broilers

1.2 实验平台

实验装置是由木质步行道、白色背景墙和摄像头组成的特制平台,步行道长130 cm,宽50 cm,高20 cm,白色背景墙与步行道等长,高65 cm,与木质步行道垂直放置。背景墙左右两侧各有一个标记为入口、出口的计时标记点。正对背景墙100 cm处放置一台摄像机进行全程视频采集。正对步行道地面高120 cm处放置摄像头,在肉鸡到达入口计时点时触发,进行连续3帧的图像数据采集。步态采集装置示意图如图1所示。

图1 步态采集装置示意图Fig.1 Schematic of broiler gait collection device

1.3 视频采集

将单只肉鸡人为放置在步行道最左端起点,使其自由行走。因仅有步行道终点一个方向可以通向鸡群和日常生活环境,由于肉鸡趋同行为,大多数时候肉鸡可以沿这个方向通过直线路径走向步行道尽头。特别地,对于个别行走意愿不强烈的肉鸡个体,进行轻微驱赶后采集,但在步行过程中不予干预。采集时间为09:00—14:00。

每只鸡在步行道上完成5次视频采集,从中选取2次步态相对自然的步态数据记录,以消除偶发应激性导致的异常数据影响。摄像机分辨率为1 024像素×768像素,采集频帧为60 f/s。本实验采用自然光源以避免外加光源导致的肉鸡应激反应。垂直摄像头采集的图像用来计算肉鸡投影面积;水平摄像机采集的视频用来获取肉鸡的行走速度、步幅、步幅差等动态特征参数。

1.4 距离标定实验

在本实验装置设定完毕后,分别在摄像头视野内不同的10个位置(水平位置5个,竖直位置5个)放置边长为100 mm的正四边形标定块。通过K值法进行距离标定实验。K是物理长度与像素长度的比值。在已采集图像中,求出正四边形标定块边长对应的像素长度A,标定块实际边长B为100 mm,计算得出K=B/A,标定结果如表3所示。

表3 标定实验结果Tab.3 Calibration test results

图像处理过程中,像素为最小处理单位,根据实验结果,水平图像中设置距离换算标准为1像素对应1.68 mm;竖直图像中设置换算标准为1像素对应1.81 mm。

2 动态特征提取

将肉鸡步态视频按时间顺序转换成图像序列,将每帧储存为JPG文件,每帧图像尺寸为1 920像素×1 080像素。

2.1 图像预处理

针对黄羽肉鸡,其鸡体各部分毛色差异较大,在RGB图像中将完整鸡体进行提取有一定困难。本实验中,HSV空间下鸡体各部分均更易于与背景分离。

本文采用HSV空间对图像进行处理[11],实验中发现S分量能较好地将肉鸡身体与背景分离,但肉鸡部分暗色羽毛(如尾部、翅膀等)特征不明显。而在V分量中能较好地提取暗色羽毛部分,则以S通道为基础,叠加V通道部分特征,可以取得理想的效果,如图2所示。

图2 肉鸡步态序列图像处理过程Fig.2 Process of broiler sequence gait image

肉鸡场环境复杂,无法通过背景减差法[12-13]进行目标提取。本文通过OTSU算法[14]进行自适应二值化处理后得到二值图,如图2d、2e,并可消除大部分无关背景。将二值化后的S、V分量图重新组合。最后通过连通域面积阈值过滤与开闭运算[15],填补图像空隙,消除非必要连通域,得到完整的肉鸡图像,如图2g所示。

2.2 图像分割

通过团序列检测算法[16]快速将肉鸡腿部与身体进行分割。逐行遍历最大的连通域图像,把每行中不间断像素组成的序列标记为一个“团”,标记第i行团的起点为Tsi、终点为Tei,每帧图像团序列总长度计算公式为

(1)

团序列分布图是以图像列数为自变量的离散函数,通过样条函数分段拟合[17]得到样条曲线,在拟合样条曲线中通过极值点识别到团序列变化过程中的转折点,在该列处以10像素为宽度进行图像分割,从而分离肉鸡的身体部分与腿部部分,团序列分布如图3所示,分割结果如图4所示。之后对腿部图像进行转置团序列处理,从而实现将肉鸡的两条腿进行分割,方法相同不再赘述。

图3 肉鸡身体团序列分割示意图Fig.3 Schematic diagrams of broiler body segmentation

图3为针对图2g的团序列识别结果,并识别出图像团序列函数的极小值点,即图3中第418行的团序列数,将此行作为分割点,将413行到423行的数据清除,并将0~412行与424~469行的像素数据分别进行提取,从而实现肉鸡身体与腿部的分离,分割结果如图4所示。

图4 肉鸡身体与腿部分离示意图Fig.4 Diagram of broiler body and leg separation

2.3 质心提取

从分离的肉鸡身体、前腿、后腿图像块中获得肉鸡身体和腿部的质心点,作为肉鸡步态关键特征提取基础。

本文选择一阶矩[18]和零阶矩的方法计算图像的质心,针对二值图像,其零阶矩M00以及一阶矩M01、M10分别为

(2)

(3)

式中V(i,j)——坐标点(i,j)的像素值

根据式(2)、(3),分别从分离出的鸡身、左侧腿、右侧腿图像中提取其鸡身质心W、左脚质心P和右脚质心Q,并将分割图像重新组合,在原图中得到W、P、Q3点的坐标,如图5所示。

图5 肉鸡各部分质心位置示意图Fig.5 Schematic diagram of broilers centroid

2.4 肉鸡步态关键特征定义

本文把视频转换成连续单帧图像进行处理[19],以GS[4]为标准,从中提取肉鸡行进速度、步幅均值、步幅差均值、步频等典型动态特征,特征定义及描述如表4所示。

表4 关键特征定义及描述Tab.4 Key feature definition and description

其中行走步幅S与步幅差D的计算公式为

(4)

(5)

式中a——肉鸡的脚落地次数

xa——第a次落地的脚质心横坐标

本文中双脚同时落地状态,指两脚质心y坐标相同时的帧。若相邻两次双脚同时落地,每只脚质心的x坐标变化之和不超过10像素,认为是同一步,不进行重复记录。

3 讨论与分析

行进速度、步幅均值、步幅差均值是描述肉鸡步态的主要特征量,实验中发现GS评分同一级别的肉鸡,其特征量仍有较大差异,导致GS各级分类时容易发生混淆。AYDIN等[20]的研究发现特征量差异是由于肉鸡之间体积、体重、体型等客观差异导致的。为消除肉鸡个体之间形态差异造成的数据异常波动,需预先对动态数据进行投影处理。

3.1 投影依据选择

在二维图像特征中,随着肉鸡生长,肉鸡身体长度、宽度会同步增加,二者均可以作为肉鸡体重的关联特征。由于肉鸡行走时,头、尾部会产生伸缩状移动,MORTENSEN等[21]基于对白羽肉鸡的研究,认为在预测肉鸡体重时,肉鸡的宽度特征比长度更加稳定。同时观察发现,肉鸡羽毛分布情况对水平投影图像影响较大;俯视投影图像中,受羽毛影响较小。

为验证本实验中反映黄羽肉鸡体重情况的最佳变量,选取相同质量((1.16±0.02) kg)的健康肉鸡59只,测量其长度、宽度、俯视投影面积、水平投影面积,实验结果如图6所示。

图6 肉鸡形态参数分布Fig.6 Broiler shape parameter distribution

实验结果表明,对于相同质量的肉鸡,其肉鸡体长、肉鸡体宽、水平投影面积、俯视投影面积分布的标准差分别为:35.09 mm、9.63 mm、124.28像素、27.21像素。由此可得出,在衡量肉鸡体重的参数中,肉鸡体宽比肉鸡体长更稳定,俯视投影比水平投影更稳定,与MORTENSEN等的研究一致。

基于上述结论,本文以肉鸡俯视投影面积为依据对主要特征量进行投影处理,使GS评分中同级肉鸡的动态特征量更加集中。

3.2 俯视投影面积提取

本文将肉鸡俯视投影面积作为动态特征数据进行投影处理的核心依据,俯视投影面积提取过程如下。

3.2.1垂直俯视图像预处理

垂直图像由竖直摄像头采集。图像预处理方法与水平摄像头相同,采用HSV分量组合的方法,不再赘述。

3.2.2投影图像椭圆拟合

肉鸡俯视投影图近似纺锤状,肉鸡行走过程中头部与尾部有前伸或后缩的动作,会产生图像的不规则形状误差。为进一步提升精确度,需要对俯视投影图像进行拟合处理。MORTENSEN等[21]在通过肉鸡俯视图像预测肉鸡体重时,使用了“最大内切圆”的拟合方法。根据实验观察,年轻肉鸡一般体型较长,年老肉鸡体型较圆,此时“最大内切圆”方法对年轻肉鸡预测误差较大。

本文将“最大内切圆”优化为基于最小二乘法的椭圆拟合方法对肉鸡的俯视投影图像进行处理,椭圆拟合方法考虑了肉鸡整体的形态特征,更好地降低了体型差异导致的误差,并可以消除肉鸡行进中头部尾部晃动对面积计算的影响。设平面内任意圆锥曲线为

αx2+βxy+ζy2+ηx+φy+λ=0

(6)

式中α、β、ζ、η、φ、λ——椭圆方程参数

设Pi(xi,yi)(i=1,2,…,N)为肉鸡俯视图像轮廓上的N(N≥6)个测量点,依据最小二乘法原理,目标函数为

(7)

为使f最小,令

解得椭圆系数α、β、ζ、η、φ、λ,即可得到拟合曲线。特别地,为避免零解,同时把多倍的解看作同一个椭圆,设定制约条件为α+ζ=1。本实验中使用椭圆拟合改进算法[22-23],结合本实验情况,采用如下方案:

(1)在所有样本点中随机选取6个,用最小二乘法得到椭圆参数α、β、ζ、η、φ、λ。

(2)遍历所有样本点,判断每个样本点和已知椭圆的距离,如果小于15像素,标记该点为匹配点。

(3)循环执行步骤(1)、(2)400次,找到匹配点最多的椭圆,其椭圆参数即为所求参数,拟合结果如图7所示。

图7 椭圆拟合示意图Fig.7 Ellipse fitting diagrams

3.2.3椭圆面积计算

将圆锥曲线一般方程转换为几何参数表示,即由椭圆中心(x0、y0)、长轴长度δ、短轴长度ε、长轴转角θ5个变量表示。其中δ可近似视为肉鸡的身长,ε可近似视为肉鸡胸部宽度,计算方法为

(8)

由积分公式得出,投影椭圆面积为

H=πεδ

(9)

3.3 数据处理

本实验中,选取健康状态(GS0)肉鸡61只,采集其步态信息与拟合椭圆面积共122次(每只2次),以得到肉鸡理想动态参数。数据分析结果如图8所示。

图8 肉鸡投影面积-动态特征散点图Fig.8 Scatter plot of broiler projection area and dynamic characteristic

从图中可以看出,肉鸡步幅、速度与拟合椭圆的面积近似呈正相关关系。基于本实验数据,拟合得出理想步幅S0、理想速度V0与投影面积H的近似关系,决定系数为0.793 5与0.805 1,具有较好的统计学意义。为方便统计,更好地反映动态数据偏离正常值的程度,引入步幅异常指数Su、速度异常指数Vu、步幅差异常指数Du,定义为

(10)

(11)

(12)

步幅异常指数和速度异常指数等于100表示实际值与理想值相等的最佳状态,速度异常指数为零表示没有步幅差的理想状态。异常指数能反映肉鸡动态参数实际情况,同时最大程度消除肉鸡个体形态学差异对数据的影响,一定程度上提高判断算法适应性。

3.4 数据差异性验证

将不同GS级别的肉鸡平均行进速度、步幅均值、步幅差均值与每只肉鸡的速度异常指数、步幅异常指数、步幅差异常指数的均值进行统计,得到数据如表5所示。

表5 原始特征与异常指数对比Tab.5 Comparison between original features and abnormal index

从表5对比可以看出,通过异常指数评价肉鸡步态时,可消除肉鸡个体形态对数据的影响,并保留原始数据中各级别动态参数的差异,同时将差异进行更为合理的缩放,使各级之间区分更加明显,特征独立性更强。全数据异常指数分布箱线图如图9所示。

图9 异常指数分布箱线图Fig.9 Box plot of abnormal index distribution

从以上数据可看出,随着腿部疾病级别加重,速度、步幅、步频等数值总体呈下降趋势。特征数据中,除GS3与GS4之间速度异常指数差异较大外,其他各级别各特征之间数据有很大部分的重叠,难以对个体数据通过简单统计学方法进行分类。

4 步态评分模型

各级步态之间数据存在一定的统计学差异,而这些差异不足以直接作为评判各个GS级别的标准。DAWKINS等[7]的研究表明,速度和加速度等动态参数与步态评分之间没有简单的联系,本文使用C4.5决策树模型对肉鸡动态特征异常指数进行训练,并进行步态级别分类。

4.1 训练参数

选取速度异常指数Vu、步幅异常指数Su、步幅差异常指数Du作为关键属性,针对每只肉鸡,把每只肉鸡的GS评分作为评价结果,形成最优决策树。

训练集组成方式如下:训练集由4列组成,每列依次为X1、X2、X3、Ylable4个变量,前3列为特征属性,对应速度异常指数Vu、步幅异常指数Su、步幅差异常指数Du,第4列为标签变量,为肉鸡的GS人工评分结果,由GS0~GS4表示。数据集的每行对应一条训练数据。

4.2 算法模型

C4.5决策树作为传统ID3决策树的优化算法,是使用信息增益率作为分裂属性指标进行决断的[24-25]。

信息熵是度量样本纯度的常用指标与计算信息增益的基础[26]。若肉鸡步态样本集合T中,第k类步态样本所占比例为pk(k=1,2,3,4,5),则T的信息熵定义为

(13)

针对肉鸡速度属性V而言,有M个不同的取值{V1,V2,…,VM},若使用V属性对样本T进行划分,则会产生M个分支点,其中第m个分支点包括了T中所有在属性V上取值为Vm的样本,记为Tm。则信息增益定义为

(14)

(15)

此时,针对数据集纯度提升最高划分点,信息增益定义为

(16)

信息增益越大,表示按照属性V进行划分所获得的“纯度增益”越大。当分支点过多时,取值数目更多的属性信息增益将变大,影响分类结果。使用增益率可以解决这一问题[27],信息增益率定义为

(17)

(18)

属性V的取值数目M越多,P(V)的值也会越大[28],从而消除取值数目对结果的影响。

4.3 训练过程

针对肉鸡步态评价方法,以速度、步幅、步幅差等连续动态属性为基础,进行决策树生成。特别地,步频是步幅和速度的派生变量,非独立变量,不单独作为决策树生长的属性。决策树生长流程如下:

(1)创建根节点,基于速度、步幅差、步幅等属性增益率,选择节点分裂属性。

(2)建立新节点,进行数据集的划分。

(3)判断节点是否达到生长停止条件,如果达到,决策树建立终止;否则重复步骤(1)、(2)。为防止过拟合,在本实验中设定样本数低于5时,终止递归。

(4)用REP后剪枝处理[29],自下而上处理每个节点,直到进一步修剪有害为止。修剪过程如下:①删除以此节点为根的子树,让节点变为叶子节点。②赋予这个节点最常见分类,若修剪后验证集的性能未出现降低,正式删除此节点,即以叶节点代替子树。

决策树生长流程图如图10所示。

图10 决策树生长流程图Fig.10 Flow chart of decision tree growth

4.4 训练方法

HENG[30]通过大量数据集、使用不同学习技术进行的研究表明,10折交叉验证是可以获得较好误差估计的恰当选择,相比其他验证方式有简便高效的优势。本文采取“十折交叉验证”法将肉鸡步态数据集T随机分为10个包,轮流选取其中9个作为训练数据集U,另外1个包作为测试数据集I。训练结果如表6所示。

表6 十折交叉法验证结果Tab.6 10-fold cross validation results

肉鸡的步幅差作为新的统计量首次加入到步态评分模型中,对易混淆级别的分类准确度做出了较高贡献。使用决策树C4.5模型识别的结果中,GS0~GS2等级别中分类准确率分别达到了66%、71%与74%,弥补了以往GS0~GS2级别区分准确率低的问题。

4.5 结果与分析

4.5.1分类误差

本研究中在1、7、8、10训练轮次中出现了GS3与GS4中1或2例明显的错分结果,经调取原始数据研究发现,在对肉鸡鸡体进行分割时,若肉鸡步行中因腿部疾病导致身体匍匐在地面行走,某些情况下会导致团序列检测错误,从而发生错误分割致使提取到了错误的动态信息。

从整体测试结果来看,GS3和GS4等极端分值的区分准确率仍显著高于GS0~GS2等级别。通过训练结果的混淆矩阵看出,GS0级别被误判为GS1级别的样本占到误判为其他级别的90.4%,GS1级别被误判为GS0级别的样本占到误判为其他级别的72.6%,说明GS0和GS1之间的相互误判比较高,这是因为其步态特征相近,即使综合新引入的步幅差变量来看,GS0和GS1中的样本也存在很大的重合度。经调查得知,在实际人工操作中区分GS0与GS1的依据是 “轻微缺陷引起的肉鸡不均衡步态”,而这种不均衡不仅体现在本文关注的肉鸡前进步态的水平方向(步幅、步幅差等),还会存在于垂直方向[31](左右摇摆等),针对垂直方向特征本文暂未做研究。

4.5.2基于分类结果的肉鸡步态健康预警

根据肉鸡步态评分标准,被评判为GS0、GS1的状态均不会影响肉鸡的生活与其对资源的争夺,而GS2~GS5分别表示已经对肉鸡健康产生了从轻微到严重的影响[4]。大多数腿部出现疾病的病鸡都会出现从GS1~GS4逐级恶化的现象[32]。一般被发现时肉鸡已经达到GS3及以上的严重病态,此时给予治疗已经效果不佳。

结合本文方法,对识别为GS1与GS2级别的肉鸡分别发出低级和高级疾病预警;GS3、GS4级别肉鸡发出一级、二级疾病报告,从而实现提前发现肉鸡的腿部疾病,并争取最优时间对有发病可能的肉鸡实施预防和干预。

5 结束语

以决策树C4.5模型为基础提出了一种肉鸡步态自动定量评价方法,基于肉鸡步行的理想参数与异常指数,实现了对步态得分(GS)的预测。本文方法对GS0~GS4评分的准确率依次为:66%、71%、74%、98%、95%,整体准确率为78%。将GS0、GS1、GS2级别的鉴别准确率从50%提升到70%左右,为肉鸡早期腿部疾病的识别奠定基础。

猜你喜欢

步幅步态决策树
基于步态参数分析的老年跌倒人群步态特征研究
基于决策树和神经网络的高血压病危险因素研究
不同水平障碍赛马越障步态特征
伊犁马1 000 m速度赛步态特征与步速相关性
基于面部和步态识别的儿童走失寻回系统
决策树和随机森林方法在管理决策中的应用
步态识人
决策树多元分类模型预测森林植被覆盖
基于决策树的出租车乘客出行目的识别
非田径专业男生100 m短跑步频与步幅关系的实证研究