在二维平面地图上叠加三维实景地图的方法与流程

文档序号:19073096发布日期:2019-11-08 20:58阅读:1381来源:国知局
在二维平面地图上叠加三维实景地图的方法与流程

本发明涉及三维地图领域,更具体地,涉及一种在二维平面地图上叠加三维实景地图的方法。



背景技术:

目前从二维平面地图进入三维地图的方式是基于文字描述搜索形式点击按钮切换到三维地图中,该方式的操作原理是基于三维实景地图的区域信息,行政分类等信息提炼出简明扼要的名称,以此建立与三维实景地图的内在联系,在实际应用中通过该名称文字描述的搜索定位三维实景地图进行加载切换。

上述的方案存在以下缺陷:1.在二维地图上缺乏对三维实景地图空间信息的展示(比如:实景地图的区域的gps位置,大小和边界信息);2.由二维平面地图进入三维实景地图的交互方式单一(文字描述性按钮点击进入);3.进入三维实景地图后缺乏在二维平面地图上补全三维虚拟漫游观察视点的位置信息和姿态信息。



技术实现要素:

有鉴于此,本发明提供一种在二维平面地图上叠加三维实景地图的方法,该方法操作简单,加强了三维实景地图与二维实景地图的空间联系性。

为解决上述技术问题,本发明提供一种在二维平面地图上叠加三维实景地图的方法,包括以下步骤:s1、获取三维实景地图边界点的数据;s2、将获取的所述三维实景地图边界点的数据转换为二维投影坐标系数据;s3、将所述二维投影坐标系数据转换为二维平面地图的像素坐标系数据,并按顺序将所述像素坐标系数据绘制成边界线,生成区域平面叠加到二维平面地图。

根据本发明实施例的在二维平面地图上叠加三维实景地图的方法,通过将三维实景地图的区域相关数据信息叠加到二维平面地图上,可以加强三维实景地图与二维平面地图之间的空间联系性,该操作方法简单可行,降低了操作复杂度,展示了三维实景地图的空间分布信息。

根据本发明的一些实施例,步骤s1包括:s11、通过手动标记或凸包算法采集并记录所述三维实景地图边界点的笛卡尔坐标系数据;s12、通过转换算法将采集到的所述三维实景地图边界点的笛卡尔坐标系数据转换为通用坐标系wgs-84坐标系数据。

根据本发明的一些实施例,步骤s1还包括:s13、将所述三维实景地图边界点的wgs-84坐标系数据转换为gcj-02的火星坐标系数据。

根据本发明的一些实施例,在步骤s2中,将获取的所述三维实景地图边界点的数据通过投影算法转换为二维投影坐标系数据。

根据本发明的一些实施例,步骤s3包括:s31、将所述二维投影坐标系数据转换至二维平面地图的像素坐标系下;s32、将所述像素坐标系的边界点数据集合按顺时针方向进行排序,并按照首尾相连的关系绘制所述边界线;s33、基于delaunay三角剖分和区域生长相结合的三角网格重构的方法生成区域平面叠加到二维平面地图上。

根据本发明的一些实施例,所述三维实景地图边界点围绕的区域形成为半透明颜色渐变区域。

根据本发明的一些实施例,所述三维实景地图边界点围绕的区域叠加有该区域的附加信息。

根据本发明的一些实施例,所述方法还包括:s4、接收第一命令,所述三维实景地图边界点围绕的区域通过颜色或文字提示方式展示该区域的交互状态。

根据本发明的一些实施例,所述方法还包括:s5、接收第二命令,所述二维平面地图在移动或缩放时,叠加在所述二维平面地图上的三维实景地图对应的区域与所述二维平面地图同步移动或缩放。

根据本发明的一些实施例,所述方法还包括:s6、接收第三命令,所述二维平面地图切换至对应的三维实景地图。

根据本发明的一些实施例,所述第三命令为当鼠标在所述二维平面地图上时,单击或者双击所述鼠标。

