[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN116543024A - 一种跨摄像头多目标跟踪方法、系统及电子设备 - Google Patents

一种跨摄像头多目标跟踪方法、系统及电子设备 Download PDF

Info

Publication number
CN116543024A
CN116543024A CN202310443814.1A CN202310443814A CN116543024A CN 116543024 A CN116543024 A CN 116543024A CN 202310443814 A CN202310443814 A CN 202310443814A CN 116543024 A CN116543024 A CN 116543024A
Authority
CN
China
Prior art keywords
frame
target
target object
detection
candidate
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
Application number
CN202310443814.1A
Other languages
English (en)
Inventor
沈华清
房雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Geely Holding Group Co Ltd
Ningbo Geely Automobile Research and Development Co Ltd
Original Assignee
Zhejiang Geely Holding Group Co Ltd
Ningbo Geely Automobile Research and Development Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang Geely Holding Group Co Ltd, Ningbo Geely Automobile Research and Development Co Ltd filed Critical Zhejiang Geely Holding Group Co Ltd
Priority to CN202310443814.1A priority Critical patent/CN116543024A/zh
Publication of CN116543024A publication Critical patent/CN116543024A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/757Matching configurations of points or features

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

本申请公开了一种跨摄像头多目标跟踪方法、系统及电子设备,该方法包括:获取每一个摄像头拍摄的当前帧图像中的每一个目标物体对应的第一检测框;合并包含相同目标物体的第一检测框,得到H个第二检测框,并将其与未合并的第一检测框作为候选框集合中的候选框;寻找包含当前帧图像之前的所有帧图像中的目标物体的目标候选框,得到每一个目标候选框对应的目标物体在当前帧图像中的检测位置;基于每一个检测位置,更新目标物体的当前位置,计算目标物体在下一帧图像中的预测位置。通过本申请实施例提供的技术方案,避免了分别预测不同摄像头拍摄的当前帧图像中的目标物体在下一帧图像的预测位置,提升了目标物体在下一帧图像的位置的预测准确率。

Description

一种跨摄像头多目标跟踪方法、系统及电子设备
技术领域
本申请涉及目标跟踪技术领域,尤其涉及一种跨摄像头多目标跟踪方法、系统及电子设备。
背景技术
随着科学技术的发展,目标跟踪技术也得到了迅速发展。通过目标跟踪技术可以预测目标物体在下一帧图像中的位置,进而基于目标物体在每一帧图像中的位置,可以生成目标物体的运动轨迹,在智慧城市、智能驾驶、机器人等领域得到了广泛应用。
在目标跟踪技术中,根据目标物体的个数,目标跟踪技术可以分为单目标跟踪与多目标跟踪。而多目标跟踪又可以分为单摄像头多目标跟踪与跨摄像头多目标跟踪。但由于单摄像头视野有限、遮挡等问题,导致单摄像头多目标跟踪存在较大的局限性,例如无法对目标物体进行连续跟踪,因此目前普遍使用跨摄像头多目标跟踪来预测每一个目标物体在下一帧图像的位置。
在跨摄像头多目标跟踪中,参照如图1所示的摄像头与目标物体的示意图,车辆上安装的第一摄像头与第二摄像头存在视角重叠区,第一摄像头的视角与第二摄像头的视角均可以拍摄到目标物体即A物体,进而预测A物体在下一帧图像中的位置。
首先将第一摄像头拍摄的第一当前帧图像输入目标检测模块,得到A物体对应的第一检测框,其中,第一检测框对应的A物体的类别标识码(Identity Document,ID)为A1,再基于第一检测框计算A1在下一帧图像中的第一预测位置,同理,针对第二摄像头拍摄的第二当前帧图像,得到A物体对应的第二检测框,该第二检测框对应的A物体的ID为A2,进而计算A2在下一帧图像中的第二预测位置;
然后基于第一检测框与第二检测框之间的相似度,确定A1与A2是否是同一个A物体,在确定A1与A2是同一个A物体后,融合第一预测位置与第二预测位置,得到A物体在下一帧图像中的预测位置。
然而,在上述融合第一预测位置与第二预测位置,得到A物体在下一帧图像中的预测位置时,由于第一摄像头与第二摄像头对A物体的拍摄角度不同,导致第一检测框与第二检测框存在较大差异,使得基于第一检测框与第二检测框得到的第一预测位置与第二预测位置也会存在较大差异,进而导致在融合第一预测位置与第二预测位置来得到A物体在下一帧图像中的预测位置时,A物体在下一帧图像中的位置的预测准确率不高,也就是说,不同摄像头在不同角度拍摄的同一个位置的目标物体,由于视角不同,使得不同摄像头拍摄的当前帧图像中的同一个目标物体在下一帧图像中的预测位置相差较大,进而导致融合不同预测位置得到目标物体在下一帧图像中的预测位置时,目标物体在下一帧图像中的位置的预测准确率不高。
发明内容
本申请提供了一种跨摄像头多目标跟踪方法、系统及电子设备,用以解决由于视角不同,使得不同摄像头拍摄的当前帧图像中的同一个目标物体在下一帧图像中的预测位置相差较大,进而导致融合不同预测位置得到目标物体在下一帧图像中的预测位置时,目标物体在下一帧图像中的位置的预测准确率不高的问题。具体实现方案如下:
第一方面,本申请提供了一种跨摄像头多目标跟踪方法,所述方法包括:
获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框;
针对每一个第一检测框,合并包含相同目标物体的第一检测框,得到H个第二检测框,并将所述H个第二检测框与未合并的第一检测框作为候选框集合中的候选框,其中,H是大于零的整数;
在所述候选框集合中,寻找包含所述当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在所述当前帧图像中的检测位置;
基于每一个目标候选框对应的目标物体对应的检测位置,更新每一个目标候选框对应的目标物体在所述当前帧图像中的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
通过上述的方式,避免了分别预测不同摄像头中拍摄的当前帧图像中的目标物体在下一帧图像中的预测位置,从而避免了融合不同预测位置来得到目标物体在下一帧图像中的预测位置,进而提升了目标物体在下一帧图像中的位置的预测准确率。
在一种可能的实施方式中,所述获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框,包括:
获取每一个摄像头各自拍摄的当前帧图像;
将每一张当前帧图像分别输入目标检测模块,分别输出每一张当前帧图像中的每一个目标物体各自对应的第一检测框。
通过上述的方式,基于目标检测模块,得到了每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框。
在一种可能的实施方式中,所述针对每一个第一检测框,合并包含相同目标物体的第一检测框,得到H个第二检测框,并将所述H个第二检测框与未合并的第一检测框作为候选框集合中的候选框,包括:
获取每一个第一检测框各自对应的特征向量;
基于每一个第一检测框各自对应的特征向量,计算每一个第一检测框两两之间的特征距离;
将每一个第一检测框各自对应的第一坐标均转化为同一个坐标系中的第二坐标,得到每一个第一检测框各自对应的第二坐标;
针对每一个第一检测框,根据每一个第一检测框两两之间的特征距离、每一个第一检测框各自对应的第二坐标以及每一个第一检测框各自对应的尺寸,筛选包含相同目标物体的第一检测框;
合并包含相同目标物体的第一检测框,得到所述H个第二检测框,并将所述H个第二检测框与未合并的第一检测框作为所述候选框集合中的候选框。
通过上述的方式,基于每一个第一检测框各自对应的特征向量,得到了每一个第一检测框两两之间的特征距离;然后基于每一个第一检测框两两之间的特征距离、每一个第一检测框在相同坐标系中的坐标以及每一个第一检测框各自对应的尺寸,确定了包含相同目标物体的第一检测框,提升了不同第一检测框之间的目标物体的匹配精度;此外通过合并包含相同目标物体的第一检测框,得到了候选框集合中的候选框,进而为后续匹配操作提供了候选框。
在一种可能的实施方式中,所述在所述候选框集合中,寻找包含所述当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在所述当前帧图像中的检测位置,包括:
针对所述候选框集合中的每一个候选框,依次执行以下第一匹配操作:
将所述候选框集合中的一个候选框作为匹配候选框;
通过所述匹配候选框与所述当前帧图像之前的所有帧图像中的每一个目标物体依次执行第二匹配操作,确认所述匹配候选框是否包含所述当前帧图像之前的所有帧图像中的目标物体;
若否,将所述匹配候选框中的目标物体作为新目标物体;
若是,将所述匹配候选框作为所述目标候选框,并将所述目标候选框的位置作为所述目标候选框对应的目标物体在所述当前帧图像中的检测位置;
直至每一个候选框均执行完所述第一匹配操作,得到每一个目标候选框对应的目标物体在所述当前帧图像中的检测位置。
通过上述的方式,基于候选框集合中的每一个候选框依次执行的第一匹配操作,确认了候选框集合中是否包含当前帧图像之前的所有帧图像中的目标物体的目标候选框,从而在候选框集合中寻找完所有包含当前帧图像之前的所有帧图像中的目标物体的目标候选框后,得到了每一个目标候选框对应的目标物体在当前帧图像中的检测位置,进而为更新目标物体在当前帧图像中的当前位置提供了检测位置。
在一种可能的实施方式中,所述第二匹配操作,包括:
将所述当前帧图像之前的所有帧图像中的一个目标物体作为匹配物体;
获取所述匹配物体对应的第三检测框、所述匹配物体对应的第一图像特征以及所述匹配候选框中的目标物体对应的第二图像特征;
计算所述第二图像特征与所述第一图像特征之间的图像匹配分数以及所述匹配候选框与所述第三检测框之间的框匹配分数;
判断所述图像匹配分数大于图像预设阈值与所述框匹配分数大于框预设阈值是否同时满足;
若否,确认所述匹配候选框不包含所述匹配物体;
若是,确认所述匹配候选框包含所述匹配物体。
通过上述的方式,在计算第一图像特征与第二图像特征之间的图像匹配分数以及计算匹配候选框与第三检测框之间的框匹配分数后,基于图像匹配分数与图像预设阈值的判断以及框匹配分数与框预设阈值的判断,确定了匹配候选框是否包含匹配物体,进一步的提升了当前帧图像中的目标物体与当前帧图像之前的所有帧图像中的目标物体之间的匹配精度。
在一种可能的实施方式中,所述基于每一个目标候选框对应的目标物体对应的检测位置,更新每一个目标候选框对应的目标物体在所述当前帧图像中的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置,包括:
获取每一个目标候选框对应的目标物体对应的上一帧预测位置,其中,所述上一帧预测位置是在上一帧图像中预测的每一个目标候选框对应的目标物体在所述当前帧图像中对应的位置;
基于每一个目标候选框对应的目标物体对应的检测位置与所述上一帧预测位置,更新每一个目标候选框对应的目标物体在所述当前帧图像中的当前位置;
根据每一个目标候选框对应的目标物体对应的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
通过上述的方式,基于每一个目标候选框对应的目标物体对应的检测位置与上一帧预测位置,更新了每一个目标候选框对应的目标物体在当前帧图像中的当前位置,从而根据当前位置来计算每一个目标候选框对应的目标物体在下一帧图像中的预测位置,进一步的提高了目标物体在下一帧图像中的预测位置的预测准确率。
在一种可能的实施方式中,所述根据每一个目标候选框对应的目标物体对应的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置,包括:
根据每一个目标候选框对应的目标物体对应的当前位置,确定每一个目标候选框对应的目标物体中存在预跨视角目标物体,其中,所述预跨视角目标物体是即将由第一摄像头的视角进入第二摄像头的视角的目标物体;
针对每一个所述预跨视角目标物体,均执行以下预测操作:
计算所述预跨视角目标物体在所述第一摄像头拍摄的下一帧图像中的第一预测位置;
判断所述预跨视角目标物体在所述第二摄像头的视角是否是所述第一摄像头与所述第二摄像头的视角重叠区;
若是,将所述第一预测位置转化为所述第二摄像头的视角中的位置,得到所述预跨视角目标物体在下一帧图像中的预测位置;
若否,截取所述第一预测位置对应的第四检测框超出所述第一摄像头的视角的第五检测框,将所述第五检测框对应的位置转化为所述第二摄像头的视角中的第二预测位置,得到所述预跨视角目标物体在下一帧图像中的预测位置;
直至每一个所述预跨视角目标物体均执行完所述预测操作,得到所述预跨视角目标物体在下一帧图像中的预测位置,并计算每一个目标候选框对应的目标物体中的非预跨视角目标物体在下一帧图像中的预测位置。
通过上述的方式,根据每一个目标候选框对应的目标物体对应的当前位置,确定了每一个目标候选框对应的目标物体中是否存在预跨视角目标物体;然后在存在预跨视角目标物体时,基于预跨视角目标物体是否在视角重叠区的判断,确定了对预跨视角目标物体在第二摄像头中的预测位置的具体计算方式,进而得到了预跨视角目标物体在所有下一帧图像中的预测位置;此外,计算非预跨视角目标物体在下一帧图像中的预测位置,得到了每一个目标候选框对应的目标物体在下一帧图像中的预测位置,进一步的提升了目标物体在下一帧图像中的预测位置的预测准确率。
第二方面,本申请还提供了一种跨摄像头多目标跟踪系统,所述系统包括:
获取模块,用于获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框;
合并模块,用于针对每一个第一检测框,合并包含相同目标物体的第一检测框,得到H个第二检测框,并将所述H个第二检测框与未合并的第一检测框作为候选框集合中的候选框,其中,H是大于零的整数;
筛选模块,用于在所述候选框集合中,寻找包含所述当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在所述当前帧图像中的检测位置;
处理模块,用于基于每一个目标候选框对应的目标物体对应的检测位置,更新每一个目标候选框对应的目标物体在所述当前帧图像中的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
在一种可能的实施方式中,所述获取模块,具体用于获取每一个摄像头各自拍摄的当前帧图像;
将每一张当前帧图像分别输入目标检测模块,分别输出每一张当前帧图像中的每一个目标物体各自对应的第一检测框。
在一种可能的实施方式中,所述合并模块,具体用于获取每一个第一检测框各自对应的特征向量;
基于每一个第一检测框各自对应的特征向量,计算每一个第一检测框两两之间的特征距离;
将每一个第一检测框各自对应的第一坐标均转化为同一个坐标系中的第二坐标,得到每一个第一检测框各自对应的第二坐标;
针对每一个第一检测框,根据每一个第一检测框两两之间的特征距离、每一个第一检测框各自对应的第二坐标以及每一个第一检测框各自对应的尺寸,筛选包含相同目标物体的第一检测框;
合并包含相同目标物体的第一检测框,得到所述H个第二检测框,并将所述H个第二检测框与未合并的第一检测框作为所述候选框集合中的候选框。
在一种可能的实施方式中,所述筛选模块,具体用于针对所述候选框集合中的每一个候选框,依次执行以下第一匹配操作:
将所述候选框集合中的一个候选框作为匹配候选框;
通过所述匹配候选框与所述当前帧图像之前的所有帧图像中的每一个目标物体依次执行第二匹配操作,确认所述匹配候选框是否包含所述当前帧图像之前的所有帧图像中的目标物体;
若否,将所述匹配候选框中的目标物体作为新目标物体;
若是,将所述匹配候选框作为所述目标候选框,并将所述目标候选框的位置作为所述目标候选框对应的目标物体在所述当前帧图像中的检测位置;
直至每一个候选框均执行完所述第一匹配操作,得到每一个目标候选框对应的目标物体在所述当前帧图像中的检测位置。
在一种可能的实施方式中,所述筛选模块,具体用于将所述当前帧图像之前的所有帧图像中的一个目标物体作为匹配物体;
获取所述匹配物体对应的第三检测框、所述匹配物体对应的第一图像特征以及所述匹配候选框中的目标物体对应的第二图像特征;
计算所述第二图像特征与所述第一图像特征之间的图像匹配分数以及所述匹配候选框与所述第三检测框之间的框匹配分数;
判断所述图像匹配分数大于图像预设阈值与所述框匹配分数大于框预设阈值是否同时满足;
若否,确认所述匹配候选框不包含所述匹配物体;
若是,确认所述匹配候选框包含所述匹配物体。
在一种可能的实施方式中,所述处理模块,具体用于获取每一个目标候选框对应的目标物体对应的上一帧预测位置,其中,所述上一帧预测位置是在上一帧图像中预测的每一个目标候选框对应的目标物体在所述当前帧图像中对应的位置;
基于每一个目标候选框对应的目标物体对应的检测位置与所述上一帧预测位置,更新每一个目标候选框对应的目标物体在所述当前帧图像中的当前位置;
根据每一个目标候选框对应的目标物体对应的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
在一种可能的实施方式中,所述处理模块,具体用于根据每一个目标候选框对应的目标物体对应的当前位置,确定每一个目标候选框对应的目标物体中存在预跨视角目标物体,其中,所述预跨视角目标物体是即将由第一摄像头的视角进入第二摄像头的视角的目标物体;
针对每一个所述预跨视角目标物体,均执行以下预测操作:
计算所述预跨视角目标物体在所述第一摄像头拍摄的下一帧图像中的第一预测位置;
判断所述预跨视角目标物体在所述第二摄像头的视角是否是所述第一摄像头与所述第二摄像头的视角重叠区;
若是,将所述第一预测位置转化为所述第二摄像头的视角中的位置,得到所述预跨视角目标物体在下一帧图像中的预测位置;
若否,截取所述第一预测位置对应的第四检测框超出所述第一摄像头的视角的第五检测框,将所述第五检测框对应的位置转化为所述第二摄像头的视角中的第二预测位置,得到所述预跨视角目标物体在下一帧图像中的预测位置;
直至每一个所述预跨视角目标物体均执行完所述预测操作,得到所述预跨视角目标物体在下一帧图像中的预测位置,并计算每一个目标候选框对应的目标物体中的非预跨视角目标物体在下一帧图像中的预测位置。
第三方面,本申请提供了一种电子设备,包括:
存储器,用于存放计算机程序;
处理器,用于执行所述存储器上所存放的计算机程序时,实现上述的一种跨摄像头多目标跟踪方法步骤。
第四方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述的一种跨摄像头多目标跟踪方法步骤。
上述第二方面至第四方面中的各个方面以及各个方面可能达到的技术效果请参照上述针对第一方面或第一方面中的各种可能方案可以达到的技术效果说明,这里不再重复赘述。
附图说明
图1为本申请提供的摄像头与目标物体的示意图;
图2为本申请提供的一种跨摄像头多目标跟踪方法的流程图;
图3a为本申请提供的摄像头视角示意图一;
图3b为本申请提供的摄像头视角示意图二;
图3c为本申请提供的摄像头视角示意图三;
图3d为本申请提供的摄像头视角示意图四;
图4为本申请提供的一种跨摄像头多目标跟踪方法的处理过程示意图;
图5为本申请提供的一种跨摄像头多目标跟踪系统的示意图;
图6为本申请提供的一种电子设备示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述。方法实施例中的具体操作方法也可以应用于装置实施例或系统实施例中。需要说明的是,在本申请的描述中“多个”理解为“至少两个”。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。A与B连接,可以表示:A与B直接连接和A与B通过C连接这两种情况。另外,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
下面结合附图,对本申请实施例进行详细描述。
在跨摄像头多目标跟踪中,由于视角不同,使得不同摄像头拍摄的当前帧图像中的同一个目标物体在下一帧图像中的预测位置相差较大,进而导致融合不同预测位置得到目标物体在下一帧图像中的预测位置时,目标物体在下一帧图像中的位置的预测准确率不高。
因此,本申请提出了一种跨摄像头多目标跟踪方法,通过获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框;然后针对每一个第一检测框,合并包含相同目标物体的第一检测框,得到H个第二检测框,其中,H是大于零的整数,并将H个第二检测框与未合并的第一检测框作为候选框集合中的候选框;在该候选框集合中,寻找包含当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在当前帧图像中的检测位置;再基于每一个目标候选框对应的目标物体对应的检测位置,更新每一个目标候选框对应的目标物体在当前帧图像中的当前位置,进而计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。通过该方法,避免了分别预测不同摄像头中拍摄的当前帧图像中的目标物体在下一帧图像中的预测位置,从而避免了融合不同预测位置来得到目标物体在下一帧图像中的预测位置,进而提升了目标物体在下一帧图像中的位置的预测准确率。
参照图2所示为本申请实施例提供的一种跨摄像头多目标跟踪方法的流程图,该方法包括:
S1,获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框;
在跨摄像头多目标跟踪中,当预测多个目标物体在下一帧图像中各自对应的预测位置时,首先需要获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框。
具体来讲,首先获取每一个摄像头各自拍摄的当前帧图像,其中,一个摄像头对应一张当前帧图像。
这里需要说明的是,在本申请实施例中,所有摄像头的视角的并集为360°,也就是说,所有摄像头的视角之和可以探测到车辆周围一圈的物体,进而可以实现对周围环境的全方位探测,进一步的提升智能驾驶的安全性。
举例来说,参照如图3a所示的摄像头视角示意图一,车辆上安装了6个摄像头,且每一个摄像头的视角范围为90°,其中,第一摄像头为前向主摄像头,可以探测车辆正前方90°范围内的物体;第二摄像头为后向主摄像头,可以探测车辆正后方90°范围内的物体;第三摄像头、第四摄像头、第五摄像头以及第六摄像头为副摄像头,分别探测车辆左前方90°、右前方90°、左后方90°以及右后方90°范围内的物体。
在获取当前帧图像后,将每一张当前帧图像分别输入目标检测模块,分别输出每一张当前帧图像中的每一个目标物体各自对应的第一检测框。
这里需要说明的是,在本申请实施例中,目标检测模块可以是基于全卷积单阶段3D目标检测(Fully Convolutional One-Stage Monocular 3D Object Detection,FCOS3D)的检测模型,也可以是基于区域的卷积神经网络(Region based ConvolutionalNeural Network,R-CNN)检测模型,在本申请实施例中并不限定目标检测模块中的具体检测模型,可以根据具体应用场景来调整目标检测模块中的检测模型。
这里还需要说明的是,一张当前帧图像对应N个目标物体,其中,N是大于零的整数,一个目标物体对应一个第一检测框,但每一张当前帧图像中包含的目标物体的个数可以不相同,且每一张当前帧图像中包含的目标物体的类型可以不相同,在本申请实施例中可以根据具体的应用场景来确定每一张当前帧图像中包含的目标物体的个数与类型。
此外,目标检测模块在输出第一检测框的同时,还会输出第一检测框各自对应的ID,其中,一个第一检测框对应一个唯一的ID,以便于在后续操作中识别具体使用哪一个第一检测框。
通过上述的方式,基于目标检测模块,得到了每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框。
S2,针对每一个第一检测框,合并包含相同目标物体的第一检测框,得到H个第二检测框,并将H个第二检测框与未合并的第一检测框作为候选框集合中的候选框;
在获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框后,首先获取每一个第一检测框各自对应的特征向量。
这里需要说明的是,在本申请实施例中,在获取第一检测框对应的特征向量时,可以是基于角点检测算法的获取方式来获取第一检测框对应的特征向量,也可以是基于神经网络模型的获取方式来获取第一检测框对应的特征向量,在本申请实施例中可以根据的应用场景来调整第一检测框对应的特征向量的获取方式。
然后基于每一个第一检测框各自对应的特征向量,计算每一个第一检测框两两之间的特征距离,比如当前有3个第一检测框,3个第一检测框各自对应的ID分别为A、B、C,其中,A对应第一特征向量,B对应第二特征向量,C对应第三特征向量,然后计算第一特征向量与第二特征向量之间的特征距离,计算第一特征向量与第三特征向量之间的特征距离,第二特征向量与第三特征向量之间的特征距离。
再将每一个第一检测框各自对应的第一坐标均转化为同一个坐标系中的第二坐标,得到每一个第一检测框各自对应的第二坐标。
这里需要说明的是,在本申请实施例中,在将每一个第一检测框各自对应的第一坐标均转化为同一个坐标系中的第二坐标时,可以是以世界坐标系作为基准坐标系,然后将每一个第一检测框各自对应的第一坐标均转化为世界坐标系中的第二坐标,也可以是以一个第一检测框中的第一坐标所在的坐标系为基准坐标系,再将剩余的第一检测框中的第一坐标均转化为该坐标系中的第二坐标,在本申请实施例中可以根据具体的应用场景来调整基准坐标系。
进一步,针对每一个第一检测框,根据每一个第一检测框两两之间的特征距离、每一个第一检测框各自对应的第二坐标以及每一个第一检测框各自对应的尺寸,筛选包含相同目标物体的第一检测框;然后合并包含相同目标物体的第一检测框,得到H个第二检测框,并将该H个第二检测框与未合并的第一检测框作为候选框集合中的候选框,其中,H是大于零的整数。
这里需要说明的是,在合并包含相同目标物体的第一检测框,得到H个第二检测框,并将该H个第二检测框与未合并的第一检测框作为候选框集合中的候选框时,还需要对第二检测框以及未合并的第一检测框各自对应的ID重新命名。
举例来说,当前有三个第一检测框,该三个第一检测框各自对应的ID分别为A、B、C,其中,只有A与B对应的第一检测框包含的目标物体为同一个目标物体,此时合并A与B,得到一个第二检测框,并将该第二检测框的ID重新命名为001,同时将C重新命名为002。
通过上述的方式,基于每一个第一检测框各自对应的特征向量,得到了每一个第一检测框两两之间的特征距离;然后基于每一个第一检测框两两之间的特征距离、每一个第一检测框在相同坐标系中的坐标以及每一个第一检测框各自对应的尺寸,确定了包含相同目标物体的第一检测框,提升了不同第一检测框之间的目标物体的匹配精度;此外通过合并包含相同目标物体的第一检测框,得到了候选框集合中的候选框,进而为后续匹配操作提供了候选框。
在一种可能的实施方式中,在针对每一个第一检测框,根据每一个第一检测框两两之间的特征距离、每一个第一检测框各自对应的第二坐标以及每一个第一检测框各自对应的尺寸,筛选包含相同目标物体的第一检测框时,将每两个不同的第一检测框作为一组第一检测框,比如当前有三个第一检测框,该三个第一检测框对应的ID分别为A、B、C,其中,A与B为第一组第一检测框,A为C为第二组第一检测框,B与C为第三组第一检测框。
然后将每一组第一检测框依次执行以下筛选操作:
将一组第一检测框中的一个第一检测框作为第一筛选框,将一组第一检测框中的另一个第一检测框作为第二筛选框。
然后获取第一筛选框与第二筛选框之间的特征距离;再计算第一筛选框对应的第二坐标与第二筛选框对应的第二坐标之间的坐标距离,以及计算第一筛选框的尺寸与第二筛选框的尺寸之间的尺寸差距;
其次分别对特征距离、坐标距离以及尺寸差距赋予权重,进而得到一个物体匹配分数,其中,特征距离、坐标距离以及尺寸差距各自对应的权重可以一致也可以不一致;
再判断该物体匹配分数是否小于物体预设阈值;
若物体匹配分数小于物体预设阈值,则说明第一筛选框与第二筛选框包含相同的目标物体;
若物体匹配分数不小于物体预设阈值,则说明第一筛选框与第二筛选框不包含相同的目标物体;
直至每一组第一检测框均执行完上述筛选操作,即可确定每一个第一检测框中包含相同目标物体的第一检测框。
在一种可能的实施方式中,在筛选包含相同目标物体的第一检测框时,还可以是基于深度学习模型来筛选包含相同目标物体的第一检测框,该深度学习模型可以是卷积神经网络模型(Convolutional Neural Network,CNN),也可以是深度卷积逆向图网络模型(Deep Convolutional Inverse Graphics Network,DCIGN),在本申请实施例中可以根据具体的应用场景来选择具体的深度学习模型。
具体来讲,针对每一个第一检测框,将每两个不同的第一检测框作为一组第一检测框;再将每一组第一检测框分别输入训练好的深度学习模型,然后该深度学习模型直接输出每一组第一检测框中的两个第一检测框是否包含相同目标物体,即可确定每一个第一检测框中包含相同目标物体的第一检测框。
举例来说,第一组第一检测框中的第一检测框对应的ID分别为A与B,将该A、B各自对应的第一检测框一起输入训练好的深度学习模型,然后该深度学习模型直接输出A与B对应的第一检测框包含相同的目标物体。
在一种可能的实施方式中,在筛选包含相同目标物体的第一检测框时,还可以是针对每一个第一检测框,将每两个不同的第一检测框作为一组第一检测框;
再针对每一组第一检测框,依次执行以下判断操作:
首先获取一组第一检测框中的两个第一检测框的交集以及该两个第一检测框的并集,然后计算交集与并集的比例,得到该组第一检测框的交并比(Intersection overUnion,IOU);
然后判断IOU是否大于交并比预设阈值;
若IOU不大于交并比预设阈值,则说明该组中的两个第一检测框各自包含的目标物体不是同一个目标物体;
若IOU大于交并比预设阈值,则说明该组中的两个第一检测框各自包含的目标物体是同一个目标物体;
直至每一组第一检测框均执行完上述判断操作,即可确定每一个第一检测框中包含相同目标物体的第一检测框。
在一种可能的实施方式中,在合并包含相同目标物体的第一检测框,得到H个第二检测框时,获取包含相同目标物体的第一检测框的并集,该并集中的第一检测框均是包含的同一个目标物体,然后将并集作为一个第二检测框,进而得到H个第二检测框。
举例来说,当前有四个第一检测框,该四个第一检测框对应的ID分别为A、B、C、D,其中,只有A与B包含了相同目标物体以及C与D包含了相同目标物体,此时获取A与B的并集,得到第一个第二检测框,然后获取C与D的并集,得到第二个第二检测框。
这里需要说明的是,在本申请实施例中,在合并包含相同目标物体的第一检测框,得到H个第二检测框时,还可以同时保留包含相同目标物体的每一个第一检测框,然后以其中的一个第一检测框作为第二检测框,比如当前有三个第一检测框,该三个第一检测框对应的ID分别为A、B、C,其中,只有A与B包含了相同目标物体,此时以A作为第二检测框。
在本申请实施例中可以根据具体的应用场景来调整合并包含相同目标物体的第一检测框的合并方式。
S3,在候选框集合中,寻找包含当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在当前帧图像中的检测位置;
在对每一个第一检测框中包含相同目标物体的第一检测框进行筛选,得到候选框集合后,还需要在候选框集合中,筛选出包含当前帧图像之前的所有帧图像中的目标物体的目标候选框。
具体来讲,针对候选框集合中的每一个候选框,依次执行以下第一匹配操作:
首先将候选框集合中的一个候选框作为匹配候选框,比如候选框集合中有两个候选框,该两个候选框对应的ID分别为001、002,然后从001、002中挑选001对应的候选框作为匹配候选框,但这里需要说明的是,在001对应的候选框执行完第一匹配操作后,下一次是挑选002对应的候选框执行第一匹配操作,直至001与002各自对应的候选框均执行完第一匹配操作。
然后通过匹配候选框与当前帧图像之前的所有帧图像中的每一个目标物体依次执行第二匹配操作,比如当前帧图像之前有三帧图像,其中,第一帧图像中有目标物体A、B,第二帧图像中有目标物体B、C,第三帧图像中有目标物体A、B、C,则将匹配候选框与A、匹配候选框与B、匹配候选框与C依次执行第二匹配操作。
在执行第二匹配操作后,确认匹配候选框是否包含当前帧图像之前的所有帧图像中的目标物体;
若匹配候选框不包含当前帧图像之前的所有帧图像中的目标物体,则说明匹配候选框中的目标物体在当前帧图像之前的所有帧图像中均没有出现过,然后将该匹配候选框中的目标物体作为新目标物体;
若匹配候选框包含当前帧图像之前的所有帧图像中的目标物体,则将匹配候选框作为目标候选框,并将目标候选框的位置作为目标候选框对应的目标物体在当前帧图像中的检测位置。
举例来说,当前帧图像之前有三帧图像,其中,第一帧图像中有目标物体A、B,第二帧图像中有目标物体B、C,第三帧图像中有目标物体A、B、C,经第一匹配操作后,确认匹配候选框包含A,则将匹配候选框作为目标候选框,并将匹配候选框的位置作为A在当前帧图像中的检测位置。
直至每一个候选框均执行完第一匹配操作,得到每一个目标候选框对应的目标物体在当前帧图像中的检测位置。
此外,在每一个候选框均执行完第一匹配操作后,若当前帧图像之前的所有帧图像中存在目标物体在候选框集合中的所有候选框中均没有出现,则记录该目标物体的丢失帧数,比如当前帧图像之前的所有帧图像中有目标物体A、B、C,而候选框集合中的所有候选框中均没有包含C,则记录C在当前帧图像丢失,并将C的丢失帧数加1。
通过上述的方式,基于候选框集合中的每一个候选框依次执行的第一匹配操作,确认了候选框集合中是否包含当前帧图像之前的所有帧图像中的目标物体的目标候选框,从而在候选框集合中寻找完所有包含当前帧图像之前的所有帧图像中的目标物体的目标候选框后,得到了每一个目标候选框对应的目标物体在当前帧图像中的检测位置,进而为更新目标物体在当前帧图像中的当前位置提供了检测位置。
进一步,在通过匹配候选框与当前帧图像之前的所有帧图像中的每一个目标物体依次执行第二匹配操作时,第二匹配操作具体如下:
将当前帧图像之前的所有帧图像中的一个目标物体作为匹配物体,比如当前帧图像之前有三帧图像,三帧图像中一共有目标物体A、B、C,在匹配候选框与A执行第二匹配操作时,则将A作为匹配物体。
然后获取匹配物体对应的第三检测框、匹配物体对应的第一图像特征以及匹配候选框中的目标物体对应的第二图像特征。
这里需要说明的是,在本申请实施例中,在获取匹配物体对应的第一图像特征以及匹配候选框中的目标物体对应的第二图像特征时,也就是在获取物体对应的图像特征时,可以是基于CNN来获取物体对应的图像特征,也可以是基于DCIGN来获取物体对应的图像特征,在本申请实施例中可以根据具体的应用场景来调整图像特征的具体获取方式。
在得到匹配物体对应的第三检测框、匹配物体对应的第一图像特征以及匹配候选框中的目标物体对应的第二图像特征后,计算第二图像特征与第一图像特征之间的图像匹配分数以及匹配候选框与第三检测框之间的框匹配分数;
再判断该图像匹配分数大于图像预设阈值与框匹配分数大于框预设阈值是否同时满足;
若图像匹配分数大于图像预设阈值与框匹配分数大于框预设阈值不能同时满足,则说明匹配候选框中的目标物体与匹配物体不一致,即匹配候选框不包含匹配物体;
若图像匹配分数大于图像预设阈值与框匹配分数大于框预设阈值同时满足,则说明匹配候选框中目标物体与匹配物体一致,即匹配候选框包含匹配物体。
通过上述的方式,在计算第一图像特征与第二图像特征之间的图像匹配分数以及计算匹配候选框与第三检测框之间的框匹配分数后,基于图像匹配分数与图像预设阈值的判断以及框匹配分数与框预设阈值的判断,确定了匹配候选框是否包含匹配物体,进一步的提升了当前帧图像中的目标物体与当前帧图像之前的所有帧图像中的目标物体之间的匹配精度。
S4,基于每一个目标候选框对应的目标物体对应的检测位置,更新每一个目标候选框对应的目标物体在当前帧图像中的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置;
在得到每一个目标候选框对应的目标物体在当前帧图像中对应的检测位置后,预测目标候选框对应的目标物体在下一帧图像中对应的位置。
具体来讲,首先获取每一个目标候选框对应的目标物体对应的上一帧预测位置,其中,上一帧预测位置是在上一帧图像中预测的每一个目标候选框对应的目标物体在当前帧图像中对应的位置。
然后基于每一个目标候选框对应的目标物体对应的检测位置与上一帧预测位置,更新每一个目标候选框对应的目标物体在当前帧图像中对应的当前位置。
这里需要说明的是,在本申请实施例中,在根据检测位置与上一帧预测位置更新当前位置的过程中,可以是基于卡尔曼滤波的方式来将检测位置与上一帧预测位置更新为当前位置;也可以是基于粒子滤波的方式来将检测位置与上一帧预测位置更新为当前位置;还可以是基于均值的方式来将检测位置与上一帧预测位置更新为当前位置,在本申请实施例中可以根据具体的应用场景来调整当前位置的具体更新方式。
举例来说,目标候选框对应的目标物体为A,A对应的检测位置为(1,3,4),A的上一帧预测位置为(2,3,4),计算A对应的检测位置与A对应的上一帧预测位置的均值,得到均值为(1.5,3,4),从而将均值(1.5,3,4)作为A对应的当前位置,进而对A对应的当前位置进行了更新。
然后根据每一个目标候选框对应的目标物体对应的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
通过上述的方式,基于每一个目标候选框对应的目标物体对应的检测位置与上一帧预测位置,更新了每一个目标候选框对应的目标物体在当前帧图像中的当前位置,从而根据当前位置来计算每一个目标候选框对应的目标物体在下一帧图像中的预测位置,进一步的提高了目标物体在下一帧图像中的预测位置的预测准确率。
进一步,在根据每一个目标候选框对应的目标物体对应的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置时,首先根据每一个目标候选框对应的目标物体对应的当前位置,确定每一个目标候选框对应的目标物体中存在预跨视角目标物体,其中,预跨视角目标物体是即将由第一摄像头的视角进入第二摄像头的视角的目标物体。
然后针对每一个预跨视角目标物体,均执行以下预测操作:
首先计算预跨视角目标物体在第一摄像头拍摄的下一帧图像中的第一预测位置。
这里需要说明的是,在本申请实施例中,在计算预跨视角目标物体在第一摄像头拍摄的下一帧图像中的第一预测位置时,可以是基于卡尔曼滤波的方式进行计算,也可以是基于深度学习的方式进行计算,在本申请实施例中可以根据具体的应用场景来调整预跨视角目标物体在下一帧图像中的第一预测位置的计算方式。
然后判断预跨视角目标物体在第二摄像头的视角是否是第一摄像头与第二摄像头的视角重叠区;
若预跨视角目标物体在第二摄像头的视角是第一摄像头与第二摄像头的视角重叠区,将第一预测位置转化为第二摄像头的视角中的位置,得到预跨视角目标物体在下一帧图像中的预测位置。
这里需要说明的是,在本申请实施例中,在预跨视角目标物体在第二摄像头的视角是第一摄像头与第二摄像头的视角重叠区时,预跨视角目标物体可以是由其他视角重叠区进入的第一摄像头与第二摄像头的视角重叠区。
举例来说,参照如图3b所示的摄像头视角示意图二,预跨视角目标物体对应的目标候选框的ID为A,A对应的目标物体即将由β区域进入γ区域,其中,β区域是第一摄像头与第三摄像头的视角重叠区,γ区域是第一摄像头与第二摄像头的视角重叠区,也就是说,A对应的目标物体即将由一个视角重叠区进入另一个视角重叠区;
通过计算得到A对应的目标物体在第一摄像头拍摄的下一帧图像中的第一预测位置为γ区域中的D2,由于γ区域在第二摄像头的视角范围内,也就是说,预测出第二摄像头拍摄的下一帧图像中会出现A对应的目标物体,因此还需要确定A对应的目标物体在第二摄像头拍摄的下一帧图像中的预测位置;
而γ区域是第一摄像头与第二摄像头的视角重叠区,因此直接将第一预测位置D2转化为第二摄像头视角中的D3位置,即得到A对应的目标物体在第二摄像头拍摄的下一帧图像中的预测位置,进而得到A对应的目标物体在所有下一帧图像中的预测位置。
此外,在预跨视角目标物体在第二摄像头的视角是第一摄像头与第二摄像头的视角重叠区时,预跨视角目标物体还可以是由非视角重叠区进入的第一摄像头与第二摄像头的视角重叠区。
举例来说,参照如图3c所示的摄像头视角示意图三,预跨视角目标物体对应的目标候选框的ID为A,A对应的目标物体即将由α区域进入β区域,其中,β区域是第一摄像头与第二摄像头的视角重叠区,也就是说,A对应的目标物体即将由非视角重叠区进入视角重叠区;
此时仍然先通过计算得到A对应的目标物体在第一摄像头拍摄的下一帧图像中的第一预测位置,该第一预测位置为β区域中的D2,然后将该D2位置转化为第二摄像头视角中的D3位置,从而得到A对应的目标物体在第二摄像头拍摄的下一帧图像中的预测位置,进而得到A对应的目标物体在所有下一帧图像中的预测位置。
若预跨视角目标物体在第二摄像头的视角不是第一摄像头与第二摄像头的视角重叠区,则截取第一预测位置对应的第四检测框超出第一摄像头的视角的第五检测框,将第五检测框对应的位置转化为第二摄像头的视角中的第二预测位置,得到预跨视角目标物体在下一帧图像中的预测位置。
举例来说,参照如图3d所示的摄像头视角示意图四,预跨视角目标物体对应的目标候选框的ID为A,A对应的目标物体在第一摄像头拍摄的下一帧图像中的第一预测位置为α区域中的D2,但该D2位置对应的目标候选框有部分内容超出了第一摄像头的视角范围,且超出部分是在第二摄像头的视角范围内,将超出部分对应的ID命名为A1,因此还需要计算A1对应的目标物体在第二摄像头拍摄的下一帧图像中的第二预测位置;
将A1对应的D3位置转化为第二摄像头中的D4位置,即得到A1对应的目标物体在第二摄像头拍摄的下一帧图像中的第二预测位置,进而得到A对应的目标物体在所有下一帧图像中的预测位置。
直至每一个预跨视角目标物体均执行完上述预测操作,得到预跨视角目标物体在下一帧图像中的预测位置,并计算每一个目标候选框对应的目标物体中的非预跨视角目标物体在下一帧图像中的预测位置。
这里需要说明的是,在本申请实施例中,在计算每一个目标候选框对应的目标物体中的非预跨视角目标物体在下一帧图像中的预测位置时,同上述计算预跨视角目标物体在下一帧图像中的预测位置时的计算方式一致,可以是基于卡尔曼滤波的计算方式,也可以是基于深度学习的计算方式,在本申请实施例中可以根据具体的应用场景来调整非预跨视角目标物体在下一帧图像中的预测位置的计算方式,此外,在本申请实施例中非预跨视角目标物体与预跨视角目标物体在下一帧图像中的预测位置的计算方式可以不一致。
通过上述的方式,根据每一个目标候选框对应的目标物体对应的当前位置,确定了每一个目标候选框对应的目标物体中是否存在预跨视角目标物体;然后在存在预跨视角目标物体时,基于预跨视角目标物体是否在视角重叠区的判断,确定了对预跨视角目标物体在第二摄像头中的预测位置的具体计算方式,进而得到了预跨视角目标物体在所有下一帧图像中的预测位置;此外,计算非预跨视角目标物体在下一帧图像中的预测位置,得到了每一个目标候选框对应的目标物体在下一帧图像中的预测位置,进一步的提升了目标物体在下一帧图像中的预测位置的预测准确率。
综上来说,本申请所提出的跨摄像头多目标跟踪方法,通过获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框;然后针对每一个第一检测框,合并包含相同目标物体的第一检测框,得到H个第二检测框,并将H个第二检测框与未合并的第一检测框作为候选框集合中的候选框;在该候选框集合中,寻找包含当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在当前帧图像中的检测位置;再基于每一个目标候选框对应的目标物体对应的检测位置,更新每一个目标候选框对应的目标物体在当前帧图像中的当前位置,进而计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。通过该方法,避免了分别预测不同摄像头中拍摄的当前帧图像中的目标物体在下一帧图像中的预测位置,从而避免了融合不同预测位置来得到目标物体在下一帧图像中的预测位置,进而提升了目标物体在下一帧图像中的位置的预测准确率。
下面结合具体的应用过程对本申请技术方案做进一步的说明。
如图4所示为跨摄像头多目标跟踪方法的处理过程示意图,首先将N个摄像头中的每一个摄像头各自拍摄的当前帧图像输入目标检测模块,其中,N是大于1的整数;
在目标检测模块中,基于目标检测模型分别对N张当前帧图像进行处理,分别得到每一张当前帧图像中的每一个目标物体对应的第一检测框,然后将每一个第一检测框输入合并模块;
在合并模块中,从每一个第一检测框中筛选包含相同目标物体的第一检测框;然后通过获取包含相同目标物体的第一检测框的并集的方式,合并包含相同目标物体的第一检测框,得到H个第二检测框,其中,H是大于零的整数;其次将H个第二检测框与未合并的第一检测框作为候选框集合中的候选框;将候选框集合中的每一个候选框传输至匹配模块;
在匹配模块中,筛选候选框集合中包含当前帧之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框的位置作为每一个目标候选框对应的目标物体在当前帧图像中的检测位置,然后将每一个目标候选框对应的目标物体对应的检测位置传输至更新模块;
在更新模块中,通过融合每一个目标候选框对应的目标物体对应的检测位置与上一帧预测位置,更新每一个目标候选框对应的目标物体在当前帧图像中对应的当前位置,并将每一个目标候选框对应的目标物体对应的当前位置传输至预测模块;
在预测模块中,基于每一个目标候选框对应的目标物体对应的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
通过上述的方式,基于目标检测模块得到了每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框;然后在合并模块中,针对每一个第一检测框,合并了包含相同目标物体的第一检测框,得到H个第二检测框,并将H个第二检测框与未合并的第一检测框作为候选框集合中的候选框;其次在匹配模块中,从候选框集合中寻找包含当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在当前帧图像中的检测位置;进一步在更新模块中,基于每一个目标候选框对应的目标物体对应的检测位置与上一帧预测位置,得到每一个目标候选框对应的目标物体在当前帧图像中的当前位置;进而在预测模块中,基于每一个目标候选框对应的目标物体在当前帧图像中的当前位置,计算出了每一个目标候选框对应的目标物体在下一帧图像中的预测位置。通过该方法,避免了分别预测不同摄像头中拍摄的当前帧图像中的目标物体在下一帧图像中的预测位置,从而避免了融合不同预测位置来得到目标物体在下一帧图像中的预测位置,进而提升了目标物体在下一帧图像中的位置的预测准确率。
基于同一发明构思,本申请实施例中还提供了一种跨摄像头多目标跟踪系统,如图5所示为本申请提供的一种跨摄像头多目标跟踪系统的结构示意图,该系统包括:
获取模块501,用于获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框;
合并模块502,用于针对每一个第一检测框,合并包含相同目标物体的第一检测框,得到H个第二检测框,并将H个第二检测框与未合并的第一检测框作为候选框集合中的候选框,其中,H是大于零的整数;
筛选模块503,用于在候选框集合中,寻找包含当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在当前帧图像中的检测位置;
处理模块504,用于基于每一个目标候选框对应的目标物体对应的检测位置,更新每一个目标候选框对应的目标物体在当前帧图像中的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
在一种可能的实施方式中,获取模块501,具体用于获取每一个摄像头各自拍摄的当前帧图像;
将每一张当前帧图像分别输入目标检测模块,分别输出每一张当前帧图像中的每一个目标物体各自对应的第一检测框。
在一种可能的实施方式中,合并模块502,具体用于获取每一个第一检测框各自对应的特征向量;
基于每一个第一检测框各自对应的特征向量,计算每一个第一检测框两两之间的特征距离;
将每一个第一检测框各自对应的第一坐标均转化为同一个坐标系中的第二坐标,得到每一个第一检测框各自对应的第二坐标;
针对每一个第一检测框,根据每一个第一检测框两两之间的特征距离、每一个第一检测框各自对应的第二坐标以及每一个第一检测框各自对应的尺寸,筛选包含相同目标物体的第一检测框;
合并包含相同目标物体的第一检测框,得到H个第二检测框,并将H个第二检测框与未合并的第一检测框作为候选框集合中的候选框。
在一种可能的实施方式中,筛选模块503,具体用于针对候选框集合中的每一个候选框,依次执行以下第一匹配操作:
将候选框集合中的一个候选框作为匹配候选框;
通过匹配候选框与当前帧图像之前的所有帧图像中的每一个目标物体依次执行第二匹配操作,确认匹配候选框是否包含当前帧图像之前的所有帧图像中的目标物体;
若否,将匹配候选框中的目标物体作为新目标物体;
若是,将匹配候选框作为目标候选框,并将目标候选框的位置作为目标候选框对应的目标物体在当前帧图像中的检测位置;
直至每一个候选框均执行完第一匹配操作,得到每一个目标候选框对应的目标物体在当前帧图像中的检测位置。
在一种可能的实施方式中,筛选模块503,具体用于将当前帧图像之前的所有帧图像中的一个目标物体作为匹配物体;
获取匹配物体对应的第三检测框、匹配物体对应的第一图像特征以及匹配候选框中的目标物体对应的第二图像特征;
计算第二图像特征与第一图像特征之间的图像匹配分数以及匹配候选框与第三检测框之间的框匹配分数;
判断图像匹配分数大于图像预设阈值与框匹配分数大于框预设阈值是否同时满足;
若否,确认匹配候选框不包含匹配物体;
若是,确认匹配候选框包含匹配物体。
在一种可能的实施方式中,处理模块504,具体用于获取每一个目标候选框对应的目标物体对应的上一帧预测位置,其中,上一帧预测位置是在上一帧图像中预测的每一个目标候选框对应的目标物体在当前帧图像中对应的位置;
基于每一个目标候选框对应的目标物体对应的检测位置与上一帧预测位置,更新每一个目标候选框对应的目标物体在当前帧图像中的当前位置;
根据每一个目标候选框对应的目标物体对应的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
在一种可能的实施方式中,处理模块504,具体用于根据每一个目标候选框对应的目标物体对应的当前位置,确定每一个目标候选框对应的目标物体中存在预跨视角目标物体,其中,预跨视角目标物体是即将由第一摄像头的视角进入第二摄像头的视角的目标物体;
针对每一个预跨视角目标物体,均执行以下预测操作:
计算预跨视角目标物体在第一摄像头拍摄的下一帧图像中的第一预测位置;
判断预跨视角目标物体在第二摄像头的视角是否是第一摄像头与第二摄像头的视角重叠区;
若是,将第一预测位置转化为第二摄像头的视角中的位置,得到预跨视角目标物体在下一帧图像中的预测位置;
若否,截取第一预测位置对应的第四检测框超出第一摄像头的视角的第五检测框,将第五检测框对应的位置转化为第二摄像头的视角中的第二预测位置,得到预跨视角目标物体在下一帧图像中的预测位置;
直至每一个预跨视角目标物体均执行完预测操作,得到预跨视角目标物体在下一帧图像中的预测位置,并计算每一个目标候选框对应的目标物体中的非预跨视角目标物体在下一帧图像中的预测位置。
基于同一发明构思,本申请实施例中还提供了一种电子设备,上述电子设备可以实现前述跨摄像头多目标跟踪系统的功能,参考图6,上述电子设备包括:
至少一个处理器601,以及与至少一个处理器601连接的存储器602,本申请实施例中不限定处理器601与存储器602之间的具体连接介质,图6中是以处理器601和存储器602之间通过总线600连接为例。总线600在图6中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线600可以分为地址总线、数据总线、控制总线等,为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。或者,处理器601也可以称为控制器,对于名称不做限制。
在本申请实施例中,存储器602存储有可被至少一个处理器601执行的指令,至少一个处理器601通过执行存储器602存储的指令,可以执行前文论述的跨摄像头多目标跟踪方法。处理器601可以实现图6所示的系统中各个模块的功能。
其中,处理器601是该系统的控制中心,可以利用各种接口和线路连接整个该控制设备的各个部分,通过运行或执行存储在存储器602内的指令以及调用存储在存储器602内的数据,该系统的各种功能和处理数据,从而对该系统进行整体监控。
在一种可能的设计中,处理器601可包括一个或多个处理单元,处理器601可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器601中。在一些实施例中,处理器601和存储器602可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器601可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的跨摄像头多目标跟踪方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器602作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器602可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器602是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器602还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
通过对处理器601进行设计编程,可以将前述实施例中介绍的跨摄像头多目标跟踪方法所对应的代码固化到芯片内,从而使芯片在运行时能够执行图5所示的实施例的跨摄像头多目标跟踪方法的步骤。如何对处理器601进行设计编程为本领域技术人员所公知的技术,这里不再赘述。
基于同一发明构思,本申请实施例还提供一种存储介质,该存储介质存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行前文论述的跨摄像头多目标跟踪方法。
在一些可能的实施方式中,本申请提供的跨摄像头多目标跟踪方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在装置上运行时,程序代码用于使该控制设备执行本说明书上述描述的根据本申请各种示例性实施方式的跨摄像头多目标跟踪方法中的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种跨摄像头多目标跟踪方法,其特征在于,所述方法包括:
获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框;
针对每一个第一检测框,合并包含相同目标物体的第一检测框,得到H个第二检测框,并将所述H个第二检测框与未合并的第一检测框作为候选框集合中的候选框,其中,H是大于零的整数;
在所述候选框集合中,寻找包含所述当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在所述当前帧图像中的检测位置;
基于每一个目标候选框对应的目标物体对应的检测位置,更新每一个目标候选框对应的目标物体在所述当前帧图像中的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
2.如权利要求1所述的方法,其特征在于,所述获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框,包括:
获取每一个摄像头各自拍摄的当前帧图像;
将每一张当前帧图像分别输入目标检测模块,分别输出每一张当前帧图像中的每一个目标物体各自对应的第一检测框。
3.如权利要求1所述的方法,其特征在于,所述针对每一个第一检测框,合并包含相同目标物体的第一检测框,得到H个第二检测框,并将所述H个第二检测框与未合并的第一检测框作为候选框集合中的候选框,包括:
获取每一个第一检测框各自对应的特征向量;
基于每一个第一检测框各自对应的特征向量,计算每一个第一检测框两两之间的特征距离;
将每一个第一检测框各自对应的第一坐标均转化为同一个坐标系中的第二坐标,得到每一个第一检测框各自对应的第二坐标;
针对每一个第一检测框,根据每一个第一检测框两两之间的特征距离、每一个第一检测框各自对应的第二坐标以及每一个第一检测框各自对应的尺寸,筛选包含相同目标物体的第一检测框;
合并包含相同目标物体的第一检测框,得到所述H个第二检测框,并将所述H个第二检测框与未合并的第一检测框作为所述候选框集合中的候选框。
4.如权利要求1所述的方法,其特征在于,所述在所述候选框集合中,寻找包含所述当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在所述当前帧图像中的检测位置,包括:
针对所述候选框集合中的每一个候选框,依次执行以下第一匹配操作:
将所述候选框集合中的一个候选框作为匹配候选框;
通过所述匹配候选框与所述当前帧图像之前的所有帧图像中的每一个目标物体依次执行第二匹配操作,确认所述匹配候选框是否包含所述当前帧图像之前的所有帧图像中的目标物体;
若否,将所述匹配候选框中的目标物体作为新目标物体;
若是,将所述匹配候选框作为所述目标候选框,并将所述目标候选框的位置作为所述目标候选框对应的目标物体在所述当前帧图像中的检测位置;
直至每一个候选框均执行完所述第一匹配操作,得到每一个目标候选框对应的目标物体在所述当前帧图像中的检测位置。
5.如权利要求4所述的方法,其特征在于,所述第二匹配操作,包括:
将所述当前帧图像之前的所有帧图像中的一个目标物体作为匹配物体;
获取所述匹配物体对应的第三检测框、所述匹配物体对应的第一图像特征以及所述匹配候选框中的目标物体对应的第二图像特征;
计算所述第二图像特征与所述第一图像特征之间的图像匹配分数以及所述匹配候选框与所述第三检测框之间的框匹配分数;
判断所述图像匹配分数大于图像预设阈值与所述框匹配分数大于框预设阈值是否同时满足;
若否,确认所述匹配候选框不包含所述匹配物体;
若是,确认所述匹配候选框包含所述匹配物体。
6.如权利要求1所述的方法,其特征在于,所述基于每一个目标候选框对应的目标物体对应的检测位置,更新每一个目标候选框对应的目标物体在所述当前帧图像中的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置,包括:
获取每一个目标候选框对应的目标物体对应的上一帧预测位置,其中,所述上一帧预测位置是在上一帧图像中预测的每一个目标候选框对应的目标物体在所述当前帧图像中对应的位置;
基于每一个目标候选框对应的目标物体对应的检测位置与所述上一帧预测位置,更新每一个目标候选框对应的目标物体在所述当前帧图像中的当前位置;
根据每一个目标候选框对应的目标物体对应的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
7.如权利要求6所述的方法,其特征在于,所述根据每一个目标候选框对应的目标物体对应的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置,包括:
根据每一个目标候选框对应的目标物体对应的当前位置,确定每一个目标候选框对应的目标物体中存在预跨视角目标物体,其中,所述预跨视角目标物体是即将由第一摄像头的视角进入第二摄像头的视角的目标物体;
针对每一个所述预跨视角目标物体,均执行以下预测操作:
计算所述预跨视角目标物体在所述第一摄像头拍摄的下一帧图像中的第一预测位置;
判断所述预跨视角目标物体在所述第二摄像头的视角是否是所述第一摄像头与所述第二摄像头的视角重叠区;
若是,将所述第一预测位置转化为所述第二摄像头的视角中的位置,得到所述预跨视角目标物体在下一帧图像中的预测位置;
若否,截取所述第一预测位置对应的第四检测框超出所述第一摄像头的视角的第五检测框,将所述第五检测框对应的位置转化为所述第二摄像头的视角中的第二预测位置,得到所述预跨视角目标物体在下一帧图像中的预测位置;
直至每一个所述预跨视角目标物体均执行完所述预测操作,得到所述预跨视角目标物体在下一帧图像中的预测位置,并计算每一个目标候选框对应的目标物体中的非预跨视角目标物体在下一帧图像中的预测位置。
8.一种跨摄像头多目标跟踪系统,其特征在于,所述系统包括:
获取模块,用于获取每一个摄像头各自拍摄的当前帧图像中的每一个目标物体各自对应的第一检测框;
合并模块,用于针对每一个第一检测框,合并包含相同目标物体的第一检测框,得到H个第二检测框,并将所述H个第二检测框与未合并的第一检测框作为候选框集合中的候选框,其中,H是大于零的整数;
筛选模块,用于在所述候选框集合中,寻找包含所述当前帧图像之前的所有帧图像中的目标物体的目标候选框,并将每一个目标候选框各自的位置分别作为每一个目标候选框对应的目标物体在所述当前帧图像中的检测位置;
处理模块,用于基于每一个目标候选框对应的目标物体对应的检测位置,更新每一个目标候选框对应的目标物体在所述当前帧图像中的当前位置,计算每一个目标候选框对应的目标物体在下一帧图像中对应的预测位置。
9.一种电子设备,其特征在于,包括:
存储器,用于存放计算机程序;
处理器,用于执行所述存储器上所存放的计算机程序时,实现权利要求1-7中任一项所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的方法步骤。
CN202310443814.1A 2023-04-19 2023-04-19 一种跨摄像头多目标跟踪方法、系统及电子设备 Pending CN116543024A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310443814.1A CN116543024A (zh) 2023-04-19 2023-04-19 一种跨摄像头多目标跟踪方法、系统及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310443814.1A CN116543024A (zh) 2023-04-19 2023-04-19 一种跨摄像头多目标跟踪方法、系统及电子设备

Publications (1)

Publication Number Publication Date
CN116543024A true CN116543024A (zh) 2023-08-04

Family

ID=87456947

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310443814.1A Pending CN116543024A (zh) 2023-04-19 2023-04-19 一种跨摄像头多目标跟踪方法、系统及电子设备

Country Status (1)

Country Link
CN (1) CN116543024A (zh)

Similar Documents

Publication Publication Date Title
Bensrhair et al. A cooperative approach to vision-based vehicle detection
US4731858A (en) Arrangement for the segmentation of lines
CN110587597B (zh) 一种基于激光雷达的slam闭环检测方法及检测系统
CN109658454B (zh) 一种位姿信息确定方法、相关装置及存储介质
CN106682619B (zh) 一种对象跟踪方法及装置
CN111798487B (zh) 目标跟踪方法、装置和计算机可读存储介质
JP2021525409A (ja) ターゲット検出方法及び装置、機器並びに記憶媒体
CN112132130B (zh) 一种面向全场景的实时性车牌检测方法及系统
CN115063454B (zh) 多目标跟踪匹配方法、装置、终端及存储介质
CN113095228B (zh) 图像中的目标检测方法、装置及计算机可读存储介质
CN112561859A (zh) 基于单目视觉的锚护用钢带钻孔与锚网识别方法及装置
CN116543143A (zh) 一种目标检测模型的训练方法、目标检测方法及装置
JPH1185993A (ja) 領域検出装置
CN116681739A (zh) 目标运动轨迹生成方法、装置及电子设备
CN113256683B (zh) 目标跟踪方法及相关设备
CN116543024A (zh) 一种跨摄像头多目标跟踪方法、系统及电子设备
CN115457592A (zh) 行人识别的方法及装置
CN115953434B (zh) 轨迹匹配方法、装置、电子设备和存储介质
CN111681264A (zh) 一种监控场景的实时多目标跟踪方法
CN115171011A (zh) 一种多类别建材视频计数方法及系统、计数设备
CN117882109A (zh) 目标跟踪方法、目标跟踪系统和电子设备
CN117523249A (zh) 一种目标检测方法、装置、电子设备及存储介质
CN113689465B (zh) 对目标对象进行预测的方法及装置、存储介质及电子设备
CN113469993B (zh) 一种检测运动状态异常的对象的方法、装置及电子设备
CN112102356B (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