基于时序运动特征的奶牛爬跨行为识别研究

2021-01-26 02:54谢忠红刘悦怡宋子阳徐焕良
南京农业大学学报 2021年1期
关键词:识别率时序分类器

谢忠红,刘悦怡,宋子阳,徐焕良

(南京农业大学人工智能学院,江苏 南京 210095)

针对奶牛发情行为的自动识别,国内外学者已做过一些研究。Ahn等[1]基于运动历史图像提取奶牛移动量特征信息,使用支持向量机分类的准确率为72%。顾静秋等[2]提取视频帧实时捕获奶牛爬跨行为特征,融合运动量实现实时监测奶牛发情,准确率超过80%,漏检率最低为3.28%。何东健等[3]通过改进目标检测算法,提取奶牛质心、轮廓等特征,采用快速聚类算法,实现犊牛躺、站、走和跑跳的识别,准确率分别为100%、96.17%、95.85%和97.26%。张子儒[4]将奶牛爬跨时的姿态和躯体上扬的运动特性作为爬跨行为的特征表示,使用多种分类器进行识别,平均识别准确率达到90.9%。

通过观察奶牛爬跨行为后发现,包含爬跨奶牛与被爬跨奶牛的几何形状会发生有规律的变化。本研究以时间为横轴,以包含奶牛对象的几何形状特征为纵轴,构建表示运动行为特征的时序曲线,并对曲线进行分段、编码,最终使用分类器进行行为识别,有助于辅助判断发情奶牛,提高养殖效益。

1 材料与方法

1.1 图像采集

奶牛视频拍摄于内蒙古自治区鄂尔多斯市鄂托克旗渠畔村某小型奶牛养殖场,奶牛场长为 180 m,宽165 m,其中A1、A2、A3和A4为摄像头的安装位置,摄像头安装在距离地面1.8 m的位置,与水平面的夹角是45°(图1)。拍摄对象是该养殖场中12至24个月的22头美国荷斯坦奶牛。拍摄时间为2016年7月31日至8月1日、8月22日至8月24日、9月 1日至9月20日的00:00—24:00以及2017年8月31日至 9月 16日的00:00—24:00,获取6 000个视频段。使用海康威视监控摄像头(型号为DS-2CD4032FWD-SDI)拍摄,采集的视频以MP4的格式存储,分辨率为1 920×1 080(水平×垂直),帧速为每秒25.00帧。

图1 养殖场景Fig.1 Breeding scene WT:Water tank.

1.2 奶牛爬跨视频数据集

观察奶牛的爬跨视频,发现有3种视角的爬跨行为:正面爬跨、背面爬跨和侧面爬跨。本次捕获的视频主要是侧面爬跨,因此主要研究侧面爬跨行为的自动识别。侧面爬跨可分为3个阶段:1)爬跨初期,奶牛a紧紧追随奶牛b;2)爬跨中期,奶牛a抬起前半身爬上奶牛b的后半身;3)爬跨后期,2头奶牛恢复紧紧追随行走状态[5]。

2 基于时序运动特征的奶牛爬跨行为识别

2.1 奶牛爬跨行为的图像特征提取

基于时序运动特征的奶牛爬跨行为识别流程见图3。分析奶牛爬跨行为运动视频可以发现:随着时间的推移,包含奶牛的最小外接矩形连通域会发生有规律的形变(图4),因此本次研究以时间为横轴,以包含奶牛对象的几何形状特征为纵轴,构建表示运动行为特征的时序曲线,最终进行行为识别。

图 4 包含爬跨奶牛的最小外接矩形的时序变化曲线Fig.4 Trend of the smallest circumscribed rectangle of the cows with crawling behavior

2.2 运动视频中运动目标几何特征时序变化曲线

