CN116977362A - 目标跟踪方法、装置、计算机设备和存储介质 - Google Patents

目标跟踪方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN116977362A
CN116977362A CN202210415978.9A CN202210415978A CN116977362A CN 116977362 A CN116977362 A CN 116977362A CN 202210415978 A CN202210415978 A CN 202210415978A CN 116977362 A CN116977362 A CN 116977362A
Authority
CN
China
Prior art keywords
target
target frame
image
pedestrian image
current
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
CN202210415978.9A
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.)
Shenzhen Pudu Technology Co Ltd
Original Assignee
Shenzhen Pudu Technology 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 Shenzhen Pudu Technology Co Ltd filed Critical Shenzhen Pudu Technology Co Ltd
Priority to CN202210415978.9A priority Critical patent/CN116977362A/zh
Priority to PCT/CN2023/084663 priority patent/WO2023202335A1/zh
Publication of CN116977362A publication Critical patent/CN116977362A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/20Analysis of motion
    • G06T7/254Analysis of motion involving subtraction of images
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10032Satellite or aerial image; Remote sensing
    • G06T2207/10044Radar image

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

本申请涉及一种目标跟踪方法、装置、计算机设备和存储介质。方法包括:根据点云和目标行人图像,确定在当前获取时刻时,目标行人图像中每一目标的三维检测位置;对于目标行人图像中的任一目标,将任一目标的三维检测位置与上一目标行人图像中每一目标的三维预测位置进行匹配,确定第一匹配结果;根据第一匹配结果判断任一目标是否跟踪成功,若任一目标跟踪成功,则利用预设算法模型对第一目标框的三维检测位置进行调整,得到第一目标框更新后的三维位置。通过解耦2D和3D的卡尔曼滤波器,利用激光雷达和视觉传感器数据获取目标行人的3D信息,利用视觉传感器数据获取目标行人的2D检测框信息,充分利用数据对目标行人进行跟踪,提高目标跟踪准确性。

Description

