首页> 中国专利> 融合帧获得方法、装置、SLAM系统以及存储介质

融合帧获得方法、装置、SLAM系统以及存储介质

摘要

本发明公开一种融合帧获得方法,所述方法包括以下步骤:通过所述N个相机获取目标区域的N个目标图像,N为大于等于2的正整数;对所述N个目标图像进行特征提取,获得特征点集;基于所述特征点集,获得哈希表;基于所述哈希表,获得地图点集;基于所述哈希表,获得描述子集;基于所述哈希表、所述地图点集和所述描述子集,获得融合帧。本发明还公开了一种融合帧获得装置、SLAM系统以及存储介质。通过本发明获得的融合帧包括较多的视觉特征信息,使得融合帧的准确性较好。

著录项

  • 公开/公告号CN112446846A

    专利类型发明专利

  • 公开/公告日2021-03-05

    原文格式PDF

  • 申请/专利权人 鹏城实验室;哈尔滨工业大学(深圳);

    申请/专利号CN202011369012.3

  • 申请日2020-11-27

  • 分类号G06T5/50(20060101);

  • 代理机构44287 深圳市世纪恒程知识产权代理事务所;

  • 代理人晏波

  • 地址 518000 广东省深圳市南山区兴科一街2号

  • 入库时间 2023-06-19 10:06:57

说明书

技术领域

本发明涉及特征信息处理领域,特别涉及一种融合帧获得方法、装置、SLAM系统以及存储介质。

背景技术

目前,主流的视觉SLAM(英文:simultaneous localization and mapping,中文:即时定位与地图构建)系统包括单目相机、立体视觉相机或深度彩色相机。SLAM系统通过单目相机获取到目标区域的不同时刻的目标图像,通过对目标图像进行融合处理,获得融合帧。

但是,通过现有的方法获得融合帧时,融合帧的准确性较差。

发明内容

本发明的主要目的是提供一种融合帧获得方法、装置、SLAM系统以及存储介质,旨在解决现有技术中融合帧的准确性较差的技术问题。

为实现上述目的,本发明提出的一种融合帧获得方法,应用于包括N个相机的SLAM系统,所述方法包括以下步骤:

通过所述N个相机获取目标区域的N个目标图像,N为大于等于2的正整数;

对所述N个目标图像进行特征提取,获得特征点集;

基于所述特征点集,获得哈希表;

基于所述哈希表,获得地图点集;

基于所述哈希表,获得描述子集;

基于所述哈希表、所述地图点集和所述描述子集,获得融合帧。

可选的,所述基于所述特征点集,获得哈希表的步骤包括:

在所述特征点集中确定出满足预设匹配条件的匹配特征点;

将所述特征点集中确定出不满足所述预设匹配条件的单目特征点;

基于所述匹配特征点和所述单目特征点,获得哈希表。

可选的,所述基于所述匹配特征点和所述单目特征点,获得哈希表的步骤包括:

获取所述所述匹配特征点在所述N个目标图像中的第一描述子、第一像素坐标和第一相机ID;

获取所述单目特征点在所述N个目标图像中的第二描述子、第二像素坐标和第二相机ID;

基于所述匹配特征点、所述单目特征点、所述第一描述子、所述第一像素坐标、所述第一相机ID、所述第二描述子、所述第二像素坐标和所述第二相机ID,获得哈希表。

可选的,所述基于所述哈希表,获得地图点集的步骤包括:

基于所述哈希表,获得所述匹配特征点对应的选定像素坐标;

基于所述匹配特征点的选定像素坐标,获得所述匹配特征点的选定相机坐标;

基于所述匹配特征点的选定相机坐标,获得所述匹配特征点的深度信息;

基于所述匹配特征点的深度信息,获得所述匹配特征点的世界坐标;

基于所述匹配特征点的世界坐标和所述匹配特征点,获得所述地图点集。

可选的,所述基于所述匹配特征点的选定相机坐标,获得所述匹配特征点的深度信息的步骤包括:

在所述匹配特征点的选定相机坐标中确定出两个结果相机坐标;