观察发现:随着时间的推移,包含奶牛的最小外界矩形的形变可以刻画奶牛的运动行为,因此抽取最小外接矩形的3个特征:宽度(W)、高度(H)和纵横比(Z)。以时间(T)作为横坐标,分别以这3个形状特征为纵坐标,画出时序变化曲线,以此拟合奶牛运动行为。时间间隔为5帧,3条时序曲线为W=f1(T)、H=f2(T)和Z=f3(T)。图5展示了奶牛的爬跨行为、追随行为以及行走行为所对应的时序曲线。

图5 奶牛爬跨行为(A)、追随行为(B)和行走行为(C)对应的3种时序曲线(纵坐标高度和宽度的单位为像素)Fig.5 Three time-series curves corresponding to cow walking behavior(the unit of height and width are pixels)

2.3 基于时序变化曲线的运动特征抽取

2.3.1 曲线分段观察奶牛爬跨行为视频段,爬跨行为持续时间有长有短,绘制多组完整爬跨行为所生成的曲线后发现,曲线的变化趋势具有相似性(图6)。观察曲线1可发现,在爬跨初期,2头奶牛处于跟随状态,纵横比较小,且变化缓慢;在爬跨中期,处于后方的奶牛爬跨在前方的奶牛背上,纵横比增大并持续一段时间;进入爬跨后期,2头奶牛又再次进入跟随状态,纵横比减小,变化趋于平缓。

图6 时长不同的完整爬跨行为所对应的时序曲线Fig.6 Time-series curves corresponding to complete crawling behavior of different time lengths

从图7可见:y1=f1(T)和y2=f2(T)为仿真行为相同但时长不同的2条纵横比特征时序曲线,2条曲线变化趋势具有相似性。研究中沿横坐标方向对2条曲线进行等间隔采样,间隔数n=10,则每条曲线可以得到 10个采样点;然后将相邻的采样点首尾相连,得到1个矢量序列。曲线y1和曲线y2所得到的矢量序列具有相似性。

图7 仿真时序曲线y1和y2(T=10,n=10)Fig.7 Simulation time-series curves y1 and y2

2.3.2 编码从图7得出时序曲线对应的矢量序列的方向在区间[-90°,90°],本文对Freeman编码方法[6-7]进行改进,设计了一种Improved Freeman编码方法:1)将[-90°,90°]均分为m个区间;2)从90°开始,沿顺时方向为每个区间进行编码,依次为1,2,3,…,m-1,m(图8)。

图8 改进的Freeman编码方法Fig.8 Improved Freeman encoding method

从视频集VideoROI_set_Extended中选2个长度不同的完整爬跨视频,绘制对应高度曲线,视频1的编码为[3 3 2 3 3 3 3 4 5 4],视频2的编码为[3 3 3 3 3 3 4 4 5 4]。可以看出这2条曲线,变化趋势相似,编码也具有相似性(图9)。

图9 包含爬跨行为的最小外接矩形的高度变化对应的时序曲线Fig.9 Time series curve corresponding to the height change of the smallest circumscribed rectangle including crawling behavior

2.4 试验结果与分析

2.4.1 试验数据与爬跨行为易发生混淆的另外2种行为是:1)2只奶牛追随;2)单只奶牛快步行走。因此研究中主要截取这3种行为的视频,定义视频数据集为VideoROI_set。其中爬跨视频为17段(完整的爬跨视频有14段,非完整的爬跨视频3段),追随视频29段,行走30段,合计96段。

视频扩充:以1/2、2/3、3/4的比例截取视频中的曲线H、W、Z值,再以特殊参数-1补齐特征值。如按照1/2比例截取{W1,W2,…,Wn},将得到{W1,W2,…,Wn/2,…,-1,-1,-1}和{-1,-1,-1,…,Wn/2,Wn/2+1,…,Wn}2组宽度时序曲线。针对非完整爬跨视频,通过特殊参数-1,将曲线数据补充为完整爬跨曲线。

