CN111767358A - 可缩放3d地图绘制系统 - Google Patents
可缩放3d地图绘制系统 Download PDFInfo
- Publication number
- CN111767358A CN111767358A CN202010612005.5A CN202010612005A CN111767358A CN 111767358 A CN111767358 A CN 111767358A CN 202010612005 A CN202010612005 A CN 202010612005A CN 111767358 A CN111767358 A CN 111767358A
- Authority
- CN
- China
- Prior art keywords
- map
- keyframes
- data
- client
- database
- 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
Links
- 238000013507 mapping Methods 0.000 title abstract description 13
- 238000000034 method Methods 0.000 claims abstract description 52
- 230000004044 response Effects 0.000 claims abstract description 33
- 238000003860 storage Methods 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000007613 environmental effect Effects 0.000 claims description 5
- 238000009877 rendering Methods 0.000 abstract description 13
- 230000004927 fusion Effects 0.000 abstract description 11
- 101150064138 MAP1 gene Proteins 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 238000012545 processing Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 12
- 230000033001 locomotion Effects 0.000 description 12
- 230000003190 augmentative effect Effects 0.000 description 11
- 230000009466 transformation Effects 0.000 description 6
- 101100400452 Caenorhabditis elegans map-2 gene Proteins 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 238000000060 site-specific infrared dichroism spectroscopy Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 230000004807 localization Effects 0.000 description 4
- 238000011084 recovery Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000000280 densification Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 241000274965 Cyrestis thyodamas Species 0.000 description 1
- 102000008115 Signaling Lymphocytic Activation Molecule Family Member 1 Human genes 0.000 description 1
- 108010074687 Signaling Lymphocytic Activation Molecule Family Member 1 Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2264—Multidimensional index structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/5866—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, manually generated location and time information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2004—Aligning objects, relative positioning of parts
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Remote Sensing (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Library & Information Science (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请涉及可缩放3D地图绘制系统。本发明揭示一种用于多客户端同时定位与地图绘制的系统、设备和方法。追踪和绘制可由多个客户端中的每一者在本地独立地执行。在可配置时间点,可将地图数据发送到服务器以用于拼接和融合。响应于成功拼接和融合到所述服务器已知的一或多个地图,可将与所述服务器的地图有关的已更新的定位及定向信息发送回到所述客户端。客户端可利用所述所接收的服务器位置数据更新其本地地图数据。客户端可从所述服务器接收额外地图数据,所述地图数据可用于扩展所述客户端的地图。客户端可向所述服务器发送针对3D地图的查询,且所述查询可包含元数据。
Description
分案申请的相关信息
本申请是申请号为201580069158.7、申请日为2015年12月1日、发明名称为“可缩放3D地图绘制系统”的中国发明专利申请的分案申请。
相关申请案的交叉参考
本申请案主张2015年9月22日申请的标题为“可缩放3D地图绘制系统(SCALABLE3D MAPPING SYSTEM)”的美国专利申请案第14/862,050号、2015年7月9日申请的标题为“多客户端同时定位与地图绘制(MULTIPLE CLIENT SLAM)”的美国临时申请案第62/190,702号和2014年12月19日申请的标题为“多用户同时定位与地图绘制(MULTIPLE USER SLAM)”的美国临时申请案第62/094,900号的优先权益,所述申请案以引用的方式并入本文。
技术领域
本文所揭示的标的物大体上涉及具有多个客户端的计算机视觉技术和3D地图实施方案。
背景技术
计算机视觉是包含用于获取、分析、处理和理解图像(例如,现实世界图像捕捉)以提供事件或结果的方法和系统的领域。举例来说,一个计算机视觉技术是同时定位与地图绘制(SLAM),其可处理单个相机的输入且随着相机以六自由度(6DOF)移动而连续地建立环境的三维(3D)模型(例如,重建构的地图)。SLAM系统可在绘制3D模型的同时追踪相机相对于3D模型的位姿。基于关键帧的视觉SLAM系统可处理经分开选择的来自传入的相机图像流或馈入的帧。基于关键帧的视觉SLAM系统采用一般相机运动且应用运动恢复结构(structure-from-motion)技术来创建3D特征地图。
现代基于关键帧的计算机视觉(例如,SLAM)系统将工作细分为并行追踪与绘制(PTAM)线程。追踪与绘制线程两者可并行但异步地予以处理。追踪线程可以全帧速率执行,而绘制通常在计算上更密集且因此更慢。针对大区域的缩放计算机视觉和使多个客户端/用户或机器人参与计算机视觉工作的处理产生将两个或更多个单独的地图片/段拼接在一起的需要。一般来说,拼接是指从两个或更多个地图发现重叠部分且确定对应的7DOF相似变换(由3DOF定向、3DOF定位和1D缩放构成)。如果地图中的一者比其它者覆盖大出许多的面积,那么这有时被称为“位置识别”。在成功拼接或位置识别之后,可执行地图融合。地图融合(或简称为“融合”)通常描述处理来自单独地图的数据或信息以组合为单个地图。举例来说,可通过应用于来自单独源地图的图像信息的运动恢复结构(SfM)技术的形式执行融合。
相对于一些类型的计算机视觉技术,追踪、绘制、拼接和融合这四个任务可能随着额外数据或信息被处理而具有增大的计算需求。为了支持许多地图,单个独立用户/客户端可能不能够处理与追踪、绘制、拼接和融合相关联的所有数据。然而,将绘制分担给服务器可能使客户端变得在内容方面依赖服务器。客户端可能依赖连接到服务器以产生实时本地地图相依内容。举例来说,此类内容可用于增强现实(AR)应用。另外,服务器上的地图通常不可缩放或没有很好地组织。因此,改善技术合乎需要。
发明内容
本文所揭示的实施例可涉及一种由服务器执行以用于实施3D地图数据库的方法。所述方法可包含:从客户端接收一或多个关键帧和相关联的元数据;将所接收的一或多个关键帧存储在3D地图数据库中;根据所接收的元数据来标记3D地图数据库中所接收的一或多个关键帧;接收针对地图数据的客户端请求;根据所述客户端请求在所述3D地图数据库中搜索地图数据;且响应于所述搜索,将所得地图数据提供给请求所述地图数据的客户端。
本文所揭示的实施例可涉及一种用于实施3D地图数据库的服务器。所述服务器可经配置以:从客户端接收一或多个关键帧和相关联的元数据;将所接收的一或多个关键帧存储在3D地图数据库中;根据所接收的元数据来标记3D地图数据库中所接收的一或多个关键帧;接收针对地图数据的客户端请求;根据所述客户端请求在所述3D地图数据库中搜索地图数据;且响应于所述搜索,将所得地图数据提供给请求所述地图数据的客户端。
本文所揭示的实施例可涉及一种具有存储其中的程序指令的机器可读非暂时性存储媒体,所述程序指令可由服务器的处理器执行以:从客户端接收一或多个关键帧和相关联的元数据;将所接收的一或多个关键帧存储在3D地图数据库中;根据所接收的元数据来标记3D地图数据库中所接收的一或多个关键帧;接收针对地图数据的客户端请求;根据所述客户端请求在所述3D地图数据库中搜索地图数据;且响应于所述搜索,将所得地图数据提供给请求所述地图数据的客户端。
本文所揭示的实施例可涉及一种用于实施3D地图数据库的设备。所述设备可包含:用于从客户端接收一或多个关键帧和相关联的元数据的装置;用于将所接收的一或多个关键帧存储在3D地图数据库中的装置;用于根据所接收的元数据来标记3D地图数据库中所接收的一或多个关键帧的装置;用于接收针对地图数据的客户端请求的装置;根据所述客户端请求在所述3D地图数据库中搜索地图数据;以及用于响应于所述搜索而将所得地图数据提供给请求所述地图数据的客户端的装置。
其它特征和优势将从附图和详细描述中显而易见。
附图说明
图1是说明其中可实践可缩放3D地图(S3DM)的实施例的示范性系统的框图;
图2说明在一个实施例中针对S3DM系统中的客户端和服务器的异步工作流;
图3说明在一个实施例中在S3DM系统中的客户端与服务器之间的通信;
图4A说明在一个实施例中与S3DM系统中的两个不同客户端相关联的地图的拼接表示;
图4B说明在一个实施例中用于图4A中所说明的拼接地图的方法;
图5说明在一个实施例中用于实施针对S3DM系统的3D地图数据库的方法;
图6说明在一个实施例中S3DM系统的各种阶段和方面的图解表示;
图7说明在一个实施例中的客户端-服务器S3DM系统架构;
图8说明在一个实施例中的S3DM服务器-客户端通信;
图9说明在一个实施例中的四个S3DM客户端的致密个别3D重建构;
图10说明在一个实施例中的各种S3DM客户端模式;以及
图11说明在一个实施例中在纸牌游戏中的两个S3DM客户端的实时AR视图。
具体实施方式
词语“示范性”或“实例”在本文中用以意指“充当实例、例项或说明”。本文中描述为“示范性”或描述为“实例”的任何方面或实施例未必应被解释为比其它方面或实施例优选或有利。
在一个实施例中,可缩放3D地图(S3DM)系统跨越一或多个客户端和服务器细分追踪、绘制、拼接和融合。S3DM还包含用以将服务器所确定的和/或客户端所接收的元数据与3D地图数据库(例如,SFM数据库和地图集区存储)相关联的标注或标记系统。举例来说,3D地图数据库可包含与3D地图集区有关的图像数据库。在一个实施例中,图像数据库含有所有关键帧和其相关联的元数据。图像数据库中所含的关键帧可与地图集区中所含的零个、一个或更多个地图有关。在一个实施例中,对于每一关键帧-地图连结:关键帧在对应的地图内空间对齐(例如,通过6DOF位姿);且关键帧元数据可应用于所述对应的地图。在一个实施例中,追踪、绘制、拼接和融合组件异步和/或并行执行以使得实现最优可缩放性。举例来说,S3DM系统内的客户端可追踪且绘制目标和环境作为所述客户端的本地参考系统(例如,移动或便携式装置)中的自含操作。S3DM中所实施的每一客户端可在每一相应客户端上本地创建和维持其环境和目标的地图。因此,S3DM客户端可在不依赖服务器的情况下在相应客户端的特定本地地图内解决重新定位。
在一个实施例中,通过劳动的细分,独立和异构的客户端成为可能。客户端可被授权为“群集”部件。群集部件可向服务器提供信息(例如,环境的视觉观测结果),且反过来接收关于群集的其它部件和关于绘制的环境的更新。在一些实施例中,客户端群集部件可独立于服务器而运行。此独立性可通过在每一客户端上执行独立SLAM例项而实现。除了基本SLAM能力(即,绘制和相机追踪),较有能力的客户端可添加额外能力,包含关键帧元数据标记和增强现实标注呈现和相互作用。独立地开始的地图可依请求或以预定批次处理而合并(例如,通过利用元数据标注或标记的关键帧)以创建全域参考地图。在一个实施例中,服务器尝试在可能时合并客户端地图且因此可提供允许在客户端之间交换空间对齐的信息的共同参考坐标系。这种途径是允许在服务器与多个移动客户端之间合作绘制和追踪实时场景的稳固框架。
图1是说明其中可实践S3DM系统的实施例的示范性系统的框图。在一个实施例中,S3DM包含用于追踪和绘制的多用户系统,其适应具有不同能力的移动客户端,所述不同能力通过能够提供实时运动恢复结构的服务器调节。客户端可根据其个别能力共享其场景观测结果。在更多计算资源可用的情况下,这可不仅涉及关键帧追踪,且还涉及地图绘制和地图致密化。在一个实施例中,S3DM是在未指定客户端装置的固定能力的情况下使异构客户端有助于合作绘制工作的系统架构。所述系统可为装置100,其可包含通用处理器161、图像处理模块171、SLAM模块173和存储器164。装置100还可包含耦合到一或多个总线177或信号线(其进一步耦合到至少图像处理171和SLAM 173模块)的数个装置传感器。为清晰起见,将模块171和173与处理器161和/或硬件162分开说明,但可基于软件165和固件163中的指令将所述模块组合和/或实施在处理器161和/或硬件162中。控制单元160可经配置以实施执行如本文中所描述的S3DM的方法。举例来说,控制单元160可经配置以实施装置100的功能(例如,至少图5A和5B中所说明的方法)。
装置100可以是:服务器、移动装置、无线装置、蜂窝电话、增强现实装置(AR)、个人数字助理、可穿戴式装置(例如,眼镜、手表、帽子或类似的身体附接装置)、移动计算机、平板电脑、个人计算机、膝上型计算机、数据处理装置/系统、或具有处理能力的任何类型的装置。
在一个实施例中,装置100是移动/便携式平台(例如,客户端)。装置100可包含用于捕捉图像的装置(例如,相机114),并且还可包含运动传感器111,例如,加速度计、陀螺仪、电子指南针或其它类似运动传感元件。装置100还可在前置或后置相机(例如,相机114)上捕捉图像。装置100可进一步包含用户接口150,所述用户接口包含用于显示增强现实图像的装置,例如,显示器112。用户接口150还可包含键盘、小键盘152或用户可经由其将信息输入到装置100中的其它输入装置。如果需要,将虚拟小键盘集成到具有触摸屏/传感器的显示器112可免除键盘或小键盘152。例如,在装置100是移动平台(例如,蜂窝式电话)的情况下,用户接口150还可包含麦克风154和扬声器156。装置100可包含与本发明无关的其它元件,例如卫星定位系统接收器、电力装置(例如,电池),以及通常与便携式和非便携式电子装置相关联的其它组件。
在一个实施例中,装置100是可与一或多个移动装置或客户端通信且执行与如本文中所描述的S3DM相关联的服务器功能的服务器。举例来说,装置100可执行对从一或多个客户端接收的地图的拼接和融合,且发送与地图相关联的位置信息和标注数据。
装置100可通过基于或以其它方式支持任何合适的无线通信技术的无线网络经由一或多个无线通信链路通信。举例来说,在一些方面中,装置100可为客户端或服务器,且可与无线网络相关联。在一些方面中,所述网络可包括人体局域网络或个人局域网(例如,超宽带网络)。在一些方面中,所述网络可包括局域网或广域网。无线装置可支持或以其它方式使用多种无线通信技术、协议或标准中的一或多者,例如,3G、LTE、高级LTE、4G、CDMA、TDMA、OFDM、OFDMA、WiMAX和Wi-Fi。类似地,无线装置可支持或以其它方式使用多种对应调制或多路复用方案中的一或多者。移动无线装置可以无线方式与其它移动装置、蜂窝电话、其它有线和无线计算机、因特网网站等通信。
如上文所描述,装置100可以是便携式电子装置(例如,智能电话、专用增强现实(AR)装置、游戏装置或具有AR处理和显示能力的其它装置)。实施本文所描述的AR系统的装置可用于多种环境(例如,购物商场、街道、办公室、家庭,或用户可使用其装置的任何地方)中。用户可在广泛多种情形下与其装置100的多个特征介接。在AR情境中,用户可使用其装置来通过其装置的显示器观察现实世界的表示。用户可通过使用其装置的相机与其带有AR功能的装置相互作用以接收现实世界图像/视频,且以将额外的或替代信息叠加到装置上所显示的现实世界图像/视频上的方式来处理图像。当用户在其装置上观察AR实施时,可在装置显示器上实时替换或更改现实世界对象或场景。虚拟对象(例如,文本、图像、视频)可插入到装置显示器上所描绘的场景的表示中。
图2说明在一个实施例中针对客户端和服务器的异步工作流。在一个实施例中,一或多个服务器拼接和融合地图(例如,从一或多个客户端接收的本地地图)以维持由客户端提供且服务器已知的所有地图数据的一致视图。在一个实施例中,拼接处理确定从一个地图坐标系到另一个地图坐标系的相关七自由度(7DOF)相似变换(例如,3DOF平移、3DOF旋转和1DOF缩放)。响应于两个或更多个地图的成功拼接,服务器可通知发送所述本地地图的客户端。举例来说,如果服务器成功拼接客户端的当前地图“A”到另一(例如,先前的或先前创建的)地图“B”,那么服务器可通知客户端“位置识别A-B”。在一个实施例中,S3DM通过发送在指定坐标系中对齐的增强现实(AR)内容来通知客户端位置识别。举例来说,所发送的内容可对齐到坐标系“X”,但现在可由可能对准到不同坐标系“Y”的客户端显示。在一个实施例中,由服务器执行的S3DM融合接收经拼接的地图且将所述拼接的地图并入服务器上的全域地图中。如本文所使用,拼接大体上是指确定相似变换,而将来自两个地图的信息组合为单个改进的地图被称为地图融合或简称为“融合”。因此,融合是指数据关联(例如匹配对应的特征)和优化(例如全域光束法平差)。可对来自两个地图的信息的全部或一部分执行优化。
在一个实施例中,当环境(例如,房间)内的多个用户具有带相机能力的移动装置时,所述装置群组可用作智能相机的“群集”。与任何单个移动装置单独可进行的相比,多个移动装置一起可更高效地进行同时定位与地图绘制(SLAM)。通过在单个工作空间中的追踪和绘制,能够实现针对增强现实(AR)的合作应用,例如涉及物理对象的内部设计或游戏。然而,未经修改的移动装置群集可能缺乏机器人技术中所使用的传统多相机系统具有的许多属性。举例来说,非机器人实施方案可通常不具有固定的几何布置,其在图像质量和计算性能方面的能力可显著不同,且其可用性可改变(例如,由于用户离开房间或用完电池电力)。
在一个实施例中,S3DM利用无线连网以经由云计算提供计算性能和永久性存储。客户端可作为群集操作,同时以物理方式通信耦合/连接到服务器(例如,云服务器)。服务器可从客户端接收关键帧,且将所接收的关键帧用作图像数据库。在一个实施例中,服务器可使用含于所述数据库中的图像来执行应用运动恢复结构(SfM)技术的3D重建构。在一些实施例中,服务器与客户端之间的紧凑循环分布计算方法可能对实施多用户SLAM系统无效。举例来说,依赖于来自服务器的低时延响应(例如,用于关注点三角测量)的客户端在服务器或网络连接受损的情况下(例如,连接输送量、带宽、时延或其它方面减缓)可能失效。然而,网络连接性问题可在现实世界云计算中很有可能,且可影响先前多客户端SLAM系统。在本文所描述的实施例中,S3DM在效率上提供超过先前连网系统的进步。
在一个实施例中,S3DM可从相机图像提取特征(例如,作为在客户端装置205上的追踪220的部分)。如本文所使用的特征(例如,特征点或关注点)作为图像引起关注的或显著的部分。从所捕捉图像提取的特征可表示沿着三维空间(例如,轴线X、Y以及Z上的坐标)的不同的点,且每个特征点可具有相关联的特征位置。相机图像中的特征与先前所捕捉图像的特征匹配(即,与其相同或对应)或未能匹配。特征检测可以是检查每个像素以确定特征是否在特定像素处存在的图像处理操作。特征检测可处理整个所捕捉图像,或替代地,处理所捕捉图像的某些部分或局部。
在一个实施例中,S3DM从客户端接收查询且根据所接收的查询通过服务器执行拼接。或者,拼接可提前且异步地离线执行。
对于每一所捕捉图像或视频帧,一旦已检测到特征,即可提取特征周围的局部图像分块。可使用众所周知的技术提取特征,例如尺度不变特征变换(SIFT),其局部化特征且产生其描述。如果需要,可使用其它技术,例如,快速鲁棒特征(SURF)、梯度位置朝向直方图(GLOH)、归一化互相关(NCC)或其它可比较技术。当确定经提取的图像特征的数目超出阈值(例如,100点特征或其它数目的点)时,图像和特征可保存为关键帧(例如,关键帧240)。
在一个实施例中,S3DM可根据所接收的关键帧240创建本地3D地图。绘制225可通过数据关联改进和光束法平差优化改善本地地图质量。绘制225可基于视差和覆盖度执行关键帧选择以选取用于包含在客户端上的本地地图中的关键帧。覆盖度指示当前帧位姿是否由投影地图特征稳固地约束。低覆盖度可指示相机在观测未绘制的场景区域。绘制225可将3D地图数据发送给追踪220以便执行重新定位。
当S3DM检测到低覆盖度但并非当前帧与现有关键帧之间的足够视差时,追踪可失效。S3DM可响应于未能在追踪失效之后重新定位地图而触发新的本地地图的创建。S3DM可响应于未能重新定位当前本地地图而将当前本地地图的一或多个部分发送到服务器。在一些实施例中,S3DM利用个别关键帧和/或本地地图250更新服务器。
在一个实施例中,在服务器处执行的S3DM拼接由一或多个客户端/用户(例如,客户端205)发送的地图(例如,地图250)。多个地图的拼接230和融合235利用大的运动恢复结构(SFM)数据库中的特征匹配。传统地,多个地图的拼接是个难题,这归因于源图像中的许多混杂因素(例如,不良光照、模糊、重复结构、少纹理区域和过时影像)。在一个实施例中,S3DM通过对输入的地图(例如,来自客户端的本地地图)进行识别或分类来拼接多个地图。
传入地图和关键帧(例如,在服务器处所接收)可标注有从其相应客户端获得的属性(例如,先验或元数据)。举例来说,属性可包含全球定位系统(GPS)定位数据、WiFi识别符(例如,SSID)、用户ID(例如,用户登录凭证或唯一识别符)、应用识别符、使用期(例如,关键帧创建或相机图像捕捉时刻的时间戳),或其组合。
在一个实施例中,SFM数据库270根据所接收的属性而组织。服务器可允许可基于其ID而个别地处理(例如,提供某一服务质量)的不同异构客户端SLAM应用和用户。此外,SFM数据库可含有通过将GPS定位量化到可配置区域(例如,100米乘100米区或某一其它测量组合)所界定的分格或区部。类似地,WiFi SSID可自动与全球GPS定位相关联,或手动指派到分格/区部(例如,在GPS隔离的室内环境下)。
位置识别或拼接230是指发现两个地图的重叠部分(例如,通过匹配观测相同3D地图特征的对应的图像特征)且计算对准所述两个地图的对应的7DOF相似变换(例如,使用3D-3D地图特征对齐方法)。当所接收的本地地图250成功地拼接到临近地图(例如,先前所接收的本地地图或指定的全域地图)时,SFM数据库的先前不连接部分得以连接。因此,成功拼接和最终融合235可改善地图的全域范围。然而,来自客户端的本地地图即使无法与存储在数据库中的现有地图拼接也可存储在服务器处的SFM数据库中。
位置识别或拼接可通过筛选存储在SFM数据库中的相关分格/区部且因此显著地减小搜索空间(例如,针对匹配图像特征)而得益于存储在服务器处且从客户端接收的元数据。在一个实施例中,位置元数据可用于筛选含有于临近先前给定位置的SFM数据库分格/区部内的空间相关地图数据。此外,时间元数据可用于筛选合适的地图数据以用于一年中的特定季节(例如,区分开室外情境中的冬季/夏季地图)或一天中的特定时间(例如,归因于不同光照条件,区分开上午和下午可能较重要)。
在一些实施例中,SFM数据库清理过时或不常使用的地图数据,可将其标记为过期(例如,仍未在位置识别和拼接中使用)或完全舍弃。过时地图数据可包含描绘环境中不再存在或已改变外观的目标的关键帧。举例来说,清理过时关键帧可归因于城市环境中的建构活动(考虑新建置的建筑物或新布置的建筑物立面等)。
过时关键帧可通过使用基于计算机视觉的改变检测技术将其与最近获取的描绘相同目标的关键帧相比而检测到。这些技术允许设置可用于决定是否将关键帧考虑为过时的阈值。此外,过时地图数据可使用例如时间戳的元数据属性检测到。在一个实施例中,从服务器发送到客户端的拼接地图数据255可由使客户端能够在全域坐标中将其本地地图对齐的基本信息(例如,对应的7DOF相似变换和本地地图ID)构成。此信息消耗较低(极小)网络带宽。另外,客户端可从服务器请求将消耗(显著)更多网络带宽的扩展地图信息。额外地图信息可并有关键帧位姿、关键帧图像、关键帧图像特征、3D地图点等。客户端可使用此信息来扩展其本地地图。
图3说明在一个实施例中的客户端与服务器之间的通信。举例来说,客户端205可执行本地SLAM且维持本地地图。本地地图可包含关键帧和3D点。来自客户端的本地地图320可以指定间隔或时间段发送到服务器215。客户端可响应于SLAM系统的重新定位的失效而开始新的地图。
在一个实施例中,服务器215包含重建构330、地图集区拼接335、地图集区存储340和拼接更新345,其中的每一者可为个别的或组合的处理程序或模块。服务器215根据从客户端205接收的本地地图320执行重建构。本地地图320存储在地图集区存储340中,直到确定单个全域地图。响应于确定两个或更多个地图可拼接,服务器215的地图集区拼接335可在继续从客户端接收地图更新时执行拼接。本地地图320在可能的情况下可拼接到服务器215的地图集区中的每个地图。响应于服务器215内的客户端的本地地图的成功拼接,将拼接地图数据325发送到客户端。在一个实施例中,地图数据325包含本地地图ID、7DOF变换(例如,响应于“位置识别”查询)、关键帧(例如,由客户端用以扩展/细化其地图)、3D点(例如,由客户端用以将其地图与服务器同步),或其任何组合。
图4A说明在一个实施例中与两个不同客户端相关联的地图的拼接表示。举例来说,客户端A可创建和/或追踪第一地图“地图1”405和第二地图“地图2”410,然而,客户端A可能最初未察觉客户端B所创建和/或追踪的第三地图“地图3”415的存在。在一个实施例中,服务器拼接“地图1”与“地图3”,且拼接“地图2”与“地图3”,这导致能够拼接“地图1”与“地图2”。此处理的其它细节在下文相关于图4B描述。
图4B说明在一个实施例中用于图4A中所说明的拼接地图的方法。在框425处,客户端“A”创建地图1 405且将地图1 405发送到服务器。
在框440处,客户端“A”未能重新定位。举例来说,相机可能已移动到不具有足够参考点来将当前关键帧联系到任何先前地图关键帧的位置。
在框435处,客户端“A”创建地图2 410且将地图2 410发送到服务器。
在框440处,客户端“B”创建地图3 415且将地图3 415发送到服务器。客户端“A”和客户端“B”可以是S3DM系统中在与每一其它客户端没有任何依附性或关系的情况下操作的独立客户端。
在框445处,服务器拼接地图1与地图3。举例来说,服务器可使用如上文所论述的共同特性或识别符来将一或多个关键帧匹配在一起且将本地地图与全域服务器地图联系在一起,或可将所接收的两个或更多个本地地图联系在一起。
在框450处,服务器通知客户端“B”关于地图1中的客户端“B”位置。举例来说,地图1可视为全域地图,将针对其确定相对位置。虽然先前未觉察地图1,但客户端“B”响应于服务器将本地地图3拼接到地图1而接收与地图1相关联的定位和定向数据。
在框455处,服务器拼接地图2与3。举例来说,服务器可使用如上文所论述的共同特性或识别符来将一或多个关键帧匹配在一起且将本地地图与全域服务器地图联系在一起,或可将所接收的两个或更多个本地地图联系在一起。
在框460处,服务器通知客户端“A”关于地图1中的客户端“A”位置。举例来说,地图1可视为全域地图,将针对其确定相对位置。虽然先前未觉察地图3,但客户端“A”响应于服务器将本地地图3拼接到地图2而接收与地图2相关联的定位和定向数据。
在框465处,客户端“A”和“B”已相对于地图1所提供的全域参考坐标系而更新其本地坐标系。举例来说,地图1可视为由多个客户端或服务器用于追踪和绘制的全域地图。
图5说明在一个实施例中用于实施3D地图数据库的方法。在框506处,所述实施例(例如,S3DM)从客户端接收一或多个关键帧和相关联的元数据。在一些实施例中,服务器从多个不同客户端装置接收多个关键帧和相关联的元数据,且将所述多个关键帧和相关联的元数据添加到3D地图数据库中。元数据可包含以下各者中的一或多者:位置数据、客户端传感器数据、用户识别数据、应用识别数据、时间数据或其任何组合。位置数据可为GPS、WiFi-SSID、蓝牙ID、移动电信基站识别、用户进入位置或其它位置信息。客户端传感器数据可包含磁力计(例如,用于指南针)、加速度计(例如,用以确定重力方向)、时钟或其它传感器。用户识别数据可为装置上记录的或登录进入服务器的用户身份。应用识别数据可包含客户端所使用的特定应用程序。时间数据可包含每天的日历日期和时间。在一些实施例中,服务器将一或多个关键帧存储在图像数据库内。举例来说,存储关键帧可在任何情况下响应于(例如,有时立即响应于)接收到关键帧而发生,即便结果是不可能将一或多个关键帧与特定3D地图拼接或相关联也如此。
在框511处,所述实施例将所接收的一或多个关键帧存储在3D地图数据库中。举例来说,关键帧可为彩色/强度图像。在一些实施例中,3D地图数据库包含图像数据库,且图像可与一或多个地图对齐。
在框516处,所述实施例根据所接收的元数据标记3D地图数据库中的所接收关键帧。举例来说,如果在图像捕捉的时候发现了附近WiFi-SSID,那么关键帧可利用WiFi-SSID进行标记。标记可以是可在3D地图数据库内追踪和记录的与关键帧的连结或其它数据关联。举例来说,数据库中引用特定关键帧的字段可含有用于所述特定关键帧的元数据标记。在一些实施例中,元数据和关键帧由服务器分开接收或是到服务器的单独组件/输入,且在收到关键帧和元数据之后在3D地图数据库内结合或连结。举例来说,服务器可确定特定元数据应标记到特定关键帧,或反之亦然。在一些实施例中,元数据的一个例项可经接收且标记到多个关键帧。举例来说,用户ID可应用于一组传入关键帧。在一些实施例中,服务器响应于新信息而调整(例如,添加、去除和/或更新)数据库中与关键帧相关联的元数据。
在框521处,所述实施例接收针对地图数据的客户端请求,其中所述请求包含元数据查询。所提供的地图数据可包含以下各者中的一或多者:纹理数据、顶点数据、矩阵数据,或其任何组合。在一些实施例中,矩阵数据包含任何种类的变换(例如,7DOF相似变换、6DOF位姿、3DOF旋转等)。举例来说,所述变换可响应于“位置识别查询”。在一些实施例中,纹理数据包含针对彩色、强度和深度图像的关键帧。在一些实施例中,顶点数据包含以下各者中的一或多者:1D/2D/3D几何图元(例如,点、边缘、线段、斑点)、2D/3D网格(例如,三角形、多边形)、2D几何形状(例如,圆形、矩形、四边形等)、3D几何形状(例如,球体、立方体、长方体、圆柱体、圆锥体、角锥体、圆锥体),或特征描述符(例如,SIFT、SURF、BRIEF等)。顶点数据可组织为:顶点阵列列表(例如,用以允许界定多维数据,例如,3D点列表),索引列表(例如,用以允许界定阵列列表内之间关系,例如,阵列列表元素1、2、3形成三角形),或属性列表(例如,用以允许界定语义,例如,阵列列表被解释为三角形、SIFT描述符等)。在一些实施例中,地图数据提供锚点以实现对应的客户端与服务器地图的同步。
在一些实施例中,响应于从客户端装置接收关键帧和相关联的元数据,服务器在3D地图数据库中搜索与所接收的关键帧和相关联元数据相容的地图数据。在一些实施例中,服务器可利用搜索词来寻找或匹配3D地图数据库中的具体地图数据。搜索词可由服务器响应于特定客户端查询而产生,或是直接从客户端接收的搜索词。服务器还可根据搜索的结果起始所接收的关键帧与一或多个相容3D地图的拼接。所接收的关键帧的拼接可为与任何当前待定的针对地图数据的客户端请求无关的后台维护处理。服务器还可将拼接的3D地图存储为标记有元数据的3D地图。
在一些实施例中,响应于接收到针对地图数据的客户端请求,服务器:根据元数据查询选择两个或更多个地图,拼接所述两个或更多个地图以创建输出地图,且将所述输出地图作为3D地图发送到客户端。发送到客户端的地图可为先前拼接的地图,或可为根据客户端随选/请求所拼接的地图。举例来说,服务器可接收针对具有包含“柳语商场(Whispering Willow Mall)”的位置元数据的元数据的请求或搜索词。在一些实施例中,“柳语商场”相关地图数据可能早已拼接和融合在一起(例如,根据先前搜索或因为所述搜索是流行搜索),且可提供所述地图数据而无需任何额外服务器处理。在其它实施例中,“柳语商场”可能尚未在服务器上计算地图数据,但可关联/标记到多个原始关键帧。因此,服务器可响应于“柳语商场”元数据搜索查询而产生和提供与请求的元数据相关联的地图数据。
在框526处,所述实施例根据客户端请求在3D地图数据库中搜索地图数据。在一些实施例中,服务器可利用客户端的识别特征更改元数据查询或对其进行添加。举例来说,服务器可能知道客户端具有对3D地图数据库的子区部的授权,或基于先前地图数据请求仅对特定类型的地图数据感兴趣。
在框531处,所述实施例响应于所述搜索将所得地图数据提供到请求所述地图数据的客户端。在一些实施例中,服务器提供已由服务器根据可配置拼接处理时间表拼接的预定地图。举例来说,服务器可具有每晚或根据另一时间表将潜在关键帧与地图拼接在一起的进度。在一些实施例中,服务器管理员可在服务器处强制进行拼接操作。在其它实施例中,服务器在没有来自客户端针对地图的显式请求的情况下不执行拼接。在一些实施例中,服务器响应于接收到指示由过时关键帧捕捉的区内的阈值水平的环境改变的地图或元数据而清理过时关键帧。
图6说明在一个实施例中S3DM系统的各种阶段和方面的图解表示。区部604到609说明同时观测同一场景(例如,含有对象A 601和对象B 602的场景)的个别SLAM客户端的关键帧。区部610和611说明由服务器使用来自四个客户端的关键帧创建的稀疏点地图。区部615说明场景的致密服务器点云重建构(例如,还包含来自关键帧604到609的对象A 616和对象B 617)。
图7说明在一个实施例中的客户端-服务器系统架构。在一个实施例中,节点C1705到Cn 710表示SLAM客户端,其将信息(例如,关键帧715)提交到SfM服务器(例如,多用户-SLAM服务器720)。在一个实施例中,针对每一客户端,服务器创建客户端管理模块725,其中新地图经重建构且存储在地图集区(例如,地图集区730)中。服务器可连续更新客户端地图且尝试合并多个地图。在一个实施例中,服务器将相关信息(例如,具有相机位姿的关键帧)推入客户端拉队列中(例如,拉队列740)。在一个实施例中,客户端可从拉队列拉取相关信息以更新其自身本地地图。
图8说明在一个实施例中的S3DM服务器-客户端通信。在一个实施例中,客户端1805提交其校准、关键帧和位姿,且触发服务器815开始重建构,同时试图拉取新数据。客户端2 810可执行与客户端1 805相同的初始步骤。服务器815开始搜索客户端1 805与客户端2 810之间的对应性。服务器815可合并3D结构且填充客户端的队列。在一个实施例中,将通过来自共同地图的关键帧和位姿应答拉取请求。
在一个实施例中,S3DM系统包含运行SfM管线的服务器和运行SLAM的多个客户端。由客户端和服务器创建的重建构可使用不同特征描述,可驻存在不同坐标系中,且可异步创建,例如使用涉及全域或本地优化的逐节点策略。如图8的实例实施方案中所说明,客户端(例如,805和810)与服务器(例如,815)可使用着重于关键帧和相机位姿的协议经由网络通信。在一个实施例中,在连接到服务器之后,客户端首先对齐其ID且提供其内部相机校准。服务器可初始化每客户端消息队列。在一个实施例中,在初始化其本地SLAM地图之后,客户端可将对应的立体关键帧对提交到服务器,所述服务器可独立于客户端的自身地图重建构每客户端地图。在操作期间,客户端可从其队列异步拉取消息(例如在后台绘制线程的空闲时间期间)。在某些事件之后,服务器可即刻将相关信息插入客户端的队列中。举例来说,如果第二客户端传输允许两个客户端的地图合并的关键帧,那么服务器提供额外关键帧和对应的位姿。客户端可将这些关键帧并入其本地地图中。另外,服务器可提供允许同步化多个客户端例项之间的参考坐标系的锚点。
在一个实施例中,服务器实施SfM管线且使用GPU上计算的SIFT特征。在一个实施例中,每个客户端被指派服务器处的重建构管线的单独例项。在提交关键帧之后,服务器可即刻针对每一客户端创建场景的稀疏3D重建构,且通过特征匹配和对极几何估计来研究客户端的视图之间的潜在图像重叠。基于此重叠检测,引入任一新地图(例如,添加到地图集区),或通过合并增大现有地图。随着客户端重建构增长,集区中的地图与客户端重建构保持同步,且通过新关键帧的插入刷新。管理存储的地图可包含将来自其它客户端的尚未见的关键帧和对应的位姿信息插入客户端队列中。所述地图合并处理可基于在重叠检测期间所建立的特征点对应性。在一个实施例中,P3P(透视三点)算法可用于处理具有位姿的客户端A的关键帧和客户端B的地图,由此在客户端B的坐标系中恢复客户端A的关键帧的位姿。在客户端A和B的地图中均经三角测量的单个3D点X通过下式可足以估计其余的缩放因数s:
其中c指示对应的相机中心。鲁棒性可通过连续地将缩放因数重新估计为相机中心与通常经三角测量的所有3D点之间的距离比率上的中值来实现。来自客户端A的3D结构可通过下式变换到客户端B的坐标系中
且客户端A的关键帧i=1…n的位姿可根据下式变换
一旦客户端将新关键帧添加到其本地地图,S3DM即可随着地图增长变大而增大对应的服务器侧重建构,从而在较新关键帧和点的子集上运行光束法平差且固定先前的子集以维持实时性能。随后,服务器可将关键帧提供给观测同一场景的所有其它客户端。S3DM可在每一关键帧被放置在出站队列中之前变形每一关键帧以配合客户端的相机校准。服务器还可提供按相应个别客户端的坐标系变换的对应位姿,由此避免在客户端侧上的额外计算工作。最后,服务器还可提供3D点和其对应的观测结果(在经光束法平差论证为稳定的情况下)。
在一个实施例中,图8概述用于图6中所描绘的场景的重建构的服务器与两个客户端之间的通信。网络通信可通过每客户端队列异步操作。在一个实施例中,个别队列可由降低网络流量的发布-订阅模式替换。
图9说明在一个实施例中的四个客户端的致密个别3D重建构。各种客户端类型(例如,客户端A905、B 910、C 915和D 920)可成为群集的部分。在一个实施例中,基础SLAM系统可使用跨越帧所追踪的拐点创建3D地图点,其可不同于由服务器建置的那些点。客户端(例如,在其具有备用计算资源时)可独立地确定其想从服务器所提供的队列读取的数据类型和量。
图10说明在一个实施例中的各种客户端模式:客户端模式V1 1005(仅关键帧)、V21010(关键帧和服务器位姿)和V3 1015(关键帧、服务器位姿和3D点三角测量)。如所说明,V1 1005包含本地位姿1006、本地3D点和所接收的服务器位姿1008。V2进一步包含额外所接收的服务器位姿1009。V3包含额外服务器位姿1010和额外添加的3D点1020。如所说明,V11005仅添加所接收的位姿中的一些,因为RANSAC参数化经设置以避免错误肯定。如所说明,V2 1010添加了所有所接收的关键帧和位姿,且V3 1015另外对新3D点作三角测量。
如V1 1005中所说明,客户端仅读取关键帧且通过P3P将其添加到地图。特征对应性可通过新关键帧和现有关键帧中的拐点周围的分块的穷尽性匹配来建立。这种途径简单但代价大,且可能偶尔产生错误位姿估计。如V2 1010中所说明,客户端从服务器读取具有位姿的关键帧。这些关键帧可通过从现有3D点经由反投影提取观测结果而直接添加到本地地图。这个途径极快,但并不基于来自服务器关键帧的特征创建任何新的3D点。如V3 1015中所说明,客户端通过根据新的关键帧创建额外3D点而改进V2 1010。在一个实施例中,对匹配特征的搜索由服务器所提供的位姿导引。如所说明,额外地图致密化可比V2 1010利用更多计算资源,然而,额外资源通过来自其它客户端的关键帧可使客户端能够将其地图增长到尚未见的区中。
在一个实施例中,S3DM可随着时间推移强制服务器与其客户端之间的最终一致性。S3DM可通过应用锚点方法使对应的客户端与服务器地图同步。针对每一远程客户端地图,服务器可确定一组可用于对准对应的本地客户端地图的很好地汇聚的3D地图点。锚点可作为固定点整合到本地客户端地图中,且在客户端的光束法平差优化中提供强大约束条件。确切地说,可建立一致的参考坐标系,其适用于合作AR应用,其中多个客户端经理想地实施而以一致方式呈现虚拟对象。
如上文所描述,图6说明从客户端接收的关键帧和来自四个客户端的经成功合并的地图。图9说明由服务器重建构的个别远程客户端地图。客户端的拥塞可在地图合并触发较大地图更新(其由潜在许多新关键帧组成)之后发生。S3DM可通过限定客户端处理地图更新的最大速率来克服此拥塞。由服务器提供的地图信息可由客户端用以扩展和细化其本地地图。图10中说明客户端实例类型。客户端类型V3可表示追踪性能与地图增强之间的折衷方案。在一些实施例中,S3DM可在模式V2与V3之间有效地切换,从而使客户端能够通过低的计算额外负担改善追踪性能且每当计算上可能时增大其地图。除重建构且维持共享地图集区之外,S3DM服务器还允许对齐标注,且因此实现简单的合作AR应用。
图11说明在一个实施例中在纸牌游戏中的两个客户端的实时AR视图。图11包含共享标注,即,指向纸牌中的一者的箭头1115。由任一客户端创建的标注1115可首先在本地客户端地图坐标系中对齐。在合并两个客户端地图之后,实施如本文中所描述的S3DM的服务器可将所有对齐的标注自动变换到共同参考坐标系中且将其推到对应的客户端。归因于服务器侧计算,客户端上未产生计算额外负担。帧1105说明标注对象纸牌(例如,1101)的C1且将所述标注提交到服务器。帧1110说明C2一从服务器拉取,箭头标注就相对于对象纸牌(例如,1111)也从帧1105显像。
如上文所描述,装置100可为便携式电子装置(例如,智能电话、专用增强现实(AR)装置、游戏装置、例如眼镜的可穿戴式装置,或具有AR处理和显示能力的其它装置)。实施本文所描述的AR系统的装置可用于多种环境(例如,购物商场、街道、房间,或用户可采用便携式装置的任何地方)中。在AR情境中,用户可使用装置100来通过其装置的显示器观察现实世界的表示。用户可通过使用其装置的相机与其具备AR能力的装置相互作用以接收现实世界图像/视频,且将额外的或替代信息叠加或重叠到装置上所显示的现实世界图像/视频上。当用户在其装置上观察AR实施时,可在装置显示器上实时替换或更改现实世界对象或场景。虚拟对象(例如,文本、图像、视频)可插入到装置显示器上所描绘的场景的表示中。
装置100和相机114的移动可使显示器实时更新全域SLAM地图中的目标(例如,一或多个对象或场景)的增强。通过装置远离初始参考图像位置的移动,装置可从替代视图中捕捉额外图像。在提取特征并根据额外关键帧进行三角测量之后,可实现增大的增强准确性(例如,对象周围的边界可更精确地拟合、场景中的对象的表示将显得更真实,且目标放置可相对于相机114位姿更准确)。
在一个实施例中,对象或图形可插入或整合到由相机114捕捉的视频流(或图像)中且显示在显示器112上。S3DM可任选地促使用户获取额外信息以增强目标。举例来说,用户可能能够添加用户内容以增强目标的表示。用户内容可为图像、3D对象、视频、文本,或可与目标的表示整合或重叠或替代目标的表示的其它内容类型。
显示器可通过从原始场景的无缝追踪实时更新。举例来说,指示牌上的文本可用替代文本替换,或3D对象可战略性地放入场景中且显示在装置100上。当用户改变相机114的定位及定向时,可调整或增强图形或对象以匹配相机114的相对移动。举例来说,如果虚拟对象插入到增强现实显示器中,那么远离虚拟对象的相机移动可减小虚拟对象相对于相机114所行进距离的大小。举例来说,与从虚拟对象退后半步相比,从虚拟对象退后四步应引起虚拟对象大小的更大减小,所有其它变量是相同的。运动图形或动画可在由S3DM表示的场景内制成动画。举例来说,动画对象可在增强现实显示器中所描绘的场景内“移动”。
本领域的技术人员应认识到,本文所描述的实施例可以除AR以外的方式(例如,机器人定位)实施。
S3DM可实施为软件、固件、硬件、模块或引擎。在一个实施例中,先前S3DM描述可通过装置100中的通用处理器161实施以实现先前所要的功能(例如,与图2、图3、图4B和图5相关的方法)。在一个实施例中,S3DM可实施为引擎或模块,其可包含作为子组件的图像处理模块171和SLAM模块173。在其它实施例中,所描述的子组件中的一或多者的特征可组合或分割成不同个别组件、模块或引擎。
本文中的教示可并入到多种设备(例如,装置)中(例如,在其内实施或由其执行)。在一个实施例中,S3DM系统可实施为由处理器执行的引擎或模块以接收图像或视频作为输入。本文所教示的一或多个方面可并入以下各者中:电话(例如,蜂巢式电话)、个人数据助理(“PDA”)、平板电脑、移动计算机、膝上型计算机、平板电脑、娱乐装置(例如,音乐或视频装置)、头戴装置(例如,头戴式耳机、听筒等)、用户I/O装置、计算机、服务器、娱乐装置,或任何其它合适的装置。这些装置可具有不同功率和数据要求,且可导致针对每一特征或特征集合产生的不同功率分布。
在一些方面中,无线装置可包括用于通信系统的接入装置(例如,Wi-Fi接入点)。举例来说,此类接入装置可经由有线或无线通信链路而通过收发器140提供与另一网络(例如,广域网(例如因特网或蜂窝式网络))的连接。因此,接入装置可使另一装置(例如Wi-Fi站点)能够接入另一网络或某一其它功能性。另外,应了解,所述装置中的一者或两者可为便携式的,或在一些情况下为相对非便携式的。
所属领域的技术人员应理解,可使用多种不同技术和技艺中的任一者来表示信息和信号。举例来说,可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示可能贯穿上文描述所引用的数据、指令、命令、信息、信号、位、符号和码片。
所属领域的技术人员应进一步了解,结合本文所揭示的实施例描述的各种说明性逻辑块、模块、引擎、电路和算法步骤可实施为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件与软件的此互换性,上文已大体上在其功能性方面描述了各种说明性组件、块、模块、引擎、电路和步骤。此类功能性是实施为硬件还是软件取决于特定应用和施加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用而以不同方式来实施所描述的功能性,但此类实施决策不应解释为会导致脱离本发明的范围。
可使用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其经设计以执行本文所描述的功能的任何组合来实施或执行结合本文中所揭示的实施例而描述的各种说明性逻辑块、模块和电路。通用处理器可为微处理器,但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、结合DSP核心的一或多个微处理器,或任何其它此类配置。
结合本文所揭示的实施例而描述的方法或算法的步骤可直接体现在硬件、由处理器执行的软件模块或所述两者的组合中。软件模块可驻存在随机存取存储器(RAM)、快闪存储器、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、寄存器、硬盘、可装卸式磁盘、只读光盘(CD-ROM)、数字多功能光盘(DVD)或所属领域中已知的任何其它形式的存储媒体中。示范性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息和将信息写入到存储媒体。在替代方案中,存储媒体可与处理器整合。处理器和存储媒体可驻存在ASIC中。ASIC可驻存在用户终端中。在替代方案中,处理器和存储媒体可作为离散组件驻存在用户终端中。
在一或多个示范性实施例中,所描述的功能或模块可实施在硬件(例如,硬件162)、软件(例如,软件165)、固件(例如,固件163)或其任何组合中。如果在软件中实施为计算机程序产品,那么功能或模块可作为一或多个指令或代码存储在非暂时性计算机可读媒体上或经由非暂时性计算机可读媒体传输。计算机可读媒体可包含计算机存储媒体和通信媒体两者,通信媒体包含促进计算机程序从一个位置到另一位置的传送的任何媒体。存储媒体可以是可通过计算机或数据处理装置/系统存取的任何可供使用的媒体。举例来说而非限制,此类非暂时性计算机可读媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用以携载或存储呈指令或数据结构形式的所要程序代码且可由计算机存取的任何其它媒体。另外,任何连接被恰当地称为计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输软件,那么所述同轴缆线、光纤缆线、双绞线、DSL或例如红外线、无线电和微波等无线技术包含于媒体的定义中。如本文所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上各者的组合也应包含在非暂时计算机可读媒体的范围内。
提供对所揭示实施例的先前描述以使得所属领域的技术人员能够制作或使用本发明。所属领域的技术人员将容易了解对这些实施例的各种修改,且可在不脱离本发明的精神或范围的情况下将本文所定义的一般原理应用于其它实施例。因此,本发明并不意图限于本文中所展示的实施例,而应被赋予与本文中所揭示的原理和新颖特征相一致的最广泛范围。
Claims (44)
1.一种用以实施数据库的方法,所述方法包括:
接收一或多个关键帧和相关联的元数据;
将所述接收的一或多个关键帧与所述3D地图数据库中的一或多个其它关键帧或3D地图合并或拼接;
将所述合并或拼接的结果作为经拼接3D地图存储在所述数据库中;以及
将所述经拼接3D地图的至少一部分作为地图数据提供给第一客户端。
2.根据权利要求1所述的方法,其中从相机接收所述一或多个关键帧。
3.根据权利要求1所述的方法,其中所述提供的地图数据包含以下各者中的一或多者:
纹理数据、顶点数据、矩阵数据,或其任何组合。
4.根据权利要求3所述的方法,其中所述地图数据包括至少一个锚点以实现所述地图数据与对应的客户端地图的同步。
5.根据权利要求1所述的方法,其中所述元数据包含以下各者中的一或多者:位置数据、传感器数据、用户识别数据、应用识别数据、时间数据,或其任何组合。
6.根据权利要求1所述的方法,其进一步包括:
在所述数据库中搜索一或多个3D地图以与所述接收的一或多个关键帧合并或拼接,且其中根据所述搜索的结果执行所述合并或拼接。
7.根据权利要求1所述的方法,其中响应于接收所述一或多个关键帧执行所述合并或拼接。
8.根据权利要求1所述的方法,其进一步包括:
从第二客户端接收地图数据。
9.根据权利要求8所述的方法,其进一步包括:
在所述数据库中搜索一或多个3D地图以与从所述第二客户端接收的地图数据合并或拼接;以及
将所述接收的地图数据与所述数据库中的一或多个关键帧或3D地图合并或拼接。
10.根据权利要求1所述的方法,其进一步包括:
响应于接收到指示在由过时关键帧捕捉的区内已发生阈值水平的环境改变的关键帧或元数据而清理所述过时关键帧。
11.根据权利要求1所述的方法,其中基于特征匹配而将所述接收的一或多个关键帧与所述数据库中的所述一或多个其它关键帧或所述3D地图合并或拼接。
12.一种实施数据库的装置,所述装置包括:
存储器;以及
处理器,其耦合到所述存储器且经配置以:
接收一或多个关键帧和相关联的元数据;
将所述接收的一或多个关键帧与所述数据库中的一或多个其它关键帧或3D地图合并或拼接;
将所述合并或拼接的结果作为经拼接3D地图存储在所述数据库中;以及
将所述经拼接3D地图的至少一部分作为地图数据提供给第一客户端。
13.根据权利要求12所述的装置,其中从相机接收所述一或多个关键帧。
14.根据权利要求12所述的装置,其中所述提供的地图数据包含以下各者中的一或多者:
纹理数据、顶点数据、矩阵数据,或其任何组合。
15.根据权利要求14所述的装置,其中所述地图数据包括至少一个锚点以实现所述地图数据与对应的客户端地图的同步。
16.根据权利要求12所述的装置,其中所述元数据包含以下各者中的一或多者:位置数据、传感器数据、用户识别数据、应用识别数据、时间数据,或其任何组合。
17.根据权利要求12所述的装置,其中所述处理器经配置以:
在所述数据库中搜索一或多个3D地图以与所述接收的一或多个关键帧合并或拼接;以及
根据所述搜索的结果执行所述合并或拼接。
18.根据权利要求12所述的装置,其中所述处理器经配置以响应于接收所述一或多个关键帧执行所述合并或拼接。
19.根据权利要求12所述的装置,其中所述处理器进一步经配置以:
从第二客户端接收地图数据。
20.根据权利要求19所述的装置,其中所述处理器进一步经配置以:
在所述数据库中搜索一或多个3D地图以与从所述第二客户端接收的地图数据合并或拼接;以及
将所述接收的地图数据与所述数据库中的一或多个关键帧或3D地图合并或拼接。
21.根据权利要求12所述的装置,其中所述处理器进一步经配置以:
响应于接收到指示在由过时关键帧捕捉的区内已发生阈值水平的环境改变的关键帧或元数据而清理所述过时关键帧。
22.根据权利要求12所述的装置,其中基于特征匹配而将所述接收的一或多个关键帧与所述数据库中的所述一或多个其它关键帧或所述3D地图合并或拼接。
23.一种用于实施数据库的设备,所述设备包括:
用于接收一或多个关键帧和相关联的元数据的装置;
用于将所述接收的一或多个关键帧与所述数据库中的一或多个其它关键帧或3D地图合并或拼接的装置;
用于将所述合并或拼接的结果作为经拼接3D地图存储在所述数据库中的装置;以及
用于将所述经拼接3D地图的至少一部分作为地图数据提供给第一客户端的装置。
24.根据权利要求23所述的设备,其中从相机接收所述一或多个关键帧。
25.根据权利要求23所述的设备,其中所述提供的地图数据包含以下各者中的一或多者:纹理数据、顶点数据、矩阵数据,或其任何组合。
26.根据权利要求25所述的设备,其中所述地图数据包括至少一个锚点以实现所述地图数据与对应的客户端地图的同步。
27.根据权利要求23所述的设备,其中所述元数据包含以下各者中的一或多者:位置数据、传感器数据、用户识别数据、应用识别数据、时间数据,或其任何组合。
28.根据权利要求23所述的设备,其进一步包括:
用于在所述数据库中搜索一或多个3D地图以与所述接收的一或多个关键帧合并或拼接的装置,其中用于合并或拼接的所述装置包括用于根据所述搜索的结果合并或拼接的装置。
29.根据权利要求23所述的设备,其中用于合并或拼接的所述装置响应于由用于接收所述一或多个关键帧的所述装置接收所述一或多个关键帧而执行所述合并或拼接。
30.根据权利要求23所述的设备,其进一步包括:
用于从第二客户端接收地图数据的装置。
31.根据权利要求30所述的设备,其进一步包括:
用于在所述数据库中搜索一或多个3D地图以与从所述第二客户端接收的地图数据合并或拼接的装置;以及
用于将所述接收的地图数据与所述数据库中的一或多个关键帧或3D地图合并或拼接的装置。
32.根据权利要求23所述的设备,其进一步包括:
用于响应于接收到指示在由过时关键帧捕捉的区内已发生阈值水平的环境改变的关键帧或元数据而清理所述过时关键帧的装置。
33.根据权利要求23所述的设备,其中用于将所述接收的一或多个关键帧与所述数据库中的所述一或多个其它关键帧或所述3D地图合并或拼接的所述装置基于特征匹配而执行所述合并或拼接。
34.一种机器可读非暂时性存储媒体,其具有存储在其中的程序指令,所述程序指令可由服务器的处理器执行以进行以下操作:
接收一或多个关键帧和相关联的元数据;
将所述接收的一或多个关键帧与所述数据库中的一或多个其它关键帧或3D地图合并或拼接;
将所述合并或拼接的结果作为经拼接3D地图存储在所述数据库中;以及
将所述经拼接3D地图的至少一部分作为地图数据提供给第一客户端。
35.根据权利要求34所述的媒体,其中从相机接收所述一或多个关键帧。
36.根据权利要求34所述的媒体,其中所述提供的地图数据包含以下各者中的一或多者:纹理数据、顶点数据、矩阵数据,或其任何组合。
37.权利要求36所述的媒体,其中所述地图数据包括至少一个锚点以实现所述地图数据与对应的客户端地图的同步。
38.根据权利要求34所述的媒体,其中所述元数据包含以下各者中的一或多者:位置数据、传感器数据、用户识别数据、应用识别数据、时间数据,或其任何组合。
39.根据权利要求34所述的媒体,其进一步包括用以进行以下各项的指令:
在所述数据库中搜索一或多个3D地图以与所述接收的一或多个关键帧合并或拼接,且其中所述指令可由所述服务器的处理器执行以根据所述搜索的结果执行所述合并或拼接。
40.根据权利要求34所述的媒体,其中响应于接收所述一或多个关键帧执行所述合并或拼接。
41.根据权利要求34所述的媒体,其进一步包括用以进行以下各项的指令:
从第二客户端接收地图数据。
42.根据权利要求41所述的媒体,其进一步包括用以进行以下各项的指令:
在所述数据库中搜索一或多个3D地图以与从所述第二客户端接收的地图数据合并或拼接;以及
将所述接收的地图数据与所述数据库中的一或多个关键帧或3D地图合并或拼接。
43.根据权利要求34所述的媒体,其进一步包括用以进行以下各项的指令:
响应于接收到指示在由过时关键帧捕捉的区内已发生阈值水平的环境改变的关键帧或元数据而清理所述过时关键帧。
44.根据权利要求34所述的媒体,其中基于特征匹配而将所述接收的一或多个关键帧与所述数据库中的所述一或多个其它关键帧或所述3D地图合并或拼接。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462094900P | 2014-12-19 | 2014-12-19 | |
US62/094,900 | 2014-12-19 | ||
US201562190702P | 2015-07-09 | 2015-07-09 | |
US62/190,702 | 2015-07-09 | ||
US14/862,050 US10185775B2 (en) | 2014-12-19 | 2015-09-22 | Scalable 3D mapping system |
US14/862,050 | 2015-09-22 | ||
CN201580069158.7A CN107004028B (zh) | 2014-12-19 | 2015-12-01 | 可缩放3d地图绘制系统 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580069158.7A Division CN107004028B (zh) | 2014-12-19 | 2015-12-01 | 可缩放3d地图绘制系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111767358A true CN111767358A (zh) | 2020-10-13 |
Family
ID=55025378
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010612005.5A Pending CN111767358A (zh) | 2014-12-19 | 2015-12-01 | 可缩放3d地图绘制系统 |
CN201580069158.7A Active CN107004028B (zh) | 2014-12-19 | 2015-12-01 | 可缩放3d地图绘制系统 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580069158.7A Active CN107004028B (zh) | 2014-12-19 | 2015-12-01 | 可缩放3d地图绘制系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10185775B2 (zh) |
EP (1) | EP3234806B1 (zh) |
CN (2) | CN111767358A (zh) |
WO (1) | WO2016099866A1 (zh) |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8798840B2 (en) * | 2011-09-30 | 2014-08-05 | Irobot Corporation | Adaptive mapping with spatial summaries of sensor data |
US10262462B2 (en) | 2014-04-18 | 2019-04-16 | Magic Leap, Inc. | Systems and methods for augmented and virtual reality |
EP3281403A4 (en) | 2015-04-06 | 2018-03-07 | Scope Technologies US Inc. | Methods and apparatus for augmented reality applications |
US10516868B2 (en) * | 2015-07-09 | 2019-12-24 | Doubleme, Inc. | HoloPortal and HoloCloud system and method of operation |
JP6775969B2 (ja) * | 2016-02-29 | 2020-10-28 | キヤノン株式会社 | 情報処理装置、情報処理方法、及びプログラム |
US10593074B1 (en) * | 2016-03-16 | 2020-03-17 | Liberty Mutual Insurance Company | Interactive user interface for displaying geographic boundaries |
JP2017191378A (ja) * | 2016-04-11 | 2017-10-19 | 富士通テン株式会社 | 拡張現実情報表示装置および拡張現実情報表示方法 |
US9934587B2 (en) * | 2016-06-30 | 2018-04-03 | Daqri, Llc | Deep image localization |
WO2018049581A1 (zh) * | 2016-09-14 | 2018-03-22 | 浙江大学 | 一种同时定位与地图构建方法 |
US10891029B2 (en) * | 2016-10-14 | 2021-01-12 | Here Global B.V. | Reporting locations being associated with a problem |
DE102016124888A1 (de) * | 2016-12-20 | 2018-06-21 | Connaught Electronics Ltd. | Verfahren zum Unterstützen eines Fahrers eines Kraftfahrzeugs beim Einparken unter Verwendung einer Fahrerassistenzvorrichtung, entsprechendes Computerprogrammprodukt und Fahrerassistenzvorrichtung |
US10296812B2 (en) | 2017-01-04 | 2019-05-21 | Qualcomm Incorporated | Systems and methods for mapping based on multi-journey data |
US10843068B2 (en) * | 2017-01-18 | 2020-11-24 | Xvisio Technology Corp. | 6DoF inside-out tracking game controller |
CN106885574B (zh) * | 2017-02-15 | 2020-02-07 | 北京大学深圳研究生院 | 一种基于重跟踪策略的单目视觉机器人同步定位与地图构建方法 |
GB201705767D0 (en) * | 2017-04-10 | 2017-05-24 | Blue Vision Labs Uk Ltd | Co-localisation |
US10990829B2 (en) * | 2017-04-28 | 2021-04-27 | Micro Focus Llc | Stitching maps generated using simultaneous localization and mapping |
KR102322508B1 (ko) * | 2017-09-28 | 2021-11-05 | 엘지전자 주식회사 | 스티칭 및 리프로젝션 관련 메타데이터를 이용한 6dof 비디오를 송수신하는 방법 및 그 장치 |
US10777007B2 (en) | 2017-09-29 | 2020-09-15 | Apple Inc. | Cooperative augmented reality map interface |
US10559126B2 (en) * | 2017-10-13 | 2020-02-11 | Samsung Electronics Co., Ltd. | 6DoF media consumption architecture using 2D video decoder |
CN107833250B (zh) * | 2017-10-24 | 2020-05-05 | 北京易达图灵科技有限公司 | 语义空间地图构建方法及装置 |
CN107885871A (zh) * | 2017-11-24 | 2018-04-06 | 南京华捷艾米软件科技有限公司 | 基于云计算的同步定位与地图构建方法、系统、交互系统 |
CN107818592B (zh) * | 2017-11-24 | 2022-04-01 | 北京华捷艾米科技有限公司 | 协作式同步定位与地图构建的方法、系统及交互系统 |
CN108270713B (zh) * | 2018-01-18 | 2021-03-02 | 重庆邮电大学 | 一种多应用场景信号多址接入方法及系统 |
CN108389264B (zh) * | 2018-02-07 | 2022-03-29 | 杭州易现先进科技有限公司 | 坐标系统确定方法、装置、存储介质及电子设备 |
WO2019164432A1 (en) | 2018-02-21 | 2019-08-29 | Telefonaktiebolaget Lm Ericsson (Publ) | Scaled tdoa 3d positioning |
US11480646B2 (en) | 2018-02-21 | 2022-10-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Signaling of scaled 3D position information |
CN108491533B (zh) * | 2018-03-29 | 2019-04-02 | 百度在线网络技术(北京)有限公司 | 数据融合方法、装置、数据处理系统及存储介质 |
KR102557049B1 (ko) * | 2018-03-30 | 2023-07-19 | 한국전자통신연구원 | Slam 기반 카메라 추적에서 라벨된 키프레임을 이용한 이미지 특징 매칭 방법 및 장치 |
CN108600729B (zh) * | 2018-03-30 | 2021-02-23 | 盎锐(上海)信息科技有限公司 | 动态3d模型生成装置及影像生成方法 |
US20210118175A1 (en) * | 2018-04-26 | 2021-04-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Object Tracking and Detection in Augmented Reality Applications |
CN108592919B (zh) * | 2018-04-27 | 2019-09-17 | 百度在线网络技术(北京)有限公司 | 制图与定位方法、装置、存储介质和终端设备 |
CN108765437A (zh) * | 2018-05-07 | 2018-11-06 | 深圳市三宝创新智能有限公司 | 一种自主移动机器人slam建图的数据关联匹配方法 |
WO2019221800A1 (en) * | 2018-05-18 | 2019-11-21 | Purdue Research Foundation | System and method for spatially registering multiple augmented reality devices |
US11307049B2 (en) | 2018-07-19 | 2022-04-19 | Uisee Technologies (Beijing) Co., Ltd | Methods, apparatuses, systems, and storage media for storing and loading visual localization maps |
CN109074407A (zh) * | 2018-07-23 | 2018-12-21 | 深圳前海达闼云端智能科技有限公司 | 多源数据建图方法、相关装置及计算机可读存储介质 |
US11227435B2 (en) | 2018-08-13 | 2022-01-18 | Magic Leap, Inc. | Cross reality system |
CN109298806B (zh) * | 2018-09-21 | 2022-01-11 | 杨立群 | 一种基于对象识别的远程快速界面交互方法及装置 |
DE102018217032A1 (de) * | 2018-10-04 | 2020-04-09 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zur Bereitstellung von Anmerkungen in der erweiterten Realität |
US10694239B1 (en) * | 2018-12-12 | 2020-06-23 | Sling Media Pvt Ltd | Systems, methods, and devices for optimizing streaming bitrate based on multiclient display profiles |
US10902685B2 (en) * | 2018-12-13 | 2021-01-26 | John T. Daly | Augmented reality remote authoring and social media platform and system |
CN109887053B (zh) * | 2019-02-01 | 2020-10-20 | 广州小鹏汽车科技有限公司 | 一种slam地图拼接方法及系统 |
US11263615B2 (en) | 2019-03-01 | 2022-03-01 | Visa International Service Association | System, method, and computer program product for authentication by augmented reality for fraud prevention |
US11313696B2 (en) * | 2019-03-01 | 2022-04-26 | GM Global Technology Operations LLC | Method and apparatus for a context-aware crowd-sourced sparse high definition map |
US10748302B1 (en) * | 2019-05-02 | 2020-08-18 | Apple Inc. | Multiple user simultaneous localization and mapping (SLAM) |
CN112148742A (zh) * | 2019-06-28 | 2020-12-29 | Oppo广东移动通信有限公司 | 地图更新方法及装置、终端、存储介质 |
WO2021076754A1 (en) | 2019-10-15 | 2021-04-22 | Magic Leap, Inc. | Cross reality system with localization service |
CN110672080B (zh) * | 2019-10-21 | 2020-10-23 | 长安大学 | 一种用于SfM三维建模的加载激光无级比例尺的永平指南针 |
CN115151948A (zh) * | 2019-12-20 | 2022-10-04 | 奈安蒂克公司 | 合并来自建图设备的局部地图 |
WO2021138596A1 (en) * | 2020-01-01 | 2021-07-08 | Latham Pool Products, Inc. | Visualizer for swimming pools |
KR102316232B1 (ko) * | 2020-02-05 | 2021-10-22 | 네이버 주식회사 | 2차원 지도 정보를 기반으로 거리뷰 이미지의 포즈를 정합시키기 위한 전자 장치 및 그의 동작 방법 |
JP2023514208A (ja) | 2020-02-13 | 2023-04-05 | マジック リープ, インコーポレイテッド | マルチ分解能フレーム記述子を使用したマップ処理を伴うクロスリアリティシステム |
CN111369628A (zh) * | 2020-03-05 | 2020-07-03 | 南京华捷艾米软件科技有限公司 | 一种多相机集中式协同slam方法及系统 |
US11682124B2 (en) * | 2020-06-29 | 2023-06-20 | Lytt, inc. | Systems and methods for transferring map data between different maps |
US11972576B2 (en) * | 2020-06-30 | 2024-04-30 | Lyft, Inc. | Generating and fusing reconstructions using overlapping map segments |
US11113894B1 (en) * | 2020-09-11 | 2021-09-07 | Microsoft Technology Licensing, Llc | Systems and methods for GPS-based and sensor-based relocalization |
CN112287061B (zh) * | 2020-11-17 | 2024-05-31 | 深圳市泰同科技有限公司 | 一种利用网络开放数据拼接街景立面图的方法 |
WO2022116154A1 (zh) * | 2020-12-04 | 2022-06-09 | 深圳市优必选科技股份有限公司 | 地图库建立方法、计算机设备及存储介质 |
US11676290B2 (en) | 2021-05-21 | 2023-06-13 | Here Global B.V. | Method, apparatus, and computer program product for ensuring continuity of features between spatially partitioned maps |
EP4336451A4 (en) * | 2021-06-04 | 2024-06-05 | Huawei Tech Co Ltd | DEVICE AND METHOD FOR 3D CARD ENCODING |
CN113515536B (zh) * | 2021-07-13 | 2022-12-13 | 北京百度网讯科技有限公司 | 地图的更新方法、装置、设备、服务器以及存储介质 |
FR3130483B1 (fr) | 2021-12-10 | 2024-05-10 | Commissariat Energie Atomique | Caméra, système de vision par ordinateur intégrant une telle caméra et flux de données généré par une telle caméra |
WO2023132269A1 (ja) * | 2022-01-06 | 2023-07-13 | ソニーグループ株式会社 | 情報処理装置、および情報処理方法、並びにプログラム |
US20230351690A1 (en) * | 2022-04-27 | 2023-11-02 | Snap Inc. | Three-dimensional mapping using disparate visual datasets |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001344250A (ja) * | 2000-06-02 | 2001-12-14 | Ntt Data Corp | 地図データサービスシステム、及びその方法 |
US20110202848A1 (en) * | 2010-01-19 | 2011-08-18 | Collarity, Inc. | Anchoring for content synchronization |
CN102483715A (zh) * | 2009-09-04 | 2012-05-30 | Kii株式会社 | 数据同步系统以及数据同步方法 |
CN103187003A (zh) * | 2011-12-31 | 2013-07-03 | 北京图盟科技有限公司 | 一种电子地图的访问方法、设备和系统 |
WO2014020547A1 (en) * | 2012-07-31 | 2014-02-06 | Indoorgo Navigation Systems Ltd. | Navigation method and device |
CN103634291A (zh) * | 2005-10-18 | 2014-03-12 | 三星电子株式会社 | 使多媒体内容与装置同步的方法和设备 |
CN103761274A (zh) * | 2014-01-09 | 2014-04-30 | 深圳先进技术研究院 | 以全景摄像机对街景数据库进行更新的方法 |
US20140119598A1 (en) * | 2012-10-31 | 2014-05-01 | Qualcomm Incorporated | Systems and Methods of Merging Multiple Maps for Computer Vision Based Tracking |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5867804A (en) * | 1993-09-07 | 1999-02-02 | Harold R. Pilley | Method and system for the control and management of a three dimensional space envelope |
WO2001027812A2 (en) | 1999-10-12 | 2001-04-19 | Autodesk, Inc. | Geographic maps on a personal digital assistant (pda) and server |
US20050033758A1 (en) * | 2003-08-08 | 2005-02-10 | Baxter Brent A. | Media indexer |
US20080082264A1 (en) | 2006-09-11 | 2008-04-03 | Broadcom Corporation, A California Corporation | GPS route creation, photograph association, and data collection |
KR100938987B1 (ko) | 2007-08-17 | 2010-01-28 | 팅크웨어(주) | 3d 지도 서비스 제공 방법 및 지리정보 시스템 |
CN101813485B (zh) * | 2009-02-24 | 2014-07-16 | 上海众恒信息产业股份有限公司 | 基于地理信息数据的电子地图及其导航方法 |
US8229928B2 (en) * | 2009-02-27 | 2012-07-24 | Empire Technology Development Llc | 3D object descriptors |
US8319772B2 (en) * | 2010-07-23 | 2012-11-27 | Microsoft Corporation | 3D layering of map metadata |
US9020187B2 (en) * | 2011-05-27 | 2015-04-28 | Qualcomm Incorporated | Planar mapping and tracking for mobile devices |
US20140267234A1 (en) | 2013-03-15 | 2014-09-18 | Anselm Hook | Generation and Sharing Coordinate System Between Users on Mobile |
US20140323148A1 (en) | 2013-04-30 | 2014-10-30 | Qualcomm Incorporated | Wide area localization from slam maps |
US9674507B2 (en) | 2013-04-30 | 2017-06-06 | Qualcomm Incorporated | Monocular visual SLAM with general and panorama camera movements |
AU2013237718A1 (en) * | 2013-10-04 | 2015-04-23 | Canon Kabushiki Kaisha | Method, apparatus and system for selecting a frame |
CN103996036B (zh) * | 2014-06-09 | 2017-07-28 | 百度在线网络技术(北京)有限公司 | 一种地图数据采集方法及装置 |
-
2015
- 2015-09-22 US US14/862,050 patent/US10185775B2/en active Active
- 2015-12-01 EP EP15816975.5A patent/EP3234806B1/en active Active
- 2015-12-01 WO PCT/US2015/063243 patent/WO2016099866A1/en active Application Filing
- 2015-12-01 CN CN202010612005.5A patent/CN111767358A/zh active Pending
- 2015-12-01 CN CN201580069158.7A patent/CN107004028B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001344250A (ja) * | 2000-06-02 | 2001-12-14 | Ntt Data Corp | 地図データサービスシステム、及びその方法 |
CN103634291A (zh) * | 2005-10-18 | 2014-03-12 | 三星电子株式会社 | 使多媒体内容与装置同步的方法和设备 |
CN102483715A (zh) * | 2009-09-04 | 2012-05-30 | Kii株式会社 | 数据同步系统以及数据同步方法 |
US20110202848A1 (en) * | 2010-01-19 | 2011-08-18 | Collarity, Inc. | Anchoring for content synchronization |
CN103187003A (zh) * | 2011-12-31 | 2013-07-03 | 北京图盟科技有限公司 | 一种电子地图的访问方法、设备和系统 |
WO2014020547A1 (en) * | 2012-07-31 | 2014-02-06 | Indoorgo Navigation Systems Ltd. | Navigation method and device |
US20140119598A1 (en) * | 2012-10-31 | 2014-05-01 | Qualcomm Incorporated | Systems and Methods of Merging Multiple Maps for Computer Vision Based Tracking |
CN103761274A (zh) * | 2014-01-09 | 2014-04-30 | 深圳先进技术研究院 | 以全景摄像机对街景数据库进行更新的方法 |
Also Published As
Publication number | Publication date |
---|---|
US20160179830A1 (en) | 2016-06-23 |
EP3234806B1 (en) | 2023-06-28 |
CN107004028A (zh) | 2017-08-01 |
EP3234806A1 (en) | 2017-10-25 |
WO2016099866A1 (en) | 2016-06-23 |
US10185775B2 (en) | 2019-01-22 |
CN107004028B (zh) | 2020-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107004028B (zh) | 可缩放3d地图绘制系统 | |
US10055890B2 (en) | Augmented reality for wireless mobile devices | |
US11532124B2 (en) | Cross reality system with WIFI/GPS based map merge | |
US10593104B2 (en) | Systems and methods for generating time discrete 3D scenes | |
WO2021163295A1 (en) | Cross reality system with prioritization of geolocation information for localization | |
Ventura et al. | Global localization from monocular slam on a mobile phone | |
WO2021003499A1 (en) | Textured mesh building | |
EP4046401A1 (en) | Cross reality system with wireless fingerprints | |
US20140323148A1 (en) | Wide area localization from slam maps | |
KR102624635B1 (ko) | 메시징 시스템에서의 3d 데이터 생성 | |
WO2021163300A1 (en) | Cross reality system with map processing using multi-resolution frame descriptors | |
US20120086727A1 (en) | Method and apparatus for generating augmented reality content | |
US11501489B2 (en) | Cross reality system for large scale environment reconstruction | |
US11748905B2 (en) | Efficient localization based on multiple feature types | |
CN108961375A (zh) | 一种根据二维图像生成三维图像的方法及装置 | |
US20220406024A1 (en) | Cross reality system with buffering for localization accuracy | |
McClean | An Augmented Reality System for Urban Environments using a Planar Building Fa cade Model | |
CN109118592B (zh) | 一种ar呈现的补偿效果实现方法及系统 | |
CN102104584B (zh) | 下发3d模型数据的方法、装置和3d模型数据传输系统 | |
CN109246415A (zh) | 视频处理的方法及装置 | |
Deren et al. | On three-dimensional visualization of geospatial information: graphics based or imagery based? |
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 |