根据所述两个结果相机坐标,通过三角化法以及最小二乘法获得所述匹配特征点的深度信息。

可选的,所述基于所述匹配特征点的深度信息,获得所述匹配特征点的世界坐标的步骤包括:

基于所述匹配特征点的深度信息、与所述深度信息对应的目标相机坐标、所述目标相机坐标对应的目标相机坐标系与世界坐标系的旋转矩阵以及所述目标相机坐标系与世界坐标系的平移向量,获得所述匹配特征点的世界坐标。

可选的,所述基于所述哈希表,获得描述子集的步骤包括:

基于所述哈希表,获得所述匹配特征点对应的第一选定描述子和所述单目特征点对应的第二选定描述子;

在所述第一选定描述子中确定出所述匹配特征点首次被提取到时的第一结果描述子;

在所述第二选定描述子中确定出所述单目特征点首次被提取到时的第二结果描述子;

根据所述匹配特征点、所述单目特征点、所述第一结果描述子和所述第二结果描述子,获得所述描述子集。

此外,为实现上述目的,本发明还提出了一种融合帧获得装置,应用于包括N个相机的SLAM系统,所述装置包括:

获取模块,用于获取目标区域的N个目标图像,N为大于等于2的正整数;

提取模块,用于对所述N个目标图像进行特征提取,获得特征点集;

第一获得模块,用于基于所述特征点集,获得哈希表;

第二获得模块,用于基于所述哈希表,获得地图点集;

第三获得模块,用于基于所述哈希表,获得描述子集;

融合帧获得模块,用于基于所述哈希表、所述地图点集和所述描述子集,获得融合帧。

此外,为实现上述目的,本发明还提出了一种SLAM系统,所述SLAM系统包括:N个相机、存储器、处理器及存储在所述存储器上并在所述处理器上运行的融合帧获得程序,所述融合帧获得被所述处理器执行时实现如上述任一项所述的融合帧获得方法的步骤;其中,N为大于等于2的正整数。

此外,为实现上述目的,本发明还提出了一种存储介质,所述存储介质上存储有融合帧获得程序,所述融合帧获得程序被处理器执行时实现如上述任一项所述的融合帧获得方法的步骤。。

本发明技术方案通过采用一种融合帧获得方法,应用于包括N个相机的SLAM系统,所述方法包括以下步骤:通过所述N个相机获取目标区域的N个目标图像,N为大于等于2的正整数;对所述N个目标图像进行特征提取,获得特征点集;基于所述特征点集,获得哈希表;基于所述哈希表,获得地图点集;基于所述哈希表,获得描述子集;基于所述哈希表、所述地图点集和所述描述子集,获得融合帧。由于,N个相机的多个目标图像相较于单目相机的目标图像,包括的视觉特征信息较多,同时,本发明基于N个相机获取到的多个目标图像获得的融合帧,并不是基于单目相机获取的目标图像获得融合帧,所以,通过本发明获得的融合帧包括较多的视觉特征信息,使得融合帧的准确性较好。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。

图1为本发明实施例方案涉及的硬件运行环境的SLAM系统结构示意图;

图2为本发明融合帧获得方法第一实施例的流程示意图;

图3为本发明哈希表示意图;

图4为三角化法的示意图;

图5为融合帧的结构示意图;

图6为本发明融合帧获得装置第一实施例的结构框图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参照图1,为本发明实施例方案涉及的硬件运行环境的SLAM系统结构示意图。

通常,SLAM系统包括:相机307、至少一个处理器301、存储器302以及存储在所述存储器上并可在所述处理器上运行的融合帧获得程序,所述融合帧获得程序配置为实现如前所述的融合帧获得方法的步骤。