最终扩增后的VideoROI_set_Extended包含爬跨视频101段,追随视频191段,行走视频为343段,合计635段,以8∶2的比例对训练集和测试集随机划分。

2.4.2 试验环境和参数设置试验设备为惠普笔记本,Intel(R)Core(TM)i7-7700HQ CPU,8G内存,Windows10 操作系统,编程语言为python。

分类器为BP神经网络和KNN。BP神经网络分类器的隐藏层结点数为15,学习率为0.01,误差精度为10-5;KNN分类器中k设置为5。研究中所有得到的识别率均为10次试验后平均识别率[8-10]。

2.4.3 参数选择及结果分析对时序曲线等间隔采样个数n和方向编码角度个数m可能对分类准确率影响较大。因此研究中取n=10,20,30,40;m=6,12,18,24,30,36,42,48。

1)确定特征组

令m=6,n={10,20,30},使用KNN和BP 神经网络2个分类器,基于W、H、Z和W&H&Z这4种特征进行分类试验,结果如表1所示。

从表1可知,方向编码角度个数m确定时,间隔采样个数n=10,20,30时,BP神经网络和KNN分类器均是W&H&Z特征识别结果最好,KNN分类器10次的平均识别正确率为98.61%,BP神经网络分类器10次的平均识别正确率为96.76%。

这是因为W&H&Z特征融合了W、H和Z3种特征,丰富了爬跨行为过程的描述。KNN分类器的识别率平均为98.61%。单一特征Z表现最优,KNN分类器10次的平均识别正确率为97.83%,BP神经网络分类器10次的平均识别正确率为95.87%。

2)采样数n对识别率的影响

基于特征W&H&Z和Z,进一步分析间隔采样数n对识别率的影响,采用中等间隔采样数n=10,20,30进行试验。

从图10可以看出:W&H&Z和Z特征的识别率随采样数n的增加呈下降趋势,n=10时,平均识别效果为最好。分析编码特点,可以推测:随着n增加编码细化后,有可能会引入异常点,使容错率变小,因此本文选择n为10。

3)角度数m对识别率的影响

采样数n=10时,分析角度数m对识别率的影响。从图11可以看出:随着角度数m的增加,基于KNN和BP神经网络2个分类器进行识别,W&H&Z特征和Z特征的识别结果趋势相同,即:随m的增大识别率逐渐降低,但降幅不明显;在m=42时明显下降,而后识别率上升。原因可能是随m增大,曲线描述更加细化,会引入异常点,造成波动,使容错率变小。整体上随着角度数m的增大识别正确率呈下降趋势。因此本次研究选择角度数m=6。

图11 m取不同值时特征W&H&Z(A)和Z(B)的识别率(n=10)Fig.11 Recognition rate of feature W&H&Z(A)and Z(B)when m takes different values(n=10)

3 结论

基于计算机视觉的奶牛爬跨行为的自动识别,本文提出了一种以最小外接矩形包含运动目标,获取奶牛的形状特征,并生成时序曲线的特征抽取方法。结果表明:间隔采样数n=10,角度数m=6时,使用KNN分类器,融合特征W&H&Z识别正确率最高,10次平均识别率为99.21%。

本研究的局限性在于爬跨行为视频均选用了以侧爬跨运动视频,并未讨论正面爬跨、反面爬跨等可能出现的多种情况,今后将会进一步增加从不同方向爬跨的视频段,扩展数据集。

猜你喜欢
识别率时序分类器
顾及多种弛豫模型的GNSS坐标时序分析软件GTSA
学贯中西(6):阐述ML分类器的工作流程
清明
基于GEE平台与Sentinel-NDVI时序数据江汉平原种植模式提取
基于朴素Bayes组合的简易集成分类器①
你不能把整个春天都搬到冬天来
一种自适应子融合集成多分类器方法
档案数字化过程中OCR技术的应用分析
基于PCA与MLP感知器的人脸图像辨识技术
科技文档中数学表达式的结构分析与识别