CN113947617B - 一种基于长短记忆的哺乳仔猪多目标跟踪方法 - Google Patents
一种基于长短记忆的哺乳仔猪多目标跟踪方法 Download PDFInfo
- Publication number
- CN113947617B CN113947617B CN202111217322.8A CN202111217322A CN113947617B CN 113947617 B CN113947617 B CN 113947617B CN 202111217322 A CN202111217322 A CN 202111217322A CN 113947617 B CN113947617 B CN 113947617B
- Authority
- CN
- China
- Prior art keywords
- piglets
- appearance
- piglet
- matching
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000015654 memory Effects 0.000 title claims abstract description 15
- 238000012549 training Methods 0.000 claims abstract description 53
- 238000001514 detection method Methods 0.000 claims abstract description 37
- 238000012360 testing method Methods 0.000 claims abstract description 26
- 230000033001 locomotion Effects 0.000 claims abstract description 23
- 230000008859 change Effects 0.000 claims abstract description 20
- 238000012795 verification Methods 0.000 claims abstract description 16
- 238000000605 extraction Methods 0.000 claims abstract description 10
- 230000007246 mechanism Effects 0.000 claims abstract description 8
- 230000008569 process Effects 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 7
- 230000007774 longterm Effects 0.000 claims description 7
- 230000008034 disappearance Effects 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 claims description 6
- 238000013135 deep learning Methods 0.000 claims description 4
- 230000007787 long-term memory Effects 0.000 claims description 4
- 230000006403 short-term memory Effects 0.000 claims description 4
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 230000001133 acceleration Effects 0.000 claims description 2
- 230000001788 irregular Effects 0.000 abstract description 4
- 238000009395 breeding Methods 0.000 abstract description 3
- 230000001488 breeding effect Effects 0.000 abstract description 3
- 238000007689 inspection Methods 0.000 abstract description 2
- 241000282887 Suidae Species 0.000 description 5
- 230000006399 behavior Effects 0.000 description 5
- 241001239379 Calophysus macropterus Species 0.000 description 4
- 238000002372 labelling Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006386 memory function Effects 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 244000144972 livestock Species 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000000474 nursing effect Effects 0.000 description 1
- 230000001766 physiological effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于长短记忆的哺乳仔猪多目标跟踪方法,包括:S1:采集哺乳仔猪视频,建立哺乳仔猪多目标跟踪视频数据库;S2:搭建CenterReID模型,用数据库中的训练集和验证集对该模型进行训练并验证;S3:用训练好的CenterReID模型对数据库中的测试集进行测试,获得哺乳仔猪目标检测结果Dets和特征提取结果Features;S4:针对不同消失时间再次出现的仔猪,设计适应长短时间外观特征变化匹配机制,利用Dets和Features对连续图像哺乳仔猪进行目标ID匹配,进而获得跟踪结果。本发明能在固定场景下克服小猪运动不规律、身体形变较大、扎堆、难重新识别等困难,可自动识别跟踪哺乳仔猪,解决猪场饲养环境下饲养员长时间巡查猪群疲惫造成判断不准确的问题。
Description
技术领域
本发明涉及视频多目标跟踪的技术领域,尤其是指一种固定场景下基于长短记忆的哺乳仔猪多目标跟踪方法。
背景技术
猪场环境下,仔猪存活率关系到猪场的养殖效益。猪生长状况的检测是保证猪健康养殖的关键。传统的方法一般是人工检查,以巡查的方式轮流观察猪栏内每只仔猪的活动状况,持续时间大约为半分钟到十分钟不等。该种方法费时费力,且长时间观察对饲养员的观察判断造成影响。基于计算机视觉技术智能跟踪小猪,除了能克服传统方法的缺点外,还能快速统计小猪的生理活动规律,为后续小猪行为研究提供基础。有利于推进我国智能化禽畜养殖。
目前,有利用计算机视觉技术实现猪只跟踪,如授权号为CN108508782B的专利提出了一种基于ARM的猪只行为跟踪识别监控装置及方法。授权号为CN109684953B的专利提出了一种基于目标检测和粒子滤波算法进行猪只跟踪的方法,利用背景差分和阈值分割等算法检测猪只,然后用粒子滤波算法进行跟踪预测。公开号为CN111709287A的专利公开了一种基于深度学习的断奶仔猪目标跟踪方法,先是用YOLO v3算法检测在猪只,而后利用卡尔曼滤波器进行预测跟踪。
尽管现有许多技术实现猪只多目标跟踪,但仍存在一些问题。基于高自适应的滤波器或者容易由于噪声更新造成漂移,或者难以预测非刚性物体的非线性运动;由于不同仔猪外观相似度高,直接利用外观特征进行匹配,容易造成仔猪ID互换的情况;基于运动特征的检测框与跟踪框交叠率(IOU),在仔猪扎堆时容易发生仔猪ID互换,亦不适用;此外,现有猪只多目标跟踪技术大部分没有记忆功能,或者只有短暂记忆,对于被母猪或者其他仔猪遮挡后再次出现,特别是遮挡长时间后再次出现,难以恢复其ID。2020年Zhou Xingyi等人提出了CenterTrack多目标跟踪算法,利用了基于anchor_free的检测方法,在仔猪扎堆、粘连时仍有较好的检测结果,且基于中心点的匹配方法,避免仔猪扎堆、粘连时ID互换的情况。CenterTrack能准确跟踪前后帧目标,但其只针对局部匹配,没有记忆功能,不能恢复消失的轨迹。为此,在保留其连续帧匹配功能的基础上,改进网络,增加重识别Re-ID分支,用于提取哺乳仔猪的外观特征,设计具有长短记忆的多目标跟踪级联匹配算法,针对仔猪消失不同时间长度再次出现时,在小猪已匹配ID达到最大值的情况下,都能恢复其ID。
发明内容
本发明的目的在于克服现有技术的缺点与不足,提出了一种基于长短记忆的哺乳仔猪多目标跟踪方法,可有效解决小猪运动过程中运动不规律、身体形变较大、扎堆、难重新识别等困难,为后续仔猪行为研究打下基础。
为实现上述目的,本发明所提供的技术方案为:一种基于长短记忆的哺乳仔猪多目标跟踪方法,包括以下步骤:
S1:采集哺乳仔猪视频,建立哺乳仔猪多目标跟踪视频数据库;
S2:搭建CenterReID模型,用哺乳仔猪多目标跟踪视频数据库中的训练集和验证集对该模型进行训练并验证;
S3:用训练好的CenterReID模型对哺乳仔猪多目标跟踪视频数据库中的测试集进行测试,获得哺乳仔猪目标检测结果Dets和特征提取结果Features;
S4:针对不同消失时间再次出现的仔猪,设计适应长短时间外观特征变化匹配机制,利用Dets和Features对连续图像哺乳仔猪进行目标ID匹配,进而获得跟踪结果。
进一步,所述步骤S1具体步骤如下:
S11:实时采集哺乳仔猪视频,剔除夜晚、昏暗视频片段;
S12:将视频统一帧率为5帧/秒,图像分辨率大小为960×540,获得最终数据集;
S13:将数据集分为训练集、验证集和测试集,并将数据集的每个视频片段转为连续图像,对其进行人工标注,标注小猪边界框与其对应的ID。
进一步,所述步骤S2具体步骤如下:
S21:选择特征提取基础网络;
S22:在基础网络之后,除了已有的Detection分支和Tracking分支外,新添加一个重识别Re-ID分支,其中Detection分支包括hm、wh和reg三个小分支,用于生成仔猪边界框,Tracking分支用于预测此帧中心点到上一帧中心点的偏移,新增的Re-ID分支用于提取仔猪外观特征;
Re-ID分支包括两个卷积层和一个Relu层,输出特征大小为W和H分别为输入图像的长和宽,Dim为输出特征通道数,通过Re-ID提取图像当中每个对应位置的外观特征;
S23:使用交叉熵损失函数对Re-ID分支进行监督训练,目的是使得Re-ID分支生成能够区分仔猪的特征,具有相同ID的仔猪视为一类,对于图像中第i个人工标注框 表示bi左上点坐标,/>表示bi右下点坐标,由公式(2)和公式(3),能够从热图上获得对应中心点坐标/>在该位置获得外观特征/>并学习将其映射到一个类分布向量P={p(m),m∈(1,M)},p(m)表示类别m的类分布向量,M表示分类的数量,设定第i个人工标注框中心点对应外观特征one-hot编码表示为Li(m),则交叉熵损失函数如公式(1)所示,可见在训练过程中,只有位于中心点的外观特征参与训练;
其中,Loss表示损失值,N表示目标数量。
S24:在Pytorch深度学习框架下使用GPU加速训练模型,模型训练方式为交替训练,交替训练Detection分支与Tracking分支以及Re-ID分支;
模型在训练过程中,输入除当前t帧外,辅助加入k时刻帧图像与其对应热图,k∈[t-T,t+T],且k≠t,根据视频帧率设置不同的T,如公式(4)所示,模型测试时辅助加入t-1时刻帧图像与其对应热图;
其中,fps为采集的视频帧率;
模型参数采用正态分布初始化,在训练过程中使用随机翻转、随机缩放、随机空间裁剪和色彩抖动数据增强技术,利用Adam优化算法和反向传播算法对模型参数进行微调;
用训练集数据训练CenterReID模型,每迭代完一次,利用验证集数据验证模型,选择验证结果最好的一次训练模型。
进一步,所述基础网络有DLA-34、ResNet101。
进一步,在步骤S3,将测试集中每一段连续图像输入CenterReID模型进行测试,模型输出包括图像中哺乳仔猪的检测结果Dets和特征提取结果Features;Features包括哺乳仔猪运动特征和外观特征;运动特征为Tracking分支输出结果基础上取此帧检测框中心点到上一帧对应检测框中心点的偏移;外观特征为Re-ID分支输出结果基础上取中心点位置对应外观特征。
进一步,所述步骤S4具体步骤如下:
S41:初次基于运动特征相似度匹配,创建轨迹Tracks并分配新ID,从Tracks中获取边界框中心点T_center,从Dets中获取边界框中心点,加上偏移,得D_center,使用欧式距离计算T_center和D_center相似度,得到运动距离矩阵M_dist,利用贪心算法匹配并分配ID,得到已匹配ID_Matched和未匹配Unmatched;
S42:针对被遮挡消失后再次出现的小猪,采用基于外观特征相似度匹配,以恢复小猪的ID,仔猪消失时间有长有短,设置不同的阈值Th,以适应不同消失时间外观特征的变化,使得匹配算法具有短期记忆和长期记忆,匹配步骤为先进行短期外观特征匹配,再进行长期外观特征匹配;
S43:短时间消失再次出现基于外观特征相似度匹配,Unmatched中包括未匹配检测Unmat-D和未匹配跟踪Unmat-T,从Unmat-D中获得仔猪未匹配检测外观特征UnDets_Feat,从Unmat-T中获得仔猪未匹配跟踪外观特征UnTracks_Feat,使用欧氏距离计算UnDets_Feat和UnTracks_Feat相似度,得到外观距离矩阵V_dist,设置短时间外观变化阈值Th1,利用匈牙利算法匹配并分配ID,输出已匹配ID,保留未匹配Unmatched;
S44:长时间消失再次出现匹配基于外观特征相似度;若短期外观特征匹配后,仍有Unmatched,此时进行长期外观特征匹配;Unmatched中包括未匹配检测Unmat-D和未匹配跟踪Unmat-T,判断此时仔猪ID最大值是否小于猪栏内仔猪个数,小于则对Unmat-D分配新ID,输出新轨迹;否则,从Unmat-D中获得仔猪外观特征UnDets_Feat,从Unmat-T中获得仔猪外观特征UnTracks_Feat,使用欧氏距离计算UnDets_Feat和UnTracks_Feat外观特征相似度,得到V_dist矩阵,设置长时间外观变化阈值Th2,利用匈牙利算法匹配并分配ID,确保所有Unmat-D得到匹配,若仍有Unmat-T,保留Unmat-T,以供下一时刻的匹配;
S45:输出每次匹配ID和新分配ID的结果。
本发明与现有技术相比,具有如下优点与有益效果:
1、本发明建立一个哺乳仔猪多目标跟踪视频数据库,该数据库包含猪栏场景下哺乳仔猪的各种行为,以这些数据为基础多哺乳仔猪进行多目标跟踪、为后期哺乳仔猪行为分析和算法设计提供基础;
2、本发明搭建的CenterReID模型,可解决哺乳仔猪因扎堆难以检测问题,增加重识别Re-ID分支,输出哺乳仔猪外观特征,当仔猪消失后再次出现时,可利用外观特征相似度匹配恢复ID。
3、针对不同消失时间再次出现的小猪,设计适应长短时间外观特征变化匹配机制。基于运动特征相似度和外观特征相似度进行匹配,避免仔猪运动过程中不规律,身体形变较大,利用卡尔曼滤波器预测不准确,从而造成匹配错误的情况。
4、为解决仔猪消失不同时间后再次出现仍能恢复其ID,在基于外观特征匹配时,本发明设置不同的外观特征变化阈值Th,以适应不同消失时间外观特征的变化,使得匹配算法具有短期记忆和长期记忆,先匹配短时间消失再次出现仔猪,再匹配长时间消失再次出现仔猪,以确保仔猪已匹配ID达到最大值的情况下,当消失再次出现时能恢复而不会新分配ID。
附图说明
图1为本发明方法的流程图。
图2为本发明搭建的CenterReID模型结构图。
图3为本发明设计的适应长短时间外观特征变化匹配机制流程图。
图4为本发明实例中测试集抽取的3个片段在不同时间下跟踪视频截帧结果图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
为克服固定场景下,小猪运动不规律、身体形变较大、扎堆、难重新识别等困难,本发明所提供的基于长短记忆的哺乳仔猪多目标跟踪方法,搭建CenterReID模型,设计适应长短时间外观特征变化匹配机制,基于仔猪运动特征相似度和外观特征相似度,利用贪心算法和匈牙利算法实现仔猪多目标跟踪,为后期仔猪行为研究打下基础。
参见图1所示,该方法基于Ubuntu16.04操作系统开发,在Pytorch深度学习框架平台使用Nvidia GeForce RTX 2080Ti GPU训练,搭建CenterReID模型然后训练并测试,设计适应长短时间外观特征变化匹配机制,完成哺乳仔猪的自动检测并进行多目标跟踪。
具体实现步骤为:
步骤一:实时采集哺乳仔猪视频,搭建哺乳仔猪多目标跟踪视频数据库,具体包括:
1)利用架设在猪栏正上方摄像头俯视向下拍摄哺乳仔猪视频,而后存储至录像机内,并构建哺乳仔猪多目标跟踪视频数据库。从数据库中挑选11栏哺乳仔猪视频,每栏哺乳仔猪10段视频,每段视频持续时长为30秒。视频统一调整帧率为5帧/秒,图像分辨率为960×540。
2)从11栏数据中挑选8栏作为训练集,3栏作为测试集。为提高模型的泛化性能,挑选的数据中,包括仔猪睡觉、行走、嬉戏打斗等视频片段。为进一步划分训练集和验证集,将8栏数据中的每一栏的其中一段视频为验证集,其余段视频为训练集。如此,训练集有72段,验证集有9段,测试集有30段。
3)将视频转化为连续帧图像,并对其进行人工标注,标注每张图像小猪的边界框和其对应的ID,一段视频中小猪的ID不变。不同段视频小猪ID之间没有联系。
步骤二:搭建CenterReID模型,用数据库中的训练集和验证集对该模型进行训练并验证,具体如下:
1)如图2中(a)所示,选择特征提取基础网络,如DLA-34、ResNet101等,除了已有的Detection分支和Tracking分支外,新添加一个重识别Re-ID分支,其中Detection分支包括hm、wh和reg三个小分支,用于生成仔猪边界框,如图2中(b)所示,tracking分支用于预测此帧中心点到上一帧中心点的偏移,新增的Re-ID分支用于提取仔猪外观特征,如图2中(c)所示,将Re-ID分支输出特征进一步提取,可得到每个检测小猪的外观特征。
2)Re-ID分支包括两个卷积层和一个Relu层,输出特征大小为W和H分别为输入图像的长和宽,Dim为输出特征通道数,本发明选取Dim=64,通过Re-ID分支提取图像当中每个对应位置的外观特征。
3)使用交叉熵损失函数对Re-ID分支进行监督训练,目的是使得Re-ID分支生成能够区分不同仔猪的特征,具有相同ID的仔猪视为一类,对于图像中第i个人工标注框 表示bi左上点坐标,/>表示bi右下点坐标,由公式(2)和公式(3),可从热图上获得对应中心点坐标/>在该位置获得外观特征/>并学习将其映射到一个类分布向量P={p(m),m∈(1,M)},p(m)表示类别m的类分布向量,M表示分类的数量,设定第i个人工标注框中心点对应外观特征one-hot编码表示为Li(m),则交叉熵损失函数如公式(1)所示,可见在训练过程中,只有位于中心点的外观特征参与训练;
其中,Loss表示损失值,N表示目标数量。
4)模型训练方式为交替训练,交替训练Detection分支与Tracking分支以及Re-ID分支。
5)模型在训练过程中,输入除当前t帧外,辅助加入k时刻帧图像与其对应热图,k∈[t-T,t+T],且k≠t,根据视频帧率设置不同的T,如公式(4)所示,模型测试时辅助加入t-1时刻帧图像与其对应热图;
其中,fps为采集的视频帧率。
6)模型参数采用正态分布初始化,在训练过程中使用随机翻转、随机缩放、随机空间裁剪和色彩抖动数据增强技术,利用Adam优化算法和反向传播算法对模型参数进行微调,模型训练时,设置batchsize为6,共200个迭代次数,初始学习率为1.25×10-4,,在100个迭代后学习率下降10倍。
7)利用训练集对搭建的CenterReID模型进行训练,每完成一次训练迭代后,利用验证集对模型进行验证,保留验证结果最好的训练模型。
步骤三:挑选验证结果最好的模型,将测试集输入模型进行测试,获得哺乳仔猪目标检测结果Dets和特征提取结果Features,具体如下:
将测试集中每一段连续图像输入CenterReID模型进行测试,模型输出包括图像中哺乳仔猪的检测结果Dets和特征提取结果Features;Features包括哺乳仔猪运动特征和外观特征;运动特征为Tracking分支输出结果基础上取此帧检测框中心点到上一帧对应检测框中心点的偏移;外观特征为Re-ID分支输出结果基础上取中心点位置对应外观特征。
步骤四:设计适应长短时间外观特征变化匹配机制,利用Dets和Features对连续图像哺乳仔猪进行目标ID匹配,进而获得跟踪结果,具体如下:
1)如图3所示,初次匹配基于运动特征相似度匹配,模型输出测试结果,创建Tracks和分配新ID,当ID最大值大于仔猪个数PigNum,停止分配新ID,否则,从Tracks中获取边界框中心点T_center,从Dets中获取边界框中心点,加上偏移,得D_center,使用欧式距离计算T_center和D_center运动特征相似度,得到运动距离矩阵M_dist,利用贪心算法匹配,输出已匹配ID,保留未匹配Unmatched。
2)针对被遮挡消失后再次出现的小猪,采用基于外观特征相似度匹配,以恢复小猪的ID。但仔猪消失时间有长有短,本发明设置不同的阈值Th,以适应不同消失时间外观特征的变化,使得匹配算法具有短期记忆和长期记忆,匹配步骤为先进行短期外观特征匹配,再进行长期外观特征匹配。
3)短时间消失再次出现基于外观特征相似度匹配,Unmatched中包括未匹配检测Unmat-D和未匹配跟踪Unmat-T,从Unmat-D中获得仔猪外观特征UnDets_Feat,从Unmat-T中获得仔猪外观特征UnTracks_Feat,使用欧氏距离计算UnDets_Feat和UnTracks_Feat外观特征相似度,得到V_dist矩阵,设置短时间外观变化阈值Th1,利用匈牙利算法匹配并分配ID,本发明设置Th1=3,输出已匹配ID,保留未匹配Unmatched。
4)长时间消失再次出现匹配基于外观特征相似度。若短期外观特征匹配后,仍有Unmatched,此时进行长期外观特征匹配。Unmatched中包括未匹配检测Unmat-D和未匹配跟踪Unmat-T,判断此时仔猪ID最大值是否小于仔猪个数PigNum,小于则对Unmat-D分配新ID,输出新轨迹;否则,从Unmat-D中获得仔猪外观特征UnDets_Feat,从Unmat-T中获得仔猪外观特征UnTracks_Feat,使用欧氏距离计算UnDets_Feat和UnTracks_Feat外观特征相似度,得到V_dist矩阵,设置长时间外观变化阈值Th2,利用匈牙利算法匹配并分配ID,本发明设置Th2=10,确保所有Unmat-D得到匹配,若仍有Unmat-T,保留Unmat-T,以供下一时刻的匹配。
5)输出每次匹配ID和新分配ID的结果;
6)从MOT Challenge官网下载多目标跟踪评价代码,使用时只改变跟踪结果路径和人工标注路径,得到IDF1和MOTA评价指标。
本实施例上述基于长短记忆的哺乳仔猪多目标跟踪方法,选取测试集中不同栏的视频段,截取不同时间下跟踪结果可视化,如图4所示,矩形左上角数字表示仔猪对应ID,可见,随着时间的推移,不论仔猪处于运动还是睡觉,仔猪处于扎堆还是分散,本实例发明能较为准确地检测每只仔猪并为每只仔猪赋予对应的ID。
为说明本发明方法对哺乳仔猪多目标跟踪的准确性和有效性,下面详细说明本发明的实验结果:
采用计算机视觉多目标跟踪领域公认指标进行评估,分别是IDF1和MOTA,表示多目标跟踪精度和ID F1分数,其公式定义如公式(3)-(4)所示。
其中,TP表示正确检测仔猪的个数,FN表示将背景误检为仔猪的个数,FP表示将仔猪误检为背景的个数。IDSW表示仔猪ID交换的次数,GT表示人工标注目标的个数。表1为原始CenterTrack和本发明CenterReID在相同测试集上的哺乳仔猪多目标跟踪结果,由表1可见,CenterReID能够正确匹配每只仔猪的ID,减少仔猪ID交换次数,则IDF1比原始CenterTrack高出2.01个百分点;又CenterReID能够准确跟踪每只仔猪的轨迹,误检和漏检少,则MOTA比原始CenterTrack高出2.09个百分点。
表1模型结果对比
模型 | IDF1(%) | MOTA(%) |
CenterTrack | 92.33 | 94.51 |
CenterReID | 94.34 | 96.60 |
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (5)
1.一种基于长短记忆的哺乳仔猪多目标跟踪方法,其特征在于,包括以下步骤:
S1:采集哺乳仔猪视频,建立哺乳仔猪多目标跟踪视频数据库;
S2:搭建CenterReID模型,用哺乳仔猪多目标跟踪视频数据库中的训练集和验证集对该模型进行训练并验证,具体步骤如下:
S21:选择特征提取基础网络;
S22:在基础网络之后,除了已有的Detection分支和Tracking分支外,新添加一个重识别Re-ID分支,其中Detection分支包括hm、wh和reg三个小分支,用于生成仔猪边界框,Tracking分支用于预测此帧中心点到上一帧中心点的偏移,新增的Re-ID分支用于提取仔猪外观特征;
Re-ID分支包括两个卷积层和一个Relu层,输出特征大小为W和H分别为输入图像的长和宽,Dim为输出特征通道数,通过Re-ID提取图像当中每个对应位置的外观特征;
S23:使用交叉熵损失函数对Re-ID分支进行监督训练,目的是使得Re-ID分支生成能够区分仔猪的特征,具有相同ID的仔猪视为一类,对于图像中第i个人工标注框 表示bi左上点坐标,/>表示bi右下点坐标,由公式(2)和公式(3),能够从热图上获得对应中心点坐标/>在该位置获得外观特征/>并学习将其映射到一个类分布向量P={p(m),m∈(1,M)},p(m)表示类别m的类分布向量,M表示分类的数量,设定第i个人工标注框中心点对应外观特征one-hot编码表示为Li(m),则交叉熵损失函数如公式(1)所示,可见在训练过程中,只有位于中心点的外观特征参与训练;
其中,Loss表示损失值,N表示目标数量;
S24:在Pytorch深度学习框架下使用GPU加速训练模型,模型训练方式为交替训练,交替训练Detection分支与Tracking分支以及Re-ID分支;
模型在训练过程中,输入除当前t帧外,辅助加入k时刻帧图像与其对应热图,k∈[t-T,t+T],且k≠t,根据视频帧率设置不同的T,如公式(4)所示,模型测试时辅助加入t-1时刻帧图像与其对应热图;
其中,fps为采集的视频帧率;
模型参数采用正态分布初始化,在训练过程中使用随机翻转、随机缩放、随机空间裁剪和色彩抖动数据增强技术,利用Adam优化算法和反向传播算法对模型参数进行微调;
用训练集数据训练CenterReID模型,每迭代完一次,利用验证集数据验证模型,选择验证结果最好的一次训练模型;
S3:用训练好的CenterReID模型对哺乳仔猪多目标跟踪视频数据库中的测试集进行测试,获得哺乳仔猪目标检测结果Dets和特征提取结果Features;
S4:针对不同消失时间再次出现的仔猪,设计适应长短时间外观特征变化匹配机制,利用Dets和Features对连续图像哺乳仔猪进行目标ID匹配,进而获得跟踪结果。
2.根据权利要求1所述的一种基于长短记忆的哺乳仔猪多目标跟踪方法,其特征在于,所述步骤S1具体步骤如下:
S11:实时采集哺乳仔猪视频,剔除夜晚、昏暗视频片段;
S12:将视频统一帧率为5帧/秒,图像分辨率大小为960×540,获得最终数据集;
S13:将数据集分为训练集、验证集和测试集,并将数据集的每个视频片段转为连续图像,对其进行人工标注,标注小猪边界框与其对应的ID。
3.根据权利要求1所述的一种基于长短记忆的哺乳仔猪多目标跟踪方法,其特征在于,所述基础网络有DLA-34、ResNet101。
4.根据权利要求1所述的一种基于长短记忆的哺乳仔猪多目标跟踪方法,其特征在于,在步骤S3,将测试集中每一段连续图像输入CenterReID模型进行测试,模型输出包括图像中哺乳仔猪的检测结果Dets和特征提取结果Features;Features包括哺乳仔猪运动特征和外观特征;运动特征为Tracking分支输出结果基础上取此帧检测框中心点到上一帧对应检测框中心点的偏移;外观特征为Re-ID分支输出结果基础上取中心点位置对应外观特征。
5.根据权利要求1所述的一种基于长短记忆的哺乳仔猪多目标跟踪方法,其特征在于,所述步骤S4具体步骤如下:
S41:初次基于运动特征相似度匹配,创建轨迹Tracks并分配新ID,从Tracks中获取边界框中心点T_center,从Dets中获取边界框中心点,加上偏移,得D_center,使用欧式距离计算T_center和D_center相似度,得到运动距离矩阵M_dist,利用贪心算法匹配并分配ID,得到已匹配ID_Matched和未匹配Unmatched;
S42:针对被遮挡消失后再次出现的小猪,采用基于外观特征相似度匹配,以恢复小猪的ID,仔猪消失时间有长有短,设置不同的阈值Th,以适应不同消失时间外观特征的变化,使得匹配算法具有短期记忆和长期记忆,匹配步骤为先进行短期外观特征匹配,再进行长期外观特征匹配;
S43:短时间消失再次出现基于外观特征相似度匹配,Unmatched中包括未匹配检测Unmat-D和未匹配跟踪Unmat-T,从Unmat-D中获得仔猪未匹配检测外观特征UnDets_Feat,从Unmat-T中获得仔猪未匹配跟踪外观特征UnTracks_Feat,使用欧氏距离计算UnDets_Feat和UnTracks_Feat相似度,得到外观距离矩阵V_dist,设置短时间外观变化阈值Th1,利用匈牙利算法匹配并分配ID,输出已匹配ID,保留未匹配Unmatched;
S44:长时间消失再次出现匹配基于外观特征相似度;若短期外观特征匹配后,仍有Unmatched,此时进行长期外观特征匹配;Unmatched中包括未匹配检测Unmat-D和未匹配跟踪Unmat-T,判断此时仔猪ID最大值是否小于猪栏内仔猪个数,小于则对Unmat-D分配新ID,输出新轨迹;否则,从Unmat-D中获得仔猪外观特征UnDets_Feat,从Unmat-T中获得仔猪外观特征UnTracks_Feat,使用欧氏距离计算UnDets_Feat和UnTracks_Feat外观特征相似度,得到V_dist矩阵,设置长时间外观变化阈值Th2,利用匈牙利算法匹配并分配ID,确保所有Unmat-D得到匹配,若仍有Unmat-T,保留Unmat-T,以供下一时刻的匹配;
S45:输出每次匹配ID和新分配ID的结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111217322.8A CN113947617B (zh) | 2021-10-19 | 2021-10-19 | 一种基于长短记忆的哺乳仔猪多目标跟踪方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111217322.8A CN113947617B (zh) | 2021-10-19 | 2021-10-19 | 一种基于长短记忆的哺乳仔猪多目标跟踪方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113947617A CN113947617A (zh) | 2022-01-18 |
CN113947617B true CN113947617B (zh) | 2024-04-16 |
Family
ID=79331463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111217322.8A Active CN113947617B (zh) | 2021-10-19 | 2021-10-19 | 一种基于长短记忆的哺乳仔猪多目标跟踪方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113947617B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107527351A (zh) * | 2017-08-31 | 2017-12-29 | 华南农业大学 | 一种融合fcn和阈值分割的哺乳母猪图像分割方法 |
CN108830144A (zh) * | 2018-05-03 | 2018-11-16 | 华南农业大学 | 一种基于改进Faster-R-CNN的哺乳母猪姿态识别方法 |
CN109993774A (zh) * | 2019-03-29 | 2019-07-09 | 大连理工大学 | 基于深度交叉相似匹配的在线视频目标跟踪方法 |
CN110598658A (zh) * | 2019-09-18 | 2019-12-20 | 华南农业大学 | 一种母猪哺乳行为的卷积网络识别方法 |
CN111709287A (zh) * | 2020-05-15 | 2020-09-25 | 南京农业大学 | 基于深度学习的断奶仔猪目标跟踪方法 |
-
2021
- 2021-10-19 CN CN202111217322.8A patent/CN113947617B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107527351A (zh) * | 2017-08-31 | 2017-12-29 | 华南农业大学 | 一种融合fcn和阈值分割的哺乳母猪图像分割方法 |
CN108830144A (zh) * | 2018-05-03 | 2018-11-16 | 华南农业大学 | 一种基于改进Faster-R-CNN的哺乳母猪姿态识别方法 |
CN109993774A (zh) * | 2019-03-29 | 2019-07-09 | 大连理工大学 | 基于深度交叉相似匹配的在线视频目标跟踪方法 |
CN110598658A (zh) * | 2019-09-18 | 2019-12-20 | 华南农业大学 | 一种母猪哺乳行为的卷积网络识别方法 |
CN111709287A (zh) * | 2020-05-15 | 2020-09-25 | 南京农业大学 | 基于深度学习的断奶仔猪目标跟踪方法 |
Non-Patent Citations (5)
Title |
---|
a cnn-based posture change detection for lactating sow in untrimmed depth video;Xiaofang Yang;《Computer and Electronic in Agriculture》;20210415;第1-12页 * |
automated video analysis of sow nursing behavior based on fully convolutional network and oriented optical flow;Aqing yang;《Computer and Electronic in Agriculture》;20191017;第1-10页 * |
fast and accurate detection fo lactating sow nursing behavior with cnn-based optical flow and feature;Haiming Gan等;《Computer and Electronics in Agriculture》;20210819;第1-11页 * |
基于时空信息融合的母猪哺乳行为识别;甘海明 等;《农业机械学报》;20201130;第51卷(第增刊1期);第357-363页 * |
融合2D-3D卷积特征识别哺乳母猪姿态转换;薛月菊 等;《农业工程学报》;20210531;第37 卷(第9期);第230-237页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113947617A (zh) | 2022-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zheng et al. | Automatic recognition of lactating sow postures from depth images by deep learning detector | |
CN102509305B (zh) | 基于全方位视觉的动物行为检测装置 | |
Leroy et al. | A computer vision method for on-line behavioral quantification of individually caged poultry | |
Zhu et al. | Recognition and drinking behaviour analysis of individual pigs based on machine vision | |
CN103517042B (zh) | 一种养老院老人危险行为监测方法 | |
de Lima Weber et al. | Recognition of Pantaneira cattle breed using computer vision and convolutional neural networks | |
CN106446922B (zh) | 一种人群异常行为分析方法 | |
CN103428424B (zh) | 视频处理设备和追踪物体的管理方法 | |
Gan et al. | Automated piglet tracking using a single convolutional neural network | |
Subedi et al. | Tracking floor eggs with machine vision in cage-free hen houses | |
Chen et al. | A kinetic energy model based on machine vision for recognition of aggressive behaviours among group-housed pigs | |
CN112906734A (zh) | 牲畜智能选种方法、装置、计算机设备和存储介质 | |
CN112488057A (zh) | 一种利用人头点定位和关节点信息的单相机多目标跟踪方法 | |
CN112544491A (zh) | 一种识别圈养动物腹泻的方法及系统 | |
Noe et al. | Automatic detection and tracking of mounting behavior in cattle using a deep learning-based instance segmentation model | |
CN113947617B (zh) | 一种基于长短记忆的哺乳仔猪多目标跟踪方法 | |
Li et al. | Y-BGD: Broiler counting based on multi-object tracking | |
Yang et al. | A defencing algorithm based on deep learning improves the detection accuracy of caged chickens | |
CN115830078B (zh) | 生猪多目标跟踪及行为识别方法、计算机设备与存储介质 | |
CN111666881B (zh) | 一种大熊猫踱步、吃竹子、发情行为跟踪分析方法 | |
CN110555371A (zh) | 一种基于无人机的野生动物信息获取方法和装置 | |
Xu et al. | Automatic quantification and assessment of grouped pig movement using the XGBoost and YOLOv5s models | |
Zhang et al. | A dairy goat tracking method via lightweight fusion and Kullback Leibler divergence | |
CN115497021A (zh) | 一种基于计算机视觉的母猪哺乳行为细粒度识别方法 | |
Ju et al. | Video tracking to monitor turkey welfare |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |