首页> 中国专利> 街道视图和地球视图之间的混合

街道视图和地球视图之间的混合

摘要

在一个方面中,(一个或多个)计算设备可以为地理位置的三维(3D)模型300确定多个片段430、440、450和460。多个片段中的每个片段可对应于混合图像的像素并且每个片段具有来自3D模型的片段颜色。一个或多个计算设备可至少部分基于与3D模型相关联的纬度信息、经度信息和高度信息来为每个片段确定地理空间位置数据。对于多个片段中的每个片段,一个或多个计算设备可至少部分基于地理空间位置数据来识别像素颜色和图像,基于虚拟相机410的位置和取向412的至少一者来确定混合比率,并且至少基于混合比率、像素颜色和片段颜色来生成混合图像。

著录项

  • 公开/公告号CN106462997A

    专利类型发明专利

  • 公开/公告日2017-02-22

    原文格式PDF

  • 申请/专利权人 谷歌公司;

    申请/专利号CN201580032013.X

  • 发明设计人 S.E.迪拉德;E.H.帕克;M.C.琼斯;

    申请日2015-07-08

  • 分类号G06T15/50;G06T17/05;

  • 代理机构北京市柳沈律师事务所;

  • 代理人邵亚丽

  • 地址 美国加利福尼亚州

  • 入库时间 2023-06-19 01:44:06

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-09-10

    授权

    授权

  • 2018-03-09

    著录事项变更 IPC(主分类):G06T15/50 变更前: 变更后: 申请日:20150708

    著录事项变更

  • 2017-03-22

    实质审查的生效 IPC(主分类):G06T15/50 申请日:20150708

    实质审查的生效

  • 2017-02-22

    公开

    公开

说明书

相关申请的交叉引用

本申请是2014年7月17日递交的美国专利申请14/333,678号的延续案,特此通过引入将该美国专利申请的公开内容并入在此。

背景技术

地图应用可显示各种地理区域的街道级图像和鸟瞰图像来供用户查看。除了查看这些图像以外,用户还可能够在街道级图像和鸟瞰图像之间切换(或者反过来),或者查看一系列连贯的或不连贯的街道级图像。然而,地图应用使得用户难以在查看街道级图像时维持空间情境和方向的感觉。例如,当相继显示相隔相对较大距离的两个或更多个街道级图像时,可能使用户失去对地理区域的空间意识,感到迷惑。

发明内容

在一个方面中,一种用于生成混合图像的方法包括由一个或多个计算设备为地理位置的三维(3D)模型确定多个片段,其中多个片段中的每个片段对应于混合图像的像素并且每个片段具有来自3D模型的片段颜色。另外,该方法包括由一个或多个计算设备至少部分基于与3D模型相关联的纬度信息、经度信息和高度信息来为每个片段确定地理空间位置数据,并且对于多个片段中的每个片段,由一个或多个计算设备至少部分基于地理空间位置数据来识别像素颜色和图像。另外,该方法包括由一个或多个计算设备基于虚拟相机的位置和取向的至少一者来确定混合比率,并且由一个或多个计算设备至少基于混合比率、像素颜色和片段颜色来生成混合图像。

该方法是基于旨在通过改善用户在地图应用内的空间意识来使得在地图应用内导航的技术任务对于用户更容易的技术考虑的。该方法通过如下方式实现此目标:提供一种技术方式来在用户在地图应用中对于一个或多个物体的视图在街道级视图和鸟瞰视图之间来回移动时减小由地图应用显示的这一个或多个物体的颜色的变化。

在另一方面中,一种系统包括存储器和一个或多个计算设备,该一个或多个计算设备的每一者具有一个或多个处理器,该一个或多个计算设备耦合到存储器。一个或多个计算设备被配置为为地理位置的三维(3D)模型确定多个片段。多个片段中的每个片段对应于混合图像的像素并且每个片段具有来自3D模型的片段颜色。另外,一个或多个计算设备被配置为至少部分基于与3D模型相关联的纬度信息、经度信息和高度信息来为每个片段确定地理空间位置数据。对于多个片段中的每个片段,一个或多个计算设备被配置为至少部分基于地理空间位置数据来识别像素颜色和图像,基于虚拟相机的位置和取向的至少一者来确定混合比率,并且至少基于混合比率、像素颜色和片段颜色来生成混合图像。

