CN107423445B - 一种地图数据处理方法、装置及存储介质 - Google Patents
一种地图数据处理方法、装置及存储介质 Download PDFInfo
- Publication number
- CN107423445B CN107423445B CN201710682652.1A CN201710682652A CN107423445B CN 107423445 B CN107423445 B CN 107423445B CN 201710682652 A CN201710682652 A CN 201710682652A CN 107423445 B CN107423445 B CN 107423445B
- Authority
- CN
- China
- Prior art keywords
- map
- positioning result
- area
- field
- view
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3863—Structures of map data
- G01C21/387—Organisation of map data, e.g. version management or database structures
- G01C21/3881—Tile-based structures
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3626—Details of the output of route guidance instructions
- G01C21/3635—Guidance using 3D or perspective road maps
- G01C21/3638—Guidance using 3D or perspective road maps including 3D objects and buildings
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3667—Display of a road map
- G01C21/367—Details, e.g. road map scale, orientation, zooming, illumination, level of detail, scrolling of road map or positioning of current position marker
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3863—Structures of map data
- G01C21/387—Organisation of map data, e.g. version management or database structures
- G01C21/3878—Hierarchical structures, e.g. layering
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Processing Or Creating Images (AREA)
- Instructional Devices (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Traffic Control Systems (AREA)
- Navigation (AREA)
Abstract
本发明公开了一种地图数据处理方法、装置及存储介质,所述方法包括:检测在三维空间中更新的定位结果;确定所述更新的定位结果对应的视场区域;获得所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;在内存空间中动态加载所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;基于所加载的地图分片,渲染所述三维空间中位于所述定位结果、以及对应所述视场区域的图像。
Description
技术领域
本发明涉及电子地图技术,尤其涉及一种地图数据处理方法、装置及存储介质。
背景技术
电子地图是传统地图与计算机技术、地理信息系统(GIS,GeographicInformation System)技术、网络技术相融合的产物,以可视化的数字地图为背景,用文本、图片、图表、声音、动画和视频等多种媒体为表现手段综合展示地区、城市、旅游景点等区域综合面貌的现代信息产品,突破了传统纸质地图时间和空间上的局限性,具有更丰富的信息含量和更广阔的应用范围。
在使用电子地图的时候,随着定位位置的变化,渲染所需的地图数据也会发生变化,如何能够快速的根据定位位置变化,获取适配的地图数据并进行渲染输出,目前尚无有效的技术方案。
发明内容
针对上述的技术问题,本发明实施例期望提供一种地图数据处理方法、装置及存储介质,能够快速的根据定位位置的变化,获取适配的地图数据并进行渲染输出。
为达到上述目的,本发明的技术方案是这样实现的:
第一方面,本发明实施例提供一种地图数据处理方法,包括:
检测在三维空间中更新的定位结果;
确定所述更新的定位结果对应的视场区域;
获得所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;
在内存空间中加载所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;
基于所加载的地图分片,渲染所述三维空间中位于所述定位结果、以及对应所述视场区域的图像。
第二方面,本发明实施例提供一种地图数据处理装置,包括:
检测模块,用于检测在三维空间中更新的定位结果;
确定模块,用于确定所述更新的定位结果对应的视场区域;
获取模块,用于获得所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;
加载模块,用于在内存空间中加载所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;
渲染模块,用于基于所加载的地图分片,渲染所述三维空间中位于所述定位结果、以及对应所述视场区域的图像。
上述方案中,所述获取模块,具体用于:
当首次检测到所述更新的定位结果时,从所述地图分片数据库请求所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;
当所述更新的定位结果与历史定位结果相同时,从所述内存空间查询所述地图分片,当未查询到时,向所述地图分片数据库请求所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片。
上述方案中,还包括:
清除模块,用于当满足内存空间的清理条件时,清除所述内存空间中的部分地图分片,直至,形成用于加载所述定位结果的地图分片、以及所述视场区域的地图分片的空闲内存空间。
上述方案中,所述清除模块,具体用于:
确定活动区域,所述活动区域包括所述更新的定位结果、所述视场区域以及所述视场区域的邻接区域;
清除所述内存空间中非活动区域的地图分片。
上述方案中,所述清除模块,具体用于:
按照与所述更新的定位结果由远及近的顺序,清除所述内存空间中非视场区域的地图分片,直至,
形成用于加载所述定位结果对应的地图分片、以及所述视场区域对应的地图分片的空闲内存空间。
上述方案中,所述清除模块,具体用于:
当所述内存空间中存储的地图分片达到预设容量或比例,或者,当检测到更新的定位结果时,确定满足内存空间的清理条件。
上述方案中,所述渲染模块,具体用于:
根据地图分片包含的地图元素的几何属性,所述几何属性包括点、线和面至少之一;
生成与所述几何属性对应的网格,并根据所述网格中生成具有相应几何属性的地图元素的图像;
将所述地图元素的图像渲染到所述三维空间中对应的位置。
上述方案中,还包括:
设置模块,用于当所述更新的定位结果,与所述三维空间中的地图元素满足预定位置条件时,根据在所述地图分片中的所述地图元素设置的动态属性,输出位于所述定位结果的动态效果。
第三方面,本发明实施例提供一种存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现本发明实施例提供的地图数据处理方法。
第四方面,本发明实施例提供一种地图数据处理装置,包括:
存储器,用于存储可执行程序;
处理器,用于执行所述存储器中存储的可执行程序,实现本发明实施例提供的地图数据处理方法。
本发明上述实施例具有以下有益效果:
一方面,以地图分片的方式获取地图数据,对于客户端来说不需要一次性获取三维空间的全部地图数据即可渲染输出,提升了根据定位结果实时加载的地图的效率;
另一方面,对于每次更新的定位结果,划分定位结果对应的地图分片和视场区域对应的地图分片,即保证了获取地图的效率,同时,保证了能够根据定位结果的更新实现对视场的动态跟随。
附图说明
图1为本发明实施例提供的一种地图数据处理方法的实现流程示意图;
图2A为本发明实施例提供的地图数据处理装置的一个可选的应用场景示意图;
图2B为本发明实施例提供的不同分层的地图分片的一个可选的示意图;
图2C为本发明实施例提供的不同地图图层划分的一个可选的示意图;
图2D为本发明实施例提供的地图数据以地图分片存储的一个可选的存储结构示意图;
图3为本发明实施例提供的一种地图数据处理方法的实现流程示意图;
图4为本发明实施例提供的一种视场区域的示意图图;
图5为本发明实施例提供的另一种视场区域的示意图图;
图6为本发明实施例提供的一种地图分片加载和删除的示意图图;
图7为本发明实施例提供的另一种地图分片加载和删除的示意图图;
图8为本发明实施例提供的又一种地图分片加载和删除的示意图图;
图9为本发明实施例提供的一种地图元素的几何属性示意图;
图10为本发明实施例提供的一种第三视角导航的示意图;
图11为本发明实施例提供的另一种第三视角导航的示意图;
图12为本发明实施例提供的一种地图数据处理装置的组成结构示意图
图13为本发明实施例提供的另一种地图数据处理装置的组成结构示意图;
图14为本发明实施例提供的另一种地图数据处理方法的实现流程示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
对本发明进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)地图数据库(Cartographic Database),是以地图数字化数据为基础的数据库,存储地图内容各要素(如控制点、地貌、土地类型、居民地、水文、植被和交通运输等)的数字信息文件。
2)地图分片,也称为矢量瓦片(Vector Tiles,也称为地图瓦片),本文中地图分片提供为文本文件的形式,例如,将OSM等地图数据库的三维空间地图按照一定的尺寸进行分割,然后编码为基于数据交换语言的文本文件,在文本文件中描述相应地图区域内的建筑、道路、河流等几何形状,以及相应的建筑名称、道路名称和兴趣点(POI,Point ofInformation)等信息。
地图分片使用各种数据语言,如JavaScript对象表示法(JSON,JavaScriptObject Notation)的格式,或使用可扩展标记语言(XML,eXtensible Markup Language)的格式。
3)地图分片数据库,存储地图分片的数据库。
4)内存空间,指的是为一个应用程序分配的用于存储数据的空间。
5)公开地图(OSM,Open Street Map),是一种由网络大众共同维护的免费开源、可编辑的地图分片数据库。
6)客户端,本文中是指在设备中预先安装的应用程序,或设备中第三方的应用程序,如即时通信(IM)应用程序和浏览器,等等,设置有地图分片的渲染引擎(如Unity3D),对从地图分片数据库请求的地图分片进行拼接,渲染三维空间的图像。
7)设备,支持运行应用程序的电子设备,如智能手机、平板电脑、笔记本电脑、将真实的对象和虚拟的对象实时地叠加的增强现实(AR,Augmented Reality)设备、以及模拟三维空间的虚拟世界的虚拟现实(VR,Virtual Reality)设备,本文中安装客户端的设备也称为客户端的宿主设备。
8)三维空间,呈立体性,是由三个维度构成一空间立体,例如三维电子地图、街景地图均为三维空间。
9)渲染,指的是客户端的渲染引擎根据地图分片的文本文件生成图像并输出到屏幕的一个过程,为了体现空间感,渲染程序要做一些“特殊”的工作,即决定哪些物体在前面、哪些物体在后面和哪些物体被遮挡等。
10)第一视角,指以叙述人本人亲眼所见的角度对客观事物进行观察或描述,例如,在游戏场景中,以游戏操作者本人的视角观看整场游戏演示,相当于站在操作者身后看,自己所见即为操作者所见。具有更直观和更具代入感的特定,此外,可以观察到操作者每个细致入微的操作。
11)第三视角,是指从第三人的角度对客观事物进行观察或描述,例如,以第三人的角度观看游戏里控制的那角色,能看到其全身和周围的环境;或者,第三人的角度观看地图软件画面中关于自己的导航画面,能看到自己所处位置以及周围的环境。
本发明实施例提供地图数据处理方法,用于实施地图数据处理方法的地图数据处理装置、以及存储介质。其中,地图数据处理装置可以以各种形式来实施,例如台式机电脑、笔记本电脑、智能手机、AR和VR等各种类型的设备。下面对本发明实施例的地图数据处理装置的硬件结构做进一步说明。
参见图1,图1为实现本发明各个实施例的地图数据处理装置100的硬件结构示意,实际应用中可以实施为前述的运行客户端的各种设备,图1所示的地图数据处理装置100包括:至少一个处理器110、存储器120、至少一个网络接口130和用户接口140。地图数据处理装置100中的各个组件通过总线系统150耦合在一起。可理解,总线系统150用于实现这些组件之间的连接通信总线系统150除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图1中将各种总线都标为总线系统150。
其中,用户接口140根据需要可以实施为显示器、键盘触感板或者触摸屏等。
可以理解,存储器120可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者,本发明实施例描述的存储器120旨在包括但不限于这些和任意其它适合类型的存储器。
本发明实施例中的存储器120用于存储各种类型的数据以支持地图数据处理装置100的操作。这些数据的示例包括:用于在地图数据处理装置100上操作的任何计算机程序,如操作系统121和应用程序122。
其中,操作系统121包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序122可以包含各种应用程序,实现本发明实施例提供的地图数据处理方法的程序可以包含在应用程序122中作为一个功能模块,当然也可以提供为专门用于地图数据处理的应用程序。
本发明实施例提供的地图数据处理方法可以应用于处理器110中,或者由处理器110实现,基于纯硬件的方式实施,或者基于软件和硬件结合的方式实施。
就纯硬件的实施方式来说,处理器110可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,本发明实施例提供的地图数据处理方法的各步骤可以通过处理器110中的硬件的集成逻辑电路完成,例如在示例性实施例中,地图数据处理装置100可以内建有用于实现本发明实施例提供的地图数据处理方法的硬件译码处理器实施,例如,专用集成电路(ASIC,Application Specific Integrated Circuit)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-ProgrammableGate Array)等实现。
就软硬件结合的实施方式来说,上述的处理器110可以是通用处理器及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器120,处理器110读取存储器120中的数据,结合其硬件完成本发明实施例提供的地图数据处理方法。
下面将根据图2A至图2D,以地图分片为地图瓦片说明地图分片的存储、获取和渲染的示例性过程,图2A为本发明实施例提供的地图数据处理装置的一个可选的应用场景示意图,图2B为本发明实施例提供的不同分层的地图分片的一个可选的示意图,图2C为本发明实施例提供的不同地图图层划分的一个可选的示意图,图2D为本发明实施例提供的地图数据以地图分片存储的一个可选的存储结构示意图,将分别结合各个附图进行说明。
结合图2A说明,图中涉及地图分片生成及显示的过程,具体以下所述:
一、客户端向地图分片服务器请求获取地图分片
当用户开启地图软件,或关于地理位置服务的游戏软件时,根据实际的需求,向地图分片服务器发送获取地图分片的请求。例如用户需要显示多少种比例尺下的数据,需要显示的是原始影像中的哪个区域的数据,以是分片地图数据将原始影像按照这些需求进行划分和提取地图数据。
二、地图分片服务器从地图数据库拉取地图数据进行分片
这里,地图分片服务器根据显示的比例对地图数据进行分片处理,如图2A所示,最上层为提取和划分出的比例尺最小的一级的地图分片,如1:50000;而最低层为比例尺最大的一级的地图分片,如1:12500。
一般来讲,大比例尺地图,内容详细,几何精度高;小比例尺地图,内容概括性强。因此,比例尺越大所包含的影像范围越小,呈现的内容越详细;比例尺越小所包含的影像范围越大。
三、地图分片服务器将地图分片存储至地图分片数据库
当分片地图建立完成后,将地图分片存储至地图分片数据库中,以便用户在放大或缩小显示地图时,能够及时从服务器中获取相应级别的地图分片,提高地图的显示效率。
四、地图分片服务器向客户端发送地图分片
当用户放大或缩小地图时,客户端在已建立的地图分片缓存中找到对应级别里对应的地图分片,然后将这些请求到的地图分片进行拼接和渲染,便可以得到用户需要的级别下的可视范围内的地图分片。
此外,也可以根据用户的实际需求,事先将地图数据进行分片处理,以供用户下载进行离线使用。因此,当用户需要导航时,只需从本地数据库中提取与定位结果向适配的地图分片,避免因为网络差的情况下造成无法导航的问题,提高定位导航的效率。
结合图2B说明,图中表示的是分片地图金字塔(分层)模型,该模型是一种多分辨率层次模型,从地图分片金字塔的底层到顶层,分辨率越来越低,但表示的地理范围不变。
目前在互联网公开服务中,或者大多数智能终端的APP里看到的,都是基于网格(即地图分片)模型的地图服务,如用户所看到电子三维地图,其实对于某一块地方的描述,都是通过10多层乃至20多层的图片所组成,当用户进行缩放时,根据缩放的级数选择相应的地图分片图拼接成一幅完整的地图,由于一般公开服务,地图分片图都是从服务器上下载,当网速慢的时候,用户能亲眼看到这种不同地图分片的切换和拼接的过程。
如图2B,第0层比例尺可以是1:12500,第1层比例尺可以是1:25000,第2层比例尺可以是1:50000。需要说明的是,分片地图金字塔模型,可以按照不同的比例尺划分多个层级的地图分片,不仅限于图2B的3个层级。
地图分片的方法步骤如下:首先,确定地图服务平台所要提供的缩放级别的数量N,把缩放级别最低,也即地图比例尺最大的地图图片作为金字塔的底层,即第0层,并对其进行分块,从地图图片的左上角开始,从左至右进行切割,分割成相同大小的正方形地图分片,形成第0层地图分片矩阵,如图2B中所示的A1-1-1至A1-1-4、A1-2-1至A1-2-4、A1-3-1至A1-3-4,以及A1-4-1至A1-4-4等地图分片矩阵;其次,在第0层地图图片的基础上,按每2x2像素合成为一个像素的方法生成第1层地图图片,并对其进行分块,分割成与下一层相同大小的正方形地图分片,形成第1层地图分片矩阵,如将A1-1-1至A1-1-4四个地图分片合成为A1-1地图分片,依次类推,合成A1-2、A1-3和A1-4地图分片,从而形成如图2B中的第1层地图分片矩阵;采用同样的方法,在第1层地图图片的基础上合成第2层地图分片,如将A1-1、A1-2、A1-3和A1-4四个地图分片合成A1地图分片,从而形成如图2B中的第2层地图分片矩阵,直到第N-1层,构成整个地图分片金字塔。
另外,结合图2C说明,在一个电子地图中分片地图可以包括以下不同的图层:
1)地图层(TMXLayer)
对于地图分片模型来看,图层的概念比较重要,由于图层是生成制作出来,每个图层内包含的元素相对是固化的,其中,该地图层包含了最基本且最常用的地图数据元素的图层,例如:街道、建筑物、河流、桥梁和绿地,甚至有些底图会包含建筑物或者其他地物的轮廓,如图2C所示。在底图的基础上,可以叠加各种需要的图层,以满足应用的需要,例如:道路堵车状况的图层、卫星图和POI图层等等。
底图通常是通过选取必要地图矢量数据,然后通过地图美工的工作,设定颜色、字体、显示方式和显示规则等等,然后渲染出一整套不同分辨率的地图。
2)对象层(TMXObjectGroup)
这里,对于基于位置的服务的场景还包括对象层,其中,对象层用来添加除背景以外的地图元素的信息,如道具、障碍物的动态特效,当定位结果与等对象实现交互的目的。
结合图2D说明,地图分片在地图分片数据库中根据不同层级对应存储,如第0层级、第0层级下的第0至第16M行目录及各行目录下的图像或文本数据。
这里,地图数据以行号和列号表示某个层级中某个地图分片,然后对该地图分片中的数据进行编码;编码后,对地图分片进行存储。在本发明实施例中,地图分片以文本文件(如XML或JSON格式)形式的文本文件表示,其中,地图分片中包含metadata元数据表、tiles地图分片数据表、geometries几何对象表和attributes属性信息表,以及视图文件,如tilefeatures视图和tilegeometries视图;其中,视图文件由上述的tiles地图分片数据表、geometries几何对象表和attributes属性信息表中的数据生成,对于不需要获取地理要素的属性信息,基于tilegeometries查询速度更快。
其中,对于tiles地图分片数据表,包括所有的矢量地图分片数据和用于定位地图分片的值,其包含如下表1中的字段:
表1 Tiles地图分片数据表
字段名称 | 数据类型 | 描述 |
resolution | varchar | 分辨率,地图分片对应的分辨率。 |
tile_colum | integer | 地图分片列号 |
tile_row | integer | 地图分片行号 |
对于geometries几何对象,记录切片中地理要素的几何信息,根据显示的比例,不同的分片对象可能完全显示,也可能只显示一部分。geometries几何对象表包含如下表2中的字段:
表2 geometries几何对象表
字段名称 | 数据类型 | 描述 |
layer | Text | 图层名。 |
fid | Long | 地理要素ID。 |
tile_id | Text | 切片ID。 |
geometry_data | Text | 几何对象。 |
对于attributes属性信息表,记录了地理要素的属性信息,包含如下表3中的字段:
表3 attributes属性信息表
字段名称 | 数据类型 | 描述 |
layer | Text | 图层名。 |
fid | Long | 地理要素ID。 |
attr_data | Text | 属性数据。 |
search_values | Text | 查询内容。 |
分片地图数据存储后,对于地图分片获取方法步骤,如下所述:1)获取地图分片之前,获取定位信息,例如用户在现实世界的位置(例如采用各种坐标系的坐标),或者游戏角色在虚拟地图中的位置,然后根据所获取的定位信息与地图分片之间关系,确定所要拉取的分片的地图数据;2)在获取地图分片时,根据客户端当前显示的比例尺(即缩放比例),获取对应层级的地图分片,即地图数据库根据客户端的实际需求,地图数据库只返回与请求位置和相应层级相关的以文本文件形式保存的地图分片,这样,避免了无效获取的情况。
图3为本发明实施例提供的一种地图数据处理方法的实现流程示意图,如图3所示,本实施例的地图数据处理方法包括以下步骤:
步骤301:客户端检测在三维空间中的定位结果,并检测定位结果的更新。
本发明实施例中的客户端可以应用于AR/VR设备+基于位置服务的电子地图和游戏,以及传统的智能电子设备+基于位置服务的电子地图和游戏。由此,客户端可以通过AR/VR设备或传统的智能电子设备检测在三维空间中的定位结果,以根据定位结果进行后续操作。
对于定位结果,以客户端初始化为例,客户端在初始化时加载默认位置的地图分片,例如可以是当前定位结果的地图分片,还可以是客户端上次结束运行时的最后一次定位结果的地图分片;由于客户端需要根据定位结果实时渲染最新的定位结果以及对应视场区域的图像,因此,定时或不定时(例如基于特定事件触发)来检测定位结果是否发生更新。
对于基于位置服务的电子地图和游戏这两种应用,前者一般用于现实世界中的导航,后者一般用于虚拟环境中的导航,对于这两种应用场景的介绍,如下所述:
场景一:现实世界中的导航
应用于传统的智能电子设备+基于位置服务的电子地图,以及AR+基于位置服务的电子地图。
例如,用户在日常的生活中,经常会用到导航,例如外出旅行或在一个陌生的地方工作或生活,可能会用到各种导航方式,例如传统的导航方式,即使用安装有电子地图的手机或其它智能设备在真实的世界中进行定位,获得到达目的地的行进路线,例如,根据导航从当前所处的深圳到达北京。
此外,用户还可以采用AR设备+基于位置服务的电子地图进行导航,AR设备显示用户所处真实世界的图像的同时,会叠加承载导航信息的虚拟图像。
这里,继续说明本发明实施例中的AR导航,AR导航是用户在开车的过程中,通过用户佩戴的特定AR设备,如智能眼镜上显示所需要的导航图像和实时路况信息;或者,通过在汽车挡风玻璃表面镀上一种特殊涂层,在挡风玻璃上就能显示所需要的导航图像及实时路况信息,对于开车的用户而言,就好像导航图像被直接叠加在道路上一样。
场景二:虚拟环境中的导航
应用于网络或单机游戏中的虚拟人物的导航,例如,用户使用手机、电脑、AR、或VR设备玩游戏,操控游戏中的虚拟人物的跑动和/或打斗等。例如,通过手指触摸屏幕控制游戏中的虚拟人物进行相应的跑动、打斗操作;或者,当用户使用AR或VR设备玩游戏,通过AR或VR设备中的控制棒或控制手套控制当在进行跑动、打斗操作。
因此,根据应用的场景不同,获取三维空间中的定位结果可以分为以下两种情况:
1)真实环境中进行定位
在可选的实施例中,调用定位服务定时检测客户端的宿主设备在真实三维空间中的定位结果,也即获得用户在现实世界中的实时位置。
例如,在现实生活中,当用户使用手机、AR设备或VR设备进行定位或导航时,客户端会根据上述的设备中的定位系统,如全球卫星导航系统(GPS,the Global NavigationSatellite System)或基站定位系统实时地获取用户所在真实三维空间中的位置信息,如用户所处的经纬度,以便客户端根据位置信息从地图分片数据库获得适配相应定位结果的地图分片。
2)虚拟环境中的定位
在可选的实施例中,客户端定时检测客户端中的虚拟对象在虚拟三维空间中的定位结果,也即获得游戏中的虚拟对象在虚拟世界中的实时位置。。
例如,用户使用手机玩游戏,通过手指触摸屏幕控制游戏中的虚拟对象进行相应的跑动、打斗操作;或者,当用户使用AR或VR设备玩游戏,通过AR或VR设备中的控制棒或控制手套控制当在进行跑动、打斗操作时,虚拟对象在游戏中的虚拟地图中的位置发生了变化,此时,通过虚拟对象特定的定位方式,实时检测客户端中的虚拟对象在虚拟三维空间中的定位结果,从而获得该虚拟对象在虚拟地图中的位置,并通过该位置从地图分片数据库获得适配的地图分片。当虚拟对象发生位置变化时,会实时的更新与位置变换相对应的地图分片,此时,虚拟地图的显示也会跟着相应的变化。
步骤302:客户端确定更新的定位结果对应的视场区域。
在定位或导航的过程中,为了保证用户能查看到视场区域内的信息,该信息可以是道路、道路交通状况和建筑物等,因此,需要确定真实用户或虚拟对象的视场区域,以便获取与视场区域相对应的地图分片,进而显示与视场区域对应的地图。
对于不同的电子设备,显示的方式均有所不同,因此,视场区域也有所差异。对于AR/VR设备而言,其显示方式是以第一视角的方式进行显示,所呈现出来的视场区域将是一个扇形区域;对于传统的智能电子设备而言,一般是以第三视角的方式进行呈现,所呈现出来的视场区域为以定位结果为中心的一个区域。因此,对于步骤302中视场区域的确定,可以通过以下两种方式实现:
方式一:在三维空间中以定位结果为基准,确定处于预设视角且与定位结果小于预定距离的视场区域。
这里,方式一适用于AR/VR设备的导航。
根据AR/VR设备中的陀螺仪,可以确定用户的朝向,如朝东、朝西、朝南或朝北。因此,以定位结果为基准,结合用户的朝向确定处于预设视角α且与定位结果小于预定距离R1的视场区域,可以看出,该视场区域为以定位结果为基准、角度大小为α、半径为R1的扇形区域,如图4所示。其中,图4中不同数字标号的方块表示不同的地图分片,标号为1的方块为定位结果的地图分片,标号为2至21的方块为视场区域的地图分片。需要说明的是,预设视角α的大小可以是60度至120度,预定距离R1可以是1千米(km)至10km间的数值,设定值的大小时,可根据实际情况确定,本发明实施例中不做具体限定。
方式二:在三维空间中以定位结果为中心,确定与定位结果小于预定距离的视场区域。
这里,方式二适用于传统的智能电子设备的定位或导航。
以定位结果为中心,确定与定位结果小于预定距离R2的视场区域,可以看出,该视场区域为以定位结果为中心、半径为R的圆形区域,如图5所示。其中,图5中标号为1的方块为定位结果的地图分片,标号为2至5的方块为视场区域的地图分片。需要说明的是,预定距离R2可以是1千米(km)至10km间的数值,设定值的大小时,可根据实际情况确定,本发明实施例中不做具体限定。
步骤303:客户端获得更新的定位结果对应的地图分片、以及视场区域对应的地图分片。
对于地图分片的来源,可将地图分片的获取方式划分为以下两个方式或步骤:
步骤3031:从服务器的地图分片数据库获得更新的定位结果对应的地图分片、以及视场区域对应的地图分片。
在可选的实施例中,对于存储空间较小,或计算能力不强的终端,可由服务器维护地图分片数据库,客户端可以从服务器的地图分片数据库获得适配相应定位结果的地图分片;例如,由于地图数据存储于客户端的宿主设备会占有宿主设备的存储空间,因此,将地图数据存储于服务器,客户端每次获取地图分片时,通过联网的方式从服务器中获取,从而避免了因地图数据大而占用宿主设备大量的存储空间。
步骤3032:从宿主终端的本地数据库获得更新的定位结果对应的地图分片、以及视场区域对应的地图分片。
在另一可选的实施例中,对于计算能力较强的终端,如个人计算机(PC),可以从宿主终端的本地数据库获取适配相应定位结果的地图分片,在本地维护地图分片数据库。例如,当地图数据存储于客户端的宿主设备(即本地端)时,每次获取地图分片均从宿主终端的本地数据库获取适配相应定位结果的地图分片,避免了因网络差的原因造成无法导航的问题。
在定位或导航的过程中,可能会出现往返的情况,例如,用户在导航的时候,由于某种情况,在行走不远后需要往回走;或者,用户在操作游戏的时候,游戏中的虚拟对象从A地到B地,然后又从B地返回A地,此时,内存空间中可能已经存储有历史定位结果关联的地图分片,因此,在获取与定位结果对应的地图分片、以及与视场区域对应的地图分片时,需要判断定位结果是否为首次更新,当为非首次更新时,判断该定位结果是否与历史定位结果相同。
因此,当首次检测到更新的定位结果时,从地图分片数据库请求与更新的定位结果对应的地图分片、以及与视场区域对应的地图分片;当更新的定位结果与历史定位结果相同时,先从内存空间查询地图分片,只有当未查询到时,向地图分片数据库请求与更新的定位结果对应的地图分片、以及与视场区域对应的地图分片,因此缩短了获取地图分片的时间。
需要说明的是,由于每个地图分片反映了某个区域的地理信息,假设地图分片A反映了区域A的地理信息,那么,在区域A中的每次定位,其定位结果均对应地图分片A。为了避免因更新定位结果(即更新位置信息)时频繁地从地图数据库调用地图分片,因此,在获取适配定位结果和视场区域的地图分片之前,判断定位结果是否为首次获得;
如果是,从地图分片数据库请求适配相应定位结果和视场区域的地图分片;
如果否,从内存空间查询适配相应定位结果和视场区域的地图分片,当未查询到时,向地图分片数据库请求适配相应定位结果和视场区域的地图分片。
例如,地图分片A对应编号1至100的位置信息,当首次定位结果为编号1的位置时,由于内存空间中未存储地图分片A,因此,客户端从地图分片数据库请求适配相应定位结果的地图分片;当地位结果更新为编号为2至100中的任一个位置时,由于编号2至100的位置信息均对应地图分片A,而地图分片A已经存储于内存空间,因此,只需在内存空间查询适配的地图分片A即可;当定位结果更新为大于编号100的位置时,在内存空间查询不到相适配的地图分片A时,从地图分片数据库请求适配相应定位结果的地图分片。从而,避免了避免因更新定位结果(即更新位置信息)时频繁的从地图数据库调用地图分片,提高了地图的显示效率。
因此,对于上述地图分片的获取,只有当超出某个特定区域(如区域A)的定位结果,才会根据该定位结果获取相应的地图分片。
对于主流的一些地图应用程序编程接口(API,Application ProgrammingInterface),都是采用客户端的终端请求一块区域的地图图片,服务器返回预先渲染的地图图片的方式,由客户端进行拼接,这种传输地图图片需要消耗较多流量。
而应用本发明实施例的方案,由于地图图片以JSON格式的形式存储,因此,每次发生定位结果的更新时,只需要获取更新的定位结果和视场区域对应的JSON格式的文本文件,而JSON格式的文本文件通常较小,有效节省了传输流量的消耗,有利于地图的快速加载。
步骤304:客户端在内存空间中动态加载更新的定位结果对应的地图分片、以及视场区域对应的地图分片。
例如,假设定位结果对应的地图分片编号为1,视场区域对应的地图分片编号为2至10,那么,当客户端获取到针对定位结果对应的地图分片1和视场区域对应的地图分片2至10时,将获取到的地图分片加载至内存空间中。
在可选的实施例中,由于用户的位置或游戏中用户所操控的虚拟对象的位置会发生变化,因此,定位结果实时在更新,相应的地图分片将会被加载到内存空间,宿主终端的内存空间有限(特别是移动终端),可能会导致内存溢出的问题,因此,对于满足内存空间的清理条件时,清除内存空间中的部分地图分片,直至,形成用于加载定位结果的地图分片、以及视场区域的地图分片的空闲内存空间。
这里,满足内存空间的清理条件包括:当内存空间中存储的地图分片达到预设容量或比例,或者,当检测到更新的定位结果时,确定满足内存空间的清理条件。
对于清除内存空间中的部分地图分片,可采用以下清除方式:
清除方式一:根据活动区域进行清除
在可选的实施例中,首先根据更新的定位结果,确定与更新的定位结果对应的区域、视场区域以及视场区域的邻接区域,将所确定的区域划分为活动区域,将超出所确定的区域划分为非活动区域;然后,在内存空间中,将归属与非活动区域的地图分片进行清除。需要说明的是,由于用户或游戏中的虚拟对象发生位置更新,上述的活动区域也会相应的更新变化;当定位的对象是用户本身时,该活动区域为用户的真实活动区域;当定位的对象为游戏中的虚拟对象时,该活动区域为虚拟三维空间中虚拟对象的活动区域。
例如,对于使用传统的智能电子设备定位或导航时,一般是以第三视角呈现地图画面,如图6所示,当用户沿着箭头D的方向前进,那么,定位结果对应地图分片1,视场区域对应地图分片为2-9,邻接区域对应地图分片10-18,其中,邻接区域可以为直接相邻或间接相邻。因此,活动区域对应地图分片1-18,清除1-18之外的地图分片,即清除地图分片19-21。
又例如,对于使用AR/VR定位或导航时,一般是以第一视角呈现地图画面,如图7所示,当用户沿着箭头E的方向前进,那么,定位结果对应地图分片1,视场区域对应地图分片2-16,视场区域的邻接区域对应地图分片17-32,其中,邻接区域可以为直接相邻或间接相邻,如距离。因此,活动区域对应地图分片为1-32,即清除地图分片1-32之外的地图分片,即清除地图分片33-35。需要说明的是,用户在使用AR/VR定位或导航时,由于实际需要,用户及携带的AR/VR设备可能会有较大幅度的左右转向,那么,根据视场区域的变化获取相应的地图分片,从而进行地图显示。
这里,继续就本发明实施例中的删除策略进行进一步地阐述,在加载地图分片时,由于人的视野有限,对于地图分片的加载,只需要加载当前所处位置块及周围n×n以内的地图分片(即活动区域的地图分片)。此外,为了避免因为不断加载地图分片而造成内存空间不足的现象,需动态的删除超出预设范围以外的地图分片,这里采用的策略是删除当前块(n+1)×(n+1)以外的地图分片(即非活动区域的地图分片)。如n=3时,如图8所示:带斜线的灰色单位块为删除的块,不带斜线的灰色单位块为加载的地图数据,箭头所指向的白色单位块为当前块,当前块4×4以外的块将被删除。需要说明的是,删除的范围取n+1是为了避免在两个分片的边缘地带来回走动导致频繁的请求与删除边缘的分片。
这里,继续对本发明实施例中的图8进行介绍,左边第一个,为刚开始加载的画面,只显示了当前目标物前后左右3×3个地图块;左边第二个,为目标物向图中的上方运动,运动到一定方位时,将会更新地图块,图中第一行和第二行之间的单位块为更新的地图块,且图中的4×3个地图块被保留;左边第三个,为目标物向图中的右侧运动,由于每次加载都是三个单位,因此,加载第4列和第5列的单元块的数据;左边第四个,为目标物向图中的右侧运动,由于每次加载都是三个单位,因此,运动到一定方位时,加载第5列和第6列的单元块的数据,而第1列和第2列中的单元块将会被删除。需要说明的是,图8中的四个子图,右边的子图都是在其左侧的子图的基础之上运动形成的。
清除方式二:根据与定位结果的距离清除
在可选的实施例中,按照与更新的定位结果由远及近的顺序,清除内存空间中非视场区域的地图分片,直至,形成用于加载定位结果对应的地图分片、以及视场区域对应的地图分片的空闲内存空间。
例如,如图6所示,用户的定位结果对应地图分片1,视场区域对应地图分片2-9,那么,距离地图分片最远的有地图分片10-21,这里,由于判断用户的方向从A6至A1转为从B1至B6,因此,为了扩大前方的视野,扩大视场区域,因此,将地图分片10-12划分为视场区域,进行保留。因此,将已加载的地图分片13-21进行清除,从而形成用于加载定位结果对应的地图分片、以及视场区域对应的地图分片的空闲内存空间。
清除方式三:根据视野进行清理
在可选的实施例中,基于最新(当前)定位结果,确定内存空间中归属于当前定位结果视野内的地图分片,按照由远及近的顺序,依次清除视野外的地图分片,直至在内存空间中形成足够的空闲内存空间用以加载适配当前视野的地图分片。
例如,用户在使用例如智能眼镜这样的AR设备进行定位或导航时,通过设置在智能眼镜的全球定位系统进行定位跟踪,将定位结果与相应的3D电子地图显示在智能眼睛上,由于用户的视野是一定的,只能看到前方一定距离的东西,因此,根据当前视野与历史的定位结果之间的关系,确定当前视野所对应的地图分片,以及当前视野外的地图分片,在内存空间中保持视野内的数据,清除视野外的数据,从而形成用以加载适配当前视野的地图分片。此外,除了可以使用设置在智能眼镜的全球定位系统进行定位跟踪以外,还可以通过用户携带的手机,或者车载系统的定位系统等设备进行定位,将定位结果通过蓝牙、近场通信(NFC,Near Field Communication)或无线局域网(WiFi,Wireless Fidelity)的方式发送至智能眼镜。
又例如,用户也可以使用常规的方式进行定位或导航,例如使用手机或车载导航系统,对于手机或车载导航系统而言,显示的三维画面中的视野可以通过触摸手机或车载导航系统的显示屏进行调整或控制,也可以默认的跟着定位结果进行相应调整,因此,也可以根据手机或车载导航系统的显示屏中所显示的视野历史的定位结果之间的关系,确定当前视野所对应的地图分片,以及当前视野外的地图分片,在内存空间中保持视野内的数据,清除视野外的数据,从而形成用以加载适配当前视野的地图分片。
在可选的实施例中,清除内存空间的数据,也可以根据存储的先后顺序,清除内存空间中最先存储的部分地图分片。
例如,当运行客户端时,为了提高运行效率,降低内存空间的消耗,适当的清除不再被利用到的数据,一般来说,用户在导航过程中,由于用户不断的移动,因此,最先加载到内存空间的地图数据,用户可能不会再利用,因此,可以根据存储的先后顺序,清除内存空间中最先存储的部分地图分片。
步骤305:客户端基于所加载的地图分片,渲染三维空间中位于定位结果、以及对应视场区域的图像。
下面将根据地图分片渲染三维空间的图像的实现进行说明,在可选的实施例中,地图分片包含具有几何属性的物体信息;因此,在渲染过程中,确定物体信息归属的几何属性类型,几何属性类型包括点、线和面;生成与几何属性类型对应的网格,并根据网格将各几何属性类型的物体信息转换为相应的几何物体;将几何物体置于三维空间中对应的位置,形成三维空间位于更新的定位结果的图像。
如图9所示,对于一个电子地图,包含了各地区的地图分片,其中,地图分片中的地图数据以点、线和面的形式体现。
1)对于点的地图数据,其几何信息只有一个,即该点的经纬度。经过转换,在地图上对应点可生成相应的物体,如公交站、咖啡店等。
2)对于线的地图数据,其几何信息主要对应的是道路、河流、地铁等。以道路为例,一段道路包含多条线段,根据道路宽度,针对每条线段可生成一个沿着线段方向的四边形,将多个四边形合成一个多边形,生成包括上述集合信息的Mesh,并附上UV纹理贴图坐标与材质球,然后进行渲染。
3)对于面(或多边形)的地图数据,其几何信息主要对应的是建筑、湖泊等,生成面相关的地图物质,可以直接根据多边形顶点数据与高度,生成对应的Mesh,如生成建筑物、湖泊等,放置到地图相应位置。
这里,继续对本发明实施例中的Mesh进行阐述,Mesh是Unity内的一个组件,称为网格组件,包括:Mesh网格、网格过滤器(Mesh Filter)和网格渲染器(Mesh Renderer);其中,
Mesh:主要属性内容包括顶点坐标、法线、纹理坐标和三角形绘制序列等其他有用属性和功能。
Mesh Filter:内包含一个Mesh组件,可以根据Mesh Filter获得模型网格的组件,也可以为Mesh Filter设置Mesh内容。
Mesh Render:是用于把网格渲染出来的组件,Mesh Render将Mesh Filter发送的Mesh模型绘制显示出来。
对于不同的设备,不同的应用场景,地图画面的渲染角度均有所不同,针对视角渲染的不同,可以分为以下三种情景:
情景一:第一视角
在可选的实施例中,基于内存空间中适配更新的定位结果和视场区域的地图分片进行视角渲染,形成以第一视角显示的图像。
例如,在三维电子地图导航应用或某些网络或单机游戏中,为了观察到操作者每个细致入微的操作,通常采用第一视角呈现某个画面,即以叙述人本人亲眼所见的角度对客观事物进行观察或描述,因此,在渲染的过程中,以第一视角为基准,对定位结果的地图分片进行渲染,形成三维空间位于更新的定位结果、且以第一视角显示的图像。
情景二:第三视角
在可选的实施例中,基于内存空间中适配更新的定位结果和视场区域的地图分片进行视角渲染,形成以第三视角显示的图像。
例如,为了能观看到游戏中游戏角色全身及其周围的环境,或者,在地图软件画面中看到自己所处位置以及周围的环境,因此,在渲染的过程中,以第三视角为基准,对定位结果的地图分片进行渲染,形成三维空间位于更新的定位结果、且以第三视角显示的图像。
情景三:第一视角和第三视角缩略图叠加
在可选的实施例中,基于内存空间中适配更新的定位结果和视场区域的地图分片进行视角渲染,形成以第一视角和第三视角缩略图叠加显示的图像。
例如,在三维电子地图导航应用或某些网络或单机游戏中,若操作者既希望能观察到操作者每个细致入微的操作;又希望能观看到游戏中游戏角色全身及其周围的环境,或者,在地图软件画面中看到自己所处位置以及周围的环境,那么,在渲染的过程中,以第一视角为基准,以第三视角为辅助参考,对定位结果的地图分片进行渲染,形成三维空间位于更新的定位结果、且以第一视角和第三视角缩略图叠加显示的图像。
步骤306,客户端在地图分片中的地图元素设置动态属性。
在可选的发明实施例中,当更新的定位结果,与三维空间中的地图元素满足预定位置条件时,根据在地图分片中的地图元素设置的动态属性,输出位于所述定位结果的动态效果。这里,动态效果的设置需要用到上述的对象层,通过对象层添加除背景以外的地图元素的信息,如道具、障碍物的动态特效,当定位结果与等对象实现交互的目的。
例如,通过对象层,在地图分片中的部分元素设置可自定义城市的风格,如建筑、道路、河流效果、兴趣点信息展示方式等。因此,对于设置动态效果,可以在地图中的建筑物和河流设置相应的动态效果,如在地图中的建筑物或高大障碍物等设置碰撞效果,以及将地图中的河流、水池等区域设置入水效果。
在实际应用过程中,在地图中的相应区域设置相应的动态效果的模块,并通过所设置的模块来产生相应的动态效果,如下所述:
1)对于碰撞效果
在可选的实施例中,在地图中的障碍区域设置碰撞效果的模块,当检测到客户端中的虚拟对象即将进入障碍区域,如建筑物或高大障碍物时,触发该障碍区域的碰撞效果的模块,通过该碰撞效果的模块产生碰撞效果,即禁止该虚拟对象穿越虚拟三维空间中障碍模块对应的障碍物。
如图10所示,根据用户的运动情况,图中的角色可以在地图内自由行走,当用户遇到建筑中,对应的,客户端中的与该用户对应的虚拟人物也会被挡住无法前行;或者,当用户使用AR或VR设备玩游戏时,游戏中的虚拟人物遇到建筑中,将无法前行。
2)对于入水效果
在可选的实施例中,在地图中的水域区设置入水效果的模块,当检测到客户端中的虚拟对象进入水域区,如水池或河流等水域区时,触发该水域区的入水效果的模块,通过入水效果的模块产生入水效果,即调整虚拟对象在虚拟三维空间的坐标高度。
如图11所示,根据用户的运动情况,图中的角色可以在地图内自由行走与互动,例如,当用户进入水池或河流中,对应的,客户端中与该用户对应的虚拟人物也会模拟进入入水的状态,即客户端中的地图画面中,虚拟人物进入虚拟的水池或河流中,且该水池或河流中的水淹没虚拟人物一定的部位,如没过膝盖等,如图11中的虚拟人物进入区域A(水域区);或者,当用户使用AR或VR设备玩游戏时,游戏中的虚拟人物进入水池或河流中,将进入入水的状态。
此外,图10和图11中的画面还可自由旋转视角,360度观察地图画面。需要注意的是,图10和图11是以第三视角进行显示的,若为现实中的导航,那么,图中的虚拟角色表示用户本人。
本发明实施例还提供了一种地图数据处理装置,参见图12,图12为本发明实施例提供的地图数据处理装置800的一个可选的功能结构示意图,包括:检测模块801、确定模块802、获取模块803、加载模块804、渲染模块805、清除模块806和设置模块807,下面对各模块的功能进行说明。
检测模块801,用于检测在三维空间中更新的定位结果;
确定模块802,用于确定更新的定位结果对应的视场区域;
获取模块803,用于获得更新的定位结果对应的地图分片、以及视场区域对应的地图分片;
加载模块804,用于在内存空间中动态加载更新的定位结果对应的地图分片、以及视场区域对应的地图分片;
渲染模块805,用于基于所加载的地图分片,渲染三维空间中位于定位结果、以及对应视场区域的图像。
这里,检测模块801,具体用于:
调用定位服务定时检测客户端的宿主设备在真实三维空间中的定位结果;
或者,定时检测客户端中的虚拟对象在虚拟三维空间中的定位结果。
这里,确定模块802,具体用于:
在三维空间中以定位结果为基准,确定处于预设视角且与定位结果小于预定距离的视场区域;或者,
在三维空间中以定位结果为中心,确定与定位结果小于预定距离的视场区域。
这里,获取模块803,具体用于:
当首次检测到更新的定位结果时,从地图分片数据库请求更新的定位结果对应的地图分片、以及视场区域对应的地图分片;
当更新的定位结果与历史定位结果相同时,从内存空间查询地图分片,当未查询到时,向地图分片数据库请求更新的定位结果对应的地图分片、以及视场区域对应的地图分片。
这里,清除模块806,用于当满足内存空间的清理条件时,清除内存空间中的部分地图分片,直至,形成用于加载定位结果的地图分片、以及视场区域的地图分片的空闲内存空间。
这里,清除模块806,具体用于:
确定活动区域,活动区域包括更新的定位结果、视场区域以及视场区域的邻接区域;
清除内存空间中非活动区域的地图分片。
这里,清除模块806,具体用于:
按照与更新的定位结果由远及近的顺序,清除内存空间中非视场区域的地图分片,直至,
形成用于加载定位结果对应的地图分片、以及视场区域对应的地图分片的空闲内存空间。
这里,清除模块806,具体用于:
当内存空间中存储的地图分片达到预设容量或比例,或者,当检测到更新的定位结果时,确定满足内存空间的清理条件。
这里,渲染模块805,具体用于:
根据地图分片包含的地图元素的几何属性,几何属性包括点、线和面至少之一;
生成与几何属性对应的网格,并根据网格中生成具有相应几何属性的地图元素的图像;
将地图元素的图像渲染到三维空间中对应的位置。
这里,设置模块807,用于当更新的定位结果,与三维空间中的地图元素满足预定位置条件时,根据在地图分片中的地图元素设置的动态属性,输出位于定位结果的动态效果。
实际应用中,上述检测模块801、确定模块802、获取模块803、加载模块804、渲染模块805、清除模块806和设置模块807均可由位于地图数据处理装置的(CPU,CentralProcessing Unit)、微处理器(MPU,Microprocessor Unit)、数字信号处理器(DSP,DigitalSignal Processor)、或现场可编程门阵列(FPGA,Field-Programmable Gate Array)等实现。
本发明实施例还提供了另一种地图数据处理装置,参见图13,图13为本发明实施例提供的另一种地图数据处理装置的组成结构示意图,包括:
地图管理(MapManager)模块,用于生成地图,同时也管理地图样式等。
地图分片管理(TileManager)模块,用于管理地图地图分片的生成与销毁。
数据管理(DataManager)模块,用于负责读取地图数据,包括从服务器获取,以及本地缓存的读写。
地图分片生成(TileBuilder)模块,用于负责解析地图数据,并调用下级的几何点建立(Point Builder)模块,几何线建立(Line Builder)模块,几何面建立(PolygonBuilder)模块,生成地图上的各种元素。
面到网格(Poly2Mesh)模块,用于底层的几何模块,主要与Unity3D的Mesh相关API结合,负责把地图的离散的点数据转换成可视化的Mesh文件。
对于现今主流的地图API,都是终端请求一块区域,服务器返回渲染好图片,下载图片需要消耗较多流量;此外,由于地图服务商并不会提供地图底层数据给用户,因此终端并不能在地图上做过多的自定义修改;而且,现有地图大多是2D的,即使有三维建筑物也是伪3D的,并不能360度自由旋转观看。因此,本发明实施例中提出了一种解决方案。
参见图14,图14为本发明实施例提供的另一种地图数据处理方法的实现流程示意图,包括以下步骤:
步骤901:服务器从OSM服务器获取城市地图数据。
OSM是一款由网络大众共同打造的免费开源、可编辑的地图服务,因此,从OSM服务器获取的地图数据,用户在实际定位或导航的过程中,可以通过传统的智能电子设备或AR/VR设备根据实际需求进行编辑和自定义。
步骤902:OSM服务器将城市地图数据返回服务器。
步骤903:服务器解析并分片,将数据转换成矢量地图分片。
此阶段需要把地图上的特征信息,如建筑物、道路、湖面和兴趣点等按照经纬度和缩放比例,存储到对应的矢量地图分片,以方便终端动态加载地图时请求对应的矢量地图分片数据。
步骤904:Unity3D终端向服务器请求地图分片数据。
这里,根据在三维空间中的定位结果,向服务器发送适配相应定位结果的地图分片数据。
步骤905:服务器将所请求的地图分片数据返回Unity3D终端。
步骤906:Unity3D终端解析并渲染地图。
Unity3D是创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型开发工具,当然,本发明实施例不排除使用其他形式的开发工具,在3D空间渲染障碍物和水域区,其中,障碍物如建筑物,水域区河流和水池等,在渲染的过程中,为地图分片中的地图元素并赋予不同的特性,让客户端中用户对应的虚拟对象与地图上的元素自由互动。例如,对于某个建筑物,为其设置一个Mesh碰撞体(Collider),当虚拟对象在地图上行走,接近障碍物如建筑物时,触发Mesh Collider,那么,将与建筑物发生碰撞,从而该虚拟对象无法穿过该建筑物,因此,渲染的结果为:该虚拟人物停在该建筑物前。又例如,为水域区设置Mesh触发器(Trigger)、当虚拟对象在地图上行走,进入水域区如河流或水池时,触发Mesh Trigger,那么,该虚拟对象与地图的相对位置将会发生变化,即虚拟对象的纵坐标相对水平面下移,因此,渲染的结果为:水域区中水将会淹没虚拟对象的某个部位,如膝盖。
此外,用户在实际定位或导航的过程中,可以通过传统的智能电子设备或AR/VR设备标记常关顾的超市、常去的加油站等,或者,为常关顾的超市、常去的加油站的建筑物添加个性化的设置,如渲染不同的颜色等,以增强视觉效果。
综上所述,本发明实施例可实现以下有益效果:
1)能根据定位结果确定对应的视场区域,当用户在发生方向上的变化时,根据定位结果快速的获取到用户的朝向,并根据朝向确定用户的视场区域,以便快速的获取相应的地图分片;
2)划分定位结果对应的地图分片和视场区域对应的地图分片,有利于在定位结果更新时,对两种类型的地图分片进行归类处理,有利于对地图分片的管理。
3)对于在内存空间动态加载地图分片而言,根据更新的定位结果获取到相应的地图分片,当加载该地图分片到内存空间时,动态的删除原有内存空间中的部分分片数据,保证内存消耗不变的情况下,实现地图数据的更新。
4)对应动态形成更新的定位结果的图像而言,当定位结果实时更新变化时,形成三维空间位于更新的定位结果的图像,即所展现出来的地图画面也实时进行更新,保证了视野与定位结果保持一致。
5)获取的地图分片为JSON格式的文本数据,所需数据量大大减少。
6)由于从地图分片服务器中获取地图分片进行拼接和渲染,而矢量的地图支持客户端对地图上做相应的自定义修改,并利用Unity3D引擎自行渲染三维地图,能够高度自定义地图样式、地图元素的表现形式。
7)在地图数据的渲染过程中,可以赋予地图元素不同的特性,让人物与地图上的元素自由互动,如检测人物进入河流区域,对应的,客户端渲染出虚拟对象陷进水域的效果。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。
Claims (13)
1.一种地图数据处理方法,其特征在于,包括:
检测在三维空间中更新的定位结果;
确定所述更新的定位结果对应的视场区域;
确定在所述三维空间中检测的更新的定位结果超出了特定区域,所述特定区域对应更新之前的定位结果所处的地图分片;
获得所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;
在内存空间中加载所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;
基于所加载的地图分片,渲染所述三维空间中位于所述定位结果、以及对应所述视场区域的图像;
当满足内存空间的清理条件时,确定活动区域,所述活动区域包括所述更新的定位结果、所述视场区域以及所述视场区域的邻接区域,清除所述内存空间中非活动区域的地图分片,直至,形成用于加载所述定位结果的地图分片、以及所述视场区域的地图分片的空闲内存空间。
2.根据权利要求1所述的方法,其特征在于,所述检测在三维空间中更新的定位结果,包括:
调用定位服务定时检测客户端的宿主设备在真实三维空间中的定位结果;
或者,定时检测客户端中的虚拟对象在虚拟三维空间中的定位结果。
3.根据权利要求1所述的方法,其特征在于,所述确定所述更新的定位结果对应的视场区域,包括:
在所述三维空间中以所述定位结果为基准,确定处于预设视角且与所述定位结果小于预定距离的区域为所述视场区域;或者,
在所述三维空间中以所述定位结果为中心,确定与所述定位结果小于预定距离的区域为所述视场区域。
4.根据权利要求1所述的方法,其特征在于,所述获得所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片,包括:
当首次检测到所述更新的定位结果时,从所述地图分片数据库请求所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;
当所述更新的定位结果与历史定位结果相同时,从所述内存空间查询所述地图分片,当未查询到时,向所述地图分片数据库请求所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片。
5.根据权利要求1所述的方法,其特征在于,还包括:
按照与所述更新的定位结果由远及近的顺序,清除所述内存空间中非视场区域的地图分片,直至,
形成用于加载所述定位结果对应的地图分片、以及所述视场区域对应的地图分片的空闲内存空间。
6.根据权利要求1所述的方法,其特征在于,还包括:
当所述内存空间中存储的地图分片达到预设容量或比例,或者,当检测到更新的定位结果时,确定满足内存空间的清理条件。
7.根据权利要求1所述的方法,其特征在于,所述基于所加载的地图分片,渲染所述三维空间中位于所述定位结果、以及对应所述视场区域的图像,包括:
根据地图分片包含的地图元素的几何属性,所述几何属性包括点、线和面至少之一;
生成与所述几何属性对应的网格,并根据所述网格中生成具有相应几何属性的地图元素的图像;
将所述地图元素的图像渲染到所述三维空间中对应的位置。
8.根据权利要求1所述的方法,其特征在于,还包括:
当所述更新的定位结果,与所述三维空间中的地图元素满足预定位置条件时,
根据在所述地图分片中的所述地图元素设置的动态属性,输出位于所述定位结果的动态效果。
9.一种地图数据处理装置,其特征在于,包括:
检测模块,用于检测在三维空间中更新的定位结果;
确定模块,用于确定所述更新的定位结果对应的视场区域;
获取模块,用于确定在所述三维空间中检测的更新的定位结果超出了特定区域,所述特定区域对应更新之前的定位结果所处的地图分片;获得所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;
加载模块,用于在内存空间中动态加载所述更新的定位结果对应的地图分片、以及所述视场区域对应的地图分片;
渲染模块,用于基于所加载的地图分片,渲染所述三维空间中位于所述定位结果、以及对应所述视场区域的图像;
清除模块,用于当满足内存空间的清理条件时,确定活动区域,所述活动区域包括所述更新的定位结果、所述视场区域以及所述视场区域的邻接区域,清除所述内存空间中非活动区域的地图分片,直至,形成用于加载所述定位结果的地图分片、以及所述视场区域的地图分片的空闲内存空间。
10.根据权利要求9所述的装置,其特征在于,
所述检测模块,具体用于:
调用定位服务定时检测客户端的宿主设备在真实三维空间中的定位结果;
或者,定时检测客户端中的虚拟对象在虚拟三维空间中的定位结果。
11.根据权利要求9所述的装置,其特征在于,
所述确定模块,具体用于:
在所述三维空间中以所述定位结果为基准,确定处于预设视角且与所述定位结果小于预定距离的视场区域;或者,
在所述三维空间中以所述定位结果为中心,确定与所述定位结果小于预定距离的视场区域。
12.一种存储介质,其特征在于,存储有可执行程序,所述可执行程序被处理器执行时,实现权利要求1至8任一项所述的地图数据处理方法。
13.一种地图数据处理装置,其特征在于,包括:
存储器,用于存储可执行程序;
处理器,用于执行所述存储器中存储的所述可执行程序时,实现权利要求1至8任一项所述的地图数据处理方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710682652.1A CN107423445B (zh) | 2017-08-10 | 2017-08-10 | 一种地图数据处理方法、装置及存储介质 |
PCT/CN2018/090479 WO2019029252A1 (zh) | 2017-08-10 | 2018-06-08 | 一种地图数据处理方法、计算机设备及存储介质 |
KR1020207005277A KR102360660B1 (ko) | 2017-08-10 | 2018-06-08 | 맵 데이터 처리 방법, 컴퓨터 디바이스 및 저장 매체 |
JP2020506205A JP6997290B2 (ja) | 2017-08-10 | 2018-06-08 | 地図データ処理方法、コンピュータ装置及びコンピュータプログラム |
US16/751,068 US11585675B2 (en) | 2017-08-10 | 2020-01-23 | Map data processing method, computer device and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710682652.1A CN107423445B (zh) | 2017-08-10 | 2017-08-10 | 一种地图数据处理方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107423445A CN107423445A (zh) | 2017-12-01 |
CN107423445B true CN107423445B (zh) | 2018-10-30 |
Family
ID=60437744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710682652.1A Active CN107423445B (zh) | 2017-08-10 | 2017-08-10 | 一种地图数据处理方法、装置及存储介质 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11585675B2 (zh) |
JP (1) | JP6997290B2 (zh) |
KR (1) | KR102360660B1 (zh) |
CN (1) | CN107423445B (zh) |
WO (1) | WO2019029252A1 (zh) |
Families Citing this family (72)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107423445B (zh) * | 2017-08-10 | 2018-10-30 | 腾讯科技(深圳)有限公司 | 一种地图数据处理方法、装置及存储介质 |
CN108062793B (zh) * | 2017-12-28 | 2021-06-01 | 百度在线网络技术(北京)有限公司 | 基于高程的物体顶部处理方法、装置、设备和存储介质 |
CN108133044B (zh) * | 2018-01-12 | 2020-10-02 | 适普远景遥感信息技术(北京)有限公司 | 基于属性分离的空间大数据三维可视化方法及平台 |
CN110321184B (zh) * | 2018-03-29 | 2021-06-04 | 北京新唐思创教育科技有限公司 | 场景地图绘制方法及计算机存储介质 |
CN108597027B (zh) * | 2018-04-09 | 2022-04-15 | 腾讯科技(上海)有限公司 | 图形数据的访问方法及装置 |
WO2019237085A1 (en) | 2018-06-08 | 2019-12-12 | Vulcan Inc. | Session-based information exchange |
US20190378334A1 (en) * | 2018-06-08 | 2019-12-12 | Vulcan Inc. | Augmented reality portal-based applications |
CN108777007A (zh) * | 2018-06-13 | 2018-11-09 | 唐旭 | 基于gis的儿童防走失监控系统 |
CN109147547A (zh) * | 2018-07-26 | 2019-01-04 | 浙江省测绘科学技术研究院 | 一种基于矢量瓦片的注记选位与动态避让方法 |
CN110858075B (zh) * | 2018-08-15 | 2021-11-19 | 杭州海康机器人技术有限公司 | 一种移动机器人跨区域方法、装置、调度系统 |
CN109260708B (zh) | 2018-08-24 | 2020-01-10 | 腾讯科技(深圳)有限公司 | 地图渲染方法、装置以及计算机设备 |
CN109542573B (zh) * | 2018-11-28 | 2021-12-07 | 北京龙创悦动网络科技有限公司 | 一种场景显示方法和装置 |
CN111598969A (zh) * | 2019-02-21 | 2020-08-28 | 福建省天奕网络科技有限公司 | 2d地图动态拼接方法及计算机可读存储介质 |
CN109889785B (zh) * | 2019-02-26 | 2021-01-01 | 高新兴科技集团股份有限公司 | 一种基于unity的POI标签显示的虚拟仿真方法 |
CN109999500A (zh) * | 2019-02-27 | 2019-07-12 | 深圳点猫科技有限公司 | 一种基于编程语言流畅加载游戏地图的方法以及电子设备 |
CN111694908B (zh) * | 2019-03-15 | 2024-06-14 | 丰图科技(深圳)有限公司 | 数据存储方法、装置及存储介质 |
CN110059151B (zh) * | 2019-04-26 | 2022-10-25 | 北京百度网讯科技有限公司 | 地图渲染方法、地图渲染装置、地图服务器和存储介质 |
CN110090446B (zh) * | 2019-05-14 | 2022-11-08 | 腾讯科技(成都)有限公司 | 用于处理游戏中的举报信息的方法和设备 |
CN110188292B (zh) * | 2019-05-22 | 2021-06-22 | 北京创鑫旅程网络技术有限公司 | 一种目的地信息的展示方法及装置 |
CN112256810B (zh) * | 2019-07-21 | 2023-07-14 | 长沙智能驾驶研究院有限公司 | 智慧工地的工地地图更新方法、装置和计算机设备 |
CN110339554B (zh) * | 2019-07-22 | 2020-07-07 | 广州银汉科技有限公司 | 游戏地图镜像对称方法与系统 |
CN110597941B (zh) * | 2019-09-11 | 2023-12-29 | 广州力挚网络科技有限公司 | 一种地图显示方法与系统 |
CN110825828B (zh) * | 2019-09-26 | 2023-06-13 | 广州南方卫星导航仪器有限公司 | 一种电力线勘测中辅助点自动归属范围的方法及装置 |
CN110704057B (zh) * | 2019-10-09 | 2021-04-27 | 腾讯科技(深圳)有限公司 | 一种基于地图业务的业务处理方法及相关装置 |
CN110990502B (zh) * | 2019-11-12 | 2023-01-03 | 哈尔滨工程大学 | 一种电子海图位置点数据简化方法 |
KR102311360B1 (ko) * | 2019-11-25 | 2021-10-13 | (주) 한국인프라 | 3차원 모델링 파일 변환 시스템 |
CN111143502A (zh) * | 2019-12-30 | 2020-05-12 | 重庆同汇勘测规划有限公司 | 一种地图瓦片高效生成方法及装置 |
CN111208819B (zh) * | 2020-01-07 | 2023-06-06 | 上海高仙自动化科技发展有限公司 | 生成方法、装置、电子设备及存储介质 |
US20210224466A1 (en) * | 2020-01-21 | 2021-07-22 | TerraQuest, LLC | Methods and systems for geographic map generation and rendering and unique miles and routes navigation |
WO2021162963A1 (en) * | 2020-02-11 | 2021-08-19 | YISIA Games Ltd | Systems and methods for object management |
CN111310089B (zh) * | 2020-02-17 | 2023-04-28 | 自然资源部第三地理信息制图院 | 一种适应比例尺的矢量河网数据在线快速加载和渲染方法 |
CN113448340B (zh) * | 2020-03-27 | 2022-12-16 | 北京三快在线科技有限公司 | 一种无人机的路径规划方法、装置、无人机及存储介质 |
KR102199940B1 (ko) * | 2020-04-28 | 2021-01-07 | (주)제타럭스시스템 | 3d 엔진을 통한 모바일 3d 디지털 트윈의 3d 지도 구축 방법 |
CN111581233B (zh) * | 2020-05-07 | 2023-11-24 | 广东电网有限责任公司电力调度控制中心 | 电网设备矢量图形数据的实时切片方法及存储介质 |
CN111612918A (zh) * | 2020-05-14 | 2020-09-01 | 深圳中科慧据科技有限公司 | 地图资源可视化方法、装置、计算机设备和存储介质 |
JP2023527438A (ja) | 2020-05-29 | 2023-06-28 | グーグル エルエルシー | リアルタイム深度マップを用いたジオメトリ認識拡張現実効果 |
CN111617484B (zh) * | 2020-06-04 | 2023-09-05 | 珠海金山数字网络科技有限公司 | 一种地图处理的方法和装置 |
CN111595349A (zh) * | 2020-06-28 | 2020-08-28 | 浙江商汤科技开发有限公司 | 导航方法及装置、电子设备和存储介质 |
CN111858822A (zh) * | 2020-07-28 | 2020-10-30 | 自然资源部第一海洋研究所 | Gis地图的拼接图片显示方法和装置 |
CN112231426A (zh) * | 2020-10-13 | 2021-01-15 | 重庆紫光华山智安科技有限公司 | 一种基于矢量瓦片点数据的更新方法、系统、介质及终端 |
CN112221144B (zh) * | 2020-11-03 | 2024-03-15 | 网易(杭州)网络有限公司 | 三维场景寻路方法及装置、三维场景地图处理方法及装置 |
CN112069285B (zh) * | 2020-11-11 | 2021-01-22 | 湖北亿咖通科技有限公司 | 基于三维高精地图切片的地图生成方法、装置及电子设备 |
CN112489229A (zh) * | 2020-11-16 | 2021-03-12 | 北京邮电大学 | 基于Unity3D的楼层拆解方法及系统 |
CN112233217B (zh) * | 2020-12-18 | 2021-04-02 | 完美世界(北京)软件科技发展有限公司 | 一种虚拟场景的渲染方法和装置 |
CN113077475B (zh) * | 2021-03-17 | 2023-09-08 | 杭州海康机器人股份有限公司 | 视觉定位方法、装置、系统、移动机器人及存储介质 |
CN112800164A (zh) * | 2021-03-17 | 2021-05-14 | 统信软件技术有限公司 | 一种地图加载方法、装置、计算设备及可读存储介质 |
CN113010793A (zh) * | 2021-04-09 | 2021-06-22 | 阿波罗智联(北京)科技有限公司 | 地图数据处理的方法、装置、设备、存储介质及程序产品 |
CN113111202A (zh) * | 2021-04-30 | 2021-07-13 | 贵州大学 | 一种巡天数据的天图系统 |
CN113221044B (zh) * | 2021-06-01 | 2024-10-01 | 智道网联科技(北京)有限公司 | 三维电子地图的处理方法、装置及电子设备 |
CN113643441A (zh) * | 2021-07-06 | 2021-11-12 | 北京百度网讯科技有限公司 | 内容展现方法、装置、设备和存储介质 |
CN113506378B (zh) * | 2021-07-29 | 2023-03-17 | 和舆图(北京)科技有限公司 | 一种在mr设备上动态加载三维模型的方法 |
CN113570717B (zh) * | 2021-07-29 | 2024-04-09 | 的卢技术有限公司 | 一种用于unity的渲染地图方法、电子设备及可读存储介质 |
KR102557980B1 (ko) * | 2021-08-20 | 2023-07-21 | 한국국토정보공사 | 맵 어플리케이션을 활용한 지적기준점 관리 장치 및 방법 |
CN114022623B (zh) * | 2021-10-29 | 2025-03-07 | 武汉烽火信息集成技术有限公司 | 基于地图数据在Unity3D中绘制三维模型的方法及装置 |
CN114218338A (zh) * | 2021-11-04 | 2022-03-22 | 广州三七极耀网络科技有限公司 | 地图层级信息文件生成方法、装置、设备和存储介质 |
US12100306B2 (en) * | 2021-12-13 | 2024-09-24 | The Boeing Company | Efficient computer-storage of obstacle data for rendering in a map view |
CN114445520A (zh) * | 2022-01-29 | 2022-05-06 | 智道网联科技(北京)有限公司 | 车道线渲染方法、装置和计算机可读存储介质 |
CN114526723B (zh) * | 2022-02-14 | 2024-11-26 | 广州小鹏自动驾驶科技有限公司 | 道路地图构建方法、装置、电子设备及存储介质 |
CN114674340B (zh) * | 2022-03-21 | 2025-02-21 | 北京百度网讯科技有限公司 | 地图数据的处理方法、装置、电子设备和存储介质 |
CN114820960B (zh) * | 2022-04-18 | 2022-12-16 | 北京百度网讯科技有限公司 | 构建图谱的方法、装置、设备和介质 |
CN114969192B (zh) * | 2022-05-12 | 2023-03-17 | 北京骏德时空科技有限公司 | 基于数据管理的地图巡游方法、装置、设备和介质 |
CN114723869B (zh) * | 2022-05-25 | 2022-11-08 | 阿里云计算有限公司 | 影像处理方法以及装置 |
CN114820990B (zh) * | 2022-06-29 | 2022-09-20 | 浙江远算科技有限公司 | 一种基于数字孪生的流域防洪可视化方法及系统 |
CN115113963B (zh) * | 2022-06-29 | 2023-04-07 | 北京百度网讯科技有限公司 | 信息展示方法、装置、电子设备以及存储介质 |
US12246254B2 (en) | 2022-07-29 | 2025-03-11 | Niantic, Inc. | Maintaining object alignment in 3D map segments |
CN115619898B (zh) * | 2022-10-31 | 2023-10-17 | 广西发现软件技术有限公司 | 一种可自由定制与扩展的工程勘察制图方法及系统 |
CN116028747A (zh) * | 2023-02-28 | 2023-04-28 | 智道网联科技(北京)有限公司 | 地图数据的加载方法、装置及导航系统 |
CN116108098A (zh) * | 2023-03-14 | 2023-05-12 | 中科星图数字地球合肥有限公司 | 瓦片数据格式转换方法、装置、计算机设备和存储介质 |
CN116595808B (zh) * | 2023-07-17 | 2023-09-08 | 中国人民解放军国防科技大学 | 事件金字塔模型构建与多粒度时空可视化方法和装置 |
CN118229788B (zh) * | 2024-05-23 | 2024-07-23 | 北京山维科技股份有限公司 | 一种地理信息数据要素符号定位方法和装置 |
CN118521694B (zh) * | 2024-07-23 | 2024-10-22 | 北京地林伟业科技股份有限公司 | 百万级动态更新坐标点位的高效渲染方法和系统 |
CN118626581B (zh) * | 2024-08-15 | 2024-10-15 | 四川消安智能工程有限公司 | 基于gis的地图数据处理方法及信息融合系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103389104A (zh) * | 2013-07-17 | 2013-11-13 | 北京龙图通信息技术有限公司 | 一种与二维导航同步的三维方向性导航方法及其装置 |
CN103593861A (zh) * | 2013-11-21 | 2014-02-19 | 武大吉奥信息技术有限公司 | 一种面向2.5维地图服务的瓦片加载方法 |
US8665260B2 (en) * | 2009-04-16 | 2014-03-04 | Autodesk, Inc. | Multiscale three-dimensional navigation |
CN104933057A (zh) * | 2014-03-18 | 2015-09-23 | 北京图盟科技有限公司 | 一种地图服务提供方法及装置 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7119819B1 (en) * | 1999-04-06 | 2006-10-10 | Microsoft Corporation | Method and apparatus for supporting two-dimensional windows in a three-dimensional environment |
JP3717045B2 (ja) | 2000-01-19 | 2005-11-16 | 松下電器産業株式会社 | ナビゲーション装置 |
KR100412023B1 (ko) * | 2000-06-16 | 2003-12-24 | (주)픽쳐맵인터내셔날 | 전자지도에서의 위치정보를 이용한 광고 표시 방법 |
CN1702432A (zh) * | 2005-06-08 | 2005-11-30 | 武汉虹信通信技术有限责任公司 | 栅格电子地图动态显示处理方法 |
JP2007133489A (ja) * | 2005-11-08 | 2007-05-31 | Sony Corp | 仮想空間画像表示方法、装置、仮想空間画像表示プログラム及び記録媒体 |
CN101415018B (zh) * | 2007-10-17 | 2012-08-29 | 北京灵图软件技术有限公司 | 一种地理信息数据的传输方法和系统 |
CN101917481B (zh) * | 2010-08-19 | 2013-03-20 | 周寅 | 一种基于空间漫游位置的视频网络地图多级缓存的实现方法 |
CN103136950A (zh) * | 2011-12-05 | 2013-06-05 | 北京掌城科技有限公司 | 提供综合路况信息的方法 |
US8803920B2 (en) * | 2011-12-12 | 2014-08-12 | Google Inc. | Pre-fetching map tile data along a route |
US9324190B2 (en) * | 2012-02-24 | 2016-04-26 | Matterport, Inc. | Capturing and aligning three-dimensional scenes |
CN102752385B (zh) * | 2012-06-29 | 2015-07-22 | 广东大晋对接信息科技有限公司 | 一种跨平台全景3d展示方法及系统 |
US20140146394A1 (en) * | 2012-11-28 | 2014-05-29 | Nigel David Tout | Peripheral display for a near-eye display device |
US9224237B2 (en) * | 2013-09-27 | 2015-12-29 | Amazon Technologies, Inc. | Simulating three-dimensional views using planes of content |
US9996797B1 (en) * | 2013-10-31 | 2018-06-12 | Leap Motion, Inc. | Interactions with virtual objects for machine control |
CN104135715B (zh) * | 2014-06-10 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 一种位置服务的实现方法、装置,及系统 |
US9986060B2 (en) * | 2015-03-30 | 2018-05-29 | General Electric Company | Persistent caching of map imagery and data |
CN106296813B (zh) * | 2015-05-14 | 2018-11-13 | 上海市测绘院 | 三维静态地图生产方法 |
EP3264372A1 (en) * | 2016-06-30 | 2018-01-03 | Alcatel Lucent | Image processing device and method |
CN106408631B (zh) * | 2016-09-30 | 2019-07-30 | 厦门亿力吉奥信息科技有限公司 | 三维宏观展示方法及系统 |
CN106547624B (zh) * | 2016-11-04 | 2021-01-01 | 武汉斗鱼网络科技有限公司 | 基于Android的图片加载方法及装置 |
CN107016924B (zh) * | 2016-12-20 | 2020-04-07 | 阿里巴巴集团控股有限公司 | 虚拟地图中的瓦片地图生成方法、更新方法和装置 |
JP6734940B2 (ja) * | 2017-02-01 | 2020-08-05 | 株式会社日立製作所 | 三次元計測装置 |
GB201701877D0 (en) * | 2017-02-05 | 2017-03-22 | Hardie-Bick Anthony Richard | Generating Locomotion Data |
CN107423445B (zh) * | 2017-08-10 | 2018-10-30 | 腾讯科技(深圳)有限公司 | 一种地图数据处理方法、装置及存储介质 |
EP3814876B1 (en) * | 2018-10-03 | 2023-02-22 | Google LLC | Placement and manipulation of objects in augmented reality environment |
-
2017
- 2017-08-10 CN CN201710682652.1A patent/CN107423445B/zh active Active
-
2018
- 2018-06-08 JP JP2020506205A patent/JP6997290B2/ja active Active
- 2018-06-08 WO PCT/CN2018/090479 patent/WO2019029252A1/zh active Application Filing
- 2018-06-08 KR KR1020207005277A patent/KR102360660B1/ko active Active
-
2020
- 2020-01-23 US US16/751,068 patent/US11585675B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8665260B2 (en) * | 2009-04-16 | 2014-03-04 | Autodesk, Inc. | Multiscale three-dimensional navigation |
CN103389104A (zh) * | 2013-07-17 | 2013-11-13 | 北京龙图通信息技术有限公司 | 一种与二维导航同步的三维方向性导航方法及其装置 |
CN103593861A (zh) * | 2013-11-21 | 2014-02-19 | 武大吉奥信息技术有限公司 | 一种面向2.5维地图服务的瓦片加载方法 |
CN104933057A (zh) * | 2014-03-18 | 2015-09-23 | 北京图盟科技有限公司 | 一种地图服务提供方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
KR20200029033A (ko) | 2020-03-17 |
JP6997290B2 (ja) | 2022-01-17 |
US20200158529A1 (en) | 2020-05-21 |
JP2020530161A (ja) | 2020-10-15 |
KR102360660B1 (ko) | 2022-02-08 |
US11585675B2 (en) | 2023-02-21 |
CN107423445A (zh) | 2017-12-01 |
WO2019029252A1 (zh) | 2019-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107423445B (zh) | 一种地图数据处理方法、装置及存储介质 | |
JP4338645B2 (ja) | モバイル・ナビゲーション・ユニットのための高度3d視覚化システム及び方法 | |
US8849859B2 (en) | Hierarchical system and method for on-demand loading of data in a navigation system | |
KR101962394B1 (ko) | 맵 지형지물의 현저성-기반 발생 및 렌더링 | |
EP2428769B1 (en) | Generating a multi-layered geographic image and the use thereof | |
US9641755B2 (en) | Reimaging based on depthmap information | |
EP2697766B1 (en) | Integrating maps and street views | |
CN102117500B (zh) | 一种三维模型构建方法及系统 | |
KR20140100987A (ko) | 루트를 따른 맵 타일 데이터 사전-인출 | |
KR20150007324A (ko) | 비정적 3d 맵 뷰들 | |
CA2953656A1 (en) | A digital mapping system | |
EP2589933B1 (en) | Navigation device, method of predicting a visibility of a triangular face in an electronic map view | |
JP4511825B2 (ja) | 複数のイメージからマルチ分解能イメージを生成する方法 | |
JP7086180B2 (ja) | デジタルマップの動的リスタイリング | |
CN119494901A (zh) | 显示方法、可读介质和终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240102 Address after: 518057 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 floors Patentee after: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. Patentee after: TENCENT CLOUD COMPUTING (BEIJING) Co.,Ltd. Address before: 518000 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 Floors Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. |