附图说明

图1为本发明实施例的在二维平面地图上叠加三维实景地图的方法的流程图;

图2为本发明实施例的在二维平面地图上叠加三维实景地图的方法中对三维实景地图边界信息采集的示意图;

图3为本发明实施例的在二维平面地图上叠加三维实景地图的方法中将数据转换为二维平面投影坐标系数据的示意图;

图4为本发明实施例的在二维平面地图上叠加三维实景地图的方法中对三维实景地图边界点数据重构示意图;

图5为本发明实施例的在二维平面地图上叠加三维实景地图的方法中将三维实景地图边界信息叠加到二维平面地图的效果图;

图6为三维实景地图显示区域随二维平面地图自由缩放的效果图;

图7a为鼠标在三维实景地图显示区域外时该区域的颜色示意图;图7b为鼠标在三维实景地图显示区域内时该区域的颜色示意图;

图8为观察视点在二维平面地图的空间信息和姿态信息示意图;

图9为本发明实施例的电子设备的示意图。

附图标记:

电子设备300;

存储器310;操作系统311;应用程序312;

处理器320;网络接口330;输入设备340;硬盘350;显示设备360。

具体实施方式

下面将结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

下面首先结合附图具体描述根据本发明实施例的在二维平面地图上叠加三维实景地图的方法。

根据本发明实施例的在二维平面地图上叠加三维实景地图的方法包括以下步骤:

s1、获取三维实景地图边界点的数据。

s2、将获取的所述三维实景地图边界点的数据转换为二维投影坐标系数据。

s3、将所述二维投影坐标系数据转换为二维平面地图的像素坐标系数据,并按顺序将所述像素坐标系数据绘制成边界线,生成区域平面叠加到二维平面地图。

换言之,根据本发明实施例的在二维平面地图上叠加三维实景地图的方法主要包括以下几个步骤:首先,根据需要选择合适的三维实景地图,然后对选择的三维实景地图的区域边界点进行数据处理,将边界点数据转换为二维投影坐标系数据,接着,再将该二维投影坐标系数据转换为二维平面地图的像素坐标系数据,将转换后的像素坐标系数据再按照顺序绘制边界线,即可生成一个区域平面,实现将三维实景地区的区域相关数据信息叠加到二维平面地图上,以此来加强三维实景地图和二维平面地图的空间联系性。

由此,根据本发明实施例的在二维平面地图上叠加三维实景地图的方法,通过将三维实景地图的区域相关数据信息叠加到二维平面地图上,可以加强三维实景地图与二维平面地图之间的空间联系性,该操作方法简单可行,降低了操作复杂度,展示了三维实景地图的空间分布信息。

根据本发明的一个实施例,步骤s1包括:

s11、通过手动标记或凸包算法采集并记录所述三维实景地图边界点的笛卡尔坐标系数据。

s12、通过转换算法将采集到的所述三维实景地图边界点的笛卡尔坐标系数据转换为通用坐标系wgs-84坐标系数据。

进一步地,步骤s1还包括:

s13、将所述三维实景地图边界点的wgs-84坐标系数据转换为gcj-02的火星坐标系数据。

具体地,如图2所示,可以通过手动标记或者凸包算法采集并记录三维实景地图边界点的笛卡尔世界坐标系信息,然后通过转换算法将采集到的三维实景地图边界点的笛卡尔世界坐标系数据转化为gps全球通用坐标系wgs-84坐标系数据;

考虑到国内地图厂商采用在国际标准坐标wgs-84上进行偏移加密的gcj-02的火星坐标系,所以为了三维实景地图数据精准与基于高德地图的二维平面地图数据,或者基于百度地图的二维平面地图数据进行融合,需要将三维实景地图边界点的wgs-84数据转化gcj-02的火星坐标系。

在本发明的一些具体实施方式中,在步骤s2中,将获取的所述三维实景地图边界点的数据通过投影算法转换为二维投影坐标系数据。