目标跟踪方法、装置、计算机设备和存储介质
技术领域
本申请涉及信息与通信技术领域,特别是涉及一种目标跟踪方法、装置、计算机设备和存储介质。
背景技术
在机器人对环境的感知中,最重要的是对行人的三维感知,其中三维感知包括位置和速度。不同于二维视觉检测,基于三维的目标检测可用于空间路径规划,用于机器人的导航与避障。但是三维目标检测具有更大的挑战性,需要更多的输出参数来指定目标周围面向三维空间的边界框。现有的三维目标检测算法根据传感器不同,大致可以分为视觉、激光点云和多模态融合三类。视觉方法由于其成本低、纹理特征丰富等优势,在目标检测领域中被广泛使用,激光点云数据具有准确的深度信息,并且具有明显的三维空间特征,也被广泛应用于三维目标检测中。但是,激光雷达等方法的输入数据分辨率通常低于图像,这使得对于较远距离的目标检测精度不高。
发明内容
基于此,有必要针对上述技术问题,提供一种机器人,机器人上搭载有激光雷达和视觉传感器,所述机器人包括存储器和处理器,所述存储器中存储有可执行程序代码,所述处理器执行所述可执行程序代码时能够实现稳定准确的目标跟踪。
第一方面,本申请提供的机器人上的处理器执行所述可执行程序代码时用于实现以下步骤:
通过激光雷达实时获取机器人所在空间的目标点云数据,和通过视觉传感器实时拍摄得到机器人所在空间的当前行人图像;
利用预设的行人检测模型对当前行人图像进行行人检测,得到当前行人图像中的至少一个第一目标框;
对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,其中,上一行人图像为视觉传感器在获取当前行人图像之前获取的图像;
根据当前行人图像中的每一第一目标框与目标点云数据,确定每一第一目标框的三维检测位置,目标点云数据是与当前行人图像的获取时刻同步获取的点云数据;
在当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维检测位置之间的距离满足预设阈值时,表征第一目标框跟踪成功,若第一目标框跟踪成功,则利用预设算法模型对第一目标框的三维检测位置进行调整,得到第一目标框更新后的三维位置。
在其中一个实施例中,通过激光雷达实时获取机器人所在空间的目标点云数据,包括:
通过激光雷达实时获取机器人所在空间的当前多个第一数据;
对当前多个第一数据中每个第一数据进行坐标转换,得到当前多个第一数据中每个第一数据坐标转换后对应的第一目标点;
利用直线检测算法模型对多个第一目标点进行直线过滤检测,得到多个第二目标点;
对多个第二目标点进行聚类,得到多个第一目标类;
确定多个第一目标类中每个第一目标类中点的数量是否在预设范围内,将多个第一目标类中点的数量在预设范围内的第一目标类确定为第二目标类;
将所有第二目标类中各个点组成的集合确定为所述目标点云数据。
在其中一个实施例中,对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,包括:
对上一行人图像中至少一个第二目标框中每个第二目标框进行预测,得到上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框;
将当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框进行匹配,从上一行人图像中至少一个第二目标框对应的多个预测目标框中确定当前行人图像中的每一第一目标框对应的预测目标框;
根据当前行人图像中的每一第一目标框对应的预测目标框,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框。
在其中一个实施例中,将当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框进行匹配,从上一行人图像中至少一个第二目标框对应的多个预测目标框中确定当前行人图像中的每一第一目标框对应的预测目标框,包括:
计算当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框之间的交并比,得到当前行人图像中的每一第一目标框的多个交并比值;
将当前行人图像中的每一第一目标框的多个交并比值中最小交并比值对应的预测目标框作为当前行人图像中的每一第一目标框对应的预测目标框。
在其中一个实施例中,上一行人图像与当前目标行人图像之间存在若干帧行人图像;相应地,对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,包括:
将上一行人图像、当前目标行人图像及若干帧行人图像,作为一组匹配图像;
将一组匹配图像中每相邻两帧行人图像中的目标框进行匹配,得到一组匹配图像中每相邻两帧行人图像中相匹配的目标框;
根据一组匹配图像中每相邻两帧行人图像中相匹配的目标框,确定至少一个第二目标框中与每一第一目标框相匹配的第二目标框。
在其中一个实施例中,将一组匹配图像中每相邻两帧行人图像中的目标框进行匹配,得到一组匹配图像中每相邻两帧行人图像中相匹配的目标框,包括:
将一组匹配图像中任意相邻两帧匹配图像中最早拍摄时刻的图像做第一匹配图像,将一组匹配图像中与第一匹配图像为相邻帧且拍摄时刻较第一匹配图像更晚的匹配图像作为第二匹配图像;
利用第一算法模型对第一匹配图像中任一目标框在第二匹配图像中的位置进行预测,得到第一匹配图像中任一目标框在第二匹配图像中的预测目标框;
利用第二预设算法对第二匹配图像中任一目标框与第一匹配图像中任一目标框在第二匹配图像中的预测目标框进行匹配,得到在第一匹配图像的预测目标框中与第二匹配图像中任一目标框相匹配的预测目标框;
根据第一匹配图像对应的预测目标框与第二匹配图像中目标框的对应关系,得到在第一匹配图像中和第二匹配图像中相匹配的目标框。
在其中一个实施例中,根据当前行人图像中的每一第一目标框与目标点云数据,确定每一第一目标框的三维检测位置,包括:
将目标点云数据中的各个点投影至当前行人图像中;
根据当前行人图像中每一第一目标框在当前行人图像中的位置,和目标点云数据中的各个点投影至目标行人图像中的位置,得到目标点云数据中属于当前目标行人图像中每一第一目标框的目标点;
根据目标点云数据中属于当前行人图像中每一第一目标框的点的三维坐标,得到当前目标行人图像中每一第一目标框的三维检测位置。
第二方面,本申请提供一种目标跟踪方法,方法包括:
通过激光雷达实时获取机器人所在空间的目标点云数据,和通过视觉传感器实时拍摄得到机器人所在空间的当前行人图像;
利用预设的行人检测模型对当前行人图像进行行人检测,得到当前行人图像中的至少一个第一目标框;
对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,其中,上一行人图像为视觉传感器在获取当前行人图像之前获取的图像;
根据当前行人图像中的每一第一目标框与目标点云数据,确定每一第一目标框的三维检测位置,目标点云数据是与当前行人图像的获取时刻同步获取的点云数据;
在当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维位置之间的距离满足预设阈值时,表征第一目标框跟踪成功,若第一目标框跟踪成功,利用预设算法模型对第一目标框的三维检测位置进行调整,得到第一目标框更新后的三维位置。
在其中一个实施例中,通过激光雷达实时获取机器人所在空间的目标点云数据,包括:
通过激光雷达实时获取机器人所在空间的当前多个第一数据;
对当前多个第一数据中每个第一数据进行坐标转换,得到当前多个第一数据中每个第一数据坐标转换后对应的第一目标点;
利用直线检测算法模型对多个第一目标点进行直线过滤检测,得到多个第二目标点;
对多个第二目标点进行聚类,得到多个第一目标类;
确定多个第一目标类中每个第一目标类中点的数量是否在预设范围内,将多个第一目标类中点的数量在预设范围内的第一目标类确定为第二目标类;
将所有第二目标类中各个点组成的集合确定为目标点云数据。
第三方面,本申请还提供了一种计算机可读存储介质。计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
通过激光雷达实时获取机器人所在空间的目标点云数据,和通过视觉传感器实时拍摄得到机器人所在空间的当前行人图像;
利用预设的行人检测模型对当前行人图像进行行人检测,得到当前行人图像中的至少一个第一目标框;
对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,其中,上一行人图像为视觉传感器在获取当前行人图像之前获取的图像;
根据当前行人图像中的每一第一目标框与目标点云数据,确定每一第一目标框的三维检测位置,目标点云数据是与当前行人图像的获取时刻同步获取的点云数据;
在当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维检测位置之间的距离满足预设阈值时,表征第一目标框跟踪成功,若第一目标框跟踪成功,则利用预设算法模型对第一目标框的三维检测位置进行调整,得到第一目标框更新后的三维位置。
上述机器人和目标跟踪方法、计算机设备和存储介质,通过激光雷达实时获取机器人所在空间的目标点云数据,和通过视觉传感器实时拍摄得到机器人所在空间的当前行人图像;利用预设的行人检测模型对当前行人图像进行行人检测,得到当前行人图像中的至少一个第一目标框;对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,其中,上一行人图像为视觉传感器在获取当前行人图像之前获取图像;根据当前行人图像中的每一第一目标框与目标点云数据,确定每一第一目标框的三维检测位置,目标点云数据是与当前行人图像的获取时刻同步获取的点云数据;在当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维检测位置之间的距离满足预设阈值时,表征第一目标框跟踪成功,若第一目标框跟踪成功,则利用预设算法模型对第一目标框的三维检测位置进行调整,得到第一目标框更新后的三维位置。通过解耦2D和3D的卡尔曼滤波器,利用激光雷达和视觉传感器数据获取目标行人的3D信息,利用视觉传感器数据获取目标行人的2D检测框信息,充分利用全部数据对目标行人进行跟踪,提高了检测结果的准确性。
附图说明
图1为一个实施例中目标跟踪方法的应用环境图;
图2为一个实施例中目标跟踪方法的流程示意图;
图3为一个实施例中目标跟踪方法中数据采集的时间示意图;
图4为一个实施例中行人图像检测框示意图;
图5为一个实施例中点云过滤俯视图;
图6为另一个实施例中目标跟踪方法的流程示意图;
图7为又一个实施例中目标跟踪方法的流程示意图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的目标跟踪方法,可以应用于实时视频监控场景,也可以视频后期处理场景,本申请实施例对此不作具体限定。为了便于理解,本申请实施例以应用于实时视频监控场景为例,通过本申请实施例提供的方法可以实现机器人对目标行人的跟踪检测。本申请实施例提供的方法可以应用于如图1所示的应用环境中。其中,终端102通过通信网络与服务器104进行通信,具体可将拍摄到的视频流和激光雷达获取的点云数据传输至服务器104,由服务器104根据视频流和点云数据对目标进行跟踪。数据存储系统可以存储服务器104需要处理的视频流和点云数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。
其中,终端102为能够获取视频流的设备,可以包括但不限于具有视觉传感器的机器人、各种个人计算机、笔记本电脑、智能手机、平板电脑及物流网设备等。服务器104服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。
在一些实施例中,终端为机器人,如图2所示,本申请实施例提供一种方法,由机器人完成,所述机器人上搭载有激光雷达和视觉传感器,所述机器人包括存储器和处理器,所述存储器中存储有可执行程序代码,所述处理器用于执行所述可执行程序代码时实现如下步骤:
步骤202,通过激光雷达实时获取机器人所在空间的目标点云数据,和通过视觉传感器实时拍摄得到机器人所在空间的当前行人图像;
其中,点云是通过激光雷达获取的带空间坐标的采样点的一个集合,本质上点云是一个三维坐标系统中的一组向量,其中包含了检测到的几何位置信息。具体地,机器人上安装有通过激光雷达,在对行人进行检测跟踪的时候,激光雷达以预设频率发射激光,通过激光的反射获取到周围环境中“障碍物”对应的点云数据,其中“障碍物”可能是行人,也可能是环境中的建筑、植被、摆件等。由于点云是带有空间坐标的向量,故可以通过找到目标行人对应的点云来确定目标行人的3D位置。
需要说明的是,激光雷达和视觉传感器之间具有一定的耦合性,在启动激光雷达对目标行人进行检测的同时,也会启动视觉传感器获取行人图像,但是通常情况下,视觉传感器进行拍摄的频率和激光雷达发射激光的频率是不同的,例如RGB相机帧率通常可以达到30FPS,激光雷达Lidar的帧率为10FPS,这种帧率差使得RGB图像和Lidar点云无法匹配上所有帧,故需要激光雷达每一次获取到点云数据的时候,从视觉传感器获取的行人图像中确定一个目标行人图像,例如以激光雷达获取点云数据的时刻为当前获取时刻,则目标行人图像应满足拍摄时刻是在当前获取时刻之前且距离当前获取时刻最近这一条件,才能确保点云数据和行人图像在进行数据融合的时候误差最小,参见图3,若目标点云数据的获取时刻为T时刻,则对应的目标行人图像应该为第K时刻获取的行人图像。需要补充的是,通过视觉传感器实时拍摄得到机器人所在空间的当前图像,在当前图像中行人时,则将当前图像确认为当前行人图像。
步骤204,利用预设的行人检测模型对当前行人图像进行行人检测,得到当前行人图像中的至少一个第一目标框;
行人检测模型对图像中的行人检测,目的是获取行人在图像中的2D检测框坐标,通用的目标检测模型都可以很好的实现,常见的模型有Faster RCNN、CenterNet、Yolo系列等,其中轻量级目标检测模型在GPU(Graphic Processing Unit,图形处理器)或DSP(Digital Signal Processing,数字信号处理)上可以轻松实现实时检测。
行人检测模型的输入数据是RGB图像,输出值是行人在图像中的位置,如图4中的白色框所示,即该行人在当前帧中的检测结果。检测框的位置可以用数组(x,y,w,h)来表示,其中x和y是检测框左上角角点在图像坐标系中的坐标,w和h分别表示检测框的像素宽度和像素高度。当前行人图像中的至少一个第一目标框,其中,至少一个第一目标框可以是1个第一目标框,也可以是两个或两个以上的第一目标框。一般在对行人图像检测时,可以检测出行人图像中多个行人时,也即会检测到多个目标框,在本实施例中,一个第一目标框代表行人图像中的一个行人。为目标建立运动模型,用于推算出目标在下一帧行人图像中的状态。本实施例将相邻帧之间的目标运动近似为恒速运动。
步骤206,对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,其中,上一行人图像为视觉传感器在获取当前行人图像之前获取的图像;
可以理解的是,利用行人检测模型对每一行人图像检测时,均可以得到相应行人对应的目标框,但是并不能确定两张行人图像中的目标框之间的对应关系,故需利用算法将两者进行匹配。至少一个第二目标框可以是1个第二目标框,也可以是两个或两个以上的第二目标框本申请实施例不对将第一目标框和第二目标框进行匹配的方式作具体限定,包括但不限于采用卡尔曼滤波算法或粒子滤波算法,对第二目标框进行预测,再根据匹配算法进行匹配。
另外,在本申请实施例中,需要获取跟踪目标的而是三维位置信息,根据三维位置信息的获取原理可知,对于任一目标而言,行人图像与点云数据必须达到时间同步,也即上一行人图像是在当前行人图像之前获取的,并且是距离上一点云数据获取时间戳最近的一帧行人图像。
具体地,将当前行人图像的获取时刻定为K时刻,上一行人图像的获取时刻为K-1时刻,则可以利用卡尔曼滤波获取上一行人图像中的至少一个第二目标框在第K时刻的预测状态,再将至少一个第一目标框在第K时刻的状态与至少一个第二目标框在第K时刻的预测状态进行匹配,确定与第一目标框匹配成功的第二目标框,该算法中的一个重要参数是K-1时刻到K时刻的时间差,可以根据视频传感器的工作频率确定,也可以直接通过获取时刻在计算时刻差确定。
其中,在匹配时,可以采用匈牙利匹配算法,将预测的结果与当前帧的检测结果进行目标关联;例如前一帧输出m个跟踪对象,当前帧检测到n个目标对象,匈牙利算法通过构建关联矩阵来将两帧的目标对象关联上,关联矩阵的核心是通过交并比来度量两个物体之间的距离。由于卡尔曼滤波器的参数更新频率很高,两帧之间行人的变化小,所以交并比较大,匹配成功率高,进而使得跟踪结果更为稳定。以图4为例,白色框和灰色框的交并比很大,很容易就满足阈值条件,从而匹配成功。
另外,在匈牙利匹配算法中,匹配指标参数的类型可以基于运动状态包括的数据类型种类及特征包括的数据类型种类所确定。例如,若运动状态同时包括位置和速度,则跟踪目标的运动状态在下一帧的预测值可以视为一个由位置和速度组成的点,检测目标的运动状态在下一帧中的检测值也可以视为一个点。
由此,运动状态可以包括不同类型的两种数据,匹配指标参数可以相应包括欧式距离,也即可以获取跟踪目标的运动状态在下一帧的预测值与检测目标的运动状态在下一帧中的检测值之间的欧式距离。进一步地,欧式距离作为衡量两个样本之间差异的一项参考量,鉴于本身的计算过程,可能会因位置与速度使用的是不同的度量标准而导致欧式距离衡量失效。因此,实际实施过程中,匹配指标参数可以不包括欧式距离,而是包括马氏距离。通过使用马氏距离,即可使得衡量过程不会受到不同度量标准的影响,且马氏距离还可以排除变量之间(如位置与速度之间)相关性的干扰。
步骤208,根据当前行人图像中的每一第一目标框与目标点云数据,确定每一第一目标框的三维检测位置,目标点云数据是与当前行人图像的获取时刻同步获取的点云数据;
根据上述解释可知,当前行人图像与目标点云数据之间进行了时间同步,对于任一目标行人而言,当前行人图像中和点云数据中均包括了目标行人的位置信息,通过二维信息与三维信息之间的转换,可以得到目标行人的三维检测位置。
具体的,已知视频传感器和激光雷达在机器人上的安装参数,其中包括安装的位置和角度,通过安装参数可以将数据从传感器坐标系(激光雷达和视频传感器)转到机器人坐标系,故激光雷达和是视频传感器获取的数据之间可以通过机器人坐标系进行一定的转换,进而将点云数据投影到视频传感器拍摄的行人图像中,通过判断点云是否投影到行人图像中的检测框中,可以确定每一检测框的位置,且这个位置是通过投影到检测框中的点云确定的,是一个在三维空间中的位置。另外,还可以通过将行人图像投影到点云数据所在的三维空间中确定目标框的三维检测位置。
步骤210,在当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维检测位置之间的距离满足预设阈值时,表征第一目标框跟踪成功,若第一目标框跟踪成功,则利用预设算法模型对第一目标框的三维检测位置进行调整,得到第一目标框更新后的三维位置。
鉴于跟踪目标在不同帧间的连续性、以及同一视频流中的视频帧通常是相同尺寸且对应相同视角,若跟踪目标在某一视频帧的某一区域出现,且该跟踪目标在该视频帧的下一帧中也出现了,则该跟踪目标在该下一帧中出现的位置通常也是该区域附近。基于此,实际实施过程中,可以根据两个目标框的三维位置之间的距离,进一步判断跟踪目标是否跟踪成功。
由于机器人对行人的感知是3D感知,其3D信息包括位置和速度,因此,需要根据三维检测位置进行信息融合,计算得到速度。本申请将相邻两帧之间的目标运动近似为恒速运动,独立于其他目标的运动和相机的运动,每一目标的状态用一个6维向量(x,y,z,vxt,vyt,vzt)来完整描述,其中,(x,y,z)表示行人在世界坐标系中的坐标,(vxt,vyt,vzt)表示在不同方向上的速度。然后,可以采用3D卡尔曼滤波器,预测跟踪上的行人在当前时刻的位置坐标和运动速度。
具体地,根据任一目标在当前获取时刻的三维检测位置和任一目标在上一获取时刻的三维位置信息,确定任一目标在当前获取时刻的速度。在通过位置信息和时间间隔计算速度时,是对三维坐标系的三个轴向分别计算的,也即通过三维检测位置(xt-1,yt-1,zt-1)和(xt,yt,zt)计算得到速度为(vxt,vyt,vzt)。
在利用3D卡尔曼滤波器对行人位置进行预测时,对于任一目标,能够确定任一目标在当前获取时刻的三维检测位置(xt,yt,zt)和匹配成功的第二目标框对应的当前获取时刻对应的三维预测位置(x′t,y′t,z′t),根据这两个位置可以确定任一目标在当前获取时刻的实际位置,其中,可以直接将三维检测位置(xt,yt,zt)或三维预测位置(x′t,y′t,z′t)作为任一目标在当前获取时刻的位置,也可以通过预设算法将两个位置进行数据融合,最终确定一个任一目标在当前获取时刻的位置。由此可知,任一目标在当前获取时刻的三维位置信息包括位置和速度,可以表示为(x,y,z,vxt,vyt,vzt)。
另外,在对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,未能从至少一个第二目标框中得到与第一目标框相匹配的第二目标框时,表征第一目标框未跟踪成功;或在当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维检测位置之间的距离不满足预设阈值时,表征第一目标框未跟踪成功;在表征第一目标框未跟踪成功时,则直接将未跟踪成功的第一目标框与目标点云数据,确定未跟踪成功的第一目标框的三维检测位置,将直接输出未跟踪成功的第一目标框的三维检测位置。
上述实施例提供的方法中,通过激光雷达实时获取机器人所在空间的目标点云数据,和通过视觉传感器实时拍摄得到机器人所在空间的当前行人图像;利用预设的行人检测模型对当前行人图像进行行人检测,得到当前行人图像中的至少一个第一目标框;对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,其中,上一行人图像为视觉传感器在获取当前行人图像之前获取图像;根据当前行人图像中的每一第一目标框与目标点云数据,确定每一第一目标框的三维检测位置,目标点云数据是与当前行人图像的获取时刻同步获取的点云数据;在当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维检测位置之间的距离满足预设阈值时,表征第一目标框跟踪成功,若第一目标框跟踪成功,则利用预设算法模型对第一目标框的三维检测位置进行调整,得到第一目标框更新后的三维位置。通过解耦2D和3D的卡尔曼滤波器,利用激光雷达和视觉传感器数据获取目标行人的3D信息,利用视觉传感器数据获取目标行人的2D检测框信息,充分利用全部数据对目标行人进行跟踪,提高了数据利用率和目标跟踪准确性。
在其中一个实施例中,通过激光雷达实时获取机器人所在空间的目标点云数据,包括:
通过激光雷达实时获取机器人所在空间的当前多个第一数据;
对当前多个第一数据中每个第一数据进行坐标转换,得到当前多个第一数据中每个第一数据坐标转换后对应的第一目标点;
利用直线检测算法模型对多个第一目标点进行直线过滤检测,得到多个第二目标点;
对多个第二目标点进行聚类,得到多个第一目标类;
确定多个第一目标类中每个第一目标类中点的数量是否在预设范围内,将多个第一目标类中点的数量在预设范围内的第一目标类确定为第二目标类;
将所有第二目标类中各个点组成的集合确定为目标点云数据。
通过点云数据的空间俯视图,对获取到的原始点云数据进行过滤,例如通过获取点云在三维空间的空间视图,确定点云在空间视图中所构成的多个组合形状;确定多个组合形状中满足预设条件的组合形状,从点云中筛除构成满足预设条件的组合形状的点云。其中,空间视图包括俯视图、正视图和侧视图,所在的三维空间和所有点云数据是同一三维坐标系。可以通过组合形状即某一部分点云投影在空间试图中所呈现的形状。预设条件的设定是依据不需要的点云组成的形状,例如直线。
具体地,先将所有点云数据投影到一个俯视图中,参见图5中的俯视图1;再根据人体脚部的形状特征,通过直线检测过滤掉一些诸如墙壁、柜台上的点,参见图5中的俯视图2;最后对过滤后的点云进行聚类,例如常见的基于密度的聚类算法,聚类的结果参见图5中的俯视图3,该图中剩余的点云被聚类为2类。需要说明的是,是实际具体操作中,为提高准确度,可以根据人体身体特征确定具体的目标形状,对俯视图中的点进行筛选。
上述实施例提供的方法中,通过预设算法和点云的空间试图,对原始点云数据进行过滤,去除不能代表行人的点云数据,提高行人三维位置确定的准确性。
在其中一个实施例中,参见图6,对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,包括:
步骤602,对上一行人图像中至少一个第二目标框中每个第二目标框进行预测,得到上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框;
步骤604,将当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框进行匹配,从上一行人图像中至少一个第二目标框对应的多个预测目标框中确定当前行人图像中的每一第一目标框对应的预测目标框;
步骤606,根据当前行人图像中的每一第一目标框对应的预测目标框,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框。
在本实施例中,以卡尔曼滤波算法为例,解释第一目标框与第二目标框的匹配过程。将上一行人图像的获取时刻定义为K-1时刻,当前行人图像的获取时刻为K时刻,根据地K-1时刻的状态预测第二目标框在第K时刻的状态,然后第K时刻检测到的第一目标框的状态与第二目标框在第K时刻的预测状态进行匹配,确定与第一目标框匹配成功的第二目标框,其中,第二目标框就表示跟踪目标在K-1时刻的位置,第一目标框表示跟踪目标在K时刻的位置。其中,在卡尔曼滤波预测中的时间参数,根据K时刻和K-1时刻确定。
上述实施例提供的方法,通过对目标框在下一时刻的位置进行预测,再将预测结果与下一时刻的检测结果进行匹配,确定每一目标是否跟踪成功,能够有效的对图像中的目标进行跟踪,并且为三维位置的确定提供了准确数据,是的整个目标跟踪和位置确定的模型具有较高的鲁棒性和稳定性。
在其中一个实施例中,将当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框进行匹配,从上一行人图像中至少一个第二目标框对应的多个预测目标框中确定当前行人图像中的每一第一目标框对应的预测目标框,包括:
计算当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框之间的交并比,得到当前行人图像中的每一第一目标框的多个交并比值;
将当前行人图像中的每一第一目标框的多个交并比值中最小交并比值对应的预测目标框作为当前行人图像中的每一第一目标框对应的预测目标框。
在其中一个实施例中,上一行人图像与当前目标行人图像之间存在若干帧行人图像;相应地,参见图7,对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,包括:
步骤702,将上一行人图像、当前目标行人图像及若干帧行人图像,作为一组匹配图像;
步骤704,将一组匹配图像中每相邻两帧行人图像中的目标框进行匹配,得到一组匹配图像中每相邻两帧行人图像中相匹配的目标框;
步骤706,根据一组匹配图像中每相邻两帧行人图像中相匹配的目标框,确定至少一个第二目标框中与每一第一目标框相匹配的第二目标框。
在实际应用中,视频传感器的数据获取频率一般会大于激光雷达的数据获取频率,参见图3,根据上述对实施例的解释可知,当前点云数据获取时刻为T时刻,对应的上一行人图像获取时刻为K-3时刻;上一点云数据获取时刻为T-1时刻,对应的当前行人图像的获取时刻为K时刻;那么,对于视频传感器获取到的行人图像就有若干帧是不利用的,但是为了提高目标跟踪的准确性,在本实施例中,将视频传感器获取的所有数据均利用上。
具体地,对于视频传感器获取的视频帧,参见图3,在将第一目标框与第二目标框匹配的过程中,可以直接使用上一行人图像(K-3时刻)与当前行人图像(K时刻)之间的时间间隔进行预测匹配,也可以通过改变卡尔曼滤波算法的时间参数,通过K-3、K-2、K-1和K时刻之间的关系,间接性的确定上一行人图像的第二目标框(K-3时刻)与当前行人图像的第一目标框(K时刻)之间的配关系。
上述实施例提供的方法中,将上一行人图像、当前目标行人图像及若干帧行人图像,作为一组匹配图像;将一组匹配图像中每相邻两帧行人图像中的目标框进行匹配,得到一组匹配图像中每相邻两帧行人图像中相匹配的目标框;根据一组匹配图像中每相邻两帧行人图像中相匹配的目标框,确定至少一个第二目标框中与每一第一目标框相匹配的第二目标框。通过解耦2D和3D的卡尔曼滤波,同时准确预测2D和3D信息,充分利用全部数据,提高系统稳定性和算法鲁棒性。
在其中一个实施例中,将一组匹配图像中每相邻两帧行人图像中的目标框进行匹配,得到一组匹配图像中每相邻两帧行人图像中相匹配的目标框,包括:
将一组匹配图像中任意相邻两帧匹配图像中最早拍摄时刻的图像做第一匹配图像,将一组匹配图像中与第一匹配图像为相邻帧且拍摄时刻较第一匹配图像更晚的匹配图像作为第二匹配图像;
利用第一算法模型对第一匹配图像中任一目标框在第二匹配图像中的位置进行预测,得到第一匹配图像中任一目标框在第二匹配图像中的预测目标框;
利用第二预设算法对第二匹配图像中任一目标框与第一匹配图像中任一目标框在第二匹配图像中的预测目标框进行匹配,得到在第一匹配图像的预测目标框中与第二匹配图像中任一目标框相匹配的预测目标框;
根据第一匹配图像对应的预测目标框与第二匹配图像中目标框的对应关系,得到在第一匹配图像中和第二匹配图像中相匹配的目标框。
在其中一个实施例中,根据当前行人图像中的每一第一目标框与目标点云数据,确定每一第一目标框的三维检测位置,包括:
将目标点云数据中的各个点投影至当前行人图像中;
根据当前行人图像中每一第一目标框在当前行人图像中的位置,和目标点云数据中的各个点投影至目标行人图像中的位置,得到目标点云数据中属于当前目标行人图像中每一第一目标框的目标点;
根据目标点云数据中属于当前行人图像中每一第一目标框的点的三维坐标,得到当前目标行人图像中每一第一目标框的三维检测位置。
需要说明的是,可以将目标点云中的点进行聚类,得到多个第一点云簇;将每一第一点云簇投影至目标行人图像,对于任一检测框,计算每一第一点云簇中投影到任一检测框中的点的数量与每一第一点云簇的点的数量之间的比值;若所有比值中存在比值大于第一预设阈值,则确定大于第一预设阈值的所有比值中的最大比值对应的第一点云簇中的点作为相应检测框的点,计算每一检测框对应的所有点的质心确定为第一目标行人图像中对应检测框对应的目标的三维检测位置。
可以理解的是,激光雷达是通过发射和接收反射的激光,用向量的形式来确定检测到的“障碍物”的位置和外形轮廓。故对于一个“障碍物”来说,一般会对应多个向量(点云),对使用基于密度的聚类算法对所有点云进行聚类,得到多个点云簇,以一个点云簇代表一个“障碍物”。
需要说明的是,将点云簇投影至目标行人图像也即将点云投影至目标行人图像中,都是通过坐标系之间的转换完成的。而引入点云簇是因为可以以一个点云簇代表一个“障碍物”,然后通过一个点云簇中落入任一检测框中的点云的比例,判断点云数据和检测框是否匹配成功。可以理解的是,若一个点云簇中大部分点云都落入在任一检测框中,则说明在此检测框中确实存在一个目标,并且可以根据落入此检测框中的点云计算出此目标的三维位置。
上述实施例提供的方法,通过传感器坐标系之间的关系,将三维点云数据投影到二维行人图像中,进行数据匹配融合,进而确定行人的三维位置,提高了行人位置确定的准确度和行人跟踪模型的准确度,解决了算法鲁棒性差、跟踪不稳定等问题。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储点云数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种目标跟踪方法。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
通过激光雷达实时获取机器人所在空间的目标点云数据,和通过视觉传感器实时拍摄得到机器人所在空间的当前行人图像;
利用预设的行人检测模型对当前行人图像进行行人检测,得到当前行人图像中的至少一个第一目标框;
对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,其中,上一行人图像为视觉传感器在获取当前行人图像之前获取的图像;
根据当前行人图像中的每一第一目标框与目标点云数据,确定每一第一目标框的三维检测位置,目标点云数据是与当前行人图像的获取时刻同步获取的点云数据;
在当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维检测位置之间的距离满足预设阈值时,表征第一目标框跟踪成功,若第一目标框跟踪成功,则利用预设算法模型对第一目标框的三维检测位置进行调整,得到第一目标框更新后的三维位置。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
通过激光雷达实时获取机器人所在空间的当前多个第一数据;
对当前多个第一数据中每个第一数据进行坐标转换,得到当前多个第一数据中每个第一数据坐标转换后对应的第一目标点;
利用直线检测算法模型对多个第一目标点进行直线过滤检测,得到多个第二目标点;
对多个第二目标点进行聚类,得到多个第一目标类;
确定多个第一目标类中每个第一目标类中点的数量是否在预设范围内,将多个第一目标类中点的数量在预设范围内的第一目标类确定为第二目标类;
将所有第二目标类中各个点组成的集合确定为目标点云数据。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对上一行人图像中至少一个第二目标框中每个第二目标框进行预测,得到上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框;
将当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框进行匹配,从上一行人图像中至少一个第二目标框对应的多个预测目标框中确定当前行人图像中的每一第一目标框对应的预测目标框;
根据当前行人图像中的每一第一目标框对应的预测目标框,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
计算当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框之间的交并比,得到当前行人图像中的每一第一目标框的多个交并比值;
将当前行人图像中的每一第一目标框的多个交并比值中最小交并比值对应的预测目标框作为当前行人图像中的每一第一目标框对应的预测目标框。
在一个实施例中,上一行人图像与当前目标行人图像之间存在若干帧行人图像;相应地,处理器执行计算机程序时还实现以下步骤:
将上一行人图像、当前目标行人图像及若干帧行人图像,作为一组匹配图像;
将一组匹配图像中每相邻两帧行人图像中的目标框进行匹配,得到一组匹配图像中每相邻两帧行人图像中相匹配的目标框;
根据一组匹配图像中每相邻两帧行人图像中相匹配的目标框,确定至少一个第二目标框中与每一第一目标框相匹配的第二目标框。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将一组匹配图像中任意相邻两帧匹配图像中最早拍摄时刻的图像做第一匹配图像,将一组匹配图像中与第一匹配图像为相邻帧且拍摄时刻较第一匹配图像更晚的匹配图像作为第二匹配图像;
利用第一算法模型对第一匹配图像中任一目标框在第二匹配图像中的位置进行预测,得到第一匹配图像中任一目标框在第二匹配图像中的预测目标框;
利用第二预设算法对第二匹配图像中任一目标框与第一匹配图像中任一目标框在第二匹配图像中的预测目标框进行匹配,得到在第一匹配图像的预测目标框中与第二匹配图像中任一目标框相匹配的预测目标框;
根据第一匹配图像对应的预测目标框与第二匹配图像中目标框的对应关系,得到在第一匹配图像中和第二匹配图像中相匹配的目标框。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将目标点云数据中的各个点投影至当前行人图像中;
根据当前行人图像中每一第一目标框在当前行人图像中的位置,和目标点云数据中的各个点投影至目标行人图像中的位置,得到目标点云数据中属于当前目标行人图像中每一第一目标框的目标点;
根据目标点云数据中属于当前行人图像中每一第一目标框的点的三维坐标,得到当前目标行人图像中每一第一目标框的三维检测位置。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
通过激光雷达实时获取机器人所在空间的目标点云数据,和通过视觉传感器实时拍摄得到机器人所在空间的当前行人图像;
利用预设的行人检测模型对当前行人图像进行行人检测,得到当前行人图像中的至少一个第一目标框;
对当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,其中,上一行人图像为视觉传感器在获取当前行人图像之前获取的图像;
根据当前行人图像中的每一第一目标框与目标点云数据,确定每一第一目标框的三维检测位置,目标点云数据是与当前行人图像的获取时刻同步获取的点云数据;
在当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维检测位置之间的距离满足预设阈值时,表征第一目标框跟踪成功,若第一目标框跟踪成功,则利用预设算法模型对第一目标框的三维检测位置进行调整,得到第一目标框更新后的三维位置。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
通过激光雷达实时获取机器人所在空间的当前多个第一数据;
对当前多个第一数据中每个第一数据进行坐标转换,得到当前多个第一数据中每个第一数据坐标转换后对应的第一目标点;
利用直线检测算法模型对多个第一目标点进行直线过滤检测,得到多个第二目标点;
对多个第二目标点进行聚类,得到多个第一目标类;
确定多个第一目标类中每个第一目标类中点的数量是否在预设范围内,将多个第一目标类中点的数量在预设范围内的第一目标类确定为第二目标类;
将所有第二目标类中各个点组成的集合确定为目标点云数据。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对上一行人图像中至少一个第二目标框中每个第二目标框进行预测,得到上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框;
将当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框进行匹配,从上一行人图像中至少一个第二目标框对应的多个预测目标框中确定当前行人图像中的每一第一目标框对应的预测目标框;
根据当前行人图像中的每一第一目标框对应的预测目标框,从至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
计算当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框之间的交并比,得到当前行人图像中的每一第一目标框的多个交并比值;
将当前行人图像中的每一第一目标框的多个交并比值中最小交并比值对应的预测目标框作为当前行人图像中的每一第一目标框对应的预测目标框。
在一个实施例中,上一行人图像与当前目标行人图像之间存在若干帧行人图像;相应地,计算机程序被处理器执行时还实现以下步骤:
将上一行人图像、当前目标行人图像及若干帧行人图像,作为一组匹配图像;
将一组匹配图像中每相邻两帧行人图像中的目标框进行匹配,得到一组匹配图像中每相邻两帧行人图像中相匹配的目标框;
根据一组匹配图像中每相邻两帧行人图像中相匹配的目标框,确定至少一个第二目标框中与每一第一目标框相匹配的第二目标框。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将一组匹配图像中任意相邻两帧匹配图像中最早拍摄时刻的图像做第一匹配图像,将一组匹配图像中与第一匹配图像为相邻帧且拍摄时刻较第一匹配图像更晚的匹配图像作为第二匹配图像;
利用第一算法模型对第一匹配图像中任一目标框在第二匹配图像中的位置进行预测,得到第一匹配图像中任一目标框在第二匹配图像中的预测目标框;
利用第二预设算法对第二匹配图像中任一目标框与第一匹配图像中任一目标框在第二匹配图像中的预测目标框进行匹配,得到在第一匹配图像的预测目标框中与第二匹配图像中任一目标框相匹配的预测目标框;
根据第一匹配图像对应的预测目标框与第二匹配图像中目标框的对应关系,得到在第一匹配图像中和第二匹配图像中相匹配的目标框。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将目标点云数据中的各个点投影至当前行人图像中;
根据当前行人图像中每一第一目标框在当前行人图像中的位置,和目标点云数据中的各个点投影至目标行人图像中的位置,得到目标点云数据中属于当前目标行人图像中每一第一目标框的目标点;
根据目标点云数据中属于当前行人图像中每一第一目标框的点的三维坐标,得到当前目标行人图像中每一第一目标框的三维检测位置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种机器人,其特征在于,所述机器人上搭载有激光雷达和视觉传感器,所述机器人包括存储器和处理器,所述存储器中存储有可执行程序代码,所述处理器用于执行所述可执行程序代码时实现如下步骤:
通过所述激光雷达实时获取所述机器人所在空间的目标点云数据,和通过所述视觉传感器实时拍摄得到所述机器人所在空间的当前行人图像;
利用预设的行人检测模型对所述当前行人图像进行行人检测,得到所述当前行人图像中的至少一个第一目标框;
对所述当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从所述至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,其中,所述上一行人图像为所述视觉传感器在获取所述当前行人图像之前获取的图像;
根据所述当前行人图像中的每一第一目标框与所述目标点云数据,确定所述每一第一目标框的三维检测位置,所述目标点云数据是与所述当前行人图像的获取时刻同步获取的点云数据;
在所述当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维检测位置之间的距离满足预设阈值时,表征第一目标框跟踪成功,若第一目标框跟踪成功,则利用预设算法模型对所述第一目标框的三维检测位置进行调整,得到所述第一目标框更新后的三维位置。
2.根据权利要求1所述的机器人,其特征在于,所述通过所述激光雷达实时获取所述机器人所在空间的目标点云数据,包括:
通过所述激光雷达实时获取所述机器人所在空间的当前多个第一数据;
对所述当前多个第一数据中每个第一数据进行坐标转换,得到所述当前多个第一数据中每个第一数据坐标转换后对应的第一目标点;
利用直线检测算法模型对多个所述第一目标点进行直线过滤检测,得到多个第二目标点;
对所述多个第二目标点进行聚类,得到多个第一目标类;
确定所述多个第一目标类中每个第一目标类中点的数量是否在预设范围内,将所述多个第一目标类中点的数量在所述预设范围内的第一目标类确定为第二目标类;
将所有所述第二目标类中各个点组成的集合确定为所述目标点云数据。
3.根据权利要求1所述的机器人,其特征在于,所述对所述当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从所述至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,包括:
对所述上一行人图像中至少一个第二目标框中每个第二目标框进行预测,得到所述上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框;
将所述当前行人图像中的每一第一目标框与所述上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框进行匹配,从所述上一行人图像中至少一个第二目标框对应的多个预测目标框中确定所述当前行人图像中的每一第一目标框对应的预测目标框;
根据所述当前行人图像中的每一第一目标框对应的预测目标框,从所述至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框。
4.根据权利要求3所述的机器人,其特征在于,所述将所述当前行人图像中的每一第一目标框与所述上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框进行匹配,从所述上一行人图像中至少一个第二目标框对应的多个预测目标框中确定所述当前行人图像中的每一第一目标框对应的预测目标框,包括:
计算所述当前行人图像中的每一第一目标框与所述上一行人图像中至少一个第二目标框中每个第二目标框对应的预测目标框之间的交并比,得到所述当前行人图像中的每一第一目标框的多个交并比值;
将所述当前行人图像中的每一第一目标框的多个交并比值中最小交并比值对应的预测目标框作为所述当前行人图像中的每一第一目标框对应的预测目标框。
5.根据权利要求1所述的机器人,其特征在于,所述上一行人图像与所述当前目标行人图像之间存在若干帧行人图像;相应地,所述对所述当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从所述至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,包括:
将所述上一行人图像、所述当前目标行人图像及所述若干帧行人图像,作为一组匹配图像;
将所述一组匹配图像中每相邻两帧行人图像中的目标框进行匹配,得到所述一组匹配图像中每相邻两帧行人图像中相匹配的目标框;
根据所述一组匹配图像中每相邻两帧行人图像中相匹配的目标框,确定所述至少一个第二目标框中与每一第一目标框相匹配的第二目标框。
6.根据权利要求5所述的机器人,其特征在于,所述将所述一组匹配图像中每相邻两帧行人图像中的目标框进行匹配,得到所述一组匹配图像中每相邻两帧行人图像中相匹配的目标框,包括:
将所述一组匹配图像中任意相邻两帧匹配图像中最早拍摄时刻的图像做第一匹配图像,将所述一组匹配图像中与第一匹配图像为相邻帧且拍摄时刻较第一匹配图像更晚的匹配图像作为第二匹配图像;
利用第一算法模型对第一匹配图像中任一目标框在第二匹配图像中的位置进行预测,得到第一匹配图像中任一目标框在第二匹配图像中的预测目标框;
利用第二预设算法对第二匹配图像中任一目标框与第一匹配图像中任一目标框在第二匹配图像中的预测目标框进行匹配,得到在第一匹配图像的预测目标框中与第二匹配图像中任一目标框相匹配的预测目标框;
根据第一匹配图像对应的预测目标框与第二匹配图像中目标框的对应关系,得到在第一匹配图像中和第二匹配图像中相匹配的目标框。
7.根据权利要求1所述的机器人,其特征在于,所述根据所述当前行人图像中的每一第一目标框与所述目标点云数据,确定所述每一第一目标框的三维检测位置,包括:
将所述目标点云数据中的各个点投影至所述当前行人图像中;
根据所述当前行人图像中每一第一目标框在所述当前行人图像中的位置,和所述目标点云数据中的各个点投影至所述目标行人图像中的位置,得到所述目标点云数据中属于所述当前目标行人图像中每一第一目标框的目标点;
根据所述目标点云数据中属于所述当前行人图像中每一第一目标框的点的三维坐标,得到所述当前目标行人图像中每一第一目标框的三维检测位置。
8.一种目标跟踪方法,其特征在于,所述方法包括:
通过所述激光雷达实时获取所述机器人所在空间的目标点云数据,和通过所述视觉传感器实时拍摄得到所述机器人所在空间的当前行人图像;
利用预设的行人检测模型对所述当前行人图像进行行人检测,得到所述当前行人图像中的至少一个第一目标框;
对所述当前行人图像中的每一第一目标框与上一行人图像中至少一个第二目标框进行匹配,从所述至少一个第二目标框中得到与每一第一目标框相匹配的第二目标框,其中,所述上一行人图像为所述视觉传感器在获取所述当前行人图像之前获取的图像;
根据所述当前行人图像中的每一第一目标框与所述目标点云数据,确定所述每一第一目标框的三维检测位置,所述目标点云数据是与所述当前行人图像的获取时刻同步获取的点云数据;
在所述当前行人图像中的第一目标框的三维检测位置与相应第一目标框相匹配的第二目标框的三维检测位置之间的距离满足预设阈值时,表征第一目标框跟踪成功,若第一目标框跟踪成功,则利用预设算法模型对所述第一目标框的三维检测位置进行调整,得到所述第一目标框更新后的三维位置。
9.根据权利要求8所述的方法,其特征在于,所述通过所述激光雷达实时获取所述机器人所在空间的目标点云数据,包括:
通过所述激光雷达实时获取所述机器人所在空间的当前多个第一数据;
对所述当前多个第一数据中每个第一数据进行坐标转换,得到所述当前多个第一数据中每个第一数据坐标转换后对应的第一目标点;
利用直线检测算法模型对多个所述第一目标点进行直线过滤检测,得到多个第二目标点;
对所述多个第二目标点进行聚类,得到多个第一目标类;
确定所述多个第一目标类中每个第一目标类中点的数量是否在预设范围内,将所述多个第一目标类中点的数量在所述预设范围内的第一目标类确定为第二目标类;
将所有所述第二目标类中各个点组成的集合确定为所述目标点云数据。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求8至9所述的方法的步骤。
CN202210415978.9A 2022-04-20 2022-04-20 目标跟踪方法、装置、计算机设备和存储介质 Pending CN116977362A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210415978.9A CN116977362A (zh) 2022-04-20 2022-04-20 目标跟踪方法、装置、计算机设备和存储介质
PCT/CN2023/084663 WO2023202335A1 (zh) 2022-04-20 2023-03-29 目标跟踪方法、机器人、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210415978.9A CN116977362A (zh) 2022-04-20 2022-04-20 目标跟踪方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN116977362A true CN116977362A (zh) 2023-10-31

