用于3D地图的假设线地图绘制和验证转让专利

申请号 : CN201680031812.X

文献号 : CN107683496B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 金其勇朴勇民

申请人 : 高通股份有限公司

摘要 :

本发明公开了一种用于执行线地图绘制的装置、设备和方法。能获得三维3D地图,所述3D地图至少包含对应于现实世界环境的方面的第一和第二3D线。还能获得所述方面的一或多个图像,并能确定假设3D线。能通过所述一或多个图像验证所述假设3D线,并能更新所述3D地图。对所述假设3D线的所述确定和验证能包含在3D空间中创建平面并使用共面性或正交性假设。

权利要求 :

1.一种线地图绘制的计算机实施的方法,所述方法包括:获得三维3D地图,所述3D地图至少包含对应于现实世界环境的一或多个方面的第一和第二3D线;

获得包含所述一或多个方面的至少一部分的第一一或多个图像;

根据以下各项的组合而产生一或多个假设3D线:所述3D地图以及所述第一一或多个图像;

获得包含所述一或多个方面的至少一部分的第二一或多个图像,其中所述第二一或多个图像从与所述第一一或多个图像不同的位置捕捉;以及从第二一或多个图像验证所述一或多个假设3D线中的至少一个对应于所述一或多个方面;

其中验证所述一或多个假设3D线对应于所述方面包括将边缘滤波器应用于所述第二一或多个图像以获得所述一或多个假设3D线的量值。

2.根据权利要求1所述的方法,其进一步包括:响应于对所述一或多个假设3D线的成功验证而更新所述3D地图以包含所述一或多个假设3D线。

3.根据权利要求1所述的方法,其中产生一或多个假设3D线包括:基于所述第一3D线和所述第二3D线而界定3D空间中的平面;

识别与所述平面正交的一或多个3D线;以及

将与所述平面正交的所述3D线中的一或多个选作所述一或多个假设3D线。

4.根据权利要求1所述的方法,其中应用所述边缘滤波器包含应用索贝尔边缘滤波器。

5.根据权利要求1所述的方法,其中产生所述一或多个假设3D线包含从所述第一一或多个图像提取一或多个线,且其中所述假设3D线基于经提取的一或多个线。

6.根据权利要求5所述的方法,其中验证所述一或多个假设3D线对应于所述方面包含:基于所述第一3D线和所述第二3D线而界定3D空间中的平面;以及确定所述一或多个假设3D线是否与所述平面共面。

7.一种机器可读非暂时性存储介质,其存储能由处理器执行以进行以下操作的线地图绘制程序指令:获得三维3D地图,所述3D地图至少包含对应于现实世界环境的一或多个方面的第一和第二3D线;

获得包含所述一或多个方面的至少一部分的第一一或多个图像;

根据以下各项的组合而产生一或多个假设3D线:所述3D地图以及所述第一一或多个图像;

获得包含所述一或多个方面的至少一部分的第二一或多个图像,其中所述第二一或多个图像从与所述第一一或多个图像不同的位置捕捉;以及从第二一或多个图像验证所述一或多个假设3D线中的至少一个对应于所述一或多个方面;

其中用以验证所述一或多个假设3D线对应于所述方面的所述指令包括用以执行以下操作的指令:将边缘滤波器应用于所述一或多个图像以获得所述一或多个假设3D线的量值。

8.根据权利要求7所述的介质,其进一步包括用以进行以下操作的指令:响应于对所述一或多个假设3D线的成功验证而更新所述3D地图以包含所述一或多个假设3D线。

9.根据权利要求7所述的介质,其中用以产生一或多个假设3D线的所述指令包含用以进行以下操作的指令:基于所述第一3D线和所述第二3D线而界定3D空间中的平面;

识别与所述平面正交的一或多个3D线;以及

将与所述平面正交的所述3D线中的一或多个选作所述一或多个假设3D线。

10.根据权利要求7所述的介质,其中用以应用所述边缘滤波器的所述指令包含用以应用索贝尔边缘滤波器的指令。

11.根据权利要求7所述的介质,其中用以产生所述一或多个假设3D线的所述指令包含用以从所述一或多个图像提取一或多个线的指令,且其中所述假设3D线基于经提取的一或多个线。

12.根据权利要求11所述的介质,其中用以验证所述一或多个假设3D线对应于所述方面的所述指令包含用以执行以下操作的指令:基于所述第一3D线和所述第二3D线而界定3D空间中的平面;以及确定所述一或多个假设3D线是否与所述平面共面。

13.一种用于线地图绘制的装置,其包括:

存储器;

处理器,其连接到所述存储器且经配置以:

获得三维3D地图,所述3D地图至少包含对应于现实世界环境的一或多个方面的第一和第二3D线;

获得包含所述一或多个方面的至少一部分的第一一或多个图像;

根据以下各项的组合而产生一或多个假设3D线:所述3D地图以及所述第一一或多个图像;

获得包含所述一或多个方面的至少一部分的第二一或多个图像,其中所述第二一或多个图像从与所述第一一或多个图像不同的位置捕捉;以及从第二一或多个图像验证所述一或多个假设3D线中的至少一个对应于所述一或多个方面;

其中用以验证所述一或多个假设3D线对应于所述方面的指令包括用以执行以下操作的指令:将边缘滤波器应用于所述一或多个图像以获得所述一或多个假设3D线的量值。

14.根据权利要求13所述的装置,其进一步包括用以进行以下操作的指令:响应于对所述一或多个假设3D线的成功验证而更新所述3D地图以包含所述一或多个假设3D线。

15.根据权利要求13所述的装置,其中用以处理所述第一3D线和所述第二3D线的所述指令包括用以执行以下操作的指令:基于所述第一3D线和所述第二3D线而界定3D空间中的平面;

识别与所述平面正交的一或多个3D线;以及

将与所述平面正交的所述3D线中的一或多个选作所述一或多个假设3D线。

16.根据权利要求13所述的装置,其中用以应用所述边缘滤波器的所述指令包含用以应用索贝尔边缘滤波器的指令。

17.根据权利要求13所述的装置,其中用以确定所述一或多个假设3D线的所述指令包含用以从所述一或多个图像提取一或多个线的指令,且其中所述假设3D线基于经提取的一或多个线。

18.根据权利要求17所述的装置,其中用以验证所述一或多个假设3D线对应于所述方面的所述指令包含用以执行以下操作的指令:基于所述第一3D线和所述第二3D线而界定3D空间中的平面;以及确定所述一或多个假设3D线是否与所述平面共面。

19.一种用于执行线地图绘制的设备,所述设备包括:用于获得三维3D地图的装置,所述3D地图至少包含对应于现实世界环境的一或多个方面的第一和第二3D线;

用于获得包含所述一或多个方面的至少一部分的第一一或多个图像的装置;

用于根据以下各项的组合而产生一或多个假设3D线的装置:所述3D地图以及所述第一一或多个图像;

用于获得包含所述一或多个方面的至少一部分的第二一或多个图像的装置,其中所述第二一或多个图像从与所述第一一或多个图像不同的位置捕捉;以及用于从第二一或多个图像验证所述一或多个假设3D线中的至少一个对应于所述一或多个方面的装置;

其中用于验证所述一或多个假设3D线对应于所述方面的所述装置包括:用于将边缘滤波器应用于所述一或多个图像以获得所述一或多个假设3D线的量值的装置。

20.根据权利要求19所述的设备,其进一步包括:用于响应于对所述一或多个假设3D线的成功验证而更新所述3D地图以包含所述一或多个假设3D线的装置。

21.根据权利要求19所述的设备,其中用于产生所述一或多个假设3D线的所述装置包括:用于基于所述第一3D线和所述第二3D线而界定3D空间中的平面的装置;

用于识别与所述平面正交的一或多个3D线的装置;以及用于将与所述平面正交的所述3D线中的一或多个选作所述一或多个假设3D线的装置。

22.根据权利要求19所述的设备,其中用于应用所述边缘滤波器的所述装置包含用于应用索贝尔边缘滤波器的装置。

23.根据权利要求19所述的设备,其中用于产生所述一或多个假设3D线的所述装置包含用于从所述一或多个图像提取一或多个线的装置,且其中所述假设3D线基于经提取的一或多个线。

24.根据权利要求23所述的设备,其中验证所述一或多个假设3D线对应于所述方面包含:用于基于所述第一3D线和所述第二3D线而界定3D空间中的平面的装置;以及用于确定所述一或多个假设3D线是否与所述平面共面的装置。

说明书 :

用于3D地图的假设线地图绘制和验证

[0001] 相关申请的交叉引用
[0002] 本申请要求2015年7月2日申请的标题是“用于3D地图的假设线地图绘制和验证(HYPOTHESES LINE MAPPING AND VERIFICATION FOR 3D MAPS)”的第14/791,205号美国专利申请的优先权,所述美国专利申请以引用的方式并入本文中。

技术领域

[0003] 本发明大体上涉及基于计算机视觉的对象辨识应用程序,且明确地但非排他地说,涉及3维(3D)线地图绘制。

背景技术

[0004] 多种多样的电子装置,包含移动无线通信装置、个人数字助理(PDA)、膝上型计算机、桌上型计算机、数码相机、数字记录装置等等,使用机器视觉技术来提供多功能成像能力。这些能力可包含帮助用户识别地标、识别朋友和/或陌生人和多种其它任务的功能。
[0005] 增强现实(AR)系统已经转向基于模型(例如3D模型)的跟踪算法或同时定位与地图绘制(SLAM)算法,SLAM算法基于相机捕捉的颜色或灰度图像数据。SLAM算法可基于环境内的可识别特征而检测并跟踪环境(例如地标和目标对象)的方面。一些SLAM系统可使用基于点的特征选择来用于对方面/目标对象的检测和跟踪。但是,许多环境(例如人造环境)具有有利于检测类似边缘的特征的充裕边缘。识别并向环境的3D地图添加类似边缘的特征的过程常常被称作线地图绘制。但是,典型的线地图绘制系统会产生不完全的3D线,这是因为它们常常依赖于产生至少三个关键帧以三角测量一个3D线。针对一个3D线处理三个关键帧的要求对例如移动装置等具有相对低处理能力的装置造成沉重的负担。

发明内容

[0006] 本文中所论述的一些实施例实现3D地图绘制系统中的改善的(例如更快的)线地图绘制。更具体地说,本文中所论述的实施例包含从包含于现存3D地图中的现存3D线扩展或产生新的3D线。所述所论述过程可通过使用小的相机移动(即,极少的相机图像而非等待关键帧产生)来产生新3D线。一般来说,过程包含通过来观测所述3D地图或来自接收到的图像中的所述现存线产生假设3D线。可在传入的图像中的一或多个上验证所述假设3D线。
[0007] 在一个实施例中,一种线地图绘制的计算机实施的方法包含:获得三维(3D)地图,所述3D地图至少包含对应于现实世界环境的一或多个方面的第一和第二3D线;以及获得包含所述一或多个方面的至少一部分的第一一或多个图像。所述方法还能包含根据以下各项中的一或多个而产生一或多个假设3D线:所述3D地图、所述第一一或多个图像或其组合。所述方法还能包含获得包含所述一或多个方面的至少一部分的第二一或多个图像的装置,其中所述第二一或多个图像从与所述第一一或多个图像不同的位置捕捉。此外,所述方法能包含从第二一或多个图像验证所述一或多个假设3D线中的至少一个对应于所述一或多个方面。
[0008] 在另一实施例中,一种计算机可读媒体包含存储于其上用于线地图绘制的程序代码。在一个实施例中,所述程序代码包含用以进行以下操作的指令:获得三维(3D)地图,所述3D地图至少包含对应于现实世界环境的一或多个方面的第一和第二3D线;以及获得包含所述一或多个方面的至少一部分的第一一或多个图像。所述指令还能根据以下各项中的一或多个而产生一或多个假设3D线:所述3D地图、所述第一一或多个图像或其组合。所述指令还能获得包含所述一或多个方面的至少一部分的第二一或多个图像,其中所述第二一或多个图像从与所述第一一或多个图像不同的位置捕捉。此外,所述指令能从第二一或多个图像验证所述一或多个假设3D线中的至少一个对应于所述一或多个方面。
[0009] 在又另一个实施例中,一种装置包含连接到处理单元的存储器。所述存储器适于存储用于线地图绘制的程序代码,且所述处理单元适于存取并执行包含于所述程序代码中的指令。当所述指令由所述处理单元执行时,所述处理单元引导所述装置以:获得三维(3D)地图,所述3D地图至少包含对应于现实世界环境的一或多个方面的第一和第二3D线;以及获得包含所述一或多个方面的至少一部分的第一一或多个图像。所述指令还能根据以下各项中的一或多个而产生一或多个假设3D线:所述3D地图、所述第一一或多个图像或其组合。所述指令还能获得包含所述一或多个方面的至少一部分的第二一或多个图像,其中所述第二一或多个图像从与所述第一一或多个图像不同的位置捕捉。此外,所述指令能从第二一或多个图像验证所述一或多个假设3D线中的至少一个对应于所述一或多个方面。
[0010] 在另一实施例中,一种用于线地图绘制的设备包含:用于获得三维(3D)地图的装置,所述3D地图至少包含对应于现实世界环境的一或多个方面的第一和第二3D线;以及用于获得包含所述一或多个方面的至少一部分的第一一或多个图像的装置。所述设备还能包含用于根据以下各项中的一或多个而产生一或多个假设3D线的装置:所述3D地图、所述第一一或多个图像或其组合。所述设备还能包含用于获得包含所述一或多个方面的至少一部分的第二一或多个图像的装置,其中所述第二一或多个图像从与所述第一一或多个图像不同的位置捕捉。此外,所述设备能包含用于从第二一或多个图像验证所述一或多个假设3D线中的至少一个对应于所述一或多个方面的装置。
[0011] 本发明的上述以及其它实施例、目标和特征将从结合附图给出的各种实施例的以下描述中变得显而易见。

附图说明

[0012] 图1A和1B分别说明一个实施例中的能够进行线地图绘制的移动平台的前侧和背侧。
[0013] 图2是说明一个实施例中的线地图绘制过程的流程图。
[0014] 图3A是说明一个实施例中的基于正交性假设而产生假设3D线的过程300A的流程图。
[0015] 图3B是说明一个实施例中的验证从正交性假设产生的假设3D线的过程300B的流程图。
[0016] 图4A说明一个实施例中的目标对象的图像。
[0017] 图4B说明一个实施例中的对应于目标对象的现存3D模型的第一和第二预先存在的3D线。
[0018] 图4C说明一个实施例中的基于第一和第二3D线而在3D空间中界定的平面。
[0019] 图4D说明一个实施例中的与经界定平面正交的若干假设3D线。
[0020] 图4E说明一个实施例中的假设3D线的经验证部分。
[0021] 图4F说明一个实施例中的经更新3D地图的3D线。
[0022] 图5A是说明一个实施例中的基于共面性假设而产生假设3D线的过程的流程图。
[0023] 图5B是说明一个实施例中的验证基于共面性假设所产生的假设3D线的过程的流程图。
[0024] 图6A说明目标和背景对象的实例图像。
[0025] 图6B说明一个实施例中的对应于目标对象的现存3D模型的第一和第二预先存在的3D线。
[0026] 图6C说明一个实施例中的基于共面性假设所产生的假设3D线。
[0027] 图6D说明一个实施例中的基于第一和第二3D线而在3D空间中界定的平面。
[0028] 图6E说明一个实施例中经更新3D地图的的预先存在以及经验证的3D线。
[0029] 图7是说明能够执行本文中论述的过程的装置的实施例的功能框图。
[0030] 图8是能够执行本文中论述的过程的示范性图像处理系统的功能框图。

具体实施方式

[0031] 贯穿本说明书对“一个实施例”、“一实施例”、“一个实例”或“一实例”的参考意味着结合所述实施例或实例描述的特定特征、结构或特性包含在本发明的至少一个实施例中。因此,贯穿本说明书在不同位置中出现短语“在一个实施例中”或“在一实施例中”未必都是指同一个实施例。此外,在一或多个实施例中,特定特征、结构或特性可以任何合适方式组合。在此说明的任何实例或实施例不应解释为比其它实例或实施例优选或有利。
[0032] 在一个实施例中,本文中所描述的改善的计算机视觉线地图绘制技术实现对环境(例如现实世界环境)的一或多个方面(例如在本文中也被称作对象或元素)的检测和/或跟踪。在一个实施例中,通过利用来自输入图像的小相机移动,包含于3D地图中的3D线(例如预定或接收到的地图中的预先存在的线)用以确定假设3D线(例如未在预定3D地图内的3D空间中识别或地图绘制的新线)。可根据输入图像而出于准确性来验证假设3D线。举例来说,可分析假设3D线以确定它们是否表示对应于环境的一或多个检测到或跟踪到的方面(例如环境的目标对象或其它元素)的实际线。在下文更详细地描述了本公开的这些和其它特征。
[0033] 图1A和1B分别说明能够进行线地图绘制的移动平台/设备的前侧和背侧。移动平台100说明为包含显示器102、扬声器104和麦克风106。移动平台100进一步包含用于捕捉环境的图像的相机108。移动平台100可进一步包含运动传感器(未展示),例如加速度计、陀螺仪等等,所述运动传感器可用以辅助确定移动平台100或等效地确定相机108的位姿,相机108可与运动传感器具有已知/经校准的位置关系。还可或替代地可使用基于视觉的跟踪技术来确定移动平台100的位姿。
[0034] 如本文中所使用,移动平台指例如以下各项的任何便携式电子装置:蜂窝式或其它无线通信装置、个人通信系统(PCS)装置、个人导航装置(PND)、个人信息管理器(PIM)、个人数字助理(PDA)、平板电脑、可佩戴式装置、头戴式显示器(HMD)或其它合适的移动装置。移动平台能够接收无线通信和/或导航信号,例如导航定位信号。术语“移动平台”还意在包含例如通过短程无线、红外线、有线连接或其它连接来与个人导航装置(PND)通信的装置,而不论卫星信号接收、辅助数据接收和/或定位相关处理是发生在装置处还是在PND处。而且,“移动平台”意图包含能够执行增强现实(AR)应用程序的所有电子装置,包含无线通信装置、计算机、膝上型计算机、平板计算机等。
[0035] 在AR应用程序中,现实世界对象成像且连同计算机产生的信息在屏幕上显示,计算机产生的信息例如图像、3D虚拟演员或文本信息。在AR中,可检测并跟踪成像的现实世界对象以便确定相机相对于成像的现实世界对象的位置和定向(位姿)信息。此信息用以正确地显现待连同现实世界对象一起显示的图形对象。被检测到并跟踪到的现实世界对象可以是二维(2D)或三维(3D)对象。
[0036] 对于在移动电话或其它移动平台上实现AR的重大挑战是准确且实时地估计并跟踪相机位姿的问题。用于AR应用程序的位姿跟踪具有非常苛刻的要求:其必须提供完整的六个自由度,给出相对于给定坐标系的绝对测量值,非常稳固并且实时地运行。所关注的是使用基于计算机视觉(CV)的途径来计算相机位姿的方法,基于CV的途径依赖于首先检测并随后跟踪在相机视图内的一或多个对象。
[0037] 在操作中,当移动平台相对于环境(例如从移动平台相机视角可见的局部环境)的方面(例如地标、目标对象或元素)处于第一位置中时,实施增强现实的移动平台可捕捉环境的方面的第一图像。移动平台可在移动平台处于第二位置中时捕捉包含环境的方面的第二图像。由于移动平台的移动,相机相对于环境的方面的位姿可改变。举例来说,移动平台的移动可平移到第一与第二图像之间的目标对象的移动。移动平台的此移动引起显示器102上的对象的移位。可通过更新图形的视角或大小来调节计算机产生的AR图形。在各种实例中,对象移动可由实际对象移动、移动平台移动或两者的组合引起。移动平台可跟踪对象移动以使得显现的增强保持在恰当的位置、大小和视角中。
[0038] 边缘检测和对应性发现可用于检测图像中的目标对象的存在和/或在AR应用程序中跟踪目标对象的移动。但是,如上文所提及,典型的线地图绘制系统产生不完全的3D线,这是因为它们在移动平台上赋予了沉重的处理负担。举例来说,例如SLAM等常规3D地图绘制系统常常依赖于至少三个关键帧的产生以三角测量单个线,这可在系统上是过分慢速和/或繁重的。
[0039] 为了检测和/或跟踪目标对象的移动,本发明之实施例实现改善的(例如更快的)计算机视觉线地图绘制(例如实时地图绘制和跟踪,例如3D SLAM或其它系统)。更具体地说,本文中所论述的实施例包含从包含于现存3D地图中的现存3D线扩展或产生新的3D线。所述所论述过程可通过使用小的相机移动(即,极少的相机图像而非必须等待关键帧产生)来产生新3D线。一般来说,过程包含通过观测3D地图中的现存线来产生假设3D线。可使用传入的图像中的一或多个来验证所述假设线。因此,本发明的实施例可包含至少两个相异操作:(1)产生假设3D线;以及(2)将那些假设3D线验证为对应于目标对象的实际线。在下文更详细地描述了本公开的这些和其它特征。
[0040] 图2是说明线地图绘制的过程200的流程图。过程框205包含首先获得至少包含对应于现实世界环境的一或多个方面的第一和第二3D线的3D地图。举例来说,两个预先存在的3D线对应于环境内的方面(例如目标对象)。
[0041] 过程框210接着包含获得包含一或多个方面的至少一部分的第一一或多个图像。举例来说,例如移动平台100等装置可从相机接收图像,且所述图像可包含环境的整个目标对象或其它方面的或其区段。
[0042] 过程框215包含根据以下各项中的一或多个而产生一或多个假设3D线:3D地图、第一一或多个图像或其组合。举例来说,相对于来自3D地图的现存3D线,产生假设3D线可以基于正交性假设或基于共面性假设。也就是说,在一个实施例中,可产生假设3D线,使得它们被假设为与由现存3D线界定的平面正交,而在另一实施例中,可产生假设3D线,使得它们被假设为与由现存3D线界定的平面共面。在一些实施例中,共面性假设可替代或补充从3D地图而从图像提取假设3D线。
[0043] 过程框220包含获得包含一或多个方面的至少一部分的第二一或多个图像的装置,其中第二一或多个图像从与第一一或多个图像不同的位置捕捉。举例来说,可通过与来自框205的第一一或多个图像相同的相机传感器捕捉所述图像。相机传感器的视角可在位置上与第一一或多个图像不同,例如在离第一一或多个图像更晚的某一时间点处取得。在一个实施例中,第二一或多个图像可具有与第一一或多个图像不同的位姿。
[0044] 过程框225包含从第二一或多个图像验证一或多个假设3D线中的至少一个对应于一或多个方面。举例来说,验证可包含确定假设3D线是否实际上对应于方面或目标对象。可在包含小相机移动(例如具有与第一一或多个图像不同的位置)以便验证假设线的一或多个捕捉到的图像(例如第二一或多个图像)上方观测预先存在的线。如果假设线被验证为对应于现实世界环境的方面,那么过程可以任选地更新3D地图数据,使得经更新3D地图包含新产生且验证的假设3D线的表示。举例来说,经更新3D地图可包含响应于对假设3D线的成功验证所确定的3D线,以及在假设确定之前是3D地图的部分的预先存在的3D线。
[0045] 图3A是说明一个实施例中的基于正交性假设而产生假设3D线的过程300A的流程图。过程300A是来自过程200的过程框210的一个可能实施方案。过程300A表示基于正交性假设而产生假设3D线的可能过程。如图3A中所展示,过程框305包含基于包含于3D地图数据中的预先存在线而界定3D空间中的平面。在一个实施例中,产生假设3D线的过程包含接收含有对应于目标对象的至少两个3D线的3D地图。图4A说明目标对象404的图像402。图4B说明含于目标对象404的现存3D地图数据中的预先存在的3D线406和408。两个3D线406和408接着用以界定3D空间中的平面410(图4C)。
[0046] 可接着产生假设3D线,使得它们与平面410正交(即,图3A的过程框310)。举例来说,图4D说明与平面410正交的假设3D线412到418。在所说明实例中,在线特征406的线段的末端处产生假设3D线412和414。类似地,在3D线408的线段的末端处产生假设3D线416和418。可在线406与线408的投射相交点处产生假设3D线417。在一个实施例中,可通过取得两个现存线406和408的叉积来产生假设3D线。
[0047] 图3B是说明一个实施例中的验证从正交性假设产生的假设3D线的过程300B的流程图。过程300B是来自过程200的过程框220的一个可能实施方案。过程300B表示验证基于正交性假设所产生的假设3D线的一个实施例。在一个实施例中,目标对象的一或多个接收到的图像可用以验证假设3D线是待添加到3D地图的实际线。验证是计算假设3D线的真实边缘分。在一个实施例中,例如索贝尔(Sobel)滤波器等边缘滤波器可应用于传入的图像以强调含于图像中的任何边缘(即,过程框315)。来自变化的位姿的一或多个经滤波图像可接着用以验证假设3D线是实际线。举例来说,经滤波图像可用以获得假设3D线的量值和/或移除非边缘线特征(即,过程框320)。图4E说明假设3D线的经验证部分(412′到418′)。
[0048] 如上文所论述,经验证3D线可接着添加到3D地图数据,使得3D地图现含有先前的3D线406和408,以及新产生的3D线412′到418′(图4F)。经更新3D地图可接着用于对目标对象的将来检测和跟踪。
[0049] 图5A是说明基于共面性假设而产生假设3D线的过程500A的流程图。过程500A是来自过程200的过程框210的一个可能实施方案。过程500A表示基于共面性假设而产生假设3D线的可能过程。过程框505包含从一或多个接收到的图像提取一或多个线。举例来说,可从具有相关联相机位姿的接收到的图像(例如当前或先前获得的图像)提取线。在一些实施例中,作为从图像提取假设3D线的替代或补充,可从现存3D地图(例如如本文中所描述的包含经重构建线的3D地图)确定假设3D线。
[0050] 在3D假设线确定的一个实施例中,平面“P”(例如从3D地图线获得)投射到图像和图像的相机位姿上(例如当前或先前接收的图像,其中相机图像被连续地接收到,且“先前图像”是正好在当前图像由装置显示或缓冲之前的图像),以便确定区域“R”是否是平面的(例如在可配置或指定的阈值内)。2D线可在区域“R”内检测到,且通过2D线的对应位姿后投射以便确定3D线坐标。当接收到下一图像时,可验证假设3D线(例如如本文中的验证过程所描述)。
[0051] 举例来说,图6A说明含有目标对象604以及背景对象606和608的图像602。每一对象还可被视为且在本文中被称为由图像602表示的环境的方面。图6B说明含于目标对象/方面604的现存或以其它方式预定的3D地图中的两个现存或以其它方式预定的3D线610和612。在一个实施例中,处理图像602(即,过程框505)以检测含于图像中的一或多个线。举例来说,可通过索贝尔边缘滤波器或其它滤波器处理图像602。图6C说明若干检测到的线614到624。在一个实施例中,检测到的线必须具有大于最小阈值的线段长度以便被视为假设3D线。可接着通过假设检测到的线614到626与现存3D线610和612共面,而将检测到的线614到
626视为假设3D线(即,过程框510)。
[0052] 图5B是说明一个实施例中的验证基于共面性假设所产生的假设3D线的过程500B的流程图。过程500B是过程200的过程框220的一个可能实施方案。过程500B表示验证基于共面性假设所产生的假设3D线的一个实施例。过程框515包含基于预先存在的3D线而界定3D空间中的平面。举例来说,图6D说明基于现存3D线610和612而界定平面630。
[0053] 过程框520接着包含确定假设3D线是否确实与经界定平面共面。来自变化的位姿的目标对象的一或多个图像可用以验证假设3D线是否确实定位于平面630中。如图6D中所展示,假设3D线622和624并不位于平面630上,并因此可被忽略。然而,3D线614到620和626确实与平面630共面,且因此验证为实际3D线614′到620′和626′。图6E说明现含有预先存在的3D线610和612以及经验证3D线614′到620′和626′的经更新3D地图的3D线。
[0054] 图7是能够执行本文中论述的过程的装置700的功能框图。装置700是图1A和1B的移动平台100的一个可能实施方案。装置700还可以是包含能够例如通过因特网、WiFi或其它网络与服务器通信的无线通信装置、计算机、膝上型计算机等装置,且不论卫星信号接收、辅助数据接收和/或位置相关的处理是在装置处、在服务器处还是在与网络相关联的另一装置处发生。装置700还可涵盖能够进行增强现实(AR)、虚拟现实(VR)和/或混合现实(MR)应用程序的所有电子装置。
[0055] 装置700可以任选地包含相机702以及任选的用户接口706,所述用户接口包含能够显示由相机702捕捉的图像的显示器722。用户接口706还可包含小键盘724或其它输入装置,用户可通过所述输入装置输入信息到装置700中。必要时,可以通过将虚拟小键盘整合到具有触摸传感器的显示器722中来去掉小键盘724。用户接口706还可包含麦克风726和扬声器728。
[0056] 如果存在,那么装置700还包含连接到相机702和用户接口706并与所述相机和用户接口通信的控制单元704。控制单元704接受并处理从相机702和/或从网络适配器716接收到的图像。控制单元704可由处理单元708和相关联存储器714、硬件710、软件715和固件712提供。
[0057] 控制单元704可进一步包含图形引擎720,图形引擎720可以例如是在期望时在显示器722中显现期望的数据的游戏引擎。出于清楚起见,分开说明处理单元708和图形引擎720,但是处理单元708和图形引擎720可以是单个单元,和/或基于处理单元708中运行的软件715中的指令而实施于处理单元708中。处理单元708以及图形引擎720可以但无需必定包含一或多个微处理器、嵌入式处理器、控制器、专用集成电路(ASIC)、数字信号处理器(DSP)等等。术语处理器和处理单元描述通过系统而非特定的硬件实施的功能。此外,如本文所使用,术语“存储器”指任何类型的计算机存储装置媒体(即,机器可读非暂时性存储媒体),包含长期、短期或与装置700相关联的其它存储器,且不应限于任何特定类型的存储器或存储器数目,或其上存储存储器的任何类型的媒体。
[0058] 根据应用,本文中所描述的过程可以通过各种装置来实施。举例来说,可以硬件710、固件712、软件715或其任何组合实施这些过程。对于硬件实施方案,处理单元可实施于一或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、电子装置、经设计以执行本文中所描述的功能的其它电子单元或其组合内。
[0059] 对于固件和/或软件实施方案,可使用执行本文中所描述的功能的模块(例如进程、功能等等)来实施所述过程。任何有形地体现指令的非暂时性计算机可读媒体可用于实施本文中所描述的过程。举例来说,程序代码可存储于存储器714中且由处理单元708执行。存储器可在处理单元708内或外部得以实施。
[0060] 如果以固件和/或软件实施,那么可将所述功能作为一或多个指令或代码存储于计算机可读媒体上。实例包含编码有数据结构的非暂时性计算机可读媒体,和编码有计算机程序的计算机可读媒体。计算机可读媒体包含物理计算机存储媒体。存储媒体可以是可由计算机存取的任何可用的媒体。作为实例而非限制,此计算机可读媒体可包括RAM、ROM、快闪存储器、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于存储呈指令或数据结构形式的所要程序代码且可由计算机存取的任何其它媒体;如本文中所使用的磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。
[0061] 图8是图像处理系统800的功能框图。如所展示,图像处理系统800包含实例移动平台802,其包含能够捕捉包含对象814的场景的图像的相机(当前视图中未展示)。数据库812可包含数据,包含目标对象814的现存3D线。
[0062] 移动装置802可包含用以展示由相机捕捉的图像的显示器。移动平台802还可基于例如使用来自卫星定位系统(SPS)的信号来确定其经纬度而使用导航,SPS包含人造卫星806,或用于确定位置的任何其它适当来源,包含蜂窝塔804或无线通信存取点805。移动平台802还可包含可用以确定移动平台802的定向的定向传感器,例如数字指南针、加速度计或陀螺仪。
[0063] 卫星定位系统(SPS)通常包含发射器的系统,其经定位以使得实体能够至少部分地基于从发射器接收到的信号来确定其在地球上或上方的位置。此发射器通常发射经标记有设定数目个码片的重复伪随机噪声(pseudo-random noise,PN)码的信号且可位于基于地面的控制站、用户装备和/或宇宙飞船上。在特定实例中,此些发射器可位于地球轨道人造卫星(SV)806上。举例来说,全球导航卫星系统(GNSS)群集,例如全球定位系统(GPS)、伽利略(Galileo)、格洛纳斯(Glonass)或指南针中的SV可发射标记有PN码的信号,所述PN码可区别于由群集中的其它SV发射的PN码(例如如在GPS中,对于每一卫星使用不同PN码,或如在Glonass中,在不同频率上使用相同码)。
[0064] 根据某些实施例,本文中所呈现的技术不限于SPS的全球系统(例如GNSS)。举例来说,本文中所提供的技术可应用于各种地区性系统或以其它方式经启用以用于在各种地区性系统中使用,例如日本上方的准天顶卫星系统(QZSS)、印度上方的印度地区性导航卫星系统(IRNSS)、中国上方的北斗卫星等,和/或可与一或多个全球和/或地区性导航卫星系统相关联或以其它方式经启用以供一或多个全球和/或地区性导航卫星系统使用的各种增强系统(例如基于卫星的增强系统(SBAS))。借助实例但非限制,SBAS可以包含提供完整性信息、差分校正等的增强系统,例如广域增强系统(WAAS)、欧洲地球同步导航重叠服务(EGNOS)、多功能卫星增强系统(MSAS)、GPS辅助地理增强导航或GPS和地理增强导航系统(GAGAN),和/或类似者。因此,如本文所使用,SPS可包含一或多个全球和/或区域性导航卫星系统和/或扩增系统的任何组合,且SPS信号可包含SPS、类似SPS和/或与此一或多个SPS相关联的其它信号。
[0065] 移动平台802不限于与用于位置确定的SPS一起使用,这是因为位置确定技术可以配合多种无线通信网络实施,无线通信网络包含蜂窝塔804并且来自无线通信存取点805,例如无线广域网(WWAN)、无线局域网(WLAN)、无线个域网(WPAN)。另外,移动平台802可必要时通过蜂窝塔架804且从无线通信存取点805使用各种无线通信网络或使用人造卫星806来存取一或多个服务器808以获得数据,例如含有来自数据库812的现存3D线的3D地图数据。术语“网络”与“系统”常可互换使用。WWAN可以是码分多址(CDMA)网络、时分多址(TDMA)网络、频分多址(FDMA)网络、正交频分多址(OFDMA)网络、单载波频分多址(SC-FDMA)网络、长期演进(LTE)等等。CDMA网络可以实施一或多个无线电接入技术(RAT),例如cdma2000、宽带CDMA(W-CDMA)等。cdma2000包含IS-95、IS-2000和IS-856标准。TDMA网络可实施全球移动通信系统(GSM)、数字高级移动电话系统(D-AMPS)或某种其它RAT。来自名为“第三代合作伙伴计划”(3rd Generation Partnership Project,3GPP)的协会的文献中描述了GSM和W-CDMA。来自名为“第三代合作伙伴计划2”(3GPP2)的联盟的文献中描述了cdma2000。3GPP和
3GPP2文献可公开获得。WLAN可以是IEEE 802.11x网络,且WPAN可以为蓝牙网络、IEEE 
802.15x或某一其它类型的网络。所述技术还可结合WWAN、WLAN和/或WPAN的任何组合来实施。
[0066] 如图8中所展示,系统800包含捕捉待使用SLAM(或其它跟踪系统)跟踪的对象814的图像的移动平台802。如所说明,移动平台802可例如通过蜂窝塔804或无线通信存取点805存取无线广域网(WWAN)等网络810,蜂窝塔804或无线通信存取点805耦合到服务器808,服务器808连接到存储与目标对象相关的信息的数据库812,且还可包含具有对应于目标对象的预先存在的3D线的3D地图数据。虽然图8展示一个服务器808,但是应理解,可使用多个服务器以及多个数据库812。移动平台802可通过从服务器808获得数据库812的至少一部分并将所下载数据存储于移动平台802内部的本地数据库中来执行对象检测自身,如图8中所说明。从服务器808获得的数据库的部分可以基于如通过移动平台的定位系统确定的移动平台的地理位置。此外,从服务器808获得的数据库的部分可取决于需要移动平台802上的数据库的特定应用程序。通过基于移动平台的地理位置而下载数据库812的较小部分并在移动平台802上执行对象检测,可避免网络等待时间问题,且空中(over the air,OTA)带宽使用连同客户端(即,移动平台)侧上的存储器要求减小。然而,在期望时,可通过服务器808(或其它服务器)执行对象检测和跟踪,其中移动平台802将查询图像本身或从查询图像所提取的特征提供给服务器808。
[0067] 过程框中的一些或全部在上文所论述的每一过程中出现的顺序不应当被认为是限制性的。而是,得益于本发明的所属领域的技术人员将理解,可以未说明的多种顺序执行所述过程框中的一些。
[0068] 所属领域的技术人员将进一步了解,结合本文所公开的实施例描述的各种说明性逻辑块、模块、引擎、电路和算法步骤可实施为电子硬件、计算机软件或两者的组合。为清楚地说明硬件与软件的此互换性,上文已大致关于其功能性而描述了各种说明性组件、块、模块、引擎、电路和步骤。此功能性是实施为硬件还是软件取决于特定应用和施加于整个系统的设计约束。熟练的技术人员可针对每一特定应用以不同方式来实施所描述功能性,但这样的实施方案决策不应被解释为会引起脱离本发明的范围。
[0069] 所属领域的技术人员将容易了解对本文所公开的实施例的各种修改,且可在不脱离本发明的精神或范围的情况下将本文定义的一般原理应用于其它实施例。因此,本发明并不既定限于本文中所展示的实施例,而应符合与本文中所公开的原理和新颖特征相一致的最广泛范围。