该系统是基于旨在通过改善用户在地图应用内的空间意识来使得在地图应用内导航的技术任务对于用户更容易的技术考虑的。该系统通过在用户在地图应用中对于一个或多个物体的视图在街道级视图和鸟瞰视图之间来回移动时最小化由地图应用显示的这一个或多个物体的颜色的变化来实现此目标。

在又一方面中,一种非暂态有形计算机可读介质,其上存储有指令,这些指令当被一个或多个计算设备执行时执行一种用于生成混合图像的方法,该方法包括为地理位置的三维(3D)模型确定多个片段,其中多个片段中的每个片段对应于混合图像的像素并且每个片段具有来自3D模型的片段颜色。另外,该方法包括至少部分基于与3D模型相关联的纬度信息、经度信息和高度信息来为每个片段确定地理空间位置数据,并且对于多个片段中的每个片段,至少部分基于地理空间位置数据来识别像素颜色和图像。另外,该方法包括基于虚拟相机的位置和取向的至少一者来确定混合比率,并且至少基于混合比率、像素颜色和片段颜色来生成混合图像。

附图说明

图1是根据本公开的一些方面的系统的功能图。

图2是根据本公开的一些方面的示例系统的直观图。

图3是根据本公开的一些方面的在三维模型中从一个图像到第二图像的示例转变。

图4是根据本公开的一些方面的虚拟相机、图像和三维模型之间的关系的示例。

图5A是根据本公开的一些方面的与图像相关联的像素的示例图示。

图5B是根据本公开的一些方面的基于虚拟相机的位置和取向的像素投影的示例图示。

图6是根据本公开的一些方面的像素投影和混合的示例图示。

图7是根据本公开的一些方面的从虚拟相机的另一位置和取向的像素投影和混合的示例图示。

图8是根据本公开的一些方面的示例流程图。

具体实施方式

概述

本公开针对的是同一区域的街道级图像和3D模型之间的转变。转变可包括从一个位置的街道级影像变化到3D模型视图,然后变化到第二位置的街道级影像。例如,用户可能希望在客户端计算设备上查看客户端计算设备(例如,智能电话、平板、计算机)上的一系列街道级图像,其中每一者可相隔各种距离。为了维持空间情境和方向的感觉,客户端计算设备可经由向两个图像提供空间情境的3D模型的中间鸟瞰视图将一个街道级图像的显示转变到另一街道级图像。在此,用户具有虚拟相机向上移离一个街道级图像进入到鸟瞰视图,随后向下移入到第二街道级图像中的感觉,就好像用户在这些图像之间“跳跃”了一样。

作为一个示例,街道级图像和3D模型可由一个或多个服务器计算设备提供给客户端。街道级图像可以是由处于与地面大体垂直的角度的相机捕捉的地理物体、人和/或物体的图像。3D模型可包括模型内的特征的诸如纹理、形状、颜色等等之类的信息。客户端计算设备可从一个或多个服务器计算设备预取3D模型和关联的信息。

为了创建两个街道级图像之间的转变,对于虚拟相机的一系列位置,每个街道级图像可与3D模型混合以形成混合图像。当被串在一起时,不同的混合图像可作为两个街道级图像之间的转变的动画被显示或被提供来在客户端计算设备上显示。

对于虚拟相机的给定位置,为了将街道级图像与描绘的区域的3D模型相混合,3D模型可被栅格化成个体片段。每个片段可具有从3D模型得出的片段颜色。另外,每个片段可对应于客户端计算设备的显示器上的像素。利用客户端计算设备的可编程图形处理单元(graphics processing unit,GPU),可以为每个片段确定地理空间位置数据(纬度、经度、高度)。在此,地理空间位置数据可用于识别街道级图像从虚拟相机的给定位置投影到每个片段上的特定颜色。一旦识别了各个颜色,客户端计算设备随后就可以把从图像投影的这些颜色与来自3D模型的关联片段颜色相混合。本公开中对“像素”的任何提及指的是图像的像素,例如街道级图像的像素。另外,本公开中对“片段”的任何提及指的3D模型的片段。

对于虚拟相机的每个给定位置,可确定混合比率。每个混合比率可基于在3D模型内虚拟相机相对于图像的位置。混合比率可表示与相应片段的颜色相比可以有多少从图像得到的颜色。例如,如果虚拟相机的位置和街道级图像是一致的,则片段的颜色可完全得自街道级图像。随着虚拟相机的位置移离图像,混合比率可被朝着3D模型来调整。在另一示例中,混合比率可进一步取决于从图像到片段上的颜色投影的失真。例如,如果虚拟相机的位置、片段和图像使得投影高度失真,则混合比率可被调整为增大关联片段的颜色。