需要说明的是,wgs-84坐标系是以地球质心为原点的椭球体上的坐标系,因而gcj-02的火星坐标系也是以地球质心为原点的椭球体上的坐标系。所以为了在二维平面地图绘制三维实景地图边界点数据还需要将该数据通过通用墨卡托等投影算法转化为二维平面投影坐标系数据(如图3所示)。

根据本发明的一个实施例,步骤s3包括:

s31、将所述二维投影坐标系数据转换至二维平面地图的像素坐标系下。

s32、将所述像素坐标系的边界点数据集合按顺时针方向进行排序,并按照首尾相连的关系绘制所述边界线。

s33、基于delaunay三角剖分和区域生长相结合的三角网格重构的方法生成区域平面叠加到二维平面地图上。

换句话说,步骤s3通过将三维实景地图边界点的平面投影坐标系数据转化为二维平面地图所在的像素坐标系下,再将边界点数据集合按顺时针方向进行排序,然后按照俩俩首尾相连的关系绘制边界线(如图4所示),再基于delaunay三角剖分和区域生长相结合的三角网格重构的方法构成一个区域平面叠加到二维平面地图上(如图5所示)。

经过上述步骤就可以三维实景地图的区域相关数据信息叠加到二维平面地图上,以此来加强三维实景地图和二维平面地图的空间联系性。

在本发明的一些具体实施方式中,所述三维实景地图边界点围绕的区域形成为半透明颜色渐变区域。

具体地,如图5所示,为了将三维实景地图区域和二维地图区域区分开,可以在三维实景地图表示区域增加半透明颜色渐变效果或其他易于区分的方式与底层的二维平面地图做区分。

另外,参照图5所示,根据本发明的一个实施例,所述三维实景地图边界点围绕的区域叠加有该区域的附加信息。也就是说,还可以在三维实景地图上叠加该区域的附加信息(包括区域名称、地标等)加以说明区域功能或者区分不同的区域。

进一步地,当在二维平面地图上叠加三维实景地图后,还可以根据指令对叠加有三维实景地图的二维平面地图进行移动或缩放。具体地,在本发明的一些具体实施方式中,该操作方法还包括:

s5、接收第二命令,所述二维平面地图在移动或缩放时,叠加在所述二维平面地图上的三维实景地图对应的区域与所述二维平面地图同步移动或缩放。

如图6所示,当用户在界面上对二维平面地图进行移动、缩放二维平面地图层级的时候,叠加在二维平面地图上的三维实景地图表示区域可以跟随二维平面地图的缩放、移动进行相应的缩放、移动,实时让三维实景地图所表示的区域一直附加在正确的二维平面地图对应区域上,让用户可以直观的看到三维实景地图在二维平面地图上的位置,大小,区域边界等信息。

可选地,根据本发明的一个实施例,该操作方法还可以包括:

s4、接收第一命令,所述三维实景地图边界点围绕的区域通过颜色或文字提示方式展示该区域的交互状态。

也就是说,在接收到用户在操作的界面上控制鼠标进入三维实景地图所表示的区域时,可以通过颜色或者文字提示等变化方式直观的展示该区域的交互状态;当鼠标退出该区域时则恢复默认状态形式。参照图7a和7b,当鼠标未进入三维实景地图显示区域时,该区域的颜色如图7a所示,当鼠标进入三维实景地图显示区域时,该区域的颜色如图7b所示。

在本发明的一些具体实施方式中,用户可以通过指令控制二维平面地图切换至三维实景地图,即该操作还可以包括:

s6、接收第三命令,所述二维平面地图切换至对应的三维实景地图。其中,所述第三命令为当鼠标在所述二维平面地图上时,单击或者双击所述鼠标。

换句话说,当用户控制鼠标在二维平面地图上进入三维实景地图区域时,通过鼠标单击或者双击操作等交互形式的即可由当前二维平面地图切换到三维实景地图中。

