CN115170618A - 一种对象跟踪方法、装置、电子设备及存储介质 - Google Patents
一种对象跟踪方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115170618A CN115170618A CN202210746580.3A CN202210746580A CN115170618A CN 115170618 A CN115170618 A CN 115170618A CN 202210746580 A CN202210746580 A CN 202210746580A CN 115170618 A CN115170618 A CN 115170618A
- Authority
- CN
- China
- Prior art keywords
- video frame
- current
- image area
- video
- target
- 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
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000001514 detection method Methods 0.000 claims abstract description 89
- 238000012545 processing Methods 0.000 claims abstract description 16
- 238000004422 calculation algorithm Methods 0.000 claims description 122
- 230000008859 change Effects 0.000 claims description 34
- 229910000831 Steel Inorganic materials 0.000 claims description 27
- 239000010959 steel Substances 0.000 claims description 27
- 238000004891 communication Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 13
- 238000004519 manufacturing process Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 238000001914 filtration Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 241001061132 Eutaeniophorus sp. 033-Miya Species 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003321 amplification Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000013441 quality evaluation Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 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/254—Analysis of motion involving subtraction of images
-
- 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/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
- 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
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30136—Metal
-
- 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/30108—Industrial image inspection
- G06T2207/30164—Workpiece; Machine component
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本公开实施例提供了一种对象跟踪方法、装置、电子设备及存储介质,涉及图像处理技术领域。方法包括:对视频图像中当前的待处理视频帧进行目标检测;当检测到包含有指定对象的第一视频帧时,确定出当前的第一视频帧中的目标图像区域;针对视频图像中位于当前的第一视频帧之后的每一第二视频帧进行目标跟踪,得到初始图像区域;若确定对当前的连续预设帧数个第二视频帧跟踪失败,则将视频图像中位于当前的连续预设数目个第二视频帧之后的视频帧,作为当前的待处理视频帧,并返回进行目标检测,直至确定出指定对象在视频图像中的每一视频帧中的位置。应用本公开实施例,在降低消耗的运算资源和时长的情况下,实现指定对象的跟踪。
Description
技术领域
本公开涉及图像处理技术领域,特别是涉及一种对象跟踪方法、装置、电子设备及存储介质。
背景技术
随着图像处理技术的快速发展,可以基于图像处理技术,对视频图像中的指定对象进行跟踪,即,确定指定对象在视频图像中所占的图像区域。
相关技术中,可以采用目标检测算法对指定对象进行跟踪。例如,针对视频图像中的每一帧视频,可以基于目标检测算法对该视频帧进行目标检测,确定该视频帧中指定对象所占的图像区域。
然而,基于上述处理,需要基于目标检测算法对每一视频帧进行目标检测,而目标检测算法的计算量大,会消耗较多的运算资源和时长。
发明内容
本公开实施例的目的在于提供一种对象跟踪方法、装置、电子设备及存储介质,以降低消耗的运算资源和时长。具体技术方案如下:
在本公开实施例的第一方面,提供了一种对象跟踪方法,所述方法包括:
基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测;
当检测到包含有指定对象的第一视频帧时,确定所述指定对象在当前的第一视频帧中所占的图像区域,作为当前的第一视频帧中的目标图像区域;
针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域;
若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续预设帧数个第二视频帧跟踪失败,则将所述视频图像中位于所述当前的连续预设数目个第二视频帧之后的视频帧,作为当前的待处理视频帧,并返回执行所述基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测的步骤,直至确定出所述指定对象在所述视频图像中的每一视频帧中的位置。
在一些实施例中,在所述针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域之后,所述方法还包括:
针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败;
其中,所述图像交并比表示所述指定对象在该第二视频帧中所占的初始图像区域,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域之间的交并比;
所述运动方向变化角表示第一向量与第二向量之间的夹角;所述第一向量表示前两次确定出的所述指定对象在视频帧中所占的目标图像区域的中心点之间的向量;所述第二向量表示所述指定对象在该第二视频帧中所占的初始图像区域的中心点,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域的中心点之间的向量。
在一些实施例中,在所述针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败之后,所述方法还包括:
针对当前的每一第二视频帧,若确定对该第二视频帧跟踪成功,则将所述指定对象在该第二视频帧中所占的初始图像区域,确定为所述指定对象在该第二视频帧中所占的目标图像区域。
在一些实施例中,其特征在于,所述目标跟踪算法为多个;
所述针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域,包括:
针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和每一目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的图像区域;
基于各目标跟踪算法对应的图像区域,确定所述指定对象在该第二视频帧中所占的初始图像区域。
在一些实施例中,在所述针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域之后,所述方法还包括:
若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对所述当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,则基于所述第一数目,对当前的预设帧数进行更新;其中,所述第一数目小于当前的预设帧数。
在一些实施例中,所述若基于所述指定对象在当前的第二视频帧中所占的目标图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对所述当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,则基于所述第一数目,对当前的预设帧数进行更新,包括:
若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对所述当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,确定所述指定对象在所述第三视频帧中所占的目标图像区域;
计算所述第三视频帧中所占的目标图像区域,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域之间的图像相似度;
基于所述第一数目和所述图像相似度,对当前的预设帧数进行更新。
在一些实施例中,所述指定对象为钢卷的带尾。
本公开实施例的第二方面,提供了一种对象跟踪装置,所述装置包括:
目标检测模块,用于基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测;
第一目标图像区域确定模块,用于当检测到包含有指定对象的第一视频帧时,确定所述指定对象在当前的第一视频帧中所占的图像区域,作为当前的第一视频帧中的目标图像区域;
初始图像区域获得模块,用于针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域;
处理模块,用于若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续预设帧数个第二视频帧跟踪失败,则将所述视频图像中位于所述当前的连续预设数目个第二视频帧之后的视频帧,作为当前的待处理视频帧,并返回执行所述基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测的步骤,直至确定出所述指定对象在所述视频图像中的每一视频帧中的位置。
在一些实施例中,所述装置还包括:
跟踪结果判断模块,用于在所述针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域之后,针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败;
其中,所述图像交并比表示所述指定对象在该第二视频帧中所占的初始图像区域,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域之间的交并比;
所述运动方向变化角表示第一向量与第二向量之间的夹角;所述第一向量表示前两次确定出的所述指定对象在视频帧中所占的目标图像区域的中心点之间的向量;所述第二向量表示所述指定对象在该第二视频帧中所占的初始图像区域的中心点,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域的中心点之间的向量。
在一些实施例中,所述装置还包括:
第二目标图像区域确定模块,用于在所述针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败之后,针对当前的每一第二视频帧,若确定对该第二视频帧跟踪成功,则将所述指定对象在该第二视频帧中所占的初始图像区域,确定为所述指定对象在该第二视频帧中所占的目标图像区域。
在一些实施例中,所述目标跟踪算法为多个;
所述初始图像区域获得模块,包括:
备选图像区域获得子模块,用于针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和每一目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的图像区域;
初始图像区域确定子模块,用于基于各目标跟踪算法对应的图像区域,确定所述指定对象在该第二视频帧中所占的初始图像区域。
在一些实施例中,所述装置还包括:
预设帧数更新模块,用于在所述针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域之后,若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对所述当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,则基于所述第一数目,对当前的预设帧数进行更新;其中,所述第一数目小于当前的预设帧数。
在一些实施例中,所述预设帧数更新模块,包括:
第三目标图像区域确定子模块,用于若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对所述当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,确定所述指定对象在所述第三视频帧中所占的目标图像区域;
相似度计算子模块,用于计算所述第三视频帧中所占的目标图像区域,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域之间的图像相似度;
预设帧数更新子模块,用于基于所述第一数目和所述图像相似度,对当前的预设帧数进行更新。
在一些实施例中,所述指定对象为钢卷的带尾。
本公开实施例的第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的对象跟踪方法步骤。
本公开实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的对象跟踪方法步骤。
本公开实施例的第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的对象跟踪方法。
本公开实施例提供的技术方案可以包括以下有益效果:
本公开实施例提供了一种对象跟踪方法,可以基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测;当检测到包含有指定对象的第一视频帧时,确定指定对象在当前的第一视频帧中所占的图像区域,作为当前的第一视频帧中的目标图像区域;针对视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到指定对象在该第二视频帧中所占的初始图像区域;若基于指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续预设帧数个第二视频帧跟踪失败,则将视频图像中位于当前的连续预设数目个第二视频帧之后的视频帧,作为当前的待处理视频帧,并返回执行基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测的步骤,直至确定出指定对象在视频图像中的每一视频帧中的位置。
基于上述处理,能够基于目标检测算法检测出视频帧中指定对象所占的图像区域,进而,则可以根据检测出的图像区域利用目标跟踪算法进行跟踪。也就是说,无需基于目标检测算法针对每一视频帧均进行目标检测,且由于目标跟踪算法的计算量小于目标检测算法的计算量。因此,能够降低消耗的运算资源和时长。
当然,实施本公开的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获取其他的实施例。
图1为相关技术中对对象进行跟踪的原理示意图;
图2为本公开实施例提供的对象跟踪方法的一种流程图;
图3为本公开实施例提供的对对象进行跟踪的原理示意图;
图4为本公开实施例提供的对象跟踪方法的第二种流程图;
图5为本公开实施例提供的对象跟踪方法的第三种流程图;
图6为本公开实施例提供的一种运动方向变化角示例图;
图7为本公开实施例提供的对象跟踪方法的第四种流程图;
图8为本公开实施例提供的对象跟踪方法的第五种流程图;
图9为本公开实施例提供的对象跟踪方法的第六种流程图;
图10为本公开实施例提供的一种对象跟踪流程示例图;
图11为本公开实施例提供的一种对象跟踪流程示例图;
图12为本公开实施例提供的一种对象跟踪装置的结构图;
图13为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员基于本公开所获取的所有其他实施例,都属于本公开保护的范围。
相关技术中,可以采用目标检测算法对指定对象进行跟踪。例如,针对视频图像中的每一帧视频,可以基于目标检测算法对该视频帧进行目标检测,确定该视频帧中指定对象所占的图像区域。
例如,可以基于检测网络对视频帧进行目标检测,参见图1,图1为相关技术中对对象进行跟踪的原理示意图。图1中,可以输入图像至检测网络,进而,可以得到输出结果,即,确定指定对象所占的图像区域。
然而,基于上述处理,需要基于目标检测算法对每一视频帧进行目标检测,而目标检测算法的计算量大,会消耗较多的运算资源和时长。
为了解决上述问题,本公开实施例提供了一种对象跟踪方法、装置、电子设备及存储介质,以下分别进行详细说明:
本公开实施例提供了一种对象跟踪方法,该方法可以应用于电子设备。该电子设备可以获取视频图像,并基于本公开实施例提供的方法对视频图像中的指定对象进行跟踪,以确定指定对象在视频图像中所占的图像区域。其中,指定对象可以由用户根据需求设置。例如,指定对象可以为工业制造智能化领域中的零器件,或者,也可以为工业产品上的瑕疵部分。
在一些实施例中,指定对象为钢卷的带尾。
一种实现方式中,在生产钢卷的场景中,为了通过视频图像对生产出的钢卷的带尾进行质量评估等目的,需要对生产钢卷的视频图像中的钢卷的带尾进行跟踪。具体的,可以通过图像采集器实时地采集同一个钢卷生产位置处的视频图像。当在该生产位置完成一个钢卷的生产后,该钢卷被人工取走,并在生产位置处生产新的钢卷。实际是在每个钢卷生产完成,而未被取走这个时间段识别出钢卷的带尾并进行跟踪。由于生产钢卷的视频图像是不间断实时采集的,因此,图像采集器采集到的视频图像中会在不同的时间段出现不同的指定对象,且该多个指定对象属于不同的视频帧。相应的,电子设备可以获取包含钢卷生产过程的视频图像,进而,基于本公开实施例提供的方法,对视频图像中的钢卷的带尾进行跟踪,也就可以确定出多个指定对象在不同的视频帧中所占的图像区域。
参见图2,图2为本公开实施例提供的对象跟踪方法的一种流程图,该方法可以包括以下步骤:
S201:基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测。
S202:当检测到包含有指定对象的第一视频帧时,确定指定对象在当前的第一视频帧中所占的图像区域,作为当前的第一视频帧中的目标图像区域。
S203:针对视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到指定对象在该第二视频帧中所占的初始图像区域。
S204:若基于指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续预设帧数个第二视频帧跟踪失败,则将视频图像中位于当前的连续预设数目个第二视频帧之后的视频帧,作为当前的待处理视频帧,并返回执行步骤S201,直至确定出指定对象在视频图像中的每一视频帧中的位置。
基于上述处理,能够基于目标检测算法检测出视频帧中指定对象所占的图像区域,进而,则可以根据检测出的图像区域利用目标跟踪算法进行跟踪。也就是说,无需基于目标检测算法针对每一视频帧均进行目标检测,且由于目标跟踪算法的计算量小于目标检测算法的计算量。因此,能够降低消耗的运算资源和时长。
另外,当基于目标跟踪算法确定预设帧数个视频帧跟踪失败时,可以基于目标检测算法重新进行目标检测,以避免长时间跟踪失败,能够提高跟踪的成功率。
上述过程中,可以灵活地开启/关闭目标检测算法和目标跟踪算法,以在降低消耗的运算资源和时长的情况下,实现指定对象的跟踪。
另外,若仅基于目标跟踪算法对视频图像进行处理,当指定对象被遮挡时,则会导致跟踪失败;而本公开实施例结合目标检测算法和目标跟踪算法,当基于目标跟踪算法跟踪失败时,可以重新基于目标检测算法进行目标检测,进而,也就能够重新跟踪到指定对象,提高跟踪的成功率。
针对步骤S201和S202,一种实现方式中,可以设置用于采集视频图像的图像采集器,该图像采集器可以采集到需要进行对象跟踪的视频图像。上述图像采集器可以集成在电子设备内。或者,图像采集器也可以为独立于电子设备的其他器件,相应的,电子设备可以与图像采集器进行数据通信,以获取采集到的图像。
一种实现方式,目标检测算法可以基于检测网络实现,例如,检测网络可以为R-CNN(Region-Convolutional Neural Network,区域卷积神经网络),或者,SSD(SingleShot multibox Detector,多框一步预测)网络。
一种实现方式中,电子设备可以按照视频图像中视频帧的顺序,依次对每一视频帧进行目标检测。
视频图像中存在包含指定对象的视频帧,以及不包含指定对象的视频帧。在获取到视频图像后,按照视频帧的顺序,当检测到某一视频帧(即当前的第一视频帧)中存在指定对象时,电子设备可以确定指定对象在当前的第一视频帧中所占的目标图像区域。
基于目标检测算法,可以确定出该第一视频帧中的至少一个图像区域,且每一图像区域存在对应的置信度,置信度表示该图像区域中存在指定对象的概率。相应的,电子设备可以将置信度大于预设阈值的图像区域,作为指定对象在该视频帧中的目标图像区域。进而,也就能够提高检测出的目标图像区域的精确度,以提高跟踪的精度。
例如,指定对象所占的图像区域可以为该指定对象的最小外接矩形对应的图像区域。也就是说,电子设备可以确定视频帧中包含指定对象的最小外接矩形框,可以称为目标框。参见图3,图3为本公开实施例提供的对对象进行跟踪的原理示意图。图3中,可以将视频帧输入至检测网络,进而,可以得到目标框。
针对步骤S203,在检测到第一视频帧中存在目标图像区域时,可以基于该图像区域与目标跟踪算法,对后续的视频帧(即第二视频帧)进行目标跟踪。此时,无需基于目标检测算法对第二视频帧进行目标检测。也就是说,此时,可以关闭目标检测算法,开启目标跟踪算法。
在一些实施例中,目标跟踪算法可以为MIL tracker(Multiple InstanceLearning tracker,多实例学习跟踪)算法。基于MIL tracker算法,可以对当前的第一视频帧进行划分,获得多个图像块(Patch),并将目标图像区域对应的图像块作为正例图像块,其余图像块作为负例图像块。然后,可以计算每个图像块的图像特征,并基于计算的图像特征,按照贝叶斯法则构造分类器,该分类器包含确定出的正例图像块与负例图像块。
进而,针对每一第二视频帧,可以采用与对当前的第一视频帧进行划分的时相同的方式,对该第二视频帧进行划分,得到多个待分类图像块。然后,可以计算每个待分类图像块的图像特征。进而,基于构建的分类器和该图像特征,确定该待分类图像块的分类结果,即,计算每个待分类图像块的图像特征与当前的正例图像块的图像特征的相似度,以及计算每个待分类图像块的图像特征与当前的负例图像块的图像特征的相似度,并基于该相似度,得到分类结果;分类结果表示该待分类图像块为正例图像块还是负例图像块,也就可以确定出该第二视频帧中指定对象所占的图像区域。进而,根据各待分类图像块的分类结果,对分类器进行更新,即,对分类器所包含的正例图像块与负例图像块进行更新。其中,上述图像特征可以用Haar-like(哈尔)特征表示。
或者,目标跟踪算法可以为KCF tracker(Kernelized Correlation Filterstracker,核化相关滤波器跟踪)算法。基于KCF tracker算法,可以通过循环矩阵,对当前的第一视频帧进行样本扩增,得到多个扩增样本。然后,可以计算多个扩增样本的图像特征,并基于图像特征和各扩展样本中指定对象所占的图像区域,按照核空间的岭回归算法构造分类器。
进而,针对每一第二视频帧,可以基于分类器和该第二视频帧的图像特征,确定该第二视频帧中每一像素位置的分类结果,分类结果表示该像素位置是否为指定对象对应的像素位置,也就可以确定出该第二视频帧中指定对象所占的图像区域。进而,根据各像素位置的分类结果,对分类器进行更新。其中,上述图像特征可以包含以下至少一项:颜色特征、HOG(Histogram of Oriented Gradient,方向梯度直方图)特征和卷积特征。
或者,目标跟踪算法可以为CSRT(Correlation Filter-based Tracking,基于相关滤波器跟踪)算法。
在本公开实施例中,基于目标跟踪算法对第二视频帧进行目标跟踪,得到的指定对象所占的图像区域为初始图像区域。然而,基于目标跟踪算法可能会对第二视频帧跟踪失败,且若跟踪失败,则无法基于该第二视频帧中的初始图像区域,对后续的其他第二视频帧进行跟踪;反之,若跟踪成功,则可以基于该第二视频帧中的初始图像区域,对后续的其他第二视频帧进行跟踪,此时,可以将该初始图像区域作为目标图像区域。
也就是说,一种实现方式中,若目标跟踪算法为一个,则基于该目标跟踪算法确定出的图像区域为初始图像区域。
一种实现方式中,若目标跟踪算法为多个,参见图4,在图2的基础上,步骤S203可以包括以下步骤:
S2031:针对视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和每一目标跟踪算法,对该第二视频帧进行目标跟踪,得到指定对象在该第二视频帧中所占的图像区域。
S2032:基于各目标跟踪算法对应的图像区域,确定指定对象在该第二视频帧中所占的初始图像区域。
当采用多个目标跟踪算法时,针对每一第二视频帧,基于每一目标跟踪算法可以得到一个图像区域(可以称为备选图像区域),此时,针对每一第二视频帧,存在多个基于目标跟踪算法得到的备选图像区域。
若得到的各备选图像区域相同,此时,可以从该多个备选图像区域中任取一个备选图像区域,作为指定对象在该第二视频帧中所占的初始图像区域。
若得到的各备选图像区域不同,此时,可以计算各备选图像区域的位置的平均值,基于该平均值,确定初始图像区域。例如,可以计算各备选图像区域左上角顶点的位置的平均值、各备选图像区域右上角顶点的位置的平均值,各备选图像区域左下角顶点的位置的平均值、各备选图像区域右下角顶点的位置的平均值,进而,将以四个平均值对应的位置为顶点的图像区域,确定为初始图像区域。
一种实现方式中,在得到多个备选图像区域后,还可以基于各备选图像区域的图像交并比,并判断该图像交并比是否大于第一预设阈值。当该图像交并比大于第一预设阈值时,可以基于各备选图像区域,得到初始图像区域。当该图像交并比不大于第一预设阈值时,可以确定对该第二视频帧跟踪失败,此时,无需确定初始图像区域。例如,第一预设阈值可以为0.8。
本公开实施例提供的方法,采用一种或多种目标跟踪算法,能够提高灵活性。另外,基于多个目标跟踪算法,也能够提高对象跟踪的精度。
针对步骤S204,预设帧数的初始值可以由用户根据需求设置,例如,预设帧数的初始值可以为30。若连续预设帧数个第二视频帧跟踪失败,表明后续的视频帧中不存在原有的指定对象。例如,原有的指定对象移动至上述图像采集器的监控范围以外。此时,可以基于目标检测算法对后续的视频帧进行目标检测,无需基于目标跟踪算法进行处理。也就是说,此时,可以关闭目标跟踪算法,重新开启目标检测算法。
一种实现方式中,在生产钢卷的场景中,可以通过图像采集器采集同一个钢卷生产位置处的图像。当在该生产位置完成一个钢卷的生产后,用户可以将该钢卷取走,并在生产位置处生产新的钢卷。然而,在前一个钢卷被取走之后,且在新的钢卷生成带尾之前,图像采集器采集的视频图像中均不存在钢卷的带尾,也就会导致连续预设帧数个第二视频帧跟踪失败。
因此,在连续预设帧数个第二视频帧跟踪失败后,可以重新基于目标检测算法进行目标检测,也就能够检测出新的钢卷的带尾,并进行跟踪,也就能够实现对多个指定对象的连续跟踪。
一种实现方式中,参见图5,图5为本公开实施例提供的对象跟踪方法的第三种流程图,在图2的基础上,在步骤S203之后,还包括以下步骤:
S205:针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败。
其中,图像交并比表示指定对象在该第二视频帧中所占的初始图像区域,与前一次确定出的指定对象在视频帧中所占的目标图像区域之间的交并比。
运动方向变化角表示第一向量与第二向量之间的夹角;第一向量表示前两次确定出的指定对象在视频帧中所占的目标图像区域的中心点之间的向量;第二向量表示指定对象在该第二视频帧中所占的初始图像区域的中心点,与前一次确定出的指定对象在视频帧中所占的目标图像区域的中心点之间的向量。
一种实现方式中,可以基于图像交并比确定对该第二视频帧是否跟踪失败。例如,当图像交并比小于第二预设阈值时,可以确定对该第二视频帧跟踪失败;当图像交并比不小于第二预设阈值时,可以确定对该第二视频帧跟踪成功。第二预设阈值可以由用户根据需求设置,例如,第二预设阈值可以为0.5。
一种实现方式中,可以基于运动方向变化角确定对该第二视频帧是否跟踪失败。若第一向量与第二向量同向,例如,第一向量与第二向量的方向均为后一视频帧中的图像区域的中心点指向前一视频帧中的图像区域的中心点,或者,第一向量与第二向量的方向均为前一视频帧中的图像区域的中心点指向后一视频帧中的图像区域的中心点。当运动方向变化角不小于第一预设角度时,可以确定对该第二视频帧跟踪失败;当运动方向变化角小于第一预设角度时,可以确定对该第二视频帧跟踪成功。第一预设角度可以由用户根据需求设置,例如,第一预设角度可以为30°。
若第一向量与第二向量不同向,例如,第一向量与第二向量中,其中一个向量的方向为后一视频帧中的图像区域的中心点指向前一视频帧中的图像区域的中心点,另一个向量的方向为前一视频帧中的图像区域的中心点指向后一视频帧中的图像区域的中心点,则当运动方向变化角不大于第二预设角度时,可以确定对该第二视频帧跟踪失败;当运动方向变化角大于第二预设角度时,可以确定对该第二视频帧跟踪成功。第二预设角度可以由用户根据需求设置,例如,第二预设角度可以为150°。
参见图6,图6为本公开实施例提供的一种运动方向变化角示例图,图6中,三个矩形框分别表示三个视频帧中的图像区域,向量d2表示第一向量,向量d1表示第二向量,可见,第一向量与第二向量同向,方向均为后一视频帧中的图像区域的中心点指向前一视频帧中的图像区域的中心点。
一种实现方式中,可以基于图像交并比和运动方向变化角,确定对该第二视频帧是否跟踪失败。当图像交并比小于第三预设阈值、第一向量与第二向量同向,且运动方向变化角不小于第三预设角度时,确定对该第二视频帧跟踪失败。当图像交并比小于第三预设阈值、第一向量与第二向量同向,且运动方向变化角小于第三预设角度时,确定对该第二视频帧跟踪失败。
当图像交并比小于第三预设阈值、第一向量与第二向量不同向,且运动方向变化角不大于第四预设角度,确定对该第二视频帧跟踪失败。当图像交并比小于第三预设阈值、第一向量与第二向量不同向,且运动方向变化角大于第四预设角度时,确定对该第二视频帧跟踪失败。
当图像交并比大于第三预设阈值、第一向量与第二向量同向,且运动方向变化角不小于第三预设角度时,确定对该第二视频帧跟踪失败。当图像交并比大于第三预设阈值、第一向量与第二向量同向,且运动方向变化角小于第三预设角度时,确定对该第二视频帧跟踪成功。
当图像交并比大于第三预设阈值、第一向量与第二向量不同向,且运动方向变化角不大于第四预设角度时,确定对该第二视频帧跟踪失败。当图像交并比大于第三预设阈值、第一向量与第二向量不同向,且运动方向变化角大于第四预设角度时,确定对该第二视频帧跟踪成功。
基于上述方法,能够有效地确定是否跟踪成功,进而,能够在跟踪失败时,及时开启目标检测算法以进行目标检测,进而,能够避免长时间跟踪失败,提高对象跟踪的有效性。
一种实现方式中,参见图7,图7为本公开实施例提供的对象跟踪方法的第四种流程图,在图5的基础上,在步骤S205之后,还包括以下步骤:
S206:针对当前的每一第二视频帧,若确定对该第二视频帧跟踪成功,则将指定对象在该第二视频帧中所占的初始图像区域,确定为指定对象在该第二视频帧中所占的目标图像区域。
针对当前的每一第二视频帧,若确定对该第二视频帧跟踪成功,后续可以基于该第二视频帧中的初始图像区域,对后续的其他第二视频帧进行跟踪,因此,可以将指定对象在该第二视频帧中所占的初始图像区域,确定为指定对象在该第二视频帧中所占的目标图像区域。
基于上述处理,在对该第二视频帧跟踪成功的情况下,将指定对象在该第二视频帧中所占的初始图像区域用于后续的跟踪处理,也就能够提高后续跟踪的精度。
一种实现方式中,参见图8,图8为本公开实施例提供的对象跟踪方法的第五种流程图,在图2的基础上,在步骤S203之后,还包括以下步骤:
S207:若基于指定对象在当前的第二视频帧中所占的目标图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,则基于第一数目,对当前的预设帧数进行更新。
其中,第一数目小于当前的预设帧数。
在本公开实施例中,当前的连续第一数目个第二视频帧跟踪失败,且对当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,可以表示满足预设帧数的更新条件。可以理解的是,在对视频图像进行对象跟踪的过程中,可能会存在多个满足上述更新条件的时刻,在每一满足上述更新条件的时刻,均可以基于该时刻时的第一数目,对当前的预设帧数进行更新。
一种实现方式中,可以计算本次满足更新条件时的第一数目与预设帧数的初始值的平均值,并对该平均值取整,得到更新后的预设帧数。
一种实现方式中,还可以结合前多个满足更新条件时的第一数目、本次满足更新条件时的第一数目,以及预设帧数的初始值对当前的预设帧数进行更新。例如,可以计算前多个满足更新条件时的第一数目、本次满足更新条件时的第一数目,以及预设帧数的初始值的平均值,并对该平均值取整,得到更新后的预设帧数。
一种实现方式中,当确定对当前的连续预设帧数个第二视频帧跟踪失败,返回执行步骤S201,即,重新基于目标检测算法进行目标检测时,可以确定当前的预设帧数为初始值。
一种实现方式中,参见图9,图9为本公开实施例提供的对象跟踪方法的第六种流程图,在图8的基础上,步骤S207,包括以下步骤:
S2071:若基于指定对象在当前的第二视频帧中所占的目标图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,确定指定对象在第三视频帧中所占的目标图像区域。
S2072:计算第三视频帧中所占的目标图像区域,与前一次确定出的指定对象在视频帧中所占的目标图像区域之间的图像相似度。
S2073:基于第一数目和图像相似度,对当前的预设帧数进行更新。
一种实现方式中,可以计算本次满足更新条件时的第一数目与预设帧数的初始值的平均值,并用该平均值除以图像相似度,得到更新平均值,并对该更新平均值取整,得到更新后的预设帧数。
一种实现方式中,还可以结合前多个满足更新条件时的第一数目、本次满足更新条件时的第一数目、预设帧数的初始值以及图像相似度对当前的预设帧数进行更新。例如,可以计算前多个满足更新条件时的第一数目、本次满足更新条件时的第一数目和预设帧数的初始值的平均值,并用该平均值除以图像相似度,并对计算结果取整,得到更新后的预设帧数。
例如,预设帧数的初始值为30,基于目标跟踪算法对第一视频帧后的第一个第二视频帧和第二个第二视频帧均跟踪成功,且对第三个第二视频帧至第九个第二视频帧均跟踪失败,当对第十个第二视频帧跟踪成功时,此时,连续7个第二视频帧跟踪失败,则第一数目为7,第一数目小于当前的预设帧数(即30)。因此,可以基于第一数目(即7),对预设帧数进行更新。第八个第二视频帧中的目标图像区域与前一次确定出的指定对象在视频帧(即第二个第二视频帧)中所占的目标图像区域之间的图像相似度为0.95,此时,可以取30和7的平均值,并用该平均值除以0.95,对计算结果取整,得到19。即,更新后的预设帧数为19。进而,电子设备可以基于目标跟踪算法,对该第十个第二视频帧后的第二视频帧进行目标跟踪。
若基于目标跟踪算法对第十一个第二视频帧和第十二个第二视频帧均跟踪成功,且对第十三个第二视频帧至第二十二个第二视频帧均跟踪失败,当对第二十三个第二视频帧跟踪成功时,此时,连续10个第二视频帧跟踪失败,则第一数目为10,第一数目小于当前的预设帧数(即19)。因此,可以基于第一数目(即10),对预设帧数进行更新。第二十二个第二视频帧中的目标图像区域与前一次确定出的指定对象在视频帧(即第十二个第二视频帧)中所占的目标图像区域之间的图像相似度为0.92,此时,可以取30、7和10的平均值,并用该平均值除以0.92,对计算结果取整,得到17。即,更新后的预设帧数为17。进而,电子设备可以基于目标跟踪算法,对该第二十三个第二视频帧后的第二视频帧进行目标跟踪。
若基于目标跟踪算法对第二十四个第二视频帧至第四十一个第二视频帧均跟踪失败,此时,连续18个第二视频帧跟踪失败,则第一数目为18,第一数目大于当前的预设帧数(即17)。此时,电子设备可以基于目标检测算法,对该第四十一个第二视频帧的下一视频帧进行目标检测,并将预设帧数更新为初始值。
基于上述处理,可以根据跟踪失败的视频帧的数目,以及确定出的图像区域的图像相似度,对预设帧数进行更新。基于连续跟踪失败的视频帧的数目,可以减小预设帧数,使预设帧数趋向于目标数值,且连续跟踪失败的视频帧的数目为目标数值时,表明原有的指定对象移动至上述图像采集器的监控范围以外。因此,基于连续跟踪失败的视频帧的数目对预设帧数进行更新,能够及时确定出原有的指定对象移动至上述图像采集器的监控范围以外,进而,能够及时检测出监控范围内的下一个新的指定对象,提高对象跟踪的及时性。图像相似度越大,则表明连续跟踪失败的视频帧的数目越小;图像相似度越小,则表明连续跟踪失败的视频帧的数目越大,因此,也可以基于图像相似度调整预设帧数,使之趋向于目标数值,进而,提高对象跟踪的及时性。
在一些实施例中,参见图10,图10为本公开实施例提供的一种对象跟踪流程示例图。该实施例中,指定对象表示钢卷的带尾。步骤S1001,获取视频帧,即,获取视频图像中的各视频帧;步骤S1002,带尾检测,即基于目标检测算法对视频帧进行目标检测;步骤S1003,获取目标框,即,确定视频帧中包含指定对象的目标框;步骤S1004,置信度选择,即,比较确定出的各目标框的置信度;步骤S1005,获取带尾目标框,即,将置信度最高的目标框确定为带尾目标框,即本公开实施例中第一视频帧中的目标图像区域对应的目标框。
进而,步骤S1006,带尾跟踪,即基于目标跟踪算法对第一视频帧后的第二视频帧进行目标跟踪;步骤S1007,判断是否丢失目标。未丢失目标表示对该第二视频帧跟踪成功,相应的,执行步骤S1008,可以获得最新目标框,该最新目标框即指定对象在该第二视频帧中所占的目标图像区域对应的目标框;丢失目标表示对连续预设帧数个第二视频帧跟踪失败,则返回进行带尾检测,即,重新开启目标检测算法进行目标检测。
在一些实施例中,参见图11,图11为本公开实施例提供的一种对象跟踪流程示例图。步骤S1101,获取图10中得到的带尾目标框;步骤S1102,可以采用一种或两种跟踪算法进行目标跟踪,即基于目标跟踪算法对该第二视频帧进行目标跟踪,得到指定对象在该第二视频帧中所占的初始图像区域。
步骤S1103,采用面积过滤法和/或,方向过滤法,确定跟踪结果。步骤S1104,根据跟踪结果,判断对该第二视频帧是否跟踪成功。采用面积过滤法确定的跟踪结果表示初始图像区域与前一次确定出的目标图像区域的图像交并比;采用方向过滤法确定的跟踪结果表示基于初始图像区域与前两次确定出的目标图像区域的中心点得到的运动方向变化角。若对该第二视频帧跟踪成功,可以继续对后续的第二视频帧进行跟踪;若对该第二视频帧跟踪失败,可以记录跟踪失败的第二视频帧的帧数。
步骤S1105,判断是否大于预设帧数,即,判断连续跟踪失败的第二视频帧的帧数是否大于预设帧数。若连续跟踪失败的第二视频帧的帧数不大于预设帧数,电子设备可以执行步骤S1106,即,可以更新预设帧数、目标框;若该连续帧数大于预设帧数,执行步骤S1107,即,电子设备可以判定目标丢失,相应的,电子设备可以基于目标检测算法对下一视频帧进行目标检测,并将预设帧数更新为初始值。
基于与上述对象跟踪方法相同的发明构思,本公开实施例还提供了一种对象跟踪装置,参见图12,图12为本公开实施例提供的一种对象跟踪装置的结构图,该装置包括:
目标检测模块1201,用于基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测;
第一目标图像区域确定模块1202,用于当检测到包含有指定对象的第一视频帧时,确定指定对象在当前的第一视频帧中所占的图像区域,作为当前的第一视频帧中的目标图像区域;
初始图像区域获得模块1203,用于针对视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到指定对象在该第二视频帧中所占的初始图像区域;
处理模块1204,用于若基于指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续预设帧数个第二视频帧跟踪失败,则将视频图像中位于当前的连续预设数目个第二视频帧之后的视频帧,作为当前的待处理视频帧,并返回执行基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测的步骤,直至确定出指定对象在视频图像中的每一视频帧中的位置。
在一些实施例中,装置还包括:
跟踪结果判断模块,用于在针对视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到指定对象在该第二视频帧中所占的初始图像区域之后,针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败;
其中,图像交并比表示指定对象在该第二视频帧中所占的初始图像区域,与前一次确定出的指定对象在视频帧中所占的目标图像区域之间的交并比;
运动方向变化角表示第一向量与第二向量之间的夹角;第一向量表示前两次确定出的指定对象在视频帧中所占的目标图像区域的中心点之间的向量;第二向量表示指定对象在该第二视频帧中所占的初始图像区域的中心点,与前一次确定出的指定对象在视频帧中所占的目标图像区域的中心点之间的向量。
在一些实施例中,装置还包括:
第二目标图像区域确定模块,用于在针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败之后,针对当前的每一第二视频帧,若确定对该第二视频帧跟踪成功,则将指定对象在该第二视频帧中所占的初始图像区域,确定为指定对象在该第二视频帧中所占的目标图像区域。
在一些实施例中,目标跟踪算法为多个;
初始图像区域获得模块1203,包括:
备选图像区域获得子模块,用于针对视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和每一目标跟踪算法,对该第二视频帧进行目标跟踪,得到指定对象在该第二视频帧中所占的图像区域;
初始图像区域确定子模块,用于基于各目标跟踪算法对应的图像区域,确定指定对象在该第二视频帧中所占的初始图像区域。
在一些实施例中,装置还包括:
预设帧数更新模块,用于在针对视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到指定对象在该第二视频帧中所占的初始图像区域之后,若基于指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,则基于第一数目,对当前的预设帧数进行更新;其中,第一数目小于当前的预设帧数。
在一些实施例中,预设帧数更新模块,包括:
第三目标图像区域确定子模块,用于若基于指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,确定指定对象在第三视频帧中所占的目标图像区域;
相似度计算子模块,用于计算第三视频帧中所占的目标图像区域,与前一次确定出的指定对象在视频帧中所占的目标图像区域之间的图像相似度;
预设帧数更新子模块,用于基于第一数目和图像相似度,对当前的预设帧数进行更新。
在一些实施例中,指定对象为钢卷的带尾。
本公开实施例还提供了一种电子设备,如图13所示,包括处理器1301、通信接口1302、存储器1303和通信总线1304,其中,处理器1301,通信接口1302,存储器1303通过通信总线1304完成相互间的通信,
存储器1303,用于存放计算机程序;
处理器1301,用于执行存储器1303上所存放的程序时,实现上述实施例中任一对象跟踪方法的步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本公开提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一对象跟踪方法的步骤。
在本公开提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一对象跟踪方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本公开实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本公开的较佳实施例,并非用于限定本公开的保护范围。凡在本公开的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本公开的保护范围内。
Claims (16)
1.一种对象跟踪方法,其特征在于,所述方法包括:
基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测;
当检测到包含有指定对象的第一视频帧时,确定所述指定对象在当前的第一视频帧中所占的图像区域,作为当前的第一视频帧中的目标图像区域;
针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域;
若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续预设帧数个第二视频帧跟踪失败,则将所述视频图像中位于所述当前的连续预设数目个第二视频帧之后的视频帧,作为当前的待处理视频帧,并返回执行所述基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测的步骤,直至确定出所述指定对象在所述视频图像中的每一视频帧中的位置。
2.根据权利要求1所述的方法,其特征在于,在所述针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域之后,所述方法还包括:
针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败;
其中,所述图像交并比表示所述指定对象在该第二视频帧中所占的初始图像区域,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域之间的交并比;
所述运动方向变化角表示第一向量与第二向量之间的夹角;所述第一向量表示前两次确定出的所述指定对象在视频帧中所占的目标图像区域的中心点之间的向量;所述第二向量表示所述指定对象在该第二视频帧中所占的初始图像区域的中心点,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域的中心点之间的向量。
3.根据权利要求2所述的方法,其特征在于,在所述针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败之后,所述方法还包括:
针对当前的每一第二视频帧,若确定对该第二视频帧跟踪成功,则将所述指定对象在该第二视频帧中所占的初始图像区域,确定为所述指定对象在该第二视频帧中所占的目标图像区域。
4.根据权利要求1所述的方法,其特征在于,所述目标跟踪算法为多个;
所述针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域,包括:
针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和每一目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的图像区域;
基于各目标跟踪算法对应的图像区域,确定所述指定对象在该第二视频帧中所占的初始图像区域。
5.根据权利要求1所述的方法,其特征在于,在所述针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域之后,所述方法还包括:
若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对所述当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,则基于所述第一数目,对当前的预设帧数进行更新;其中,所述第一数目小于当前的预设帧数。
6.根据权利要求5所述的方法,其特征在于,所述若基于所述指定对象在当前的第二视频帧中所占的目标图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对所述当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,则基于所述第一数目,对当前的预设帧数进行更新,包括:
若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对所述当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,确定所述指定对象在所述第三视频帧中所占的目标图像区域;
计算所述第三视频帧中所占的目标图像区域,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域之间的图像相似度;
基于所述第一数目和所述图像相似度,对当前的预设帧数进行更新。
7.根据权利要求1所述的方法,其特征在于,所述指定对象为钢卷的带尾。
8.一种对象跟踪装置,其特征在于,所述装置包括:
目标检测模块,基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测;
第一目标图像区域确定模块,用于当检测到包含有指定对象的第一视频帧时,确定所述指定对象在当前的第一视频帧中所占的图像区域,作为当前的第一视频帧中的目标图像区域;
初始图像区域获得模块,用于针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域;
处理模块,用于若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续预设帧数个第二视频帧跟踪失败,则将所述视频图像中位于所述当前的连续预设数目个第二视频帧之后的视频帧,作为当前的待处理视频帧,并返回执行所述基于目标检测算法对视频图像中当前的待处理视频帧进行目标检测的步骤,直至确定出所述指定对象在所述视频图像中的每一视频帧中的位置。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
跟踪结果判断模块,用于在所述针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域之后,针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败;
其中,所述图像交并比表示所述指定对象在该第二视频帧中所占的初始图像区域,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域之间的交并比;
所述运动方向变化角表示第一向量与第二向量之间的夹角;所述第一向量表示前两次确定出的所述指定对象在视频帧中所占的目标图像区域的中心点之间的向量;所述第二向量表示所述指定对象在该第二视频帧中所占的初始图像区域的中心点,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域的中心点之间的向量。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
第二目标图像区域确定模块,用于在所述针对当前的每一第二视频帧,基于图像交并比,和/或,运动方向变化角,确定对该第二视频帧是否跟踪失败之后,针对当前的每一第二视频帧,若确定对该第二视频帧跟踪成功,则将所述指定对象在该第二视频帧中所占的初始图像区域,确定为所述指定对象在该第二视频帧中所占的目标图像区域。
11.根据权利要求8所述的装置,其特征在于,所述目标跟踪算法为多个;
所述初始图像区域获得模块,包括:
备选图像区域获得子模块,用于针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和每一目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的图像区域;
初始图像区域确定子模块,用于基于各目标跟踪算法对应的图像区域,确定所述指定对象在该第二视频帧中所占的初始图像区域。
12.根据权利要求8所述的装置,其特征在于,所述装置还包括:
预设帧数更新模块,用于在所述针对所述视频图像中位于当前的第一视频帧之后的每一第二视频帧,基于当前的第一视频帧中的目标图像区域和目标跟踪算法,对该第二视频帧进行目标跟踪,得到所述指定对象在该第二视频帧中所占的初始图像区域之后,若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对所述当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,则基于所述第一数目,对当前的预设帧数进行更新;其中,所述第一数目小于当前的预设帧数。
13.根据权利要求12所述的装置,其特征在于,所述预设帧数更新模块,包括:
第三目标图像区域确定子模块,用于若基于所述指定对象在当前的第二视频帧中所占的初始图像区域,确定对当前的连续第一数目个第二视频帧跟踪失败,且对所述当前的连续第一数目个第二视频帧后的第三视频帧跟踪成功,确定所述指定对象在所述第三视频帧中所占的目标图像区域;
相似度计算子模块,用于计算所述第三视频帧中所占的目标图像区域,与前一次确定出的所述指定对象在视频帧中所占的目标图像区域之间的图像相似度;
预设帧数更新子模块,用于基于所述第一数目和所述图像相似度,对当前的预设帧数进行更新。
14.根据权利要求8所述的装置,其特征在于,所述指定对象为钢卷的带尾。
15.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210746580.3A CN115170618B (zh) | 2022-06-28 | 2022-06-28 | 一种对象跟踪方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210746580.3A CN115170618B (zh) | 2022-06-28 | 2022-06-28 | 一种对象跟踪方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115170618A true CN115170618A (zh) | 2022-10-11 |
CN115170618B CN115170618B (zh) | 2024-10-11 |
Family
ID=83490153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210746580.3A Active CN115170618B (zh) | 2022-06-28 | 2022-06-28 | 一种对象跟踪方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115170618B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106127807A (zh) * | 2016-06-21 | 2016-11-16 | 中国石油大学(华东) | 一种实时的视频多类多目标跟踪方法 |
WO2018121286A1 (zh) * | 2016-12-30 | 2018-07-05 | 纳恩博(北京)科技有限公司 | 目标跟踪方法和装置 |
CN112651996A (zh) * | 2020-12-22 | 2021-04-13 | 南京市城市与交通规划设计研究院股份有限公司 | 目标检测跟踪方法、装置、电子设备和存储介质 |
-
2022
- 2022-06-28 CN CN202210746580.3A patent/CN115170618B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106127807A (zh) * | 2016-06-21 | 2016-11-16 | 中国石油大学(华东) | 一种实时的视频多类多目标跟踪方法 |
WO2018121286A1 (zh) * | 2016-12-30 | 2018-07-05 | 纳恩博(北京)科技有限公司 | 目标跟踪方法和装置 |
CN112651996A (zh) * | 2020-12-22 | 2021-04-13 | 南京市城市与交通规划设计研究院股份有限公司 | 目标检测跟踪方法、装置、电子设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
JUNGSUP SHIN等: "Fast and Robust Object Tracking Using Tracking Failure Detection in Kernelized Correlation Filter", 《APPLIED SCIENCES》, vol. 10, 20 January 2020 (2020-01-20), pages 1 - 13 * |
罗诗鹏: "基于孪生网络的目标跟踪算法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 2022, 15 May 2022 (2022-05-15), pages 138 - 603 * |
Also Published As
Publication number | Publication date |
---|---|
CN115170618B (zh) | 2024-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109344789B (zh) | 人脸跟踪方法及装置 | |
CN111191533B (zh) | 行人重识别的处理方法、装置、计算机设备和存储介质 | |
CN112749726B (zh) | 目标检测模型的训练方法、装置、计算机设备和存储介质 | |
CN111292377B (zh) | 目标检测方法、装置、计算机设备和存储介质 | |
JP7192966B2 (ja) | 検索装置、学習装置、検索方法、学習方法及びプログラム | |
CN112926531A (zh) | 特征信息提取方法、模型训练方法、装置及电子设备 | |
CN108229495B (zh) | 目标对象检测方法、装置、电子设备和存储介质 | |
CN114241016A (zh) | 一种跨相机轨迹关联方法、装置及电子设备 | |
CN110647818A (zh) | 一种遮挡目标物体的识别方法及装置 | |
CN113313189A (zh) | 一种遮挡检测方法、装置及电子设备 | |
CN111476814A (zh) | 目标跟踪方法、装置、设备及存储介质 | |
CN113297409A (zh) | 一种图像搜索方法、装置、电子设备及存储介质 | |
CN111753775A (zh) | 鱼的生长评估方法、装置、设备及存储介质 | |
CN110866428A (zh) | 目标跟踪方法、装置、电子设备及存储介质 | |
CN110490058B (zh) | 行人检测模型的训练方法、装置、系统和计算机可读介质 | |
CN115170618B (zh) | 一种对象跟踪方法、装置、电子设备及存储介质 | |
CN116258873A (zh) | 一种位置信息确定方法、对象识别模型的训练方法及装置 | |
CN111091022A (zh) | 机器视觉的效能评估方法与系统 | |
CN113205079B (zh) | 一种人脸检测方法、装置、电子设备及存储介质 | |
CN113159032B (zh) | 基于目标检测网络的目标跟踪方法、装置、设备及介质 | |
CN112784691B (zh) | 一种目标检测模型训练方法、目标检测方法和装置 | |
CN115393755A (zh) | 视觉目标跟踪方法、装置、设备以及存储介质 | |
CN112949526A (zh) | 人脸检测方法和装置 | |
CN113838110B (zh) | 目标检测结果的校验方法、装置、存储介质和电子设备 | |
CN112613516A (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 |