混合比率随后被用于混合与街道级图像和3D模型的片段相对应的颜色以便为虚拟相机的每个给定位置生成混合图像。在此,可利用混合比率为每个片段赋予颜色以便生成混合图像。再一次,每个混合图像对应于虚拟相机的一不同位置。最终混合图像可作为动画随着虚拟相机的位置被连串地显示在客户端计算设备上。

上述特征在从一个街道级图像动画到另一街道级图像时通过显示两个图像周围的区域的中间鸟瞰视图向用户提供了空间情境的感觉。另外,该技术基于3D鸟瞰模型以及地理空间位置和几何数据减小了街道级视图和鸟瞰视图之间的转变(以及反过来)的视觉失真。该方法从而使得在地图应用内导航的技术任务对于用户更容易。另一个优点是该技术可在客户端计算设备上实现。

示例系统

图1和图2图示了本文公开的一些方面可在其中实现的一个可能系统100。在图1中,系统100包括客户端计算设备110、130和160。如图所示,一个或多个客户端计算设备110可包含一个或多个处理器112、存储器114、显示器120和通常存在于通用计算设备中的其他组件。

虽然图1将处理器112和存储器114的每一者功能性地表示为一个或多个客户端计算设备110内的单个块,其中客户端计算设备110也被表示为单个块,但该系统可包括并且本文描述的方法可涉及多个处理器、存储器和设备,这些处理器、存储器和设备可以被或不被收纳在同一物理外壳内。例如,下文描述为涉及单个组件(例如,一个或多个处理器112)的各种示例和方法可涉及多个组件(例如,作为并行或分布式实现方式的一部分分布在计算设备、计算机、“机架”等等的网络上的多个计算设备;另外,随着负载在计算设备之间转移,实施例执行的各种功能可由不同的计算设备在不同时间执行)。类似地,下文描述为涉及不同组件(例如,客户端计算设备110、130和160)的各种示例和方法可涉及单个组件(例如,取代客户端计算设备130执行下面描述的判定,客户端计算设备130可将相关数据发送到一个或多个客户端计算设备110以便处理并且接收判定的结果以便进一步处理或显示)。

一个或多个客户端计算设备110的存储器114可存储一个或多个处理器112可访问的信息,包括可被(一个或多个)处理器执行的指令116。存储器114也可包括可被一个或多个处理器112检索、操纵或存储的数据118。存储器114和本文描述的其他存储器可以是能够存储相关处理器可访问的信息的任何类型的存储装置,例如硬盘驱动器、固态驱动器、存储卡、RAM、ROM、DVD、可写存储器或只读存储器。此外,存储器可包括分布式存储系统,其中,例如数据118这样的数据被存储在多个不同的存储设备上,这些存储设备可物理上位于相同或不同的地理位置。

指令116可以是要被一个或多个处理器112或其他计算设备执行的任何指令集合。在此,术语“指令”、“应用”、“步骤”和“程序”在本文中可被互换使用。指令可以目标代码格式来存储以供处理器立即处理,或者以另一种计算设备语言来存储,包括根据需要解释或预先编译的独立源代码模块的集合或脚本。指令的功能、方法和例程在下文更详细说明。一个或多个处理器112可各自是任何传统的处理器,例如市售的中央处理单元(centralprocessing unit,“CPU”)或图形处理单元(graphics processing unit,“GPU”)。可替换地,处理器可以是专用组件,例如专用集成电路(application-specific integratedcircuit,“ASIC”)、现场可编程门阵列(field programmable gate array,“FPGA”)或者其他基于硬件的处理器。

数据118可被一个或多个客户端计算设备110根据指令116进行检索、存储或修改。例如,虽然本文描述的主题不受任何特定数据结构的限制,但数据可被存储在计算机寄存器中,存储在诸如具有许多不同的字段和记录的表格之类的关系数据库中,或者存储在XML文档中。数据也可被格式化为任何计算设备可读格式,例如但不限于二进制值、ASCII或Unicode。另外,数据可包括足以识别相关信息的任何信息,例如数字、描述性文本、专有代码、指针、对存储在其他存储器中(例如存储在其他网络位置)的数据的引用或者被函数用来计算相关数据的信息。如下文对于图3-图6更详细论述的,数据118可例如至少包括逐转弯方向指引(turn-by-turn directions)、路段、路标点、与各种路段相关联的全景图像、过滤参数,等等。

