CN116258748A - 轨迹跟踪方法 - Google Patents
轨迹跟踪方法 Download PDFInfo
- Publication number
- CN116258748A CN116258748A CN202310253258.1A CN202310253258A CN116258748A CN 116258748 A CN116258748 A CN 116258748A CN 202310253258 A CN202310253258 A CN 202310253258A CN 116258748 A CN116258748 A CN 116258748A
- Authority
- CN
- China
- Prior art keywords
- image frame
- similarity
- target object
- target
- module
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000012545 processing Methods 0.000 claims abstract description 94
- 238000012216 screening Methods 0.000 claims abstract description 60
- 238000001514 detection method Methods 0.000 claims abstract description 33
- 239000011159 matrix material Substances 0.000 claims description 42
- 238000012549 training Methods 0.000 claims description 34
- 238000001914 filtration Methods 0.000 claims description 14
- 230000007246 mechanism Effects 0.000 claims description 11
- 238000013528 artificial neural network Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 abstract description 20
- 238000004891 communication Methods 0.000 description 15
- 239000013598 vector Substances 0.000 description 15
- 238000010586 diagram Methods 0.000 description 13
- 238000000605 extraction Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000004927 fusion Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 235000013619 trace mineral Nutrition 0.000 description 1
- 239000011573 trace mineral Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- 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/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/771—Feature selection, e.g. selecting representative features from a multi-dimensional feature space
-
- 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/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/778—Active pattern-learning, e.g. online learning of image or video features
-
- 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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例涉及计算机视觉领域,公开了一种轨迹跟踪方法,该方法包括:获取视频序列中的多个图像帧;根据目标轨迹跟踪模型中的检测模块,对多个图像帧进行特征提取,得到多个图像帧的特征数据;根据目标轨迹跟踪模型中的筛选模块,对多个图像帧的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一个第二图像帧;根据目标轨迹跟踪模型中的处理模块,对至少一个第二图像帧和当前图像帧进行处理,得到目标对象的轨迹跟踪结果。应用本申请的技术方案,能够解决目标对象的轨迹跟踪过程中由于遮挡等情况而导致的目标对象跟踪错误或跟踪失败的问题。
Description
技术领域
本申请实施例涉及计算机视觉技术领域,具体涉及一种轨迹跟踪方法。
背景技术
多目标跟踪是计算机视觉的重要技术之一,多目标跟踪可以对场景中的多个目标对象进行识别和跟踪,在生活中的实际应用场景,如视频监控、自动驾驶、机器人导航等都具有广泛的应用。
对于视频场景来说,目标对象(例如人)在移动过程中,外形、行进方向或角度等随时会发生变化,并且不同目标对象之间可能会产生遮挡的情况,这为目标对象的轨迹跟踪带来了较大的挑战,可能会导致目标对象跟踪错误或跟踪失败的问题。
发明内容
鉴于上述问题,本申请实施例提供了一种轨迹跟踪方法,用于解决目标对象的跟踪过程中,由目标对象的变化或目标对象之间相互遮挡而导致的目标对象跟踪错误或跟踪丢失的问题。
根据本申请实施例的第一方面,提供了一种轨迹跟踪方法,该方法包括:获取视频序列中的多个图像帧;该多个图像帧包括当前图像帧和至少两个第一图像帧。根据目标轨迹跟踪模型中的检测模块,对多个图像帧进行特征提取,得到多个图像帧的特征数据。根据目标轨迹跟踪模型中的筛选模块,对多个图像帧的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一个第二图像帧;其中,第二图像帧与当前图像帧之间的相似度大于或等于第一预设相似度,第二图像帧包括目标对象。根据目标轨迹跟踪模型中的处理模块,对至少一个第二图像帧和当前图像帧进行处理,得到目标对象的轨迹跟踪结果。
在一种可选的方式中,筛选模块包括图卷积神经网络;根据目标轨迹跟踪模型中的筛选模块,对多个图像帧的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一个第二图像帧,包括:根据图卷积神经网络对多个图像帧的特征数据进行处理,得到各第一图像帧与当前图像帧之间的余弦相似度;根据各第一图像帧与当前图像帧之间的余弦相似度与第一预设相似度之间的大小关系,从至少两个第一图像帧中筛选得到至少一个第二图像帧。
在一种可选的方式中,根据各第一图像帧与当前图像帧之间的余弦相似度与第一预设相似度之间的大小关系,从至少两个第一图像帧中筛选得到至少一个第二图像帧,包括:若第一图像帧与当前图像帧之间的余弦相似度大于或等于第一预设相似度,则将第一图像帧确定为第二图像帧。
在一种可选的方式中,目标轨迹跟踪模型中的处理模块包括目标相似度学习模块和关联模块;根据目标轨迹跟踪模型中的处理模块,对至少一个第二图像帧和当前图像帧进行处理,得到目标对象的轨迹跟踪结果,包括:根据处理模块中的目标相似度学习模块,计算各第二图像帧中目标对象和当前图像帧中目标对象的相似度,得到相似度矩阵;根据处理模块中的关联模块和相似度矩阵,对相似度矩阵进行处理,得到目标对象的轨迹跟踪结果。
在一种可选的方式中,根据处理模块中的目标相似度学习模块,计算各第二图像帧中目标对象和当前图像帧中目标对象的相似度,得到相似度矩阵,包括:根据目标相似度学习模块,采用注意力机制,获取各第二图像帧中目标对象的特征数据,以及当前图像帧中目标对象的特征数据;根据各第二图像帧中目标对象的特征数据,以及当前图像帧中目标对象的特征数据,确定各第二图像帧中目标对象和当前图像帧中所述目标对象的相似度,得到相似度矩阵。
在一种可选的方式中,根据处理模块中的关联模块,对相似度矩阵进行处理,得到目标对象的轨迹跟踪结果,包括:根据关联模块,采用匈牙利匹配算法对相似度矩阵进行处理,确定第二图像帧中目标对象和当前图像帧中目标对象的匹配结果;根据目标对象的标识信息,将匹配结果按照时序进行关联,得到目标对象的轨迹跟踪结果;其中,目标对象的标识信息由检测模块获取。
在一种可选的方式中,该方法还包括:获取训练样本集,训练样本集包括样本视频序列中的多个样本图像帧,以及各第一样本图像帧中目标对象的类型;其中,多个样本图像帧包括当前样本图像帧和至少两个第一样本图像。根据初始轨迹跟踪模型的中检测模块,对多个样本图像帧进行特征提取,得到多个样本图像帧的特征数据。根据初始轨迹跟踪模型中的筛选模块,对多个样本图像帧的特征数据进行处理,在至少两个第一样本图像帧中筛选得到至少一个第二样本图像帧;其中,第二样本图像帧与当前样本图像帧之间的相似度大于或等于第一预设相似度,第二样本图像帧包括目标对象。根据初始轨迹跟踪模型中的初始相似度学习模块,计算至少一个样本图像帧组中目标对象的相似度,得到预测相似度;其中,样本图像帧组包括一个第二样本图像帧和当前图像帧。以预测相似度作为初始相似度学习模块的初始训练输出,各样本图像帧组中目标对象的类型为监督信息,迭代训练初始相似度学习模块得到所述目标相似度学习模块。
在一种可选的方式中,以预测相似度作为初始相似度学习模块的初始训练输出,各样本图像帧组中目标对象的类型为监督信息,迭代训练初始相似度学习模块得到目标相似度学习模块,包括:根据预测相似度和样本图像帧组中目标对象的类型,确定损失值;根据损失值,迭代更新初始相似度学习模块,直至得到满足预设条件的所述目标相似度学习模块;其中,预设条件包括所述损失值小于或等于第一预设阈值。
在一种可选的方式中,根据预测相似度和样本图像帧组中目标对象的类型,确定损失值,包括:若样本图像帧组中目标对象的类型相同,则根据预测相似度确定损失值;若样本图像帧组中目标对象的类型不相同,且预测相似度小于或等于第二预设相似度,则确定损失值为第二预设阈值,第二预设阈值小于或等于所述第一预设阈值;若样本图像帧组中的目标对象的类型不相同,且预测相似度大于第二预设相似度,则将预测相似度更新为第二预设相似度,并根据第二预设相似度确定损失值。
在一种可选的方式中,损失值通过如下公式获得:
其中,L为损失值,D为样本图像帧组中目标对象的预测欧几里德距离,m为第二预设相似度,Y表示样本图像帧组中目标对象的类型相同或不相同,当样本图像帧组中目标对象的类型相同,Y为0;当样本图像帧组中目标对象的类型不相同,Y为1。
根据本申请实施例的第二方面,提供了一种轨迹跟踪装置。该装置包括:图像获取模块,用于获取视频序列中的多个图像帧;该多个图像帧包括当前图像帧和至少两个第一图像帧。图像检测模块,用于根据目标轨迹跟踪模型中的检测模块,对多个图像帧进行特征提取,得到多个图像帧的特征数据。图像筛选模块,用于根据目标轨迹跟踪模型中的筛选模块,对多个图像帧的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一个第二图像帧;其中,第二图像帧与当前图像帧之间的相似度大于或等于第一预设相似度,第二图像帧包括目标对象。图像处理模块,用于根据目标轨迹跟踪模型中的处理模块,对至少一个第二图像帧和当前图像帧进行处理,得到目标对象的轨迹跟踪结果。
根据本申请实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线;处理器、存储器和通信接口通过通信总线完成相互间的通信;存储器用于存放至少一可执行指令,可执行指令使处理器执行如上述第一方面中任一项所述的轨迹跟踪方法的操作。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一可执行指令,该可执行指令在电子设备上运行时,使得电子设备执行如上述第一方面中任一项所述的轨迹跟踪方法的操作。
本申请实施例构建了目标轨迹跟踪模型,该目标轨迹跟踪模型包块检测模块、筛选模块和处理模块。首先,获取视频序列中的多个图像帧,该多个图像帧中包括至少两个第一图像帧和当前图像帧;然后根据检测模块,对多个图像帧进行特征提取,得到多个图像帧的特征数据;接着,根据筛选模块,对多个图像帧的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一个第二图像帧,其中,第二图像帧包括目标对象,且第二图像帧与当前图像帧之间的相似度大于或等于第一预设相似度;因此,通过筛选模块的处理后,可以将至少两个第一图像帧中不包括目标对象(例如目标对象被遮挡)的无效帧进行过滤,保留包括目标对象的有效帧(即第二图像帧);最后,将该筛选后得到的至少一个第二图像帧和当前图像帧经过处理模块的处理,得到目标对象的轨迹跟踪结果。因此,本申请实施例通过对与当前图像帧相邻的多个第一图像帧进行筛选,将不包含目标对象的无效帧进行舍弃,只保留包含目标对象的有效帧,并通过对筛选后的有效帧进行进一步的处理,得到目标对象的轨迹跟踪结果,提高了目标对象轨迹跟踪的效率以及目标对象轨迹跟踪的精度。
上述说明仅是本申请实施例技术方案的概述,为了能够更清楚了解本申请实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本申请实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
附图仅用于示出实施方式,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本申请实施例提供的一种轨迹跟踪方法的流程图;
图2为本申请实施例提供的一种目标轨迹跟踪模型的示意图;
图3A为本申请实施例提供的一种图卷积的示意图;
图3B为本申请实施例提供的另一种图卷积的示意图;
图4为本申请实施例提供的另一种目标轨迹跟踪模型的示意图;
图5为本申请实施例提供的另一种轨迹跟踪方法的流程图;
图6为本申请实施例提供的一种目标相似度学习模块的示意图;
图7为本申请实施例提供的又一种轨迹跟踪方法的流程图;
图8为本申请实施例提供的一种轨迹跟踪装置的示意图;
图9为本申请实施例提供的一种电子设备的示意图。
具体实施方式
为使本申请的目的和实施方式更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
本申请中术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
多目标跟踪算法在多种视觉场景有重要且广泛的应用。在一些示例中,多目标跟踪算法可以通过先“目标检测,再数据关联”来实现对目标对象的轨迹跟踪。例如,可以通过计算连续图像帧之间的相似度,来判断帧与帧之间的目标对象的关联程度,并基于连续帧图像中目标对象的关联程度进行目标对象的匹配,获得目标对象的轨迹跟踪结果。
在一些示例中,可以对视频帧中在时序上连续的上、下多个图像帧进行目标检测后,再进行数据关联。具体的,在目标检测阶段,可以获得连续上、下图像帧中目标对象的类别以及位置信息等;在数据关联阶段,可以使用卡尔曼滤波,根据当前图像帧中目标对象的位置对目标对象在下一图像帧中的位置进行预测,得到预测框,接着通过计算预测框与当前图像帧中目标对象的检测框之间的并交比(Intersection Over Union,IOU),生成代价矩阵(assignment cost matrix),最后,通过匈牙利匹配算法和代价矩阵,完成目标对象的匹配,形成目标对象的跟踪结果。
根据上述实施例可知,在对目标对象的轨迹跟踪过程中,通常是对视频序列中包括当前图像帧的多个连续图像帧进行处理,然后,根据处理结果获取到当前图像帧中目标对象的轨迹跟踪。但是,对于视频场景来说,图像帧中的目标对象,例如行人等,在移动过程中往往会发生外形变化、行进方向和角度的变化等,并且,不同的目标对象之间也可能会发生遮挡等情况,这些因素为后续的数据关联以获得目标对象的轨迹跟踪结果带来了较大的挑战,可能会导致目标对象跟踪失败或跟踪丢失的问题。
例如,在x个连续图像帧,如第1帧、第2帧、第3帧……第x帧(x为大于或等于2的整数)中,第2帧为当前图像帧,当第3帧中的目标对象由于被遮挡而检测不到时,由于第3帧中不包括目标对象,因此,若以第3帧作为数据关联的输入时,可能会导致目标对象轨迹跟踪失败。另外,由于第3帧图像中不包括目标对象,若仍以第3帧图像作为数据关联的输入,也会造成目标对象的轨迹跟踪过程中计算量的增大,影响系统的运行速度。
为了解决上述目标对象(如行人)跟踪过程中,因为目标对象活动的随机性以及目标对象可能被遮挡等情况而导致的目标对象跟踪错误以及跟踪失败的问题,本申请实施例提出一种轨迹跟踪方法,该方法通过对多个连续图像帧中当前图像帧与除当前图像帧以外的各其他图像帧之间的相关性进行计算,并根据相关性计算结果与预设相关性之间关系对多个连续图像帧进行筛选,保留包含目标对象(目标对象未遮挡)的有效图像帧,该有效图像帧在时序上可能不连续,并根据这些筛选后的有效图像帧进行后续的数据关联,以获得目标对象的轨迹跟踪结果。本申请实施例提供的轨迹跟踪方法可以提高目标对象轨迹跟踪的效率,同时也可以避免由于遮挡等情况导致的目标对象的跟踪失败的问题。
图1为本申请实施例提供的一种轨迹跟踪方法的流程图,如图1所示,轨迹跟踪方法可以包括如下所示的步骤S110至步骤S140。
步骤S110,获取视频序列中的多个图像帧。
示例性地,多个图像帧中包括当前图像帧和至少两个第一图像帧。具体地,视频序列中的多个图像帧可以是多个在时间上连续的图像帧,其中,当前图像帧可以为该图像帧中任意一个图像帧,第一图像帧为该多个图像帧中除当前图像帧以外的其他图像帧。
在一些示例中,第一图像帧可以包括当前图像帧之前的P(P大于1的整数)个图像帧;或者第一图像帧可以包括当前图像帧之后的Q(Q大于1的整数)个图像帧;或者,第一图像帧可以包括当前图像帧之前的P(P大于1的整数)个图像帧,以及当前图像帧之后的Q(Q大于1的整数)个图像帧。本申请对此不作限定。例如,第一图像帧的数量可以是根据需求预先设定的。
例如,多个图像帧包括的7个图像帧,分别为:第1帧图像、第2帧图像、第3帧图像、第4帧图像、第5帧图像、第6帧图像以及第7帧图像;其中,第1帧图像、第2帧图像、第3帧图像…以及第7帧图像在时间上连续;若第4帧图像为当前图像帧,第一图像帧可以为第4帧图像之前的2帧图像和第4图像帧之后的2帧图像;即第一图像帧包括第帧2图像、第3帧图像、第5图像帧以及第6图像帧的4个图像帧。
示例性地,当前图像帧中包括至少一个目标对象,第一图像帧中可以包括目标对象,也可以不包括目标对象。在一些示例中,当第一图像帧中包括目标对象时,该目标对象与当前图像帧中的目标对象可以完全相同,或者也可以部分相同,或者也可以完全不相同。具体地,第一图像帧与当前图像帧中的目标对象的类型可以相同,也可以不同。其中,目标对象的类型可以包括行人、交通工具、建筑等。
例如,当第4图像帧(当前图像帧)中包括目标对象a和目标对象b时,第2图像帧(第一图像帧)中可以包括目标对象a,或者目标对象b,或者目标对象a和目标对象b,或者目标对象c(目标对象c与目标对象a和目标对象b均不同)。
在另一示例中,当前图像帧中的目标对象的数量与第一图像帧中的目标对象的数量也可以相同,或者也可以不相同。例如,第4图像帧(当前图像帧)中可以包括2个目标对象,第2图像帧(第一图像帧)中可以包括3个目标对象,第3图像帧(另一个第一图像帧)中可以包括1个目标对象。
需要说明的是,每个第一图像帧中的目标对象可以相同,也可以不同,本申请对此不作限定。
在获取到多个图像帧后,可以将该多个图像帧输入到目标轨迹跟踪模型中进行下一步处理。
图2为本申请实施例提供的一种目标轨迹跟踪模型的示意图,如图2所示,目标轨迹跟踪模型1可以包括检测模块10、筛选模块20以及处理模块30。下面结合图2,继续对本申请实施例提供的轨迹跟踪方法中的步骤S120至步骤S140进行说明。
步骤S120,根据目标轨迹跟踪模型中的检测模块,对多个第一图像帧进行特征提取,得到多个图像帧的特征数据。
在一些实施例中,检测模块10可以包括并行残差双融合特征金字塔网络(Parallel Residual Bi-Fusion Feature Pyramid Networ,PRB-FPN)。PRB-FPN具有双向(例如自上而下和自下而上)融合功能,能够实现一次检测高精度的大小物体,同时,通过自下而上的融合,PRB-FPN可以从较低层的特征图中恢复丢失的信息,从而保留更丰富的上下文信息。因此,PRB-FPN能够更加精确地提取到第一图像帧的特征数据。
示例性地,检测模块10可以获取到第一图像帧中的目标对象的标识信息,该标识信息可以包括目标对象的类型信息、身份标识(Identity Document,ID)信息以及位置信息等。其中,目标对象的ID信息可以唯一识别目标对象;目标对象的位置信息例如可以为目标对象在图像帧中的位置坐标数据等。
在目标检测模块10获取到该多个图像帧的特征数据后,可以将多个图像帧的特征数据发送给筛选模块20。
步骤S130,根据目标轨迹跟踪模型中的筛选模块,对多个图像帧的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一个第二图像帧。
如上述实施例所述,若采用时序上的连续的图像帧进行目标对象的轨迹跟踪时,存在遮挡情况的图像帧中不包括目标对象的相关信息,或者存在遮挡情况的图像帧以及其附近连续帧中所包括的关于目标对象的有效信息较少,以这些连续图像帧进行目标对象的轨迹跟踪,会导致目标对象跟踪失败或跟踪错误的情况。
例如,在多个图像帧中,某一目标对象a在第1帧图像中存在,但在第2帧图像至第5帧图像中该目标对象a被遮挡,因此,第2帧图像至第5帧图像对目标对象a的轨迹跟踪不能提供太多的有效信息,如果采用第2帧图像至第5帧图像对目标对象a进行轨迹跟踪,可能误导目标对象a的轨迹跟踪,在导致目标对象跟踪失败的同时,还增大了系统的计算量,降低了目标跟踪的效率。
示例性地,可以从多个(即至少两个)第一图像帧中筛选出包括目标对象,或者对目标对象的轨迹跟踪能够提供有效信息的图像帧作为有效图像帧进行目标对象的轨迹跟踪。所筛选出的有效图像帧在可以时间上不连续,而在时间上临近。具体地,筛选模块20可以对多个第一图像帧中虽然在时间上连续,但不包括目标对象,或者不能对目标对象的轨迹跟踪提供有效信息的第一图像帧进行滤除,保留时间上可能不连续,但包含目标对象,或者对目标对象的轨迹跟踪能够提供有效信息的第一图像帧作为第二图像帧,以提高目标对象的轨迹跟踪的精度和效率。
在一些实施例中,第二图像帧与当前图像帧之间的相似度大于或等于第一预设相似度,第二图像帧包括目标对象。
其中,第二图像帧包括目标对象包括:第二图像帧中有目标对象,或者第二图像帧包括能够为目标对象的轨迹跟踪提供有用信息的信息。由于第二图像帧是从多个第一图像帧中经过筛选后的得到有效图像帧,因此,第二图像帧是第一图像帧的部分或者全部。具体地,第二图像帧可以为多个第一图像帧中不连续(临近)的至少两个图像帧,也可以为多个第一图像帧中连续的至少两个图像帧。例如,第二图像帧的数量可以小于或等于第一图像帧。
在一些实施例中,筛选模块20包括图卷积神经网络(Graph ConvolutionNetworks,GCN),其中,GCN具有邻居聚集、信息传递的特点,通过GCN可以获取到各节点之间的相关程度。
图3A为本申请实施例提供的一种图卷积的示意图,参照图3A,其中一个节点(即图3A中的圆圈)可以为一个图像帧的特征数据,各图像帧之间的相关性可以根据图3A中的各节点之间相连的边所赋予的权重进行表示。
示例性地,第二图像帧与当前图像帧之间的相似度大于或等于第一预设相似度。具体地,若第一图像帧与当前图像帧的相似度较小,如小于第一预设相似度,表明第一图像帧中的目标对象与当前图像帧中的目标对象的相关性较小,也就是说,第一图像帧中的目标对象可能会有被遮挡的情况,或者,第一图像帧不能为目标对象的轨迹跟踪提供有用信息,这种情况下,可以将第一图像帧滤除,即该第一图像帧不能作为有效图像帧来进行目标对象的轨迹跟踪。若第一图像帧与当前图像帧的相似度较大,如大于或等于第一预设相似度,表明第一图像帧中的目标对象与当前图像帧中的目标对象的相关性较大,也就是说,第一图像帧中可能包括目标对象,或者,第一图像帧可以为目标对象的轨迹跟踪提供有用信息,这种情况下,可以将第一图像帧保留,并确定为第二图像帧,即该第一图像帧可以作为有效图像帧来进行目标对象的轨迹跟踪。
因此,通过保留有效不连续图像帧进行目标对象的轨迹跟踪,提高了目标对象轨迹跟踪的精度,并减少了大量无效连续帧的计算,提高了运算速度和目标对象轨迹跟踪的效率。
在一些实施例中,根据目标轨迹跟踪模型中的筛选模块20,对多个图像帧的特征数据进行处理,从至少两个第一图像帧中筛选得到至少一个第二图像帧,具体包括:
根据图卷积神经网络对多个图像帧的特征数据进行处理,得到各第一图像帧与当前图像帧之间的余弦相似度;根据各第一图像帧与当前图像帧之间的余弦相似度与第一预设相似度之间的大小关系,从至少两个第一图像帧中筛选得到至少一个第二图像帧。
在一些实施例中,若第一图像帧与所述当前图像帧之间的余弦相似度大于或等于第一预设相似度,则将第一图像帧确定为第二图像帧。
若第一图像帧与当前图像帧之间的余弦相似度小于第一预设相似度,则丢弃第一图像帧。
示例性地,各第一图像帧和当前图像帧之间的相似度可以通过第一图像帧的特征数据与当前图像帧的特征数据之间的余弦相似度,或称为余弦距离(cosine dsitance)来确定。
在一些示例中,余弦相似度的取值范围可以为[-1,1],其中,第一图像帧与当前图像帧之间的余弦相似度越接近1,表明第一图像帧和当前图像帧越相似。也就是说,第一图像帧和当前图像帧之间的余弦相似度越大,表明第一图像帧和当前图像帧之间越相似。
在一些示例中,第一预设相似度可以包括预设余弦相似度,预设余弦相似度可以根据实际需要进行预先设定。例如,可以将预设余弦相似度设置为0.8。当第一图像帧和当前图像帧之间的余弦相似度大于或等于0.8时,表明第一图像帧和当前图像帧之间的相似度满足预设条件,且较为相似,因此可以将第一图像帧确定为第二图像帧,即有效帧。当第一图像帧和当前图像帧之间的余弦相似度小于0.8时,表明第一图像与当前图像帧不相似,这种情况下,第一图像帧可能会影响目标对象的轨迹跟踪,因此,可以将第一图像帧确定为无效帧进行舍弃。
图3B为本申请实施例提供的另一种图卷积的示意图,参照图3B,每个节点中的数字序号表示一个图像帧,以当前图像帧为第6图像帧,第一图像帧为第6图像帧之前的3个图像帧(如第3图像帧、第4图像帧和第5图像帧),以及第6图像帧之后的3个图像帧(如第7图像帧、第8图像帧和第9图像帧),预设余弦相似度为0.8为例;如图3B所示,各第一图像帧与当前图像帧之间的边可以表示各第一图像帧与当前图像帧之间的余弦相似度(即权重)。
如图3B所示,由于第3图像帧、第5图像帧和第9图像帧与第6图像帧之间的余弦相似度分别大于或等于预设余弦相似度0.8,因此,可以将第3图像帧、第5图像帧和第9图像帧确定为第二图像帧。由于第4图像帧、第7图像帧和第8图像帧与第6图像帧之间的余弦相似度均小于预设余弦相似度0.8,因此,可以将第4图像帧、第7图像帧和第8图像帧丢弃。因此,经过筛选后,所得到的图像帧包括第3图像帧、第5图像帧、第9图像帧(第一图像帧)以及第6图像帧(当前图像帧)。
因此,多个图像帧经过筛选模块20处理后,可以从至少两个第一图像帧筛选出包含目标对象的至少一个第二图像帧,也就是说,筛选模块20将第一图像帧中目标对象被遮挡,或者其他不能为目标对象的轨迹跟踪提供有用信息的图像帧进行滤除,所得到的第二图像帧中包含有目标对象,或者能够为目标对象的轨迹跟踪提供有效信息,因此,经过筛选后得到的第二图像帧可以提高目标对象轨迹跟踪的效率和精度。
步骤S140,根据目标轨迹跟踪模型中的处理模块,对至少一个第二图像帧和当前图像帧进行处理,得到目标对象的轨迹跟踪结果。
参照图2,在经过筛选模块20筛选得到至少一个第二图像帧和当前图像帧后,可以将至少一个第二图像帧和当前图像帧输入到处理模块30,由处理模块30对至少一个第二图像帧和当前图像帧进行处理,得到目标对象的轨迹跟踪结果。
图4为本申请实施例提供的另一种目标轨迹跟踪模型的示意图,在一些实施例中,参照图4,处理模块30可以包括目标相似度学习模块31和关联模块32。
在一些实施例中,根据目标轨迹跟踪模型中的处理模块,对至少一个第二图像帧和当前图像帧进行处理,得到目标对象的轨迹跟踪结果,具体包括:
根据处理模块30中的目标相似度学习模块31,计算各第二图像帧中的目标对象和当前图像帧中目标对象的相似度,得到相似度矩阵;根据处理模块30中的关联模块32和相似度矩阵,对相似度矩阵进行处理,得到目标对象的轨迹跟踪结果。
因此,本申请实施例构建了目标轨迹跟踪模型,该目标轨迹跟踪模型包块检测模块、筛选模块和处理模块。首先,获取视频序列中的多个图像帧,该多个图像帧中包括至少两个第一图像帧和当前图像帧;然后根据检测模块,对多个图像帧进行特征提取,得到多个图像帧的特征数据;接着,根据筛选模块,对多个图像帧的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一个第二图像帧,其中,第二图像帧包括目标对象,且第二图像帧与当前图像帧之间的相似度大于或等于第一预设相似度;因此,通过筛选模块的处理后,可以将至少两个第一图像帧中不包括目标对象(例如目标对象被遮挡)的无效帧进行过滤,保留包括目标对象的有效帧(即第二图像帧);最后,将该筛选后得到的至少一个第二图像帧和当前图像帧经过处理模块的处理,得到目标对象的轨迹跟踪结果。因此,本申请实施例通过对与当前图像帧相邻的多个第一图像帧进行筛选,将不包含目标对象的无效帧进行舍弃,只保留包含目标对象的有效帧,并通过对筛选后的有效帧进行进一步的处理,得到目标对象的轨迹跟踪结果,提高了目标对象轨迹跟踪的效率以及目标对象轨迹跟踪的精度。
图5为本申请实施例提供的另一种轨迹跟踪方法的流程图,如图5所示,该方法包括步骤S510至步骤S550。
步骤S510,获取视频序列中的多个图像帧。
步骤S520,根据目标轨迹跟踪模型中的检测模块,对多个图像帧进行特征提取,得到多个图像帧的特征数据。
步骤S530,根据目标轨迹跟踪模型中的筛选模块,对多个图像帧的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一个第二图像帧。
需要说明的是,步骤S510至步骤S530与上述实施例中的步骤S110至步骤S130类似,为了避免重复,此处不再赘述。
步骤S540,根据处理模块中的目标相似度学习模块,计算各第二图像帧中的目标对象与当前图像帧中目标对象的相似度,得到相似度矩阵。
需要说明的是,当第二图像帧的数量为多个时,还可以计算第二图像帧中任意两个图像帧中的目标对象的相似度,得到相似度矩阵。计算第二图像帧中任意两个图像帧中的目标对象的相似度的过程与计算第二图像帧中的目标对象与当前图像帧中目标对象的相似度的过程类似,为了避免重复,本申请实施例以计算第二图像帧中的目标对象与当前图像帧中目标对象的相似度为例进行示意性说明。
步骤S550,根据处理模块中的关联模块,对和相似度矩阵进行处理,得到目标对象的轨迹跟踪结果。
通过步骤S530获取到的至少一个第二图像帧中,由于滤除了第一图像帧中的部分无效帧,所保留的至少一个第二图像帧可能在时间上不连续,只在时间上临近。例如,在第3图像帧、第4图像帧、第5图像帧、第6图像帧(当前图像帧)、第7图像帧、第8图像帧以及第9图像帧中,第4图像帧、第7图像帧和第8图像为无效帧被滤除,第3图像帧、第5图像帧和第8图像帧作为第二图像帧与第6图像帧保留。其中,在第二图像帧中,第5图像帧和第6图像帧在时间上连续,而第3图像帧和第8图像帧在时间上不连续,但在时间上临近。
在得到至少一个第二图像帧之后,可以计算至少一个第二图像帧和当前图像帧,以及各第二图像帧之间的动作近似矩阵和表观近似矩阵。其中,目标表观特征对于保证跟踪算法鲁棒性至关重要。在一些示例中,可以通过卷积神经网络进行目标表观特征的提取,然后应用于后续的数据关联。为了进一步对不同目标对象进行更加清晰的区分,获得更加具有判别性的目标表观特征,如图4所示,本申请实施例采用目标相似度学习模块31来获取第二图像帧中目标对象与当前图像帧中目标对象之间的相似度。
图6为本申请实施例提供的一种目标相似度学习模块的示意图。
在一些实施例中,如图6所示,目标相似度学习模块31可以包括transformer层311。示例性地,transformer层311包括注意力机制,例如自注意力机制(Self-Attention)。transformer可以对时间上连续或临近的图像帧进行处理,具有更好的前后时间关联性,能够学习不同目标对象之间更具判别性的相似度。
在一些示例中,参照图6,目标相似度学习模块31还可以包括全连接(FullyConnected,FC)层312。具体地,transformer层311中的注意力机制对筛选得到的有效图像帧(如有效图像帧包括第二图像帧和当前图像帧)中的目标对象的特征进行提取;全连接层312对transformer层中的注意力机制提取到的目标对象的特征进行融合。
在一些实施例中,根据处理模块中的目标相似度学习模块,计算各第二图像帧中目标对象和当前图像帧中目标对象的相似度,得到相似度矩阵,包括:
根据目标相似度学习模块,采用注意力机制,获取各第二图像帧中目标对象的特征数据,以及当前图像帧中目标对象的特征数据;根据各第二图像帧中目标对象的特征数据,以及当前图像帧中目标对象的特征数据,确定各第二图像帧中目标对象和当前图像帧中目标对象的相似度,得到相似度矩阵。
在一些示例中,将第二图像帧和当前图像帧输入到相似度学习模块31后,transformer作为解码器,可以提取两个第二图像帧中目标对象的特征。transformer的参数为第二图像帧和当前图像帧共享,在特征提取结束后,可以使用全卷积神经网络进行特征的融合。
具体地,可以通过注意力机制学习目标对象的特征,注意力机制可以满足如下所示的公式1。
下面以输入的第二图像帧和当前图像帧为例,对transformer层311的特征提取过程进行说明。
在一些示例中,首先,对第二图像帧的图像数据和当前图像帧的图像数据乘以一个预设矩阵W,得到嵌入向量(embedding),其中,预设矩阵W可以为一个初始化矩阵,本申请实施例对预设矩阵W矩阵不作限定。接着,embedding进入注意力机制,将其与分别与三个预设矩阵相乘,得到三个不同的向量Q、K、V;其中,三个预设矩阵可以分别为不同的初始化矩阵。在公式1中,d可以表示向量Q和向量K的维度(dimention)。在一些示例中,向量Q、K、V的维度可以相同,如均为d。向量Q和向量K(如向量K的转置)相乘的结果会随着维度d的增大而增大,因此,可以将向量Q与向量K的乘积除以维度d,对向量Q和向量K的乘积做归一化处理。然后,将得到的归一化结果输入到函数softmax中,可以将归一化结果转换为概率分布,并将概率分布结果继续与向量V相乘。在对多个向量Q、向量K以及向量V进行诸如上述的操作后的结果进行相加后,可以得到注意力学习结果,即可以获取到第二图像帧中目标对象与当前图像帧中目标对象之间的相关性。
在一些示例中,为了获得判别性特征,可以使用余弦距离计算两个输入特征的余弦相似度。其中,相同的目标对象(即同一个目标对象)的特征之间的余弦距离较小,其对应的余弦相似度分数较高;而不同的目标对象的特征之间的余弦距离较大,对应的相似度分数就较低。
在一些示例中,参照图6,目标相似度学习模块31还可以包括余弦相似度层313。余弦相似度层313可以计算第二图像帧中目标对象与当前图像帧中目标对象的余弦相似度。
示例性地,余弦相似度可以满足如下所示的公式2。
在公式2中,向量A和向量B表示两个不同的输入特征矩阵,例如,A可以为任一个第二图像帧中目标对象的特征矩阵,向量B为当前图像帧中目标对象的特征矩阵,n可以表示至少一个第二图像帧和当前图像帧的数量之和。
因此,通过目标相似度学习模块31可以得到第二图像帧中的目标对象的特征与当前图像帧中的目标对象的特征之间的相似度,从而得到一个相似度矩阵。
继续参照图4,将目标学习相似度模块31所得到的相似度矩阵输入到关联模块32中,对相似度矩阵进行处理,得到目标对象的轨迹跟踪结果。
在一些实施例中,根据处理模块中的关联模块,对相似度矩阵进行处理,得到目标对象的轨迹跟踪结果,包括:
根据关联模块,采用匈牙利匹配算法对相似度矩阵进行处理,确定第二图像帧中目标对象和当前图像帧中目标对象的匹配结果;根据目标对象的标识信息,将匹配结果按照时序进行关联,得到目标对象的轨迹跟踪结果;其中,目标对象的标识信息由检测模块获取。
具体地,将目标相似度学习模块31获取到的相似度矩阵作为关联模块32的输入,采用匈牙利匹配算法对第二图像帧中的目标对象与当前图像帧中的目标对象进行匹配,得到匹配结果。例如,该匹配结果可以包括第二图像帧中的目标对象与当前图像帧中的目标对象之间的匹配度,并根据该匹配度的大小,进一步确定第二图像帧与当前图像帧中相同的目标对象。
在获取到第二图像帧与当前图像帧中相同的目标对象后,根据第二图像帧中该目标对象的标识信息以及当前图像帧中该目标对象的标识信息,将该目标对象按照时序进行关联,从而得到目标对象的轨迹结果。例如,若第二图像帧在当前图像帧之前,则可以根据第二图像帧中该目标对象的位置信息后关联当前图像帧中该目标对象的位置信息,以此预测该目标对象的运行轨迹。
需要说明的是,第二图像帧和当前图像帧中其他的目标对象的匹配过程与上述过程类似,为避免重复,此处不再赘述。
在获取到所有有效图像帧(包括至少一个第二图像帧和当前图像帧)之间任意两个图像帧中各目标对象的匹配结果后,可以按照时间先后,将所有有效图像帧中各目标对象的进行关联,从而获取到各目标对象的轨迹跟踪结果。
因此,通过目标相似度学习模块31可以提高至少两个第二图像帧中目标对象的特征判定,进一步提高目标对象的轨迹跟踪的精度。
图7为本申请实施例提供的又一种轨迹跟踪方法的流程图,如图7所示,该方法包括步骤S710至步骤S750。
步骤S710,获取训练样本集。
示例性地,训练样本集包括样本视频序列中的多个样本图像帧,以及多个样本图像帧中目标对象的类型。其中,多个样本图像帧包括当前样本图像帧和至少两个第一样本图像。
步骤S720,根据初始轨迹跟踪模型的中检测模块,对多个样本图像帧进行特征提取,得到多个样本图像帧的特征数据。
其中,上述实施例中的目标轨迹跟踪模型为训练后的初始轨迹模型,初始轨迹模型的结构与目标轨迹跟踪模型的结构类似,例如,初始轨迹跟踪模型的结构可以如图2或图4所示。
步骤S730,根据初始轨迹跟踪模型中的筛选模块,对多个样本图像帧中的目标对象的特征数据进行处理,在至少两个第一样本图像帧中筛选得到至少一个第二样本图像帧。
示例性地,第二样本图像帧与当前样本图像帧之间的相似度大于或等于第一预设相似度,第二样本图像帧包括目标对象。
步骤S740,根据初始轨迹跟踪模型中的初始相似度学习模块,计算至少一个样本图像帧组中目标对象的相似度,得到预测相似度。
示例性地,至少一个样本图像帧中每个样本图像帧组中包括一个第二样本图像帧与当前图像帧。在一些示例中,各样本图像帧组中包括的第二样本图像帧不同。
其中,初始相似度学习模型的结构与目标相似度学习模型的结构类似,例如,初始相似度学习模型的结构可以如图6所示。根据初始相似度学习模块可以计算得到各样本图像帧组中目标对象之间的预测相似度。
需要说明的是,步骤S710至步骤S740与上述实施例中的步骤S510至步骤S540类似,为避免重复,此处不再赘述。
步骤S750,以预测相似度作为初始相似度学习模块的初始训练输出,各样本图像帧组中目标对象的类型为监督信息,迭代训练初始相似度学习模块得到目标相似度学习模块。
在一些实施例中,以预测相似度作为所述初始相似度学习模块的初始训练输出,各样本图像帧组中目标对象的类型为监督信息,迭代训练初始相似度学习模块得到目标相似度学习模块,具体包括:
根据预测相似度和样本图像帧组中目标对象的类型,确定损失值;根据损失值,迭代更新初始相似度学习模块,直至得到满足预设条件的目标相似度学习模块。
示例性地,预设条件包括损失值小于或等于第一预设阈值。也就是说,目标相似度学习模型是初始相似度学习模型根据损失值训练后得到,当损失值小于或等于第一预设值时,所得到的训练后的初始相似度学习模型就为目标相似度学习模型。其中,第一预设阈值可以根据实际需求预先设定。
在一些实施例中,根据预测相似度和样本图像帧组中目标对象的类型,确定损失值,具体包括:
若样本图像帧组中目标对象的类型相同,则根据预测相似度确定损失值;若样本图像帧组中目标对象的类型不相同,且预测相似度小于或等于第二预设相似度,则确定损失值为第二预设阈值,第二预设阈值小于或等于第一预设阈值;若样本图像帧组中的目标对象的类型不相同,且预测相似度大于第二预设相似度,则将预测相似度更新为第二预设相似度,并根据所述第二预设相似度确定损失值。
在一些实施例中,损失值可以通过如下公式3获得:
在公式3中,L为损失值;D为样本图像帧组中目标对象的预测欧几里德距离;m为第二预设相似度;Y表示样本图像帧组中目标对象的类型相同或不相同,当样本图像帧组中目标对象的类型相同,Y为0;当样本图像帧组中目标对象的类型不相同,Y为1。
在一些示例中,样本图像帧组中的目标对象之间的预测相似度可以根据样本图像帧组中的目标对象之间的预测欧几里德距离D确定。例如,样本图像帧组中的目标对象之间的预测欧几里德距离D越大,样本图像帧组中的目标对象的相似度越小。
根据公式3可知,当样本图像帧组中目标对象的类型相同时,Y=0,这种情况下,损失值L可以根据如下的公式4获得,即损失值L可以由样本图像帧组中目标对象的预测欧几里德距离D确定。
根据公式3可知,当样本图像帧组中标对象的类型不同时,Y=1,这种情况下,损失值L可以根据如下公式5获得,其中,m为第二预设相似度,即损失值L可以由样本图像帧组中目标对象的预测欧几里德距离D与第二预设相似度m确定。
如公式5所示,当预测欧几里德距离D大于第二预设相似度m时,可以确定损失值L为第二预设阈值,其中,第二预设阈值小于或等于第一预设阈值。例如,第二预设阈值可以为0。在第二阈值为0时,若预测欧几里德距离D大于m,则损失值L=0。这种情况下,无需对目标轨迹跟踪模型进行优化,因此可以节省模型训练时间,提高模型训练的速度。
如公式5所示,当预测欧几里德距离D小于或等于第二预设相似度m时,损失值L可以根据预测欧几里德距离D和第二预设相似度m确定。但当Y=1时,由于目标对象属于不同类,因此无论样本图像帧组中目标对象的相似度多大,也无需继续进行模型训练。这种情况下,可以将预测欧几里德距离D更新为第二预设相似度m,当预测欧几里德距离D更新为第二预设相似度m时,可以根据第二预设阈值确定损失值L。例如,当第二预设阈值为0时,若将预测欧几里德距离D调整为m,则损失值L=0,因此,也无需在对目标轨迹跟踪模型进行训练,进一步提高模型训练的速度。
在一些示例中,初始轨迹跟踪模型中的筛选模块也可以称为初始筛选模块;本申请实施例还可以根据损失值,迭代更新初始轨迹跟踪模型中的初始筛选模块,直至得到满足第二预设条件的筛选模型。当初始轨迹跟踪中的所有模块均完成训练并满足相关预设条件时,所得到的训练后的初始轨迹跟踪模型就为目标轨迹跟踪模型。
因此,本申请实施例通过优化损失函数,引入对比损失值,能够更好的优化目标轨迹跟踪模型,减少系统算力消耗,并提高模型训练速度。
图8为本申请实施例提供的一种轨迹跟踪装置的示意图,如图8所示,轨迹跟踪装置100包括:图像获取模块101、图像检测模块102,图像筛选模块103和数据处理模块104。
图像获取模块101,用于获取视频序列中的多个第一图像帧;多个图像帧包括当前图像帧和至少两个第一图像帧;
图像检测模块102,用于根据目标轨迹跟踪模型中的检测模块,对所述多个图像帧进行特征提取,得到多个图像帧中的特征数据;
图像筛选模块103,用于根据目标轨迹跟踪模型中的筛选模块,对多个图像帧的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一两个第二图像帧;其中,至少一个第二图像帧与当前图像帧之间的相似度大于或等于第一预设相似度;第二图像帧包括所述目标对象;
数据处理模块104,用于根据目标轨迹跟踪模型中的处理模块,对至少一个第二图像帧进行处理,得到目标对象的轨迹跟踪结果。
在一些实施例中,筛选模块包括图卷积神经网络;图像筛选模块103具体用于:根据图卷积神经网络对多个图像帧的特征数据进行处理,得到各第一图像帧与当前图像帧之间的余弦相似度;根据各第一图像帧与当前图像帧之间的余弦相似度与第一预设相似度之间的大小关系,从至少两个第一图像帧中筛选得到至少一个第二图像帧。
在一些实施例中,图像筛选模块103具体用于:若第一图像帧与当前图像帧之间的余弦相似度大于或等于第一预设相似度,则将第一图像帧确定为第二图像帧。
在一些实施例中,目标轨迹跟踪模型中的处理模块包括目标相似度学习模块和关联模块;图像处理模块104具体用于:根据处理模块中的目标相似度学习模块,计算各所述第二图像帧中所述目标对象和所述当前图像帧中的目标对象的相似度,得到相似度矩阵;根据处理模块中的关联模块,对相似度矩阵进行处理,得到目标对象的轨迹跟踪结果。
在一些实施例中,图像处理模块104具体用于:根据目标相似度学习模块,采用注意力机制,获取各第二图像帧中目标对象的特征数据,以及当前图像帧中目标对象的特征数据;根据各第二图像帧中目标对象的特征数据,以及当前图像帧中目标对象的特征数据,确定各第二图像帧中目标对象和当前图像帧中目标对象的相似度,得到相似度矩阵。
在一些实施例中,图像处理模块104具体用于:根据关联模块,采用匈牙利匹配算法对相似度矩阵进行处理,确定第二图像帧中目标对象和当前图像帧中目标对象的匹配结果;根据目标对象的标识信息,将匹配结果按照时序进行关联,得到目标对象的轨迹跟踪结果;其中,目标对象的标识信息由检测模块获取。
在一些实施例中,轨迹跟踪装置100还包括模型训练模块,其中,图像获取模块101还用于:获取训练样本集,训练样本集包括样本视频序列中的多个样本图像帧,以及多个样本图像帧中目标对象的类型;其中,多个样本图像帧包括当前样本图像帧和至少两个第一样本图像;
图像检测模块102还用于:根据初始轨迹跟踪模型的中检测模块,对多个样本图像帧进行特征提取,得到多个样本图像帧的特征数据;
图像筛选模块103还用于:根据初始轨迹跟踪模型中的筛选模块,对多个样本图像帧的特征数据进行处理,在至少两个第一样本图像帧中筛选得到至少一个第二样本图像帧;其中,第二样本图像帧与当前样本图像帧之间的相似度大于或等于第一预设相似度,第二样本图像包括目标对象;
图像处理模块104还用于:根据初始轨迹跟踪模型中的初始相似度学习模块,计算样本图像帧组中目标对象的相似度,得到预测相似度;其中,样本图像帧组包括一个第二样本图像帧和当前样本图像帧;
模型训练模块用于:以预测相似度作为所述初始相似度学习模块的初始训练输出,各样本图像帧组中目标对象的类型为监督信息,迭代训练初始相似度学习模块得到所述目标相似度学习模块。
在一些实施例中,模型训练模块具体用于:根据相似度和样本图像帧组中目标对象的类型,确定损失值;根据损失值,迭代更新初始相似度学习模块,直至得到满足预设条件的所述目标相似度学习模块;预设条件包括所述损失值小于或等于第一预设阈值。
在一些实施例中,模型训练模块具体还用于:若样本图像帧组中目标对象的类型相同,则根据预测相似度确定损失值;若样本图像帧组中目标对象的类型不相同,且预测相似度小于或等于第二预设相似度,则确定损失值为第二预设阈值,第二预设阈值小于或等于所述第一预设阈值;若样本图像帧组中目标对象的类型不相同,且预测相似度大于第二预设相似度,则将预测相似度更新为第二预设相似度,并根据第二预设相似度确定损失值。
在一些实施例中,损失值通过如下公式获得:
其中,L为损失值,D为样本图像帧组中目标对象的预测欧几里德距离,m为第二预设相似度,Y表示样本图像帧组中目标对象的类型相同或不相同,当样本图像帧组中目标对象的类型相同,Y为0;当样本图像帧组中目标对象的类型不相同,Y为1。
图9为本申请实施例提供的一种电子设备的结构示意图,本申请具体实施例并不对电子设备的具体实现做限定。
如图9所示,电子设备1000可以包括:处理器(processor)1001和存储器1002。示例性地,电子设备1000还可以包括:通信接口(Communications Interface)1003、和通信总线1004。
其中,处理器1001、存储器1002以及通信接口1003通过通信总线1004完成相互间的通信。通信接口1003,用于与其它设备比如客户端或其它服务器等的网元通信。
在一些实施例中,处理器1001用于执行程序1005,具体可以执行上述的轨迹跟踪方法实施例中的相关步骤。具体地,程序1005可以包括程序代码,该程序代码包括计算机可执行指令。
示例性地,处理器1001可能是中央处理器CPU,或者是特定集成电路(ApplicationSpecific Integrated Circuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。电子设备1000可以包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
在一些实施例中,存储器1002用于存放程序1005。存储器1002可能包含高速RAM存储器,也可能还包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。
程序1005具体可以被处理器1001调用使电子设备1000执行以下操作:
获取视频序列中的多个图像帧,多个图像帧包括当前图像帧和至少两个第一图像帧;
根据目标轨迹跟踪模型中的检测模块,对多个图像帧进行特征提取,得到多个图像帧的特征数据;
根据目标轨迹跟踪模型中的筛选模块,对多个图像帧中的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一个第二图像帧;其中,第二图像帧和当前图像帧之间的相似度大于或等于第一预设相似度,第二图像帧包括目标对象;
根据目标轨迹跟踪模型中的处理模块,对至少一个第二图像帧和当前图像帧进行处理,得到目标对象的轨迹跟踪结果。
本申请实施例提供了一种计算机可读存储介质,该存储介质存储有至少一可执行指令,该可执行指令在电子设备1000上运行时,使得电子设备1000执行上述实施例中的轨迹跟踪方法。
可执行指令具体可以用于使得电子设备1000执行以下操作:
获取视频序列中的多个图像帧,多个图像帧包括当前图像帧和至少两个第一图像帧;
根据目标轨迹跟踪模型中的检测模块,对多个图像帧进行特征提取,得到多个图像帧的特征数据;
根据目标轨迹跟踪模型中的筛选模块,对多个图像帧中的特征数据进行处理,在至少两个第一图像帧中筛选得到至少一个第二图像帧;其中,第二图像帧和当前图像帧之间的相似度大于或等于第一预设相似度,第二图像帧包括目标对象;
根据目标轨迹跟踪模型中的处理模块,对至少一个第二图像帧和当前图像帧进行处理,得到目标对象的轨迹跟踪结果。
例如,该计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
本申请实施例提供的轨迹跟踪装置、电子设备及计算机可读存储介质均用于执行上文所提供的对应的轨迹跟踪方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置(如,轨迹跟踪装置)的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置(如,轨迹跟踪装置)和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置(如,轨迹跟踪装置)和方法,可以通过其它的方式实现。例如,以上所描述的装置(如,轨迹跟踪装置)实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种轨迹跟踪方法,其特征在于,所述方法包括:
获取视频序列中的多个图像帧;所述多个图像帧包括当前图像帧和至少两个第一图像帧;
根据目标轨迹跟踪模型中的检测模块,对所述多个图像帧进行特征提取,得到所述多个图像帧的特征数据;
根据所述目标轨迹跟踪模型中的筛选模块,对所述多个图像帧的特征数据进行处理,在所述至少两个第一图像帧中筛选得到至少一个第二图像帧;其中,所述第二图像帧与所述当前图像帧之间的相似度大于或等于第一预设相似度,所述第二图像帧包括目标对象;
根据所述目标轨迹跟踪模型中的处理模块,对所述至少一个第二图像帧和所述当前图像帧进行处理,得到所述目标对象的轨迹跟踪结果。
2.根据权利要求1所述的方法,其特征在于,所述筛选模块包括图卷积神经网络;所述根据所述目标轨迹跟踪模型中的筛选模块,对所述多个图像帧的特征数据进行处理,在所述至少两个第一图像帧中筛选得到至少一个第二图像帧,包括:
根据所述图卷积神经网络对所述多个图像帧的特征数据进行处理,得到各所述第一图像帧与所述当前图像帧之间的余弦相似度;
根据各所述第一图像帧与所述当前图像帧之间的余弦相似度与所述第一预设相似度之间的大小关系,从所述至少两个第一图像帧中筛选得到所述至少一个第二图像帧。
3.根据权利要求2所述的方法,其特征在于,所述根据各所述第一图像帧与所述当前图像帧之间的余弦相似度与所述第一预设相似度之间的大小关系,从所述至少两个第一图像帧中筛选得到所述至少一个第二图像帧,包括:
若所述第一图像帧与所述当前图像帧之间的余弦相似度大于或等于所述第一预设相似度,则将所述第一图像帧确定为所述第二图像帧。
4.根据权利要求1所述的方法,其特征在于,所述目标轨迹跟踪模型中的所述处理模块包括目标相似度学习模块和关联模块;所述根据所述目标轨迹跟踪模型中的处理模块,对所述至少一个第二图像帧和所述当前图像帧进行处理,得到所述目标对象的轨迹跟踪结果,包括:
根据所述处理模块中的所述目标相似度学习模块,计算各所述第二图像帧中所述目标对象和所述当前图像帧中所述目标对象的相似度,得到相似度矩阵;
根据所述处理模块中的所述关联模块,对所述相似度矩阵进行处理,得到所述目标对象的轨迹跟踪结果。
5.根据权利要求4所述的方法,其特征在于,所述根据所述处理模块中的所述目标相似度学习模块,计算各所述第二图像帧中所述目标对象和所述当前图像帧中所述目标对象的相似度,得到相似度矩阵,包括:
根据所述目标相似度学习模块,采用注意力机制,获取各所述第二图像帧中所述目标对象的特征数据,以及所述当前图像帧中所述目标对象的特征数据;
根据各所述第二图像帧中所述目标对象的特征数据,以及所述当前图像帧中所述目标对象的特征数据,确定各所述第二图像帧中所述目标对象和所述当前图像帧中所述目标对象的相似度,得到所述相似度矩阵。
6.根据权利要求4所述的方法,其特征在于,所述根据所述处理模块中的所述关联模块,对所述相似度矩阵进行处理,得到所述目标对象的轨迹跟踪结果,包括:
根据所述关联模块,采用匈牙利匹配算法对所述相似度矩阵进行处理,确定所述第二图像帧中所述目标对象和所述当前图像帧中所述目标对象的匹配结果;
根据所述目标对象的标识信息,将所述匹配结果按照时序进行关联,得到所述目标对象的轨迹跟踪结果;其中,所述目标对象的标识信息由所述检测模块获取。
7.根据权利要求4所述的方法,其特征在于,所述方法还包括:
获取训练样本集,所述训练样本集包括样本视频序列中的多个样本图像帧,以及各所述样本图像帧中目标对象的类型;其中,所述多个样本图像帧包括当前样本图像帧和至少两个第一样本图像;
根据初始轨迹跟踪模型的中所述检测模块,对所述多个样本图像帧进行特征提取,得到所述多个样本图像帧的特征数据;
根据所述初始轨迹跟踪模型中的所述筛选模块,对所述多个样本图像帧的特征数据进行处理,在所述至少两个第一样本图像帧中筛选得到至少一个第二样本图像帧;其中,所述第二样本图像帧与所述当前样本图像帧之间的相似度大于或等于第一预设相似度,所述第二样本图像帧包括所述目标对象;
根据所述初始轨迹跟踪模型中的初始相似度学习模块,计算至少一个样本图像帧组中所述目标对象的相似度,得到预测相似度;其中,所述样本图像帧组包括一个所述第二样本图像帧与所述当前样本图像帧;
以所述预测相似度作为所述初始相似度学习模块的初始训练输出,各所述样本图像帧组中所述目标对象的类型为监督信息,迭代训练所述初始相似度学习模块得到所述目标相似度学习模块。
8.根据权利要求7所述的方法,其特征在于,所述以所述预测相似度作为所述初始相似度学习模块的初始训练输出,各所述样本图像帧组中所述目标对象的类型为监督信息,迭代训练所述初始相似度学习模块得到所述目标相似度学习模块,包括:
根据所述预测相似度和所述样本图像帧组中所述目标对象的类型,确定损失值;
根据所述损失值,迭代更新所述初始相似度学习模块,直至得到满足预设条件的所述目标相似度学习模块;其中,所述预设条件包括所述损失值小于或等于第一预设阈值。
9.根据权利要求8所述的方法,其特征在于,所述根据所述预测相似度和所述样本图像帧组中所述目标对象的类型,确定损失值,包括:
若所述样本图像帧组中所述目标对象的类型相同,则根据所述预测相似度确定损失值;
若所述样本图像帧组中所述目标对象的类型不相同,且所述预测相似度小于或等于第二预设相似度,则确定所述损失值为第二预设阈值,所述第二预设阈值小于或等于所述第一预设阈值;
若所述样本图像帧组中的所述目标对象的类型不相同,且所述预测相似度大于所述第二预设相似度,则将所述预测相似度更新为所述第二预设相似度,并根据所述第二预设相似度确定所述损失值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310253258.1A CN116258748A (zh) | 2023-03-15 | 2023-03-15 | 轨迹跟踪方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310253258.1A CN116258748A (zh) | 2023-03-15 | 2023-03-15 | 轨迹跟踪方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116258748A true CN116258748A (zh) | 2023-06-13 |
Family
ID=86679269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310253258.1A Pending CN116258748A (zh) | 2023-03-15 | 2023-03-15 | 轨迹跟踪方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116258748A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117557789A (zh) * | 2024-01-12 | 2024-02-13 | 国研软件股份有限公司 | 一种海上目标的智能化检测方法及系统 |
-
2023
- 2023-03-15 CN CN202310253258.1A patent/CN116258748A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117557789A (zh) * | 2024-01-12 | 2024-02-13 | 国研软件股份有限公司 | 一种海上目标的智能化检测方法及系统 |
CN117557789B (zh) * | 2024-01-12 | 2024-04-09 | 国研软件股份有限公司 | 一种海上目标的智能化检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108960211B (zh) | 一种多目标人体姿态检测方法以及系统 | |
CN108470332B (zh) | 一种多目标跟踪方法及装置 | |
US9984280B2 (en) | Object recognition system using left and right images and method | |
US11205276B2 (en) | Object tracking method, object tracking device, electronic device and storage medium | |
Kim et al. | Deep stereo confidence prediction for depth estimation | |
Suprem et al. | Looking glamorous: Vehicle re-id in heterogeneous cameras networks with global and local attention | |
CN111104925B (zh) | 图像处理方法、装置、存储介质和电子设备 | |
CN112989962B (zh) | 轨迹生成方法、装置、电子设备及存储介质 | |
CN110544268B (zh) | 一种基于结构光及SiamMask网络的多目标跟踪方法 | |
CN110852311A (zh) | 一种三维人手关键点定位方法及装置 | |
CN113378675A (zh) | 一种同时检测和特征提取的人脸识别方法 | |
CN116258748A (zh) | 轨迹跟踪方法 | |
CN114998592A (zh) | 用于实例分割的方法、装置、设备和存储介质 | |
CN113674317B (zh) | 一种高位视频的车辆跟踪方法及装置 | |
CN111860498A (zh) | 一种车牌的对抗性样本生成方法、装置及存储介质 | |
Shi et al. | Dense semantic 3D map based long-term visual localization with hybrid features | |
CN115908831B (zh) | 一种图像检测方法及装置 | |
CN112927258A (zh) | 一种目标跟踪方法及装置 | |
CN113762231B (zh) | 端对端的多行人姿态跟踪方法、装置及电子设备 | |
JP2024516642A (ja) | 行動検出方法、電子機器およびコンピュータ読み取り可能な記憶媒体 | |
KR20230060029A (ko) | 평면 검출 장치 및 방법 | |
CN113450457A (zh) | 道路重建方法、装置、计算机设备和存储介质 | |
CN114387496A (zh) | 一种目标检测方法和电子设备 | |
Lin et al. | Realtime Vehicle Tracking Method Based on YOLOv5+ DeepSORT | |
CN111325135A (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 |