另外,当进入三维实景地图后,为了增强漫游观察视点在二维平面地图的空间信息和姿态信息,可以通过与上述相类似的算法获取到漫游观察视点空间信息和姿态信息的的二维平面投影坐标,再基于delaunay三角剖分和区域生长相结合的三角网格重构的方法构成一个观察视点的视锥三角形叠加到二维平面地图上(如图8所示)。

总而言之,根据本发明实施例的在二维平面地图上叠加三维实景地图的方法,可以根据当前二维平面地图可视区域内实时的呈现三维实景地图搜索结果,减低操作复杂度,展示了三维实景地图的空间分布信息;通过三维实景地图在二维平面地图上的叠加区域作为平面地图与实景地图的切换入口,省去额外交互操作,同时通过鼠标在叠加区域的悬浮、点击操作相应的改变该区域的颜色状态,直观的表达用户当前操作的状态;在二维平面地图中实时标识了三维实景地图观察视点的方位信息,增强用户的方位感知能力。

此外,本发明还提供一种计算机存储介质,所述计算机存储介质包括一条或多条计算机指令,所述一条或多条计算机指令在执行时实现上述任一所述的在二维平面地图上叠加三维实景地图的方法。

也就是说,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器运行时,使得所述处理器执行上述任一所述的在二维平面地图上叠加三维实景地图的方法。

如图9所示,本发明实施例提供了一种电子设备300,包括存储器310和处理器320,所述存储器310用于存储一条或多条计算机指令,所述处理器320用于调用并执行所述一条或多条计算机指令,从而实现上述任一所述的方法。

也就是说,电子设备300包括:处理器320和存储器310,在所述存储器310中存储有计算机程序指令,其中,在所述计算机程序指令被所述处理器运行时,使得所述处理器320执行上述任一所述的方法。

进一步地,如图9所示,电子设备300还包括网络接口330、输入设备340、硬盘350、和显示设备360。

上述各个接口和设备之间可以通过总线架构互连。总线架构可以是可以包括任意数量的互联的总线和桥。具体由处理器320代表的一个或者多个中央处理器(cpu),以及由存储器310代表的一个或者多个存储器的各种电路连接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其它电路连接在一起。可以理解,总线架构用于实现这些组件之间的连接通信。总线架构除包括数据总线之外,还包括电源总线、控制总线和状态信号总线,这些都是本领域所公知的,因此本文不再对其进行详细描述。

所述网络接口330,可以连接至网络(如因特网、局域网等),从网络中获取相关数据,并可以保存在硬盘350中。

所述输入设备340,可以接收操作人员输入的各种指令,并发送给处理器320以供执行。所述输入设备340可以包括键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。

所述显示设备360,可以将处理器320执行指令获得的结果进行显示。

所述存储器310,用于存储操作系统运行所必须的程序和数据,以及处理器320计算过程中的中间结果等数据。

可以理解,本发明实施例中的存储器310可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)或闪存。易失性存储器可以是随机存取存储器(ram),其用作外部高速缓存。本文描述的装置和方法的存储器310旨在包括但不限于这些和任意其它适合类型的存储器。

在一些实施方式中,存储器310存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统311和应用程序312。

其中,操作系统311,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序312,包含各种应用程序,例如浏览器(browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序312中。

本发明上述实施例揭示的方法可以应用于处理器320中,或者由处理器320实现。处理器320可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器320中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器320可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器310,处理器320读取存储器310中的信息,结合其硬件完成上述方法的步骤。

可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(asic)、数字信号处理器dsp)、数字信号处理设备(dspd)、可编程逻辑设备(pld)、现场可编程门阵列(fpga)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。

对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。

具体地,处理器320还用于读取所述计算机程序,执行上述任一所述的方法。

在本申请所提供的几个实施例中,应该理解到,所揭露方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述收发方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1