显示器120和本文描述的其他显示器可以是任何类型的显示器,例如具有屏幕的监视器、触摸屏、投影仪或者电视。一个或多个计算设备110的显示器120可经由图形用户界面(graphical user interface,“GUI”)或其他类型的用户界面向用户电子地显示信息。例如,如下文将要论述的,显示器120可电子地显示web浏览器,包括具有与路段相对应的两个地理位置之间的逐转弯方向指引和路标点的地图界面。

此外,客户端计算设备110、130和160可以在网络170的一个节点处并且能够直接和间接地与网络170的其他节点通信,例如一个或多个服务器计算设备140和存储系统150。虽然在图1中只描绘了几个计算设备,但典型系统可包括许多连接的计算设备,其中每个不同的计算设备在网络170的不同节点处。网络170和本文描述的居间节点可利用各种协议和系统来互连,使得网络可以是因特网、万维网、特定内联网、广域网或本地网络的一部分。网络可利用标准通信协议,例如以太网、Wi-Fi和HTTP,一个或多个公司专有的协议,以及这些的各种组合。虽然当如上所述发送或接收信息时获得某些优点,但本文描述的主题的其他方面不限于信息的任何特定传送方式。

作为示例,一个或多个服务器计算设备140可以是能够经由网络170与一个或多个客户端计算设备110通信的web服务器。如下文对于图2更详细论述的,客户端计算设备110、130和160可以是客户端计算设备或其他用户设备,并且一个或多个服务器计算设备140可利用网络170提供用于显示的信息以发送并呈现信息给客户端计算设备110、130和160的用户。

作为另一示例,存储系统150可存储各种图像。例如,图像可以是街道级全景图像、照片、图片,等等。街道级图像的示例是由处于与地面大体垂直的角度的相机捕捉的地理物体、人和/或物体的图像,或者其中相机被定位在地平面处或地平面附近。从而,街道级图像可表示各种地理物体,例如建筑物、人行道、街道、车辆、人、街灯、指示牌、广告、树木、雕塑、水体、店面、地标,等等。

存储系统150中存储的图像中的一些也可与指示图像的取向的信息相关联。例如,如果街道级图像是典型照片,则取向可简单地是相机角度。如果街道级图像是360°全景图像,例如以与图像相关联的地理位置为中心的360°全景,则取向可指示出图像的与从处于与地面直接平行的角度的相机位置向正北看相对应的那个部分。另外,上述的图像也可包括元数据,元数据可包括图像的地理位置(例如,GPS坐标)、一天中的时间或一年中的时间、设备的取向(例如,角度、俯仰、滚转和/或罗经点)、加速度计信息、GPS位置的精确度、GPS位置统计数据(例如,城市与农村与荒野),等等。

存储系统150也可存储各种地理区域的3D模型。例如,3D模型可以是特定地理区域的由计算机生成的数学表示。3D模型可经由3D渲染被提供来显示为二维图像,或者可用于计算机仿真中。3D模型也可经由3D建模软件来自动地或者手动地生成。另外,3D模型可展现出被建模的特征的各种纹理、形状、颜色等等。

存储系统150还可存储与3D模型及其片段相关联的地理空间位置。地理空间位置数据可用于确定3D模型的哪些片段对应于街道级图像的哪些像素。地理空间位置数据至少包括与某一地理位置的3D模型相对应的纬度、经度和高度。

与存储器114一样,存储系统150可以是能够存储一个或多个服务器计算设备140可访问的信息的任何类型的计算机化存储装置,例如硬盘驱动器、存储卡、ROM、RAM、DVD、CD-ROM、写-电缆(write-cable)和只读存储器。另外,存储系统150可包括分布式存储系统,其中数据被存储在可物理上位于相同或不同地理位置的多个不同存储设备上。存储系统150可如图1所示经由网络170连接到客户端计算设备,和/或可直接连接到或被包含到任何客户端计算设备,例如110、130和160(未示出)。在此,可从存储系统150检索出存储在存储器114中的数据118。

