CN115346156A - 基于滑动窗口的数据处理方法 - Google Patents

基于滑动窗口的数据处理方法 Download PDF

Info

Publication number
CN115346156A
CN115346156A CN202211021529.2A CN202211021529A CN115346156A CN 115346156 A CN115346156 A CN 115346156A CN 202211021529 A CN202211021529 A CN 202211021529A CN 115346156 A CN115346156 A CN 115346156A
Authority
CN
China
Prior art keywords
constraint
video frame
frame set
real
sliding window
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
CN202211021529.2A
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.)
Nolo Co ltd
Original Assignee
Nolo 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 Nolo Co ltd filed Critical Nolo Co ltd
Priority to CN202211021529.2A priority Critical patent/CN115346156A/zh
Publication of CN115346156A publication Critical patent/CN115346156A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • 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/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (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

本申请公开了一种基于滑动窗口的数据处理方法,该方法包括:基于预设的滑动窗口的大小,对实时采集的环境图像视频流中的视频帧数据分别进行用于对已获得的全局地图进行全局约束的第一约束帧处理、进行用于对所述滑动窗口中的环境图像进行约束的第二关键帧处理、和进行实时视频帧获取处理,得到对应的第一约束帧集合、第二关键帧集合和实时视频帧集合;基于所述滑动窗口中包括的所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,进行所述环境图像对应的三维环境中的目标跟踪。通过上述方式,可以有效避免约束帧与关键帧在数据处理过程中产生的数据跳动,并兼顾数据处理的实时性和高精度定位需求。

Description

基于滑动窗口的数据处理方法
技术领域
本申请实施例涉及计算机视觉领域,尤其涉及一种基于滑动窗口的数据处理方法。
背景技术
作为移动机器人、虚拟现实以及增强现实等设备的定位与导航的核心技术,同时定位与三维建图(英文:Simultaneous Localization and Mapping,简称SLAM)技术的算法框架日臻完善,逐步由理论研究转向市场应用。
现有的SLAM方法通常使用滑动窗口连续读取有限容量的图像帧进行局部优化以减少计算量。与此同时,该现有的SLAM方法还采用构建关键帧的方式(即通过选择性地提升普通图像帧作为关键帧储存),以执行快速的回环检测和全局优化,从而反馈到滑动窗口內普通帧的位姿优化中来实现精度和速度的折中提升以及全局一致的状态信息。
尽管在SLAM系统后端中通过构建关键帧来跳过大量普通帧的信息以加速执行非线性优化,但随着系统的运行,通过传感器获取的普通图像帧被不断地提升为关键帧以累加地储存至关键帧数据库中,导致待优化参数数量不断增加,进而会引起非线性优化的速度降低、精度下降,甚至影响整个SLAM系统的定位精度和内存占用。因而在SLAM系统的后端优化过程中,需要采用一段较长时间的连续帧作为一个整体,对一个合理体积的关键帧进行维护优化,以在实际应用场景(如机器人导航或AR穿戴设备)中维持更长时间的实时性,并提升鲁棒性。
然而,上述现有的滑动窗口策略虽然提高了一定的鲁棒性,但由于连续帧整体数据与关键帧数据差距较大,利用连续帧整体对关键帧进行优化的方式会导致优化数据跳动,进而造成SLAM系统不稳定,定位精度下降,无法兼顾实时性和高精度定位的需求。
发明内容
有鉴于此,本申请实施例提供一种基于滑动窗口的数据处理方法,以至少部分解决上述问题。
根据本申请实施例的第一方面,提供了一种基于滑动窗口的数据处理方法,包括:基于预设的滑动窗口的大小,对实时采集的环境图像视频流中的视频帧数据分别进行用于对已获得的全局地图进行全局约束的第一约束帧处理、进行用于对所述滑动窗口中的环境图像进行约束的第二关键帧处理、和进行实时视频帧获取处理,得到对应的第一约束帧集合、第二关键帧集合和实时视频帧集合;
基于所述滑动窗口中包括的所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,进行所述环境图像对应的三维环境中的目标跟踪。
在本申请的另一实现方式中,所述进行实时视频帧获取处理,得到对应的实时视频帧集合,包括:从所述视频流中,选取与当前视频帧相邻的至少一个视频帧,得到相邻视频帧集合;将所述相邻视频帧集合与所述当前视频帧进行数据整合,得到实时视频帧集合。
在本申请的另一实现方式中,所述进行用于对已获得的全局地图进行全局约束的第一约束帧处理,包括:从所述视频流中,选取距离当前视频帧的时间大于第一预设时间阈值、且对应的环境与当前视频帧对应的环境的相似度大于预设相似度阈值的多个第一视频帧;基于所述多个第一视频帧,对已获得的全局地图进行全局约束处理。
在本申请的另一实现方式中,所述基于所述多个第一视频帧,对已获得的全局地图进行全局约束处理全局地图,包括:获取所述多个第一视频帧对应的目标位姿;基于所述目标位姿,对通过所述视频流中的历史关键帧形成的全局地图进行全局约束处理全局地图。
在本申请的另一实现方式中,所述进行用于对所述滑动窗口中的环境图像进行约束的第二关键帧处理,包括:从所述视频流中,选取距离当前视频帧的时间在预设时间范围内的多个第二视频帧;基于所述多个第二视频帧,对所述滑动窗口中包含的环境图像进行约束处理。
在本申请的另一实现方式中,所述方法还包括:所述基于所述滑动窗口中包括的所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,进行所述环境图像对应的三维环境中的目标跟踪,包括:基于所述实时视频帧集合中的各个视频帧,进行目标识别和跟踪;根据所述第一约束帧集合和所述第二关键帧集合形成的约束,对识别和跟踪的目标的校正。
根据本申请实施例的第二方面,提供了一种基于滑动窗口的数据处理装置,包括:处理模块,用于基于预设的滑动窗口的大小,对实时采集的环境图像视频流中的视频帧数据分别进行用于对已获得的全局地图进行全局约束的第一约束帧处理、进行用于对所述滑动窗口中的环境图像进行约束的第二关键帧处理、和进行实时视频帧获取处理,得到对应的第一约束帧集合、第二关键帧集合和实时视频帧集合;
展示模块,用于基于所述滑动窗口中包括的所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,进行所述环境图像对应的三维环境中的目标跟踪。
根据本申请实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;存储器用于存放至少一可执行指令,可执行指令使处理器执行如第一方面所述的方法对应的操作。
根据本申请实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的方法。
本申请实施例的方案中,通过在所述滑动窗口中展示所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,可以有效避免约束帧与关键帧在数据处理过程中产生数据跳动,保证数据处理的稳定性,并兼顾数据处理的实时性和高精度定位需求。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为一个示例的SLAM算法示意性框图。
图2为根据本申请的一个实施例的基于滑动窗口的数据处理方法的步骤流程图。。
图3为根据本申请的一个实施例的基于滑动窗口的数据处理装置的示意性框图。
图4为根据本申请的一个实施例的电子设备的结构示意图。
具体实施方式
为了使本领域的人员更好地理解本申请实施例中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、详细地描述,显然,所描述的实施例仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请实施例保护的范围。
应当理解,本披露的权利要求、说明书及附图中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于描述特定顺序。本披露的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本披露说明书中所使用的术语仅仅是出于描述特定实施例的目的,而并不意在限定本披露。如在本披露说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本披露说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
图1为一个示例的SLAM算法示意性框图。现有技术示例的SLAM算法包括:跟踪,小地图优化,大地图优化和回环检测等方面。具体地,步骤一、进行跟踪算法处理,跟踪之后将帧信息加入到小地图;步骤二、由于小地图需要维护数据较少,所以会将重复信息较多的帧删除,保留的帧称之为关键帧。这样虽然小地图中维护的数据比较少,但是信息不会损失过大。小地图中数据在每次新帧到来之后,会对小地图中的信息进行优化,提供更精准数据。此处的小地图和窗口概念一致。步骤三、为了让SLAM计算的结果更加准确,将小地图中产生的关键帧都全部保存到大地图中。步骤四、当发生回环(当图像检测到slam原来经过的位置)时,对大地图中的数据进行优化,减少计算结果的漂移。
本示例的SLAM算法在计算机视觉处理过程中,具有比较优良的效果,但是,由于大地图数据对关键帧进行优化时会发生数据跳动,造成数据不稳定、精度低等问题,从而影响SLAM系统的整体稳定性和数据计算准确度。
图2示出了本申请的一个实施例的基于滑动窗口的数据处理方法的示例性流程。本申请实施例应用于SLAM技术领域。SLAM中文简称即时定位与地图创建,而视觉SLAM就是用摄像头来完成环境的感知工作。例如,当一个自主移动的机器人处在一个未知的环境,它要通过摄像头获取的信息数据对自身以及周围环境进行一个预估,在机器人移动过程中根据位置估计和摄像头对感知的数据进行自身的定位,同时不断地建造和更新地图并且规划自身的路径。
本实施例的基于滑动窗口的数据处理方法包括:
S210:基于预设的滑动窗口的大小,对实时采集的环境图像视频流中的视频帧数据分别进行用于对已获得的全局地图进行全局约束的第一约束帧处理、进行用于对所述滑动窗口中的环境图像进行约束的第二关键帧处理、和进行实时视频帧获取处理,得到对应的第一约束帧集合、第二关键帧集合和实时视频帧集合。
需要说明的是,由于SLAM输入的数据是实时采集的环境图像视频流,而环境图像视频流的构成是视频帧数据,因此,需要对视频帧数据进行处理。此处的视频帧指的是图像帧,即组成视频的最小单位。此处的实时视频帧指的是当前时间对应的图像帧,应理解,此处的当前视频帧数量有且仅有一个,而视频帧的数量在此处不作限定。此处的关键帧处理指的是在视频帧中提取符合特定要求的至少一个图像帧,并将提取得到的视频帧进行处理,得到的图像帧集合即为关键帧集合。此处的约束帧处理指的是对视频帧数据进行约束处理,得到的图像帧集合即约束帧集合。
需要说明的是,本实施例中的滑动窗口为固定大小,可以根据人工经验预设滑动窗口大小。具体地,可以设定滑动窗口大小为X,当前视频帧或当前视频帧集合大小为W,视频帧约束数据大小为N,关键帧集合大小为S;其中,S、N、W数量之和等于滑动窗口大小X,此处的S、N、W可以根据人工经验设定。
S220:基于所述滑动窗口中包括的所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,进行所述环境图像对应的三维环境中的目标跟踪。
此处的所述滑动窗口包括所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合。例如,滑动窗口结构为1秒10帧,选择关键帧集合作为前5帧展示,选择约束帧集合作为中间3帧展示,选择当前视频帧集合作为最后2帧展示。
本申请实施例的方案中,通过在所述滑动窗口中展示所述第一约束帧集合、所述第二关键帧集合和所述当前视频帧集合,可以有效避免约束帧与关键帧在数据处理过程中产生数据跳动,保证数据处理的稳定性,并兼顾数据处理的实时性和高精度定位需求。
在一种可能的实现方式中,所述进行实时视频帧获取处理,得到对应的实时视频帧集合,包括:从所述视频流中,选取与当前视频帧相邻的至少一个视频帧,得到相邻视频帧集合;将所述相邻视频帧集合与所述当前视频帧进行数据整合,得到实时视频帧集合。
需要说明的是,此处的相邻视频帧指的是相对于当前视频帧而言,在当前视频帧时间以前的所有图像帧。由于当前视频帧某一数据量较小,不能保证在跟踪过程中有更多的信息获取,因此,选取与当前视频帧相邻的至少一个视频帧与当前视频帧组合得到当前视频帧集合。此处的相邻的视频帧指的是在时间上距离当前视频帧最近的视频帧。例如,当前时刻对应的图像帧为当前视频帧,那么前一时刻对应的图像帧则为相邻当前视频帧,与该相邻当前视频帧在时间上彼此相邻的图像帧即为相邻当前视频帧集合。通过上述方式,可以提高目标跟踪的数目,进而提高数据处理精度。
在一种可能的实现方式中,所述进行用于对已获得的全局地图进行全局约束的第一约束帧处理,包括:从所述视频流中,选取距离当前视频帧的时间大于第一预设时间阈值、且对应的环境与当前视频帧对应的环境的相似度大于预设相似度阈值的多个第一视频帧;基于所述多个第一视频帧,对已获得的全局地图进行全局约束处理。
需要说明的是,通过从所述视频流中,选取距离当前视频帧的时间大于第一预设时间阈值、且对应的环境与当前视频帧对应的环境的相似度大于预设相似度阈值的多个第一视频帧;基于所述多个第一视频帧,对已获得的全局地图进行全局约束处理,可以使数据处理更准确。
在一种可能的实现方式中,所述基于所述多个第一视频帧,对已获得的全局地图进行全局约束处理全局地图,包括:获取所述多个第一视频帧对应的目标位姿;基于所述目标位姿,对通过所述视频流中的历史关键帧形成的全局地图进行全局约束处理全局地图。
需要说明的是,此处的位姿数据指的是位置和姿态,描述位置采用位置向量,描述姿态通过将附加一个坐标系到物体上,然后给出相对于参考系统的这个坐标系的描述,即通过旋转矩阵来描述方向。通过上述方式,可以使关键帧数据更准确。
在一种可能的实现方式中,所述进行用于对所述滑动窗口中的环境图像进行约束的第二关键帧处理,包括:从所述视频流中,选取距离当前视频帧的时间在预设时间范围内的多个第二视频帧;基于所述多个第二视频帧,对所述滑动窗口中包含的环境图像进行约束处理。
需要说明的是,约束帧处理方式也可以通过选取距离当前视频帧的时间在预设时间范围内的多个第二视频帧。具体地,此处的第二视频帧可以是前一个滑动窗口内的关键帧。通过上述方式,通过上述方式,可以保证滑动窗口具有一个约束,防止数据发生较大漂移。
在一种可能的实现方式中,所述基于所述滑动窗口中包括的所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,进行所述环境图像对应的三维环境中的目标跟踪,包括:基于所述实时视频帧集合中的各个视频帧,进行目标识别和跟踪;根据所述第一约束帧集合和所述第二关键帧集合形成的约束,对识别和跟踪的目标的校正。
图3为根据本申请的另一实施例的基于滑动窗口的数据处理装置的示意性框图。本申请实施例的方案可以应用于电子设备,包括但不限于具有数据处理能力的电子设备等。
本实施例的基于滑动窗口的数据处理装置,包括:处理模块310,用于基于预设的滑动窗口的大小,对实时采集的环境图像视频流中的视频帧数据分别进行用于对已获得的全局地图进行全局约束的第一约束帧处理、进行用于对所述滑动窗口中的环境图像进行约束的第二关键帧处理、和进行实时视频帧获取处理,得到对应的第一约束帧集合、第二关键帧集合和实时视频帧集合;
展示模块320,用于基于所述滑动窗口中包括的所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,进行所述环境图像对应的三维环境中的目标跟踪。
在另一些示例中,处理模块310,具体用于:从所述视频流中,选取与当前视频帧相邻的至少一个视频帧,得到相邻视频帧集合;
将所述相邻视频帧集合与所述当前视频帧进行数据整合,得到实时视频帧集合。
在另一些示例中,处理模块310,具体用于:从所述视频流中,选取距离当前视频帧的时间大于第一预设时间阈值、且对应的环境与当前视频帧对应的环境的相似度大于预设相似度阈值的多个第一视频帧;
基于所述多个第一视频帧,对已获得的全局地图进行全局约束处理。
在另一些示例中,处理模块310,具体用于:获取所述多个第一视频帧对应的目标位姿;
基于所述目标位姿,对通过所述视频流中的历史关键帧形成的全局地图进行全局约束处理全局地图。
在另一些示例中,处理模块310,具体用于:从所述视频流中,选取距离当前视频帧的时间在预设时间范围内的多个第二视频帧;
基于所述多个第二视频帧,对所述滑动窗口中包含的环境图像进行约束处理。
在另一些示例中,处理模块310,具体用于:基于所述实时视频帧集合中的各个视频帧,进行目标识别和跟踪;
根据所述第一约束帧集合和所述第二关键帧集合形成的约束,对识别和跟踪的目标的校正。
参照图4,示出了根据本申请的另一实施例的电子设备的结构示意图,本申请具体实施例并不对电子设备的具体实现做限定。
如图4所示,该电子设备可以包括:处理器(processor)402、通信接口(Communications Interface)404、存储有程序410的存储器(memory)406、以及通信总线408。
处理器、通信接口、以及存储器通过通信总线完成相互间的通信。通信接口,用于与其它电子设备或服务器进行通信。处理器,用于执行程序,具体可以执行上述方法实施例中的相关步骤。具体地,程序可以包括程序代码,该程序代码包括计算机操作指令。
处理器可能是处理器CPU,或者是特定集成电路ASIC(Application SpecificIntegrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。智能设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器,用于存放程序。存储器可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序具体可以用于使得处理器执行操作:基于预设的滑动窗口的大小,对实时采集的环境图像视频流中的视频帧数据分别进行用于对已获得的全局地图进行全局约束的第一约束帧处理、进行用于对所述滑动窗口中的环境图像进行提取的第二关键帧处理、和进行用于目标跟踪的当前视频帧处理,得到对应的第一约束帧集合、第二关键帧集合和当前视频帧集合;在所述滑动窗口中展示所述第一约束帧集合、所述第二关键帧集合和所述当前视频帧集合,并实时更新。
以上实施方式仅用于说明本申请实施例,而并非对本申请实施例的限制,有关技术领域的普通技术人员,在不脱离本申请实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本申请实施例的范畴,本申请实施例的专利保护范围应由权利要求限定。上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定事务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行事务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

Claims (9)

1.一种基于滑动窗口的数据处理方法,其特征在于,包括:
基于预设的滑动窗口的大小,对实时采集的环境图像视频流中的视频帧数据分别进行用于对已获得的全局地图进行全局约束的第一约束帧处理、进行用于对所述滑动窗口中的环境图像进行约束的第二关键帧处理、和进行实时视频帧获取处理,得到对应的第一约束帧集合、第二关键帧集合和实时视频帧集合;
基于所述滑动窗口中包括的所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,进行所述环境图像对应的三维环境中的目标跟踪。
2.根据权利要求1所述的方法,其中,所述进行实时视频帧获取处理,得到对应的实时视频帧集合,包括:
从所述视频流中,选取与当前视频帧相邻的至少一个视频帧,得到相邻视频帧集合;
将所述相邻视频帧集合与所述当前视频帧进行数据整合,得到实时视频帧集合。
3.根据权利要求1所述的方法,其中,所述进行用于对已获得的全局地图进行全局约束的第一约束帧处理,包括:
从所述视频流中,选取距离当前视频帧的时间大于第一预设时间阈值、且对应的环境与当前视频帧对应的环境的相似度大于预设相似度阈值的多个第一视频帧;
基于所述多个第一视频帧,对已获得的全局地图进行全局约束处理。
4.根据权利要求3所述的方法,其中,所述基于所述多个第一视频帧,对已获得的全局地图进行全局约束处理全局地图,包括:
获取所述多个第一视频帧对应的目标位姿;
基于所述目标位姿,对通过所述视频流中的历史关键帧形成的全局地图进行全局约束处理全局地图。
5.根据权利要求1所述的方法,其中,所述进行用于对所述滑动窗口中的环境图像进行约束的第二关键帧处理,包括:
从所述视频流中,选取距离当前视频帧的时间在预设时间范围内的多个第二视频帧;
基于所述多个第二视频帧,对所述滑动窗口中包含的环境图像进行约束处理。
6.根据权利要求1所述的方法,其中,所述方法还包括:所述基于所述滑动窗口中包括的所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,进行所述环境图像对应的三维环境中的目标跟踪,包括:
基于所述实时视频帧集合中的各个视频帧,进行目标识别和跟踪;
根据所述第一约束帧集合和所述第二关键帧集合形成的约束,对识别和跟踪的目标的校正。
7.一种基于滑动窗口的数据处理装置,包括:
处理模块,用于基于预设的滑动窗口的大小,对实时采集的环境图像视频流中的视频帧数据分别进行用于对已获得的全局地图进行全局约束的第一约束帧处理、进行用于对所述滑动窗口中的环境图像进行约束的第二关键帧处理、和进行实时视频帧获取处理,得到对应的第一约束帧集合、第二关键帧集合和实时视频帧集合;
展示模块,用于基于所述滑动窗口中包括的所述第一约束帧集合、所述第二关键帧集合和所述实时视频帧集合,进行所述环境图像对应的三维环境中的目标跟踪。
8.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-7中任一项所述的方法对应的操作。
9.一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-6中任一项所述的方法。
CN202211021529.2A 2022-08-24 2022-08-24 基于滑动窗口的数据处理方法 Pending CN115346156A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211021529.2A CN115346156A (zh) 2022-08-24 2022-08-24 基于滑动窗口的数据处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211021529.2A CN115346156A (zh) 2022-08-24 2022-08-24 基于滑动窗口的数据处理方法

Publications (1)

Publication Number Publication Date
CN115346156A true CN115346156A (zh) 2022-11-15

Family

ID=83954008

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211021529.2A Pending CN115346156A (zh) 2022-08-24 2022-08-24 基于滑动窗口的数据处理方法

Country Status (1)

Country Link
CN (1) CN115346156A (zh)

Similar Documents

Publication Publication Date Title
CN107990899B (zh) 一种基于slam的定位方法和系统
CN112179330B (zh) 移动设备的位姿确定方法及装置
CN109506642B (zh) 一种机器人多相机视觉惯性实时定位方法及装置
US20190178646A1 (en) Square root inverse schmidt-kalman filters for vision-aided inertial navigation and mapping
CN111462207A (zh) 一种融合直接法与特征法的rgb-d同时定位与地图创建方法
CN111986261B (zh) 一种车辆定位方法、装置、电子设备及存储介质
US20090226034A1 (en) Spatial motion calculation apparatus and method for the same
CN111797906A (zh) 基于视觉和惯性里程定位的方法及装置
CN110599586A (zh) 一种半稠密场景重建方法、装置、电子设备及存储介质
CN112465029A (zh) 一种实例追踪的方法及装置
CN111983636A (zh) 位姿融合方法、系统、终端、介质以及移动机器人
CN113112542A (zh) 一种视觉定位方法、装置、电子设备及存储介质
CN111354022A (zh) 基于核相关滤波的目标跟踪方法及系统
CN113052907A (zh) 一种动态环境移动机器人的定位方法
CN114596382A (zh) 一种基于全景相机的双目视觉slam方法及系统
CN109543534A (zh) 一种目标跟踪中目标丢失重检的方法及装置
US20240118419A1 (en) Localization method and apparatus, computer apparatus and computer readable storage medium
Mohamed et al. Towards dynamic monocular visual odometry based on an event camera and IMU sensor
CN111882494B (zh) 位姿图处理方法、装置、计算机设备和存储介质
KR20220146901A (ko) Slam을 가속화하는 방법 및 장치
CN112233148A (zh) 目标运动的估计方法、设备及计算机存储介质
CN111192303A (zh) 一种点云数据处理方法及装置
CN115346156A (zh) 基于滑动窗口的数据处理方法
CN114415698B (zh) 机器人、机器人的定位方法、装置和计算机设备
CN114627149A (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