CN115578422A - 一种基于动态感知系统实现牲畜计数方法 - Google Patents
一种基于动态感知系统实现牲畜计数方法 Download PDFInfo
- Publication number
- CN115578422A CN115578422A CN202211442749.2A CN202211442749A CN115578422A CN 115578422 A CN115578422 A CN 115578422A CN 202211442749 A CN202211442749 A CN 202211442749A CN 115578422 A CN115578422 A CN 115578422A
- Authority
- CN
- China
- Prior art keywords
- zone
- livestock
- track
- counting
- zero
- 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.)
- Granted
Links
Images
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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/34—Smoothing or thinning of the pattern; Morphological operations; Skeletonisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/62—Extraction of image or video features relating to a temporal dimension, e.g. time-based feature extraction; Pattern tracking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/103—Static body considered as a whole, e.g. static pedestrian or occupant recognition
-
- 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
-
- 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/30242—Counting objects in image
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A40/00—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production
- Y02A40/70—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production in livestock or poultry
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于动态感知系统实现牲畜计数方法,该方法包括以下步骤:S1、在牲畜厂房安装摄像头滑轨,通过匀速移动摄像头拍摄动态视频;S2、对所述动态视频进行牲畜骨骼定位,并实现目标对象框的标定;S3、利用跨时间帧间对象关联的特性,实现对象框的轨迹跟踪;S4、利用空间编码与空间滤波对牲畜进行计数,并输出计数结果。本发明通过动态视频计数,弥补传统的单张图片视野的局限性很难实现全局牲畜计数功能;针对牲畜的遮挡和重叠的严重问题,本发明改进传统的矩形框检测方法,采用牲畜骨骼点检测技术实现目标的锁定;针对视频中牲畜的运动导致跟踪计数难度大,本发明采用动态感知技术,解决误检,计数重复等问题。
Description
技术领域
本发明涉及牲畜计数技术领域,具体来说,涉及一种基于动态感知系统实现牲畜计数方法。
背景技术
计数是大规模养牲畜的关键任务,一般是由人类视觉完成,但这个过程非常耗时且容易出错,且目前针对牲畜计数方面的研究较少。现有的牲畜计数方法主要集中在单幅静态图像上,而静态的图像难以保证计数的精度与准确率,挑战的因素主要集中在牲畜的运动、遮挡和重叠;特别是,在静态图像识别领域单幅图像的视野是非常有限的,而且满足不了大规模牲畜计数的要求,为此需要设计一种基于动态感知系统实现牲畜计数的方法。
发明内容
针对相关技术中的问题,本发明提出一种基于动态感知系统实现牲畜计数方法,以克服现有相关技术所存在的上述技术问题。
为此,本发明采用的具体技术方案如下:
一种基于动态感知系统实现牲畜计数方法,该方法包括以下步骤:
S1、在牲畜厂房安装摄像头滑轨,通过匀速移动摄像头拍摄动态视频;
S2、对所述动态视频进行牲畜骨骼定位,并实现目标对象框的标定;
S3、利用跨时间帧间对象关联的特性,实现对象框的轨迹跟踪;
S4、利用空间编码与空间滤波对牲畜进行计数,并输出计数结果。
进一步的,对所述动态视频进行牲畜骨骼定位,并实现目标对象框的标定包括以下步骤:
S21、利用神经网络模型与线性模型对所述动态视频进行识别并输出PCM图与PAF图;
S22、利用非极大值抑制算法获取所述PCM图中的牲畜骨骼的关节点;
S23、利用线积分计算所述PAF图中两两候选关节点之间的关联度;
S24、按照关联度分数从大到小进行排序,依次选取并连接关节点,若关节点已经连接则跳过连接下一个未连接的关节点;
S25、根据连接完成的关节边获取各个牲畜的对象骨架,并作为对象框。
进一步的,所述利用非极大值抑制算法获取所述PCM图中的牲畜骨骼的关节点包括以下步骤:
S221、利用极大值滤波获取所述PCM图中的极大值点;
S222、对所述极大值点进行局部上采样和高斯模糊;
S223、利用极大值滤波求取新的极大值点;
S224、利用牛顿法进行一步迭代做进一步修正,直至得到所有关节点。
进一步的,所述PAF图是一个矩形区域和两个半圆区域的并集,两个半圆分别与矩形两条短边重合,半圆的直径等于矩形区域的宽度。
进一步的,所述神经网络模型包括PCM模型与PAM模型;
其中,所述PCM模型的公式为:
所述PAM模型的公式为:
exp表示指数函数;
P表示关节点;
1表示满足下角标的条件则取值为1,否则为0。
进一步的,所述轨迹包括TA轨迹、New轨迹及Lost轨迹;
其中,所述TA轨迹表示激活且正常追踪的轨迹;
所述New轨迹表示能够正常追踪但没有激活的轨迹;
Lost轨迹表示激活但没有正常追踪的轨迹。
进一步的,所述利用跨时间帧间对象关联的特性,实现对象框的轨迹跟踪包括以下步骤:
S31、将对象框出现的新的检测结果与已有轨迹进行跟踪与匹配;
S32、将公共关节点的欧式距离的加权平均值作为两个骨架之间的距离,并将该距离作为矩阵元素构建距离矩阵;
S33、检测未成功匹配的TA轨迹和Lost轨迹是否能与匹配成功的检测结果进行匹配,若能进行匹配,则统一匹配一并进行轨迹更新。
进一步的,所述将对象框出现的新的检测结果与已有轨迹进行跟踪与匹配包括以下步骤:
S311、通过阈值将检测结果按分数分为三类:高分结果、低分结果和不合格结果;
S312、将高分结果和TA轨迹以及Lost轨迹进行第一轮匹配;
S313、将低分结果和第一轮匹配中未成功匹配的TA轨迹进行匹配,成功匹配的Lost轨迹转换为TA轨迹,未成功匹配的TA轨迹转换为Lost轨迹,未成功匹配的Lost进行丢弃,实现第二轮匹配;
S314、所述第一轮匹配中未成功匹配的高分结果和New轨迹进行匹配,如果New轨迹成功匹配的次数达到delta-t次,则将该New轨迹转换为TA轨迹,未成功匹配的New轨迹则直接删除,且连续delta-t次未成功匹配的Lost轨迹进行删除;
S315、所有成功匹配的轨迹吸收匹配的检测结果进行相应的更新。
进一步的,所述利用空间编码与空间滤波对牲畜进行计数,并输出计数结果包括以下步骤:
S41、将所述动态视频的每一帧划分为三个区域,分别为零区、正区及负区;
S42、按照更新规则对所述动态视频画面中跨区移动的牲畜进行更新;
S43、当所述动态视频停止时,统计零区、正区及负区三个区域内最终牲畜数量的和作为总数,并输出计算结果。
进一步的,所述按照更新规则对所述动态视频画面中跨区移动的牲畜进行更新包括以下步骤:
S421、当检测到有对象从负区到零区时,更新规则为:零区=零区+1,负区=max(负区-1,0);
S422、当检测到有对象从零区到负区的时候,更新规则为:零区=零区-1,负区=负区+1;
S423、当检测到有对象从正区到零区时,更新规则为:零区=零区+1,正区=max(正区-1,0);
S424、当检测到有对象从零区到正区的时候,更新规则为:零区=零区-1,正区=正区+1。
本发明的有益效果为:通过动态视频计数,弥补传统的单张图片视野的局限性很难实现全局牲畜计数功能;针对牲畜的遮挡和重叠的严重问题,本发明改进传统的矩形框检测方法,采用牲畜骨骼点检测技术实现目标的锁定;针对视频中牲畜的运动导致跟踪计数难度大,本发明采用动态感知技术,确定牲畜帧间的关联度,解决误检,计数重复等问题,显著提高牲畜养殖过程中计数的精度与效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种基于动态感知系统实现牲畜计数方法的流程图;
图2是根据本发明实施例的一种基于动态感知系统实现牲畜计数方法的牲畜厂房摄像示意图;
图3是根据本发明实施例的一种基于动态感知系统实现牲畜计数方法的逻辑流程图;
图4是根据本发明实施例的一种基于动态感知系统实现牲畜计数方法中动态视频匹配与检测示意框图;
图5是根据本发明实施例的一种基于动态感知系统实现牲畜计数方法中骨架构建结构示意图;
图6是根据本发明实施例的一种基于动态感知系统实现牲畜计数方法中检测结果与轨迹匹配流程示意图;
图7是根据本发明实施例的一种基于动态感知系统实现牲畜计数方法中技术流程图。
具体实施方式
为进一步说明各实施例,本发明提供有附图,这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理,配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点,图中的组件并未按比例绘制,而类似的组件符号通常用来表示类似的组件。
根据本发明的实施例,提供了一种基于动态感知系统实现牲畜计数方法。
现结合附图和具体实施方式对本发明进一步说明,如图1与图3所示,根据本发明实施例的基于动态感知系统实现牲畜计数方法,该方法包括以下步骤:
S1、在牲畜厂房安装摄像头滑轨,通过匀速移动摄像头拍摄动态视频;
在牲畜厂房安装摄像头,通过滑轨让摄像头自顶向下进行拍摄,然后将摄像头自厂房的一端匀速的移动到另一端生成一段视频,将视频传入牲畜计数系统,可实现对视频中的牲畜统计,如图2所示。
S2、对所述动态视频进行牲畜骨骼定位,并实现目标对象框的标定;
一般的常规检测算法主要采用目标框的检测,但是有边界的框极容易受到相邻目标框的影响,导致重叠率较高,根据目标检测算法实现的原理,这类目标往往会被抑制,导致检测目标丢失,故本发明采用基于关键点检测技术实现目标的检测。
如图4与图5所示,对所述动态视频进行牲畜骨骼定位,并实现目标对象框的标定包括以下步骤:
S21、利用神经网络模型与线性模型对所述动态视频进行识别并输出PCM图与PAF图;
OpenPose中神经网络的训练需要生成PCM和PAF作为神经网络的ground-truth,PCM和PAF的生成需要半径参数,不同的关节点,不同的边有不同的大小半径。比如人五官关节点的半径肯定要小于手肘关节点半径。OpenPose使用固定的半径参数,即每个关节点/边对应生成PCM峰值点/PAF区域的“大小半径”是固定的。然而在本发明情景中,对象在图片中的大小差距较大,固定的半径参数并不能很好地处理本项目中的情形,需要使用一种动态的半径。
所以,本发明提出一种估计对象大小的方法,据此进一步获得每个关节点/边的“大小半径”,在训练神经网络的时候,动态计算PCM和PAF的半径参数,并生成对应的PCM和PAF,作为神经网络的ground-truth。
本发明的估计对象大小的方法是基于数据集的,使用了一个线性模型来拟合数据,以解决数据标注的缺失量问题。
本发明通过计算骨架的长度来表征对象的大小,因为骨架的长度在牲畜对象不同体态和角度的情况下变化情况比方框小。然而,因为遮挡等原因会导致标注的骨架不完整,关节点缺失等问题,本发明定义了一种特殊的线性模型,它是各边长度的加权平均,通过在数据上进行拟合,获得模型参数,就可以解决数据标注的缺失量问题。
所述神经网络模型包括PCM模型与PAM模型;
其中,所述PCM模型的公式为:
所述PAM模型的公式为:
exp表示指数函数;
P表示关节点;
1表示满足下角标的条件则取值为1,否则为0。
S22、利用非极大值抑制算法获取所述PCM图中的牲畜骨骼的关节点;
所述利用非极大值抑制算法获取所述PCM图中的牲畜骨骼的关节点包括以下步骤:
S221、利用极大值滤波获取所述PCM图中的极大值点;
S222、对所述极大值点进行局部上采样和高斯模糊;
S223、利用极大值滤波求取新的极大值点;
S224、利用牛顿法进行一步迭代做进一步修正,直至得到所有关节点。
S23、利用线积分计算所述PAF图中两两候选关节点之间的关联度;
所述PAF图是一个矩形区域和两个半圆区域的并集,两个半圆分别与矩形两条短边重合,半圆的直径等于矩形区域的宽度,且半圆区域的圆心等于内部对应关节点的圆心。
OpenPose中的PAF是Part Affinity Fields,部分亲和力场,它以一个矩形的方式来表征。比如有一条骨架边,那么它会以这个骨架边为轴心线划定一个矩形区域,矩形区域里面每个点都会生产一个单位向量v,矩形区域外面使用零向量。由于PAF区域的边缘刚好落在关节点上,在骨架推理的时候可能在一定程度上降低关节点的关联度,进而影响关节点的连接。因此本发明改进PAF的表征,在矩形区域两边分别加上半圆,形成一个缓冲,就不会影响关节点关联度的计算,让算法更加鲁棒。
S24、按照关联度分数从大到小进行排序,依次选取并连接关节点,若关节点已经连接则跳过连接下一个未连接的关节点;
S25、根据连接完成的关节边获取各个牲畜的对象骨架,并作为对象框。
S3、利用跨时间帧间对象关联的特性,实现对象框的轨迹跟踪;
所述利用跨时间帧间对象关联的特性,实现对象框的轨迹跟踪包括以下步骤:
S31、将对象框出现的新的检测结果与已有轨迹进行跟踪与匹配;
所述轨迹包括TA轨迹、New轨迹及Lost轨迹;
其中,所述TA轨迹表示激活且正常追踪的轨迹;
所述New轨迹表示能够正常追踪但没有激活的轨迹;
Lost轨迹表示激活但没有正常追踪的轨迹。
所述将对象框出现的新的检测结果与已有轨迹进行跟踪与匹配包括以下步骤:
S311、通过阈值将检测结果按分数分为三类:高分结果(High)、低分结果(Low)和不合格结果(Else);
S312、将高分结果和TA轨迹以及Lost轨迹进行第一轮匹配;
S313、将低分结果和第一轮匹配中未成功匹配的TA轨迹进行匹配,成功匹配的Lost轨迹转换为TA轨迹,未成功匹配的TA轨迹转换为Lost轨迹,未成功匹配的Lost进行丢弃,实现第二轮匹配;
S314、所述第一轮匹配中未成功匹配的高分结果和New轨迹进行匹配,如果New轨迹成功匹配的次数达到delta-t次,则将该New轨迹转换为TA轨迹,未成功匹配的New轨迹则直接删除,且连续delta-t次未成功匹配的Lost轨迹进行删除;
S315、所有成功匹配的轨迹吸收匹配的检测结果进行相应的更新。
S32、将公共关节点的欧式距离的加权平均值作为两个骨架之间的距离,并将该距离作为矩阵元素构建距离矩阵;
S33、检测未成功匹配的TA轨迹和Lost轨迹是否能与匹配成功的检测结果进行匹配,若能进行匹配,则统一匹配一并进行轨迹更新。
由于基于骨架的轨迹追踪又引入了额外的问题,为解决这些问题,需要对追踪算法进行改进。在改进的时候,需要遵循原算法的一些隐性的原则:匹配矩阵和匹配优先级。对于High检测结果,New、TA和Lost轨迹都能与其进行匹配;对于Low检测结果,只有TA轨迹能与其进行匹配。匹配的优先级是TA和Lost优先于New,High优先于Low。本算法分析了有可能参数上述问题的地方,并进行相应解决。如产生一对多问题,可能是在第一第二步未成功的TA和Lost轨迹,它们被第一步中成功匹配的TA和Lost轨迹抢走了检测结果,所以需要增加新的步骤来判断这些未成功匹配的TA和Lost轨迹是否能与那些被抢走的检测结果进行匹配,如果能的话,就把它们匹配放到一起进行轨迹更新。
总体来说,改进后的检测方式如图6所示,圆圈表示两种检测结果,High和Low,方框表示三种轨迹,分别用不同的颜色进行区分。每一步匹配在图中用一个加号和一个箭头表示,加号两边是两个需要匹配的对象箭头指向匹配结果。其中匹配对象可能是检测结果或者轨迹,也可能是检测结果和轨迹的绑定(已经预匹配但还不是最终的结果)。匹配结果包含成功匹配的以及未成功匹配的,分别位于图中每一个箭头后面的第一行和第二行,(成功匹配的在图中会贴到一起)。
原有的3步基础匹配也会保留。然后增加两步匹配来解决一对多问题,它会进行试探性地匹配,看看是否能够发现有一对多的情形,如果有的话就合并轨迹进行更新。然后增加一般匹配来解决多对一问题,也是试探性地进行匹配,看看是否能够发现有多对一的情形,如果有的话就合并骨架并进行更新。最后增加两步匹配来解决骨架逆向问题,试探性匹配,看看是否能够发现骨架逆向问题,如果有就进行相应的处理。
虽然多了五步,但是还是需要遵循前述匹配原则。
S4、利用空间编码与空间滤波对牲畜进行计数,并输出计数结果。
所述利用空间编码与空间滤波对牲畜进行计数,并输出计数结果包括以下步骤:
S41、将所述动态视频的每一帧划分为三个区域,分别为零区、正区及负区;
S42、按照更新规则对所述动态视频画面中跨区移动的牲畜进行更新;
所述按照更新规则对所述动态视频画面中跨区移动的牲畜进行更新包括以下步骤:
S421、当检测到有对象从负区到零区时,更新规则为:零区=零区+1,负区=max(负区-1,0);
S422、当检测到有对象从零区到负区的时候,更新规则为:零区=零区-1,负区=负区+1;
S423、当检测到有对象从正区到零区时,更新规则为:零区=零区+1,正区=max(正区-1,0);
S424、当检测到有对象从零区到正区的时候,更新规则为:零区=零区-1,正区=正区+1。
S43、当所述动态视频停止时,统计零区、正区及负区三个区域内最终牲畜数量的和作为总数,并输出计算结果。
其中零区(z)包含画面中能够检测出来的猪,负区(n)包含分割线左边不能检测到的猪,包括画面外和画面内的,正区(p)与负区类似。从负区/正区不会直接到正区/负区,中间必定经过零区。
如图7所示,牲畜数量的计算流程如下:
步骤1,初始化n=z=p=0。
步骤2,获取轨迹序列Tracks,若失败,则转到步骤6,否则转入下一步。
步骤3,初始化nz=pz=zn=zp=0。
步骤4,循环遍历Tracks中的每一条轨迹t,执行如下更新:若t是正区新激活的轨迹,则pz=pz+1;若t是在负区新激活的轨迹,则nz=nz+1;若t是在正区刚移除的轨迹,则zp=zp+1;若t是在负区刚移除的轨迹,则zn=zn+1;其它情形不更新。
步骤5,更新n=max(n-nz,0)+zn,p=max(p-pz,0)+zp,z=z-zn-zp+nz+pz,返回步骤2。
步骤6,输出个数c=n+z+p。
综上所述,借助于本发明的上述技术方案,通过动态视频计数,弥补传统的单张图片视野的局限性很难实现全局牲畜计数功能;针对牲畜的遮挡和重叠的严重问题,本发明改进传统的矩形框检测方法,采用牲畜骨骼点检测技术实现目标的锁定;针对视频中牲畜的运动导致跟踪计数难度大,本发明采用动态感知技术,确定牲畜帧间的关联度,解决误检,计数重复等问题,显著提高牲畜养殖过程中计数的精度与效果。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于动态感知系统实现牲畜计数方法,其特征在于,该方法包括以下步骤:
S1、在牲畜厂房安装摄像头滑轨,通过匀速移动摄像头拍摄动态视频;
S2、对所述动态视频进行牲畜骨骼定位,并实现目标对象框的标定;
S3、利用跨时间帧间对象关联的特性,实现对象框的轨迹跟踪;
S4、利用空间编码与空间滤波对牲畜进行计数,并输出计数结果。
2.根据权利要求1所述的一种基于动态感知系统实现牲畜计数方法,其特征在于,对所述动态视频进行牲畜骨骼定位,并实现目标对象框的标定包括以下步骤:
S21、利用神经网络模型与线性模型对所述动态视频进行识别并输出PCM图与PAF图;
S22、利用非极大值抑制算法获取所述PCM图中的牲畜骨骼的关节点;
S23、利用线积分计算所述PAF图中两两候选关节点之间的关联度;
S24、按照关联度分数从大到小进行排序,依次选取并连接关节点,若关节点已经连接则跳过连接下一个未连接的关节点;
S25、根据连接完成的关节边获取各个牲畜的对象骨架,并作为对象框。
3.根据权利要求2所述的一种基于动态感知系统实现牲畜计数方法,其特征在于,所述利用非极大值抑制算法获取所述PCM图中的牲畜骨骼的关节点包括以下步骤:
S221、利用极大值滤波获取所述PCM图中的极大值点;
S222、对所述极大值点进行局部上采样和高斯模糊;
S223、利用极大值滤波求取新的极大值点;
S224、利用牛顿法进行一步迭代做进一步修正,直至得到所有关节点。
4.根据权利要求3所述的一种基于动态感知系统实现牲畜计数方法,其特征在于,所述PAF图是一个矩形区域和两个半圆区域的并集,两个半圆分别与矩形两条短边重合,半圆的直径等于矩形区域的宽度。
6.根据权利要求5所述的一种基于动态感知系统实现牲畜计数方法,其特征在于,所述轨迹包括TA轨迹、New轨迹及Lost轨迹;
其中,所述TA轨迹表示激活且正常追踪的轨迹;
所述New轨迹表示能够正常追踪但没有激活的轨迹;
所述Lost轨迹表示激活但没有正常追踪的轨迹。
7.根据权利要求6所述的一种基于动态感知系统实现牲畜计数方法,其特征在于,所述利用跨时间帧间对象关联的特性,实现对象框的轨迹跟踪包括以下步骤:
S31、将对象框出现的新的检测结果与已有轨迹进行跟踪与匹配;
S32、将公共关节点的欧式距离的加权平均值作为两个骨架之间的距离,并将该距离作为矩阵元素构建距离矩阵;
S33、检测未成功匹配的TA轨迹和Lost轨迹是否能与匹配成功的检测结果进行匹配,若能进行匹配,则统一匹配一并进行轨迹更新。
8.根据权利要求7所述的一种基于动态感知系统实现牲畜计数方法,其特征在于,所述将对象框出现的新的检测结果与已有轨迹进行跟踪与匹配包括以下步骤:
S311、通过阈值将检测结果按分数分为三类:高分结果、低分结果和不合格结果;
S312、将高分结果和TA轨迹以及Lost轨迹进行第一轮匹配;
S313、将低分结果和第一轮匹配中未成功匹配的TA轨迹进行匹配,成功匹配的Lost轨迹转换为TA轨迹,未成功匹配的TA轨迹转换为Lost轨迹,未成功匹配的Lost进行丢弃,实现第二轮匹配;
S314、所述第一轮匹配中未成功匹配的高分结果和New轨迹进行匹配,如果New轨迹成功匹配的次数达到delta-t次,则将该New轨迹转换为TA轨迹,未成功匹配的New轨迹则直接删除,且连续delta-t次未成功匹配的Lost轨迹进行删除;
S315、所有成功匹配的轨迹吸收匹配的检测结果进行相应的更新。
9.根据权利要求8所述的一种基于动态感知系统实现牲畜计数方法,其特征在于,所述利用空间编码与空间滤波对牲畜进行计数,并输出计数结果包括以下步骤:
S41、将所述动态视频的每一帧划分为三个区域,分别为零区、正区及负区;
S42、按照更新规则对所述动态视频画面中跨区移动的牲畜进行更新;
S43、当所述动态视频停止时,统计零区、正区及负区三个区域内最终牲畜数量的和作为总数,并输出计算结果。
10.根据权利要求9所述的一种基于动态感知系统实现牲畜计数方法,其特征在于,所述按照更新规则对所述动态视频画面中跨区移动的牲畜进行更新包括以下步骤:
S421、当检测到有对象从负区到零区时,更新规则为:零区=零区+1,负区=max(负区-1,0);
S422、当检测到有对象从零区到负区的时候,更新规则为:零区=零区-1,负区=负区+1;
S423、当检测到有对象从正区到零区时,更新规则为:零区=零区+1,正区=max(正区-1,0);
S424、当检测到有对象从零区到正区的时候,更新规则为:零区=零区-1,正区=正区+1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211442749.2A CN115578422B (zh) | 2022-11-18 | 2022-11-18 | 一种基于动态感知系统实现牲畜计数方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211442749.2A CN115578422B (zh) | 2022-11-18 | 2022-11-18 | 一种基于动态感知系统实现牲畜计数方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115578422A true CN115578422A (zh) | 2023-01-06 |
CN115578422B CN115578422B (zh) | 2023-06-06 |
Family
ID=84589701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211442749.2A Active CN115578422B (zh) | 2022-11-18 | 2022-11-18 | 一种基于动态感知系统实现牲畜计数方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115578422B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130251197A1 (en) * | 2012-03-21 | 2013-09-26 | Nec (China) Co., Ltd. | Method and a device for objects counting |
CN110147743A (zh) * | 2019-05-08 | 2019-08-20 | 中国石油大学(华东) | 一种复杂场景下的实时在线行人分析与计数系统及方法 |
CN111738096A (zh) * | 2020-05-28 | 2020-10-02 | 复旦大学 | 一种基于骨架姿态的人物跟踪算法 |
CN113628165A (zh) * | 2021-07-12 | 2021-11-09 | 杨龙 | 一种牲畜转栏盘点方法、装置及存储介质 |
-
2022
- 2022-11-18 CN CN202211442749.2A patent/CN115578422B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130251197A1 (en) * | 2012-03-21 | 2013-09-26 | Nec (China) Co., Ltd. | Method and a device for objects counting |
CN110147743A (zh) * | 2019-05-08 | 2019-08-20 | 中国石油大学(华东) | 一种复杂场景下的实时在线行人分析与计数系统及方法 |
CN111738096A (zh) * | 2020-05-28 | 2020-10-02 | 复旦大学 | 一种基于骨架姿态的人物跟踪算法 |
CN113628165A (zh) * | 2021-07-12 | 2021-11-09 | 杨龙 | 一种牲畜转栏盘点方法、装置及存储介质 |
Non-Patent Citations (1)
Title |
---|
ZHE CAO等: "OpenPose:Realtime Multi-Person 2D Pose Estimation Using Part Affinity Fields", 《IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115578422B (zh) | 2023-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107545582B (zh) | 基于模糊逻辑的视频多目标跟踪方法及装置 | |
CN109146912B (zh) | 一种基于目标性分析的视觉目标跟踪方法 | |
CN112883819A (zh) | 多目标跟踪方法、装置、系统及计算机可读存储介质 | |
CN109544592B (zh) | 针对相机移动的运动目标检测算法 | |
CN106204633B (zh) | 一种基于计算机视觉的学生跟踪方法和装置 | |
CN110751096B (zh) | 一种基于kcf轨迹置信度的多目标跟踪方法 | |
CN102110293A (zh) | 基于模型的赛场配准 | |
CN110287907B (zh) | 一种对象检测方法和装置 | |
CN112465871B (zh) | 一种视觉跟踪算法准确性的评价方法及系统 | |
CN110765814A (zh) | 一种黑板书写行为识别方法、装置及摄像机 | |
Ali et al. | Multiple object tracking with partial occlusion handling using salient feature points | |
CN111798483A (zh) | 一种抗遮挡行人跟踪的方法、装置及存储介质 | |
CN109344685B (zh) | 一种智慧托盘及其智能定位追踪方法 | |
CN110910428B (zh) | 一种基于神经网络的实时多目标跟踪方法 | |
CN111401240B (zh) | 一种课堂注意力检测方法、装置、设备及存储介质 | |
Li et al. | Cross-modal object tracking: Modality-aware representations and a unified benchmark | |
CN115578422A (zh) | 一种基于动态感知系统实现牲畜计数方法 | |
CN112861855A (zh) | 基于对抗网络模型的群养猪实例分割方法 | |
CN112307897A (zh) | 一种社区监控场景下基于局部特征识别和邻帧匹配的宠物跟踪方法 | |
CN109584274B (zh) | 一种水下动物的数量及其轨迹的检测方法及设备 | |
CN116051488A (zh) | 基于卷积神经网络的活体猪计数及多目标跟踪方法 | |
CN103413328A (zh) | 运动物体的跟踪方法和装置 | |
CN108241837A (zh) | 一种遗留物检测方法和装置 | |
Chang et al. | Robust identification of visual markers under boundary occlusion condition | |
CN117333904B (zh) | 一种多特征融合的行人跟踪方法 |
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 |