一个或多个客户端计算设备110可以是打算供用户216(图2中示出)使用的个人计算设备210,例如膝上型计算机。个人计算设备210可具有通常联系个人计算设备使用的所有组件,例如CPU或GPU、存储数据和指令的存储器、诸如显示器212之类的显示器(例如,具有屏幕的监视器、触摸屏、投影仪、电视或者可操作来显示信息的其他设备)以及用户输入设备214(例如,鼠标、键盘、触摸屏、麦克风等等)。此外,个人计算设备210也可包括用于确定其位置和取向的组件(未示出)。例如,这些组件可包括GPS接收器来确定设备的纬度、经度和/或高度,以及包括加速度计、陀螺仪或其他类似设备。

在另一示例中,客户端计算设备130可包括可穿戴计算设备230,例如打算供用户232使用的头戴式计算系统,或者计算手镯、计算戒指、计算手表,等等。在另一示例中,客户端计算设备160可包括打算供用户262使用并且能够通过诸如因特网之类的网络与服务器无线地交换数据的移动计算设备260。仅作为示例,移动计算设备260可以是移动电话或者诸如具备无线能力的PDA、平板PC或上网本之类的能够经由互联网获得信息的设备。

客户端计算设备可被配置为结合操作系统来操作。在此,在本文描述的操作期间执行的一些指令可由操作系统提供,而其他指令可由安装在设备上的应用提供。图1和图2所示的客户端计算设备110、130和160和根据本文描述的系统和方法的其他计算设备可包括能够处理指令并且向和从人类和/或其他计算机传送数据的其他设备,其中其他计算机包括缺乏本地存储能力的网络计算机和用于电视的机顶盒。

示例方法

除了上文描述和附图中图示的操作以外,现在还将描述各种操作。以下操作不是必须要按下文描述的确切顺序执行。更确切地说,可按不同顺序处理或同时处理各种步骤,并且也可添加或省略步骤。

图3图示了从第一街道级图像经由3D模型300到第二街道级图像的示例转变。例如,3D模型300可包括至少两个不同区域302和310。区域302和310之间的间隙364表示这两个位置可相隔某个距离,例如一个或多个街区、一英里或多英里。间隙364可以是任何大小的。例如,3D模型可包含整个星球,例如纽约的图像和日本的图像之间的转变。如图所示,区域302可包括建筑物312、314、316和318。另外,区域310可包括建筑物320、322、324、326、328和330。区域302和310也可包括许多公园和野餐区域,如图所示。

3D模型300内的位置可与多个图像例如街道级图像相关联。这些图像当被用户经由诸如个人计算设备210、可穿戴计算设备230或移动计算设备260之类的客户端计算设备请求时可用于显示。例如,用户可请求从区域302内的位置332查看一个或多个图像。与位置332相关联的图像可以是以大体上圆顶形或球形的配置拼接在一起的多个街道级图像,例如全景图像。在此,用户可能够通过旋转360度来从位置332无缝地查看所有街道级图像。类似地,多个街道级图像也可被以大体上圆顶形的配置拼接在一起以向用户提供位置342处的360度视图。

在一个实例中,用户可请求从一个街道级图像转变到某个距离以外的另一街道级图像。仅作为示例,街道级图像340可被提供来在客户端计算设备上显示。从位置332,街道级图像340可捕捉建筑物316的一些部分和建筑物318的全部。随后,用户可请求从街道级图像340转变到另一街道级图像。下一街道级图像可在同一区域内,或者可在不同区域中。例如,可生成从街道级图像340到区域310中的位置342处的街道级图像350的转变。

为了显示从一个街道级图像到第二街道级图像的转变,一个或多个计算设备可渲染3D模型的中间鸟瞰视图以向查看转变的用户赋予该用户在这些图像之间“跳跃”了的感觉。可经由3D渲染将3D模型提供来显示为二维图像。作为示例,3D模型300可用于在位置332处的街道级图像340和位置342处的街道级图像350之间的转变360的路径期间提供鸟瞰视图。在转变360期间,虚拟相机可围绕沿着该路径的位置运动,从其在位置332处的初始放置上升直到3D模型300中的转变360的路径的顶点362,然后下降到街道级图像350中的位置342。例如,客户端计算设备的显示屏幕可与相机的胶片类似。换言之,虚拟相机可定义把与3D模型相关联的3D数据转换成显示屏幕上的图像的数学变换。从而,从虚拟相机的角度来看,用户具有如下感觉:虚拟相机向上移离街道级图像340进入到3D模型的鸟瞰视图,随后向下移入街道级图像350中,就好像用户在这些图像之间跳跃了一样。