Family

ID=88419167

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210415978.9A Pending CN116977362A (zh) 2022-04-20 2022-04-20 目标跟踪方法、装置、计算机设备和存储介质

Country Status (2)

Country Link
CN (1) CN116977362A (zh)
WO (1) WO2023202335A1 (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110246159B (zh) * 2019-06-14 2023-03-28 湖南大学 基于视觉和雷达信息融合的3d目标运动分析方法
CN111089590B (zh) * 2019-12-09 2021-10-15 泉州装备制造研究所 一种视觉和激光融合的移动机器人跟踪人腿方法
CN114063098A (zh) * 2020-08-05 2022-02-18 北京万集科技股份有限公司 多目标跟踪方法、装置、计算机设备和存储介质
CN111951305B (zh) * 2020-08-20 2022-08-23 重庆邮电大学 一种基于视觉和激光雷达的目标检测和运动状态估计方法
CN112926514A (zh) * 2021-03-26 2021-06-08 哈尔滨工业大学(威海) 一种多目标检测及跟踪方法、系统、存储介质及应用
CN113848545B (zh) * 2021-09-01 2023-04-14 电子科技大学 一种基于视觉和毫米波雷达的融合目标检测和跟踪方法

Also Published As

Publication number Publication date
WO2023202335A1 (zh) 2023-10-26

Similar Documents

Publication Publication Date Title
US11816907B2 (en) Systems and methods for extracting information about objects from scene information
US11461912B2 (en) Gaussian mixture models for temporal depth fusion
CN110568447B (zh) 视觉定位的方法、装置及计算机可读介质
US11270148B2 (en) Visual SLAM method and apparatus based on point and line features
CN107980150B (zh) 对三维空间建模
TWI467494B (zh) 使用深度圖進行移動式攝影機定位
CN111563442A (zh) 基于激光雷达的点云和相机图像数据融合的slam方法及系统
JP5487298B2 (ja) 3次元画像生成
CN113674416B (zh) 三维地图的构建方法、装置、电子设备及存储介质
Vidas et al. Real-time mobile 3D temperature mapping
Peng et al. Globally-optimal contrast maximisation for event cameras
Pirker et al. GPSlam: Marrying Sparse Geometric and Dense Probabilistic Visual Mapping.
Song et al. End-to-end learning for inter-vehicle distance and relative velocity estimation in adas with a monocular camera
CN116088503A (zh) 动态障碍物检测方法和机器人
CN116091724A (zh) 一种建筑数字孪生建模方法
Zhang LILO: A Novel Lidar–IMU SLAM System With Loop Optimization
WO2020213099A1 (ja) オブジェクト検出・追跡装置、方法、およびプログラム記録媒体
Acharya et al. Modelling uncertainty of single image indoor localisation using a 3D model and deep learning
Buck et al. Capturing uncertainty in monocular depth estimation: Towards fuzzy voxel maps
CN116681730A (zh) 一种目标物追踪方法、装置、计算机设备和存储介质
CN115131407B (zh) 面向数字仿真环境的机器人目标跟踪方法、装置和设备
Wang et al. 4-D SLAM: An efficient dynamic Bayes network-based approach for dynamic scene understanding
CN116152471A (zh) 基于视频流的厂区安全生产监管方法及其系统、电子设备
CN116977362A (zh) 目标跟踪方法、装置、计算机设备和存储介质
Hou et al. Octree-Based Approach for Real-Time 3D Indoor Mapping Using RGB-D Video Data

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