处理器301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(CentralProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器301可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。处理器301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关融合帧获得方法操作,使得融合帧获得方法模型可以自主训练学习,提高效率和准确度。

存储器302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本申请中方法实施例提供的融合帧获得方法。

相机307包括N个相机,N个相机之间可以具有旋转角度和距离,N个相机,N个相机用于获取目标区域的目标图像。通常,同一时刻N个相机同时获取目标地区的目标图像,由于多相机之间具有旋转角度和距离,获得的多个目标图像不同。其中,N个相机可以是高清相机,也可以是普通相机,N个相机中的相机可以是单目相机、立体视觉相机以及深度彩色相机。

在一些实施例中,SLAM系统还可选包括有:通信接口303和至少一个外围设备。处理器301、存储器302和通信接口303之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与通信接口303相连。具体地,外围设备包括:射频电路304、显示屏305和电源306中的至少一种。

通信接口303可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器301和存储器302。在一些实施例中,处理器301、存储器302和通信接口303被集成在同一芯片或电路板上;在一些其他实施例中,处理器301、存储器302和通信接口303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路304用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路304包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路304还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。

显示屏305用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏305是触摸显示屏时,显示屏305还具有采集在显示屏305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器301进行处理。此时,显示屏305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏305可以为一个,电子设备的前面板;在另一些实施例中,显示屏305可以为至少两个,分别设置在电子设备的不同表面或呈折叠设计;在再一些实施例中,显示屏305可以是柔性显示屏,设置在电子设备的弯曲表面上或折叠面上。甚至,显示屏305还可以设置成非矩形的不规则图形,也即异形屏。显示屏305可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。

电源306用于为电子设备中的各个组件进行供电。电源306可以是交流电、直流电、一次性电池或可充电电池。当电源306包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。本领域技术人员可以理解,图1中示出的结构并不构成对融合帧获得设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

此外,本发明实施例还提出一种存储介质,所述存储介质上存储有融合帧获得程序,所述融合帧获得程序被处理器执行时实现如上文所述的融合帧获得方法的步骤。因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。确定为示例,程序指令可被部署为在一个SLAM系统上执行,或者在位于一个地点的多个SLAM系统上执行,又或者,在分布在多个地点且通过通信网络互连的多个SLAM系统上执行。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。

基于上述硬件结构,提出本发明融合帧获得方法的实施例。

参照图2,图2为本发明融合帧获得方法第一实施例的流程示意图,所述方法应用于包括多相机的SLAM系统,所述方法包括以下步骤:

步骤S11:通过所述N个相机获取目标区域的N个目标图像,N为大于等于2的正整数。

需要说明的是,N个目标图像均指是同一时刻的N个目标图像。SLAM系统包括N个相机,同一时刻,N个相机同时拍摄目标区域的N个目标图像,一个相机拍摄一个目标图像;每一个时刻均执行步骤S11,可以通过多次执行步骤S11分别获得多个融合帧。可以理解的是,本发明的方法是一个融合帧的获得过程,多个融合帧的获得过程即为本发明方法多次执行即可。

例如,N个相机为4个相机,同一时刻拍摄目标区域的目标图像为4个目标图像。

具体应用中,N个相机可具有连拍功能,N个相机获得的同一时刻的目标图像为多相机拍摄的连拍图像中具有时间对应关系的多个图像;N个相机拍摄的为视频特征信息时,N个相机获得的同一时刻的多个目标图像为视频信息中具有时间对应关系的多个视频帧。

目标区域可以是指SLAM系统运行时,所要经过的区域,目标区域包括的特征信息均可被SLAM系统的多相机拍摄到。目标区域可以是未知的区域,也可以是已知的区域,本发明不做限制。

步骤S12:对所述N个目标图像进行特征提取,获得特征点集。

需要说明的是,图像处理中,特征点指,在图像处理中,图像灰度值发生剧烈变化的点或者在图像边缘上曲率较大的点,特征可以分为颜色特征和纹理特征。其中,颜色特征是一种全局特征,描述了图像或图像区域所对应的景物的表面性质,一般颜色特征是基于像素点的特征,此时所有属于图像或图像区域的像素都有各自的贡献;由于颜色对图像或图像区域的方向、大小等变化不敏感,所以颜色特征不能很好地捕捉图像中对象的局部特征;另外,仅使用颜色特征查询时,如果数据库很大,常会将许多不需要的图像也检索出来;颜色直方图是最常用的表达颜色特征的方法,其优点是不受图像旋转和平移变化的影响,进一步借助归一化还可不受图像尺度变化的影响,基缺点是没有表达出颜色空间分布的特征信息。纹理特征也是一种全局特征,它也描述了图像或图像区域所对应景物的表面性质。

具体应用中,特征点可以是通过orb、surf、或sift特征提取算法中的任一算法提取的特征点,也可以是通过其他方式提取的特征点,本发明不做限制。

其中,特征点包括该特征点的相机ID、描述子和像素坐标(2D坐标);其中,描述子可以是描述该特征点周围像素信息的一个向量,该向量可以是二进制数。相机ID是指特征点在目标图像中的编号,由于,同一个特征点可能在同一时刻的N个目标图像中均被提取到,所以同一时刻同一个特征点可同时对应N个相机ID;描述子是指特征点在目标图像中的描述子,同一时刻同一特征点在不同目标图像中的描述子可能不同,像素坐标是指特征点在目标图像中的像素坐标,同一时刻同一特征点在不同目标图像中像素坐标可能不同。

可以理解的是,为方便理解,下文中的目标点均是指特征点对应的客观存在的实物点。

例如,SLAM系统具有4个相机a相机、b相机、c相机和d相机,同一时刻,4个相机拍摄目标区域的4个目标图像,对4个目标图像进行特征提取,均提取到目标区域对应的特征点A,在a相机的目标图像中,特征点相机ID为12,特征点A描述子为1010100,像素坐标为(13,11),在b相机的目标图像中,特征点相机ID为22,特征点A描述子为1010110,像素坐标为(23,11),在c相机的目标图像中,特征点相机ID为32,特征点A描述子为1010111,像素坐标为(33,11),在d相机的目标图像中,特征点相机ID为32,特征点A描述子为1010101,像素坐标为(43,11),此时,A特征点对应的描述子有4个,相机ID也有4个,像素坐标也有4个。

根据提取的特征点,获得包括特征点和特征点的特征信息的特征点集,特征点的特征信息即为所述相机ID、像素坐标和描述子。

步骤S13:基于所述特征点集,获得哈希表。

进一步的,步骤S13包括:在所述特征点集中确定出满足预设匹配条件的匹配特征点;将所述特征点集中确定出不满足所述预设匹配条件的单目特征点;基于所述匹配特征点和所述单目特征点,获得哈希表。

需要说明的是,当多个特征点的描述子相近时,该多个特征点满足预设匹配条件,描述子的相近程度本发明不做限制,用户可以根据自己的需求进行设定,但是为保证获得的匹配特征点准确率高,预设匹配条件的描述子相近程度设置较高为好;例如,描述子为7位二进制数,预设匹配条件为描述子前五位相同。

进一步的,所述基于所述匹配特征点和所述单目特征点,获得哈希表的步骤包括:获取所述所述匹配特征点在所述N个目标图像中的第一描述子、第一像素坐标和第一相机ID;获取所述单目特征点在所述N个目标图像中的第二描述子、第二像素坐标和第二相机ID;基于所述匹配特征点、所述单目特征点、所述第一描述子、所述第一像素坐标、所述第一相机ID、所述第二描述子、所述第二像素坐标和所述第二相机ID,获得哈希表。

需要说明的是,在提取到特征点后,同一时刻不同相机对应的目标图像提取到的特征点作为一个集合,即,N个相机对应N个集合。将N个集合中的全部特征点进行匹配,将满足预设匹配条件的特征点合为一个匹配特征点,该匹配特征点对应多个相机ID、多个描述子和多个像素坐标作为该匹配特征点的特征信息,其中,并不是每个相机的目标图像均能提取到匹配特征点,只是其中至少两个相机的目标图像能提取到匹配特征点,所以此处的多个是指不大于N的值;将N个集合中不满足预设匹配条件的特征点作为单目特征点,单目特征点的特征信息即为该特征点对应的一个相机ID、一个描述子和一个像素坐标。

例如,SLAM系统具有4个相机a相机、b相机、c相机和d相机,同一时刻,4个相机拍摄目标区域的4个目标图像,对4个目标图像进行特征提取,均提取到目标区域的目标点对应的特征点A,在a相机的目标图像中,特征点A相机ID为12,描述子为1010100,像素坐标为(13,11),在b相机的目标图像中,特征点A相机ID为22,描述子为1010110,像素坐标为(23,11),在c相机的目标图像中,特征点A相机ID为32,描述子为1010111,像素坐标为(33,11),在d相机的目标图像中,特征点A相机ID为32,描述子为1010101,像素坐标为(43,11),此时,A特征点为匹配特征点,对应的描述子有4个,相机ID也有4个,像素坐标也有4个,匹配特征点A的特征信息包括四个相机ID——12、22、32和42,4个描述子——1010100、1010110、1010111和1010101,4个像素坐标——(13,11)、(23,11)、(33,11)和(43,11)。

参照图3,图3为本发明哈希表示意图,将所有的匹配特征点和单目特征点分别赋值为0~(M-1),即匹配特征点和单目特征点的和为M个,以赋值为哈希表的键值id(key),一个匹配特征点或一个单目特征点对应一个键值,将匹配特征点和单目特征点的特征信息作为哈希表的值(value)。其中,SLAM系统包括N个相机,所以,一个键值在哈希表中的值包括N个不同特征信息,即一个目标点在N个相机的N个目标图像中分别对应特征点的一个特征信息,哈希表的值(value)为相机ID,描述子和像素坐标是以子特征信息的模式附于对应的相机ID后面;其中,哈希表的值(value)可以是被附于描述子和像素坐标的相机ID,也可以是描述子、像素坐标和相机ID的组合后获得的信息,本发明不做限制。

可以理解的是,一个键值(即,一个目标点对应的一个特征点,该特征点可以是单目特征点,也可是匹配特征点)的第一个值即为第一个相机的目标图像提取到该特征点时,对应的相机ID,可以通过值的位置确定该值对应的相机;另外,当特征点不能在某个目标图像中被提取到时,该特征点在该目标图像对应的相机中的相机ID赋值为-1,且相机ID不被附于描述子和像素坐标,其中,相机ID赋值为-1时,即表述特征点在该相机的目标图像中未被提取到,赋值还可以为其他形式,例如-2,本发明不局限于-1。

在图3中,键值104对应的特征点的特征信息为N个,从左到右分别为,在1号相机的目标图像中并未被提取到······在相机i的目标图像中被提取到,对应的相机ID为201,在相机N的目标图像中被提取到,对应的相机ID为3。

可以理解的是,本发明提供的哈希表的示意是一种较优的选择,还可以根据本发明的思路确定其他类型的哈希表,此处不做过多赘述。

步骤S14:基于所述哈希表,获得地图点集。

进一步的,步骤S14包括:基于所述哈希表,获得所述匹配特征点对应的选定像素坐标;基于所述匹配特征点的选定像素坐标,获得所述匹配特征点的选定相机坐标;基于所述匹配特征点的选定相机坐标,获得所述匹配特征点的深度信息;基于所述匹配特征点的深度信息,获得所述匹配特征点的世界坐标;基于所述匹配特征点的世界坐标和所述匹配特征点,获得所述地图点集。

需要说明的是,参照上述哈希表的结构,通过哈希表键值,即特征点的赋值,找到键值对应的匹配特征点的特征信息,以及确定特征信息所属的相机,作为选定相机,选定相机所属的相机坐标系为选定相机坐标系;可以理解的是,当一个键值P在哈希表中的某一个值Q为-1时,键值P对应的该值Q所属的相机不是选定相机;匹配特征点在选定相机的目标图像中的像素坐标即为选定像素坐标,利用选定像素坐标获得对应的归一化的选定相机坐标。并基于所述匹配特征点的选定相机坐标,获得所述匹配特征点的深度信息;基于所述匹配特征点的深度信息,获得所述匹配特征点的世界坐标;基于所述匹配特征点的世界坐标和所述匹配特征点,获得所述地图点集。

其中,深度信息是指匹配特征点在选定相机所属的相机坐标系下的深度信息,可以理解的是,只需要一个选定相机坐标和对应的一个深度信息即可获得对应的匹配特征点的世界坐标;即,对于全部匹配特征点,获得每一个匹配特征点的一个深度信息即可,不需要获取该匹配特征点全部的选定像素坐标系的深度信息。

例如,相机的个数为4个,特征点A在4个相机中3个相机的目标图像中被提取到,即A特征点为匹配特征点,在获得的哈希表中,匹配特征点A的键值为15,对应的值有4个,其中一个值是-1,即,-1值所属的相机的目标图像中未提取到匹配特征点A;则,其他3个值所属的相机为选定相机,匹配特征点A在选定相机对应的像素坐标为选定像素坐标,选定像素坐标对应的相机坐标为选定相机坐标。其中,3个选定相机坐标为H,J,L,再利用3个相机坐标获得世界坐标时,只需要利用3个选定相机坐标中获得任意一个选定相机坐标(例如L)的深度信息(l),利用l和L即可获得A特征点的世界坐标。

另外,通过公式一和选定像素坐标,获得对应的选定相机坐标。

所述公式一为:

其中,u为选定像素坐标中的横坐标,v为选定像素坐标中的纵坐标,

进一步的,所述基于所述匹配特征点的选定相机坐标,获得所述匹配特征点的深度信息的步骤包括:在所述匹配特征点的选定相机坐标中确定出两个结果相机坐标;根据所述两个结果相机坐标,通过三角化法以及最小二乘法获得所述匹配特征点的深度信息。

可以理解的是,匹配特征点对应的特征信息至少有两个,即在图3所示的哈希表中,匹配特征点对应的不为-1的值至少为两个;匹配特征点的数量较多时,即,匹配特征点对应的键值在哈希表中的不为-1的值较多时,确定其中的任意两个不为-1的值对应的特征信息为结果特征信息,并利用结果特征信息中的像素坐标获得的相机坐标作为结果相机坐标,匹配特征点的结果相机坐标所属的相机为结果相机。

需要说明的是,三角化法的公式如下,即,公式二:

s

其中,X

参照图4,图4为三角化法的示意图,P为SLAM系统目标图像中的一个特征点对应的原始位置图,即,特征点在世界坐标中的实际位置,I

具体应用中,利用公式二和最小乘二法,获得两个结果相机坐标中任一相机坐标的深度信息,该深度信息对应的一个结果相机坐标为目标相机坐标,例如,利用公式二中的s

进一步的,所述基于所述匹配特征点的深度信息,获得所述匹配特征点的世界坐标的步骤包括:基于所述匹配特征点的深度信息、与所述深度信息对应的目标相机坐标、所述目标相机坐标对应的目标相机坐标系与世界坐标系的旋转矩阵以及所述目标相机坐标系与世界坐标系的平移向量,获得所述匹配特征点的世界坐标。

可以理解的是,对于每一个匹配特征点只需要求出一个深度信息即可,根据该深度信息和深度信息对应的目标相机坐标,获得该特征点对应的原始相机坐标。其中,基于目标相机坐标获得的原始相机所属的相机坐标系为目标相机坐标系,例如,X

具体应用中,可以以SLAM系统N个相机中最左侧的相机为一号相机,且利用一号相机初始时刻的坐标系为世界坐标系,也可以以其它方式确定世界坐标系,本发明不做限制。

在利用上述哈希表,获得匹配特征点的世界坐标时,以哈希表的键值为地图点集的地图点元素,以键值对应的匹配特征点的世界坐标为键值的世界坐标,键值对应的单目特征点对应的世界坐标赋值为0,根据所述键值和所述世界坐标,获得地图点集,可以理解的是,键值的数量为M,则地图点集包括的地图点的数量也为M,其中,单目特征点对应的地图点的世界坐标为0,匹配特征点对应的地图点的世界坐标不为0,且有意义,其中地图点定义为具有世界坐标的匹配特征点或单目特征点。

步骤S15:基于所述哈希表,获得描述子集。

进一步的,步骤S15包括:基于所述哈希表,获得所述匹配特征点对应的第一选定描述子和所述单目特征点对应的第二选定描述子;在所述第一选定描述子中确定出所述匹配特征点首次被提取到时的第一结果描述子;在所述第二选定描述子中确定出所述单目特征点首次被提取到时的第二结果描述子;根据所述匹配特征点、所述单目特征点、所述第一结果描述子和所述第二结果描述子,获得所述描述子集。

需要说明的是,哈希表中的每个特征点的键值对应的多个值,每个值均包括不同相机下的特征点的特征信息(描述子、相机ID和像素坐标),其中,对于匹配特征点,键值对应多个特征信息,单目特征点的键值对应一个特征信息;在匹配特征点中,将有效特征信息(即值不为-1相机ID对应的特征信息)确定为选定特征信息,并在选定特征信息中将该匹配特征点第一次被提取到时对应的目标图像中的描述子确定为第一结果描述子;在单目特征点中,将唯一一个描述子确定为第二结果描述子,可以理解的是,该描述子必然是该特征点首次被提取对应的描述子。

以哈希表中的键值为描述子集的元素单元,以对应的第一结果描述子或第二结果描述子作为键值的选定描述子,根据所述键值、所述第一结果描述子和所述第二结果描述子获得描述子集,可以理解的是,键值的数量为M,则选定描述子的数量也为M,其中,M个键值对应的匹配特征点和单目特征点总和为M。

步骤S16:基于所述哈希表、所述地图点集和所述描述子集,获得融合帧。

参照图4,图4为融合帧的结构示意图,其中,该融合帧是基于某一时刻N个相机的目标图像获得的,相机对应的框(即目标图像)形状(代表目标图像的角度和位置)不同,其中位姿是指角度和位移量不同,虚拟的融合帧即为所述融合帧,包括地图点集、哈希表以及描述子集,其中匹配特征点和单目特征点的总和为M,对应的地图点集地图点的数量为M,描述子集中描述子的数量也为M;地图点集源于地图点,示意的,地图点为5个地图点——P1、P2、P3、P4和P5,地图点源于特征点,示意的,特征点包括9个点,该9个点中存在匹配特征点和单目特征点。

本实施例技术方案通过采用一种融合帧获得方法,应用于包括N个相机的SLAM系统,所述方法包括以下步骤:通过所述N个相机获取目标区域的N个目标图像,N为大于等于2的正整数;对所述N个目标图像进行特征提取,获得特征点集;基于所述特征点集,获得哈希表;基于所述哈希表,获得地图点集;基于所述哈希表,获得描述子集;基于所述哈希表、所述地图点集和所述描述子集,获得融合帧。由于,N个相机的多个目标图像相较于单目相机的目标图像,包括的视觉特征信息较多,同时,本发明基于N个相机获取到的多个目标图像获得的融合帧,并不是基于单目相机获取的目标图像获得融合帧,所以,通过本发明获得的融合帧包括较多的视觉特征信息,使得融合帧的准确性较好。

同时,利用上述结构的哈希表获得描述子集和地图点集时,可以利用特征点对应的键值快速的搜索到各个特征点的特征信息,搜索过程简单,搜索效率高。

参照图5,图5为本发明融合帧获得装置第一实施例的结构框图,应用于包括N个相机的SLAM系统,所述装置包括:

获取模块10,用于获取目标区域的N个目标图像,N为大于等于2的正整数;

提取模块20,用于对所述N个目标图像进行特征提取,获得特征点集;

第一获得模块30,用于基于所述特征点集,获得哈希表;

第二获得模块40,用于基于所述哈希表,获得地图点集;

第三获得模块50,用于基于所述哈希表,获得描述子集;

融合帧获得模块60,用于基于所述哈希表、所述地图点集和所述描述子集,获得融合帧。

以上所述仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号