从一个街道级图像到第二街道级图像的转变的路径可至少依据这些图像之间的距离而变化。例如,如果街道级图像340和350相隔得更远,则转变360的路径相对于3D模型300可拱得更高。从而,更高的拱形可给予用户两个街道级图像之间的更好的空间意识和方向。

当通过3D模型的鸟瞰视图渲染从一个街道级图像到另一街道级图像的转变时,与对应于虚拟相机的位置的沿着转变的路径的各种点相对应的一系列混合图像可被串在一起并被提供用于显示。从而,对于相对于3D模型300的沿着转变362的路径的虚拟相机的每个位置例如(x,y,z)和取向,可生成混合图像。在一些实例中,在转变期间可只使用虚拟相机的特定一组位置和取向。在其他实例中,可在沿着转变的路径的间隔点处取得混合图像来生成转变的渲染。在此,可节约被配置为显示转变的客户端计算设备中的硬件资源。

为了对于虚拟相机的给定位置和取向生成混合图像,3D模型300可被栅格化成与客户端计算设备的显示器的像素相对应的片段。在此,虚拟相机相对于3D模型的位置和取向可用于将3D模型300“投影”到显示器的像素上。从而,每个片段与来自3D模型的颜色和地理位置信息相关联。

图4是在位置和取向412处的虚拟相机410、3D模型300和街道级图像340之间的关系的示例。如图所示,给定虚拟相机410的位置和取向412,3D模型402至少包括与客户端计算设备的显示器的像素相对应的片段430、440、450和460。每个片段或者说像素的位置信息可从投影确定。例如,片段430、440、450和460可与具有各自的纬度、经度和高度信息的不同地理坐标相关联。

利用每个片段的位置信息、虚拟相机410的位置和取向和/或与虚拟相机的位置最接近的街道级图像的地理位置信息,一个或多个计算设备可确定街道级图像的哪些像素对应于片段的位置。这可用于识别与每个片段相对应的街道级图像的颜色。在图4中,虚拟相机410可面朝着街道级图像340。这样,虚拟相机410的取向方式使得街道级图像340的像素投影到片段430、440、450和460以及其他相邻片段上。从而,每个片段也可与街道级图像340的像素的颜色相关联。

图5A是与例如街道级图像340之类的可显示图像相关联的像素的示例图示。如图所示,街道级图像340可具有特定的长度和特定的宽度。例如,街道级图像340可以是全景图像。另外,图像340可由多个网格单元510来图形表示,其中每个网格单元表示图像的一个体像素,例如像素512。像素512以及图像340的其他像素可与特定颜色相关联。如上所述,颜色可与片段相关联并且与来自3D模型的相应颜色混合。

图5B是基于虚拟相机410的位置和取向的像素投影的示例图示。例如,街道级图像340可以是多个街道级图像之一,这多个街道级图像被以大体上圆顶形的配置拼接在一起,以使得在给定虚拟相机410的特定位置和取向的情况下用户可通过旋转360度来查看所有图像。如图所示,街道级图像340可以是轻微弯曲的。另外,虚拟相机410可被定位成面朝街道级图像340并且还向上倾斜,具有与街道级图像340的各种像素相交的视线520、530、540和550。在一个方面中,视线520和550可表示虚拟相机410的视野的边界。

图6是来自3D模型的片段上的像素投影的示例图示。如图所示,图5B的像素投影示例可被应用到建筑物318的3D模型。例如,当来自虚拟相机410的视线520、530、540和550完全延伸时,它们可与建筑物318的3D模型的各种片段对齐。在一个实例中,视线520、530、540和550分别至少与片段420、430、440、450和460对齐。利用片段的地理空间位置数据(例如,纬度、经度和高度)和来自虚拟相机410的位置和取向的对齐信息,街道级图像340的四个变暗像素被投影到建筑物318的3D模型的片段420、430、440、450和460上。

与片段相关联的颜色之间的混合比率可基于虚拟相机410的位置和取向来确定。在此示例中,由于虚拟相机410与街道级图像340大体垂直对齐,大量来自街道级图像的颜色可被混合到片段430、440、450和460中。一旦根据混合比率混合了颜色,就可将3D模型的最终混合图像提供来显示给用户。在此,可以为沿着转变的路径的虚拟相机410的每个位置生成混合图像。

像素和相应片段的颜色的混合可基于混合比率。混合比率可表示从街道级图像得到的颜色的量和从3D模型得到的颜色之间的关系。颜色的定量关系可取决于虚拟相机相对于街道级图像的位置、取向、距离和视线。

来自虚拟相机的视线可按预定角度与像素相交。这个相交角度可至少部分确定相应片段处的混合比率。例如,来自虚拟相机410的视线520、530、540和550与被投影的像素大体垂直。由于虚拟相机410的位置和取向相对于街道级图像的这种大体正交对齐和极为接近,混合比率可更侧重来自街道级图像340的颜色。从而,取决于虚拟相机410的位置、取向、视线的对齐和/或与街道级图像340的距离,可更侧重的混合比率的颜色将会变化。

图7是从虚拟相机410的不同位置和取向的像素投影和混合的示例图示。此示例描绘了图3中描绘的转变360的路径的后半部。与区域302类似,区域310包括建筑物320、322、324、326、328、330、树木、野餐桌、街道等等的3D模型。区域302也可被栅格化成与客户端计算设备的显示器的像素相对应的片段。如图所示,虚拟相机410从转变360的路径的顶点362(未示出)下降到位置342以便完成转变。

从如图7中所示的虚拟相机410的位置、取向和距离,视线延伸并且以各种角度与街道级图像350相交。例如,视线720以相对于街道级图像350的表面大体上非垂直、几乎正切的角度与街道级图像350相交。另外,虚拟相机410和街道级图像350相隔较大的距离。基于虚拟相机410相对于街道级图像350的位置、取向、距离和视线的对齐,混合比率可更侧重来自区域310的3D模型300的片段的颜色。在此,来自3D模型300的片段的颜色的量可随着虚拟相机410变得与街道级图像350不那么一致而增大。

图8是用于生成混合图像的示例流程图800。仅作为图1中描绘的示例,在方框810,一个或多个计算设备,例如客户端计算设备110,可以为存储在存储器中的地理位置的3D模型确定多个片段,所述存储器例如是存储器114、存储器144、存储系统150。多个片段中的每个片段可对应于混合图像的像素并且每个片段可具有片段颜色。在方框820,一个或多个计算设备110可至少部分基于与3D模型相关联的纬度信息、经度信息和高度信息来为每个片段确定地理空间位置数据。利用地理空间位置数据,可识别与每个片段相对应的像素颜色。

从而,在方框830,对于多个片段中的每个片段,一个或多个计算设备110可在方框830至少部分基于地理空间位置数据来识别像素颜色和图像。所识别的与每个片段相对应的像素颜色可基于混合比率与各个片段颜色相混合。另外,如上所述,图像可以是与3D模型相关联的存储器中存储的街道级图像。在方框840,一个或多个计算设备110可确定混合比率。如上所述,混合比率可以是像素颜色的量与片段颜色的量的比率。混合比率可取决于在3D模型内虚拟相机相对于街道级图像的位置、取向、距离等等。

在方框850,一个或多个计算设备110可至少基于混合比率、像素颜色和片段颜色来生成混合图像。混合图像可被提供来显示在单独的显示设备上,或者显示在一个或多个客户端计算设备110上,或者其他客户端计算设备上,例如网络170的客户端计算设备130和客户端计算设备160。另外,当接收到从方框830处的图像转变到另一图像的请求时,一个或多个计算设备110可沿着两个图像之间的转变的特定路径生成一系列混合图像。混合图像可以是动画的一部分并且也可被存储在存储器中。

除非另有申明,否则前述替换示例不是互斥的,而可以按各种组合实现来获得独特的优点。由于可在不脱离权利要求限定的主题的情况下利用以上论述的特征的这些和其他变化和组合,所以对实施例的前述描述应当被作为例示而不是作为对权利要求限定的主题的限制来理解。此外,本文描述的示例的提供,以及措辞为“例如”、“包括”之类的从句,不应当被解释为将权利要求的主题限制到特定示例;更确切地说,这些示例打算只例示许多可能实施例之一。另外,不同附图中的相同标号可标识相同或相似的元素。

工业实用性

本公开可用于提供街道级图像和同一区域的3D模型之间的转变,其中这种转变向用户提供空间情境的感觉,从而使得在地图应用内导航的技术任务对于用户来说更容易。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号