CN103959343A - 分层数字图像数据重新排序和有关的数字图像渲染引擎 - Google Patents

分层数字图像数据重新排序和有关的数字图像渲染引擎 Download PDF

Info

Publication number
CN103959343A
CN103959343A CN201280059548.2A CN201280059548A CN103959343A CN 103959343 A CN103959343 A CN 103959343A CN 201280059548 A CN201280059548 A CN 201280059548A CN 103959343 A CN103959343 A CN 103959343A
Authority
CN
China
Prior art keywords
image data
original
layer
rearrangement
digital image
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.)
Granted
Application number
CN201280059548.2A
Other languages
English (en)
Other versions
CN103959343B (zh
Inventor
B·康奈尔
S·伊根
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN103959343A publication Critical patent/CN103959343A/zh
Application granted granted Critical
Publication of CN103959343B publication Critical patent/CN103959343B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/37Details of the operation on graphic patterns
    • G09G5/377Details of the operation on graphic patterns for mixing or overlaying two or more graphic patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • G06T15/405Hidden part removal using Z-buffer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/022Centralised management of display operation, e.g. in a server instead of locally

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Remote Sensing (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Instructional Devices (AREA)

Abstract

一种比如地理地图渲染系统的数字图像渲染系统以具有图像特征的数据的形式从比如地图数据库的图像数据库接收图像数据,这些图像特征被定义为在一系列层中排列的图像对象集合。图像渲染系统以允许通过将原有分层数字图像数据重新排序成更少层来渲染原有分层数据而未分离地渲染每个原有层的方式处理接收的数据。

Description

分层数字图像数据重新排序和有关的数字图像渲染引擎
技术领域
本公开内容涉及数字图像渲染系统,比如数字地理地图显示系统。更具体而言,本公开内容涉及一种数字图像数据重新排序例程,该数字图像数据重新排序例程在被执行时对原有“分层”数字图像数据集重新排序,从而使得渲染显示而无需个别地渲染原有分层数字图像数据集的每层并且未使用中间图像。
背景技术
在包括移动电话、汽车导航系统、手持GPS单元、计算机和许多网站的广泛多种设备中发现并且这些设备可以显示数字图像,比如地理图像、游戏系统、解剖图、具有对话气泡的卡通等。虽然数字图像从终端用户的观点来看易于查看和使用,但是创建数字图像经常是一项困难和处理器密集的任务。任何给定的数字图像显示渲染设备一旦被指引这样做就实际显示给定的数字图像的速度可能由于所需数据处理数量而缓慢。显示渲染延迟从终端用户的观点来看是不希望的。
数字图像的创建经常从在数字图像数据库中存储例如与将作为地理地图的部分而被显示的数百万个街道和路口以及其它特征对应的原始数字图像数据集。经常从多种来源得到在地图数据库中存储的原始数字地图数据,其中每个来源通常提供不同数量和类型的信息。例如,第一来源可以是具有与一系列卫星或者航空、摄影图像文件有关的数据的数据库,第二来源可以是具有与一系列本地公路有关的数据的数据库,第三来源可以是具有与一系列州公路有关的数据的数据库,第四来源可以是具有一系列州际高速路有关的数据的数据库,等等。常规地,所得分层数字图像数据集代表在多层内分散的多个图像对象和图像文件的合成。任何给定的图像对象与特定图像对象类型(比如公路的轮廓或者公路的内部部分)关联。数字图像地图数据的这些个别来源可以在由客户端设备或者由其它地图显示渲染应用和硬件访问之前被编译并且存储于数字图像地图数据库中。
一种渲染数字图像的常见方法使用传统上被称为矢量图像数据的图像数据。通常在高分辨率和快速移动成像系统(比如与游戏系统并且特别地为三维游戏系统关联的成像系统)中使用矢量图像数据。一般而言,矢量图像数据(或者矢量数据)包括如下数据,该数据定义将作为显示的部分而被渲染的具体图像对象(也被称为原语)。在代表地理地图的数字图像的情境中,这样的图像对象或者原语可以例如定义个别道路、文本标签、区域、文本框、建筑物、铁路、河流、兴趣点标记符、地形特征、自行车道、地图或者街道标签等。
通常,分层数字地图数据包括贯穿各种层分散的大量图像对象。例如,地理地图的基础层可以是卫星的图像文件或者地球的表面的航空相片。第二层可以包括由对应的内部填充对象和轮廓对象代表的本地公路(即,例如,由具有黑色轮廓的白色内部代表的一个或者多个公路)。第三层可以包含由对应的内部填充对象和轮廓对象代表的州高速路(即,例如,由具有黑色轮廓的灰色内部代表的一个或者多个公路)。第四层可以包括由对应的内部填充对象和轮廓对象代表的州际高速路(即,例如,由具有黑色轮廓的橙色内部代表的一个或者多个公路)。在任何给定的层中的每个图像对象具有各种属性,比如形状、颜色、线尺寸、阿尔法混合值、z深度函数值等。然后,渲染的数字图像地图数据可以被显示为所有这些层和图像对象的编译,该编译可见地描绘三维空间关系。应当理解,任何给定的原有分层数字图像数据集可以具有不同地形成的原有层,例如,可以组合原有层的任何组合以形成单个中间图像。
在常规应用中,通过个别地渲染每层在对应的客户端设备上渲染分层数字图像数据。首先将原有层光栅化成中间图像。随后在渲染显示之前合并中间图像。用于中间图像的额外存储和合并中间图像所需要的时间造成显示渲染延迟。因此,使用常规方式来渲染分层数字图像地图数据需要大型存储器、处理器密集并且耗费时间。
发明内容
一种用于对用于在渲染显示时使用的原有分层图像数据集重新排序的计算机实施的方法,包括在计算机设备接收包括多个原有图像数据层的原有分层图像数据集,多个原有图像数据层被排列用于当在显示中渲染中间图像之前被渲染以形成中间图像。原有图像数据层中的每个原有图像数据层包括按照层内图像对象顺序排列的多个图像对象。该方法在计算机设备上执行图像数据重新排序例程,图像数据重新排序例程从原有图像数据层中的两个或者更多个原有图像数据层提取第一类型的图像对象集合并且创建重新排序的图像数据集以用于用作单个重新排序的图像数据层以用于在渲染显示时使用。重新排序的图像数据层包括根据从其提取第一类型的图像对象中的每个图像对象的原有图像数据层的标识并且根据从其提取第一类型的图像对象中的每个图像对象的原有图像数据层的层内图像对象顺序排序的第一类型的图像对象。该方法接着在计算机设备存储重新所述排序的图像数据层。
在另一实施例中,一种用于在渲染显示时使用的数字图像渲染引擎包括通信网络接口、一个或者多个处理器、耦合到处理器的一个或者多个存储器和耦合到处理器的显示设备。通信例程存储于存储器中的至少一个存储器上,通信例程在处理器之一上执行以经由通信网络接口获得原有分层数字图像数据集,原有分层数字图像数据集包括按照升序被排列用于在显示中被渲染的多个原有图像数据层。每个原有图像数据层包括按照层内图像对象顺序排列的不同类型的多个图像对象。数字图像数据重新排序例程存储于存储器之一上,当数字图像数据重新排序例程在处理器之一上被执行时,从原有分层数字图像数据集提取第一类型的第一图像对象集合并且创建重新排序的数字图像数据集。重新排序的数字图像数据集包括第一层,第一层包括第一类型的图像对象,其中数字图像数据重新排序例程对第一类型的图像对象重新排序,从而使得来自原有图像数据层中的特定原有图像数据层的第一类型的所有图像对象在重新排序的数字图像数据中位于来自按照升序在原有图像数据层中的特定原有图像数据层之后的原有图像数据层中的任何原有图像数据层的第一类型的图像对象中的任何图像对象之前,并且从而使得来自原有图像数据层中的特定原有图像数据层的第一类型的图像对象中的每个图像对象在重新排序的数字图像数据中位于按照升序在原有图像数据层中的特定原有图像数据层之前的原有图像数据层中的任何原有图像数据层的所有图像对象之后,并且其中原有图像数据层中的每个原有图像数据层的第一类型的图像对象按照原有图像数据层中的每个原有图像数据层的层内图像对象顺序的相反顺序位于重新排序的数字图像数据中。z值赋值例程存储在存储器之一上,z值赋值例程在被执行时根据重新排序的数字图像数据中的每个图像对象在重新排序的数字图像数据中的顺序向图像对象赋值z值。提供在被执行时使用重新排序的数字图像数据集来渲染显示的显示渲染例程。
在又一实施例中,提供一种用于在具有处理器和显示渲染例程的成像系统中使用并且用于在渲染显示时使用而未在中间图像中渲染原有分层数字图像数据集的每层的数字图像数据重新排序例程。数字图像数据重新排序例程包括在存储器上存储的第一数据访问例程,第一数据访问例程当在处理器上被执行时访问包括多个原有层的原有分层数字图像数据集,多个原有层被排列用于在合并中间图像以用于在渲染显示时使用之前被渲染以形成中间图像。每个原有层包括按照层内图像对象顺序排列的多个图像对象,并且原有层按照升序被排序。包括一个或者多个数字图像数据处理例程,一个或者多个数字图像数据处理例程当在处理器上被执行时,从所述原有分层数字图像数据集提取第一图像对象集合并且创建重新排序的数字图像数据集。重新排序的数字图像数据集包括第一层,第一层包括第一类型的图像对象,其中一个或者多个数字图像数据处理例程对第一类型的图像对象重新排序,从而使得来自原有层中的特定原有层的第一类型的所有图像对象在重新排序的数字图像数据集中位于来自按照升序在原有图像数据层中的特定原有图像数据层之后的原有层中的任何原有层的第一类型的图像对象中的任何图像对象之前,并且从而使得来自原有层中的特定原有层的第一类型的图像对象中的每个图像对象在重新排序的数字图像数据集中位于按照升序在原有层中的特定原有层之前的原有层中的任何原有层的所有图像对象之后,并且其中原有层中的每个原有层的第一类型的图像对象按照原有图像数据层的层内图像对象顺序的相反顺序位于重新排序的数字图像数据集中。z值赋值例程存储于存储器之一上,z值赋值例程在被执行时根据在原有分层数字图像数据集内的相对图像对象深度向重新排序的数字图像数据中的每个图像对象赋值z值。
在本发明内容和以下具体实施方式中描述的特征和优点并非囊括性的。许多附加特征和优点将鉴于附图、说明书及其权利要求而为本领域普通技术人员所清楚。
附图说明
图1是数字图像系统的高级框图,该数字图像系统实施在存储于服务器中的数字图像数据库与一个或者多个数字图像渲染设备之间的通信;
图2是数字成像系统的高级框图,该数字图像系统实施在存储于第一服务器中的数字图像数据库、存储于至少一个第二服务器上的数字图像数据重新组织器和一个或者多个数字图像渲染设备之间的通信;
图3描绘用来渲染分层数字图像数据的数字图像数据重新排序引擎的高级框图;
图4A和图4B图示操作用于重新排序在图5A的表中代表的原有数字图像数据集以产生在图5B的表中代表的重新排序的图像数据集的示例例程或者过程流程图;
图5A和图5B分别描绘在被重新组织之前和在被重新组织之后的数字图像数据的表;
图6A和图6B描绘重叠和非相交公路;
图7A和图7B描绘可以使用描述的显示技术被渲染的相交公路;以及
图8和图9描绘渲染的数字图像数据的显示。
具体实施方式
一种数字图像数据重新排序例程从原有分层数字图像数据集的个别层提取各种图像对象以创建在与使用原有分层数字图像数据集来渲染显示而需要的时间比较需要更少时间以在显示上渲染的重新排序的数字图像数据集。
基于层对原有分层数字图像数据集排序,其中第一或者底部层代表相对于对应显示的查看者最远离的层,并且其中最后或者顶部层代表相对于查看者最接近的层。每个原有层包含至少第一类型的各种图像对象,比如代表公路的线对象。数字图像数据重新排序例程遍历原有层挑选并且输出与第一图像对象类型有关的至少第一层。对应显示渲染引擎使用新的重新排序的数字图像数据层来渲染显示而无需个别地渲染每个原有层,由此减少渲染显示而需要的时间。使用重新排序的数字图像数据来渲染显示无需在渲染显示之前使用中间图像,因此进一步减少渲染显示而需要的时间。
根据从其提取图像对象的原有层并且根据原有层内图像对象顺序按照第二图像对象顺序对图像对象重新排序。根据从在原有分层数字图像数据集内的相对图像对象深度向在重新排序的数字图像数据中的每个图像对象赋值z值。因此,例如,可以将代表具有多个原有层的地理地图的原有分层数字图像数据集精简成两层。重新排序的数字图像数据的第一层包括代表公路的轮廓的图像对象,并且重新排序的数字图像数据的第二层包括代表相应公路的内部部分的图像对象。通过在策略上对图像对象重新排序并且同样在策略上向每个图像对象赋值z值,实现特征的显示,这些特征比如是在显示中被表示为虚线轮廓的隧道和提供图像对象的可见外观的透明天桥,这些图像对象原本可能在显示内被从视图遮蔽。
每个原有层可以包含各种类型的图像对象(即,多于一个图像对象类型),比如如在更早示例中的公路的轮廓对象和对应内部填充对象。一种数字图像数据重新排序例程遍历原有层挑选并且输出与第一图像对象类型有关的第一层和与第二图像对象类型有关的第二层。对应显示渲染引擎使用两个新的重新排序的数字图像数据层来渲染显示而无需个别地渲染每个原有层并且未使用中间图像,由此减少在显示上渲染图像而需要的时间。
在一个示例中,原有分层数字图像数据集可以代表具有一系列公路的地理地图。在这一情况下,在原有分层数字地图数据集的各种层内包含与公路的内部部分关联的一系列“内部填充”对象和与公路的轮廓部分关联的一系列“轮廓”对象。处理器执行数字图像数据重新排序例程以从原有分层数字图像数据的各种层提取内部填充对象并且创建第一数字图像数据层。此外,数字图像数据重新排序例程从原有分层数字图像数据的各种层提取轮廓对象并且创建第二数字图像数据层。第一数字图像数据层和第二数字图像数据层存储于计算机可读介质上并且被渲染为两层而维持通常包括多得多的层的原有数字图像数据的外表和三维情境。使用被渲染为两层的第一数字图像数据层和第二数字图像数据层来渲染数字图像显示与通过个别地渲染原有分层数字图像数据的每层来渲染数字图像显示比较处理器更不密集并且需要更少存储器。
术语“层”在与数字图像数据有关的术语中常用来描述图像对象或者图像文件可以相对于彼此和相对于对应显示的查看者而位于的不同级(即,z深度)。可以在创建数字图像时堆叠、合并或者定义个别层。可以部分地遮蔽每层从而允许在给定的层内的对象的至少部分相对于在不同层内的图像对象的至少部分以半透明方式被隐藏或者示出。可以组合个别层,从而使得两个或者更多原有层形成单个新层。出于编辑的目的,用层工作允许在给定的层内全局地进行改变而其它层保持完全未编辑。一旦组合两层或者更多层以创建单层,则作为整体对单层执行后续编辑。通常,将在分层数字图像数据集内包含的每层光栅化以形成中间图像。然后当在显示上渲染之前合并中间图像。
执行这里描述的数字图像数据重新排序例程以减少需要被渲染的用于形成给定的显示或者图像的层数。使用重新排序的数字图像数据来渲染显示而未使用中间图像。关于重新排序的数字图像数据,保持术语“层”以反映在渲染用于显示的数字图像数据层与渲染序列之间的相关性。任何给定的图像对象或者图像文件的深度不再由在重新排序的数据中的层位置确定。在重新排序的数字图像数据中,图像对象或者图像文件可以相对于彼此和相对于对应显示的查看者而位于的不同级(即,z深度)由被个别地赋值的z值确定。
根据任何给定的图像或者对象位于哪层在原有分层数字图像数据集中定义相对图像对象深度。层数越低,图像对象从查看者的视角来看就将越远离。在显示道路地图的情境中,层一般用来描绘在个别公路之间的三维关系,从而示出哪些公路在其它公路以上或者以下通过、道路的交点、桥梁和隧道。
现在参照图1,被配置用于使用数字图像数据重新排序例程的数字图像系统110包括在服务器114中或者在例如位于中央地点或者各种不同的间隔开的地点的多个服务器中存储的数字图像数据库112。数字图像系统110还包括多个数字图像客户端设备116、118、120和122,这些数字图像客户端设备中的每个数字图像客户端设备存储和执行数字图像数据重新排序例程和显示渲染例程,或者包括显示渲染引擎。客户端设备116-122可以经由任何硬接线或者无线通信网络125(例如,包括硬接线或者无线LAN、MAN或者WAN、WiFi、因特网或者其任何组合)连接到服务器114。客户端设备116-122可以例如是移动电话设备(118)、计算机(比如膝上型、台式或者其它类型的计算机(116,120))或者其它成像系统的部件(比如汽车导航系统(122)的部件)等。另外,客户端设备116-122可以经由任何适当通信系统(比如经由任何公共可用或者私人拥有的通信网络,包括使用基于硬接线的通信结构(比如电话和线缆硬件)和/或无线通信结构的通信网络(比如无线通信网络(例如,包括无线LAN和WAN、卫星和蜂窝电话通信系统)等)通信地连接到服务器114。
数字图像数据库112可以存储包括光栅图像数据和矢量图像数据的任何希望的类型或者种类的数字图像数据。然而,这里描述的数字图像数据重新排序例程和显示渲染例程最佳地适合用于与矢量图像数据一起使用,该矢量图像数据定义或者包括用于多个图像对象集合中的每个图像对象集合的一系列顶点或者顶点数据点。一般而言,由矢量数据定义的图像对象中的每个图像对象将具有与之关联的多个顶点。顶点用来在客户端设备116-122中的一个或者多个客户端设备的显示设备上渲染每个图像对象。在一个实施例中,客户端设备116-122中的每个客户端可以包括显示渲染引擎,该显示渲染引擎具有一般以已知方式互连一用于使用显示渲染例程在关联显示设备134上渲染显示的一个或者多个处理器130、一个或者多个存储器132、显示设备134并且在许多情况下具有光栅化器或者图形卡136。用于任何特定客户端设备116-122的显示设备134可以是任何类型的电子显示设备,比如液晶显示器(LCD)、发光二极管(LED)显示器、等离子体显示器、阴极射线管(CRT)显示器或者任何其它类型的已知或者适当电子显示器。
一般而言,图1的数字图像系统110操作以使得用户在客户端设备116-122之一发起执行数字图像应用(在图1中未示出),该数字图像应用操作用于与服务器114通信以从数字图像数据库112获得一个或者多个原有分层数字图像数据集。给定的客户端设备执行数字图像数据重新排序例程,该数字图像数据重新排序例程从原有分层数字图像数据的各种层提取图像对象以产生具有比原有分层数字图像数据更少的层的重新排序的数字图像数据。客户端设备然后执行显示渲染例程(在图1中未示出),该显示渲染例程使用重新排序的数字图像数据来渲染显示。数字图像应用可以允许用户例如查看在数字图像数据库112中存储的原有分层数字图像数据的不同地理部分、放大或者缩小特定地理位置、旋转、自旋或者改变显示的数字图像的二维或者三维查看角度等。
更具体而言,在使用这里描述的图像系统在显示设备134上渲染图像时,客户端设备116-122中的每个客户端设备从数字图像数据库112下载数字图像数据并且使用一个或者多个数字图像数据重新排序例程来处理数据。重新排序的数字图像数据具有比原有分层数字图像数据更少的层并且因此重新排序的数据可以由客户端设备用来以处理器更不密集的方式在关联显示设备134上渲染图像。执行这一操作的数字图像数据重新排序例程存储于客户端设备的存储器132上并且由客户端设备中的处理器130执行。另外,阿尔法属性值赋值和混合例程以及z深度函数值赋值例程也可以存储于存储器132上并且在处理器130上被执行以向每个图像对象分别赋值爱尔法属性值和z深度函数值。在一个有关实施例中,客户端设备在客户端设备处理器130上执行使用重新排序的数字图像数据来渲染显示的显示渲染例程。
一般而言,图2的数字图像系统210从用户的观点来看与图1的数字图像系统110相似地操作。在图2的数字图像系统210中,数字图像数据重新排序例程分别存储于服务器214、240、245之一中的存储器215、242、247上并且由处理器213、241、246执行。虽然数字图像系统110、210从用户的观点来看相似地操作,但是图1的数字图像数据重新排序例程存储于客户端设备的存储器132中并且在客户端设备处理器130上被执行。向图1的客户端设备116-122传达分层数字图像数据,而向图2的客户端设备216-22传达重新排序的数字图像数据。图2中描绘的具有两百系列标号的其余单元与参照图1的具有一百系列编号的对应单元描述的单元相似。
当在图2的数字图像系统210内被使用时,阿尔法属性值赋值和混合例程和/或z深度函数值赋值例程也可以存储于存储器232上并且在处理器230上被执行并且操作用于向每个图像对象赋值阿尔法属性值和/或z深度函数值。备选地,当在图2的数字图像系统210内被使用时,向每个图像对象赋值阿尔法属性值和z深度函数值的阿尔法属性值赋值和混合例程和/或z深度函数值赋值例程可以存储于存储器213、241、246中的任一存储器上并且在相应处理器215、242、247上被执行。
图3描绘与客户端设备116-122、216-222之一关联或者由客户端设备116-122、216-222之一实施的显示渲染引擎300。在与图1的数字图像系统110组合被使用时,客户端设备116-122执行数字图像数据重新排序例程314和显示渲染例程323二者。在与图2的数字图像系统210组合被使用时,客户端设备216-222仅执行显示渲染例程323,而数字图像数据重新排序例程314至少部分在服务器214、240、245之一上被执行。应当理解,数字图像数据重新排序例程314的一部分(如比如图像对象提取例程315)可以在服务器214、240、245之一上被执行,而图像对象重新排序例程320例如在客户端设备216-222上被执行。
图3的显示渲染引擎300包括两个处理器340、345、三个存储器308、324、360、用户界面355和光栅化器350。处理器345、存储器324和光栅化器350设置于(在水平线以下表示的)分离的图形卡上。备选地,单个处理器可以用来实施显示渲染引擎。此外,显示渲染引擎300包括网络接口305。存储器308、324和360可以包括易失性存储器和非易失性存储器或者包括这二者。
通信和存储例程309和一个或者多个数字图像应用310存储于存储器308上。通信和存储例程309在处理器340上被执行以获取并且在存储器360上存储经由网络接口305接收的一个或者多个数字图像数据集。网络接口305包括操作用于例如经由硬接线或者无线通信网络与服务器114、214、240、245之一通信的任何熟知软件和/或硬件部件。存储器360可以例如是缓冲器或者易失性存储器。在如图1中描绘的数字图像系统110中,通信和存储例程309被执行用于经由服务器114从数字图像数据块112获取和存储一个或者多个原有分层数字图像数据集。在如图2中描绘的数字图像系统210中,通信和存储例程309被执行用于从服务器214、240、245之一获取并且存储一个或者多个重新排序的数字图像数据集,其中给定的服务器214、240、245执行数字图像数据重新排序例程314。如图3中描绘的那样,数字图像数据重新排序例程314可以包括在存储器308上存储的一个或者多个图像对象提取例程315和一个或者多个图像对象重新排序例程320。应当理解,图像对象提取例程315和图像对象重新排序例程320可以被组合、存储于存储器308中以及在处理器340上被执行。
在操作中,数字图像应用310响应于用户发起而在处理器340上执行以例如使用用户输入、全球定位系统(GPS)信号、预存逻辑或者编程等来确定希望显示的一个或者多个特定数字图像数据集。数字图像应用310通过经由网络接口305与服务器114、214、240、245之一通信以获得希望的数字图像数据来使用通信和存储例程309与数字图像数据块112、212交互。经由网络接口305返回并且在存储器360中存储请求的数字图像数据。在特定示例中,从数据库112、212下载数字图像数据。数字图像数据可以是将用来渲染显示的最终矢量数据的紧凑、结构化或者以其它方式优化的版本,并且对应数字图像应用310可以操作用于使用处理器340将下载的矢量变换成具体顶点数据点。一般而言,在数字图像数据块112、212中存储的数字图像数据可以包括矢量数据并且可能包括一个或者多个查找表,该一个或者多个查找表定义用于与多个不同图像对象关联的顶点集合的每个顶点的数据。更特别地,用于每个图像对象的矢量数据可以包括与组成特定图像对象的一个或者多个三角形关联的多个顶点。
阿尔法属性值赋值和混合例程321也存储于存储器308上并且在处理器340上被执行以向每个图像对象赋值阿尔法属性值并且阿尔法混合相同类型的图像对象的重叠部分。类似地,z深度函数值赋值例程322存储于存储器308上并且与数字图像数据重新排序例程结合在处理器340上被执行以向每个图像对象赋值z深度函数值。当然,阿尔法属性值赋值和混合例程以及z深度函数值赋值例程可以被组合、存储和执行作为单个例程。
具有片段着色器330的图形卡可以用来计算用于处理的每个像素的z值和混合的阿尔法值。在一些嵌入式图形卡上,基于由顶点着色器325产生的顶点直接计算z值。基于嵌入式API的WebGL可以用来计算z值。
参照图4A、图5A和图5B,描述了显示渲染引擎300的具体示例,其中显示渲染引擎300被配置为数字地理地图渲染设备。在这一示例中,数字图像数据重新排序和属性赋值例程400a被执行用于获得如图5A中描绘的原有分层数字图像数据集500a。特别地,经由开始块405a发起数字图像数据重新排序和属性赋值例程400a。接着,在块410a中获取代表一系列公路的原有分层数字图像数据500a,这些公路包括在多层之中分散的多个轮廓对象和多个内部填充对象。轮廓对象可见地代表公路的轮廓部分,并且内部填充对象可见地代表公路的内部部分。图5A的示例的原有分层数字图像数据集500a包括如在列505a中描绘的原有层一、原有层二和原有层三。原有层一包括如在列510a中描绘的三个轮廓对象和三个内部填充对象。原有层二包括如在列510a中描绘的两个轮廓对象和两个内部填充对象。原有层三包括如在列510a中描绘的四个轮廓对象和四个内部填充对象。原先根据在列515a中描绘的原有图像对象顺序对原有分层数字图像数据的个别图像对象排序。然而,应当理解,原有分层数字图像数据可以包括任何数目的原有层并且可以在每个原有层中包含任何数目的图像对象类型并且图5A的原有分层数字图像数据仅为一个示例。
进一步参照图4A,图像对象提取块415a被执行用于从原有分层数字图像数据集提取内部填充对象以创建如在图5B的列520b中描绘的重新排序的层一。图像对象提取块415a还从原有分层数字图像数据集提取轮廓对象以创建如在图5B的列520b中描绘的重新排序的层二。图像对象重新排序块420a被执行用于对如在图5B的列510b中描绘的提取的内部填充对象重新排序。图像对象重新排序块420a还对如在图5B的列510b中描绘的提取的轮廓对象重新排序。如从比较列520b与列505a可见,重新排序的数字图像数据具有比原有分层数字图像数据更少的层。应当理解,原有分层数字图像数据集可以仅有一个图像对象类型,例如代表公路的线对象。原有分层数字图像数据集可以包含三个或者更多个图像对象类型。
再次参照图4A,在块425a中向每个图像对象赋值z值。在与数字图像数据有关的术语中,“z缓冲”是关于在三维(3D)图形中的图像对象或者图像文件深度坐标的管理而被使用的术语。通常在硬件中,然而有时在软件中执行Z缓冲。Z缓冲提供一种对于可见性问题的解决方案,该可见性问题是与决定渲染的显示的哪些图像对象将可见而哪些将被隐藏关联的问题。在图像对象由3D图形卡渲染时,生成的像素(z坐标)的深度存储于缓冲器(z缓冲器或者深度缓冲器)中。这一缓冲器通常被布置为每个元素用于相应像素的二维数组(x-y)。在将在相同像素中渲染另一图像对象时,图形卡比较两个深度并且选择关联于与查看者更接近的图像对象的深度。然后向z缓冲器保存选择的深度。最后,z缓冲器使图形卡能够正确再现希望的深度感觉(例如,更近对象隐藏更远对象)。“Z挑选”是基于像素深度的早期像素消除。Z挑选在渲染隐藏的表面时提供性能增加,因为消除“隐藏”的像素。隐藏的像素消除是z缓冲的直接益处,其中比较每个像素候选的深度与它在其后面可能被隐藏的现有几何形状的深度。
在开始渲染新显示时,将z缓冲器设置成预定义值,通常为1.0,因为这一个值是深度的上限(在0至1的比例上),这意味着无图像对象通过查看平截头体(viewing frustum)在这一点存在。在使用z缓冲器时,一旦已知像素的深度被隐藏,则可以挑选(消除)它,这使得有可能略去亮化和纹理化无论如何将不可见的像素的整个过程。而且,一般不会为挑选的像素执行消耗时间的像素着色器。这使得z挑选在填充率、亮化、纹理化或者像素着色器是限制因素的情形中是良好优化候选。
作为一般事项,向每个图像对象赋值z深度函数值,从而使得在重新排序的数字图像数据中保持原有分层数字图像数据的每个图像对象的相对z深度。用于给定的图像对象的最终z值是以下各项的函数:1)图像对象类型、2)图像对象位于其内的原有层,以及3)图像对象的原有顺序。更具体而言,从原有分层数字图像数据的第一层提取的第一类型的图像对象根据它们的原有顺序被赋值最低z值。从原有分层数字图像数据的第一层提取的第二类型的图像对象根据它们的原有顺序被赋值次最低z值。对于在原有分层数字图像数据的第一层内包含的每个图像对象类型继续这一z值赋值序列,直至向原有分层数字图像数据的第一层的所有图像对象赋值。一旦向从原有分层数字图像数据的第一层提取的每个图像对象赋值了z值,则向从原有数字图像数据的第二层提取的第一图像对象类型赋值z值。继续这一z值赋值序列,直至向原有分层数字图像数据的最后层的最后图像对象类型的z值赋值。
参照图5B,从在最远离查看者的原有层内的最远离查看者的轮廓对象(即按照原有图像对象顺序的轮廓对象1)开始赋值z深度函数值。Z深度函数值赋值例程向在最接近查看者的第一原有层内包含的轮廓对象(即按照原有图像对象顺序的轮廓对象5)进展继续向从原有分层数字图像数据的第一层提取的其余轮廓对象赋值。Z深度函数值赋值例程接着从最远离查看者的内部填充对象(即按照原有图像对象顺序的内部填充对象2)开始并且向从最接近查看者的第一原有层提取的内部填充对象(即按照原有图像对象顺序的内部填充对象6)进展继续将值赋值给从第一原有层提取的内部填充对象。按照这一模式并且向最接近查看者的原有层进展向轮廓对象和内部填充对象赋值z深度函数值中的其余z深度函数值。应当理解,可以向在原有分层数字图像数据的任何给定的层内包含的相同类型的图像对象赋值相同z值而不是与原有图像对象顺序成比例增加的z值。
在块425a中执行向如在列530b中描绘的每个内部填充对象和每个轮廓对象赋值z深度函数值的z深度函数值赋值例程。从零开始赋值与第一原有层的轮廓对象关联的z深度函数值以反映从查看者的视角来看它们将被显示最远离(即z值3、2、1)。向与第一原有层的内部填充对象关联的z深度函数值赋值接下来的z值(即z值6、5、4)。向与第二原有层的轮廓对象关联的z深度函数值赋值接下来的z值(即z值8、7)。向与第二原有层的内部填充对象关联的z深度函数值赋值接下来的z值(即z值10、9)。向与第三原有层的轮廓对象关联的z深度函数值赋值接下来的z值(即z值14、13、12、11)。向与第三原有层的内部填充对象关联的z深度函数值赋值接下来的z值(即z值18、17、16、15)。作为块415a、420a、425a的执行结果,通过向每个图像对象赋值z深度函数值在重新排序的数字图像数据中保持用于在原有分层数字图像数据集内包含的每个图像对象的相对深度关系。
继续参照图4A和图5B,在块430a中执行向如在列535b中描绘的每个内部填充对象和每个轮廓对象赋值阿尔法属性值的阿尔法属性值赋值和混合例程。在渲染显示时使用阿尔法属性值以可见地绘出两个或者更多个图像对象的重叠部分。一般而言,在重新排序的数字图像数据中维持与在原有分层数字图像数据集中包含的每个图像对象关联的阿尔法属性值。阿尔法属性值通常对应于给定的颜色。应当理解,可以例如根据查看者的偏好赋值任何给定的阿尔法属性值。
数字图像合成是数字地组装多个数字图像以创建一个最终图像以通常用于印刷或者显示的过程。数字图像合成代表光胶卷合成向数字领域中的演变。在与数字图像数据有关的术语中,“阿尔法混合”是在不透明性值阿尔法(“α”)用来控制被合成为单个输出像素值的两个或者更多个输入像素值的比例时使用的术语。阿尔法混合用来实现关于图6B、图7B、图8和图9描述的希望的视觉效果。根据多个数学计算中的任何数学计算执行阿尔法混合,以下描述举例说明示例性计算:
前景像素f
背景像素b,
合成像素c,
以及
α,前景像素的不透明性值。(对于不透明前景为α=1,对于完全透明前景为α=0)。
考虑所有三个色通道(即,红色-由下标r表示、绿色-由下标g表示,以及蓝色-由下标b表示),并且假设在γ=1色空间(即,也就是说,测量值与光强度成比例)中表达色通道,结果为:
cr=αfr+(1-α)br
cg=αfg+(1-α)bg
cb=αfb+(1-α)bb
在其中将阿尔法混合四层以产生最终图像(即,例如在航空相片以上叠加地理地图的具有三个重叠公路的一部分)的情况下:F=A*(B*(C*D)),其中A、B、C、D是部分透明图像对象,并且“*”表示合成算符(其中左层在右层上面)。如果仅层C改变,则应当避免在计算F时重新混合所有层。无任何特殊考虑,四个全图像混合将需要出现。为了合成可交换的算符,比如加法混合,对混合运算重新排序是安全的。在这一情况下,仅计算T=A*(B*D)一次,并且混合T*C以在单个运算中产生F。遗憾的是,大多数算术不是可互换的。然而,许多是关联的。因此,对运算重新分组而未改变它们的顺序是安全的。在这一情况下,有可能计算S=A*B一次并且保存这一结果。为了用关联算符形成F,执行两个附加合成运算以集成新层C:F=S*(C*D)。注意,这一表达式指示在一个步骤中合成C与在它以下的所有层并且然后混合在它上面的所有层与先前结果以在第二步骤中产生最终图像。
如果图像的所有层规律地改变并且需要被合成(比如在分布式渲染中),则仍然可以利用合成算符的可互换性以即使在没有来自预计算的增益时仍然通过并行性加速计算。再次考虑图像F=A*(B*(C*D))。在这一表达式中的每个合成运算依赖于下一合成运算从而产生串行计算。然而,可互换性允许改写F=(A*B)*(C*D),其中显然有并未相互依赖并且可以被并行执行的两个运算。一般而言,可以推导具有与层数成对数的高度的逐对合成运算的树。
待混合的每个像素值可以相对于任何其它像素的值被加权。例如,在三个图像对象具有重叠部分并且每个图像对象具有50%阿尔法值时,所得显示将具有来自背景的12.5%贡献、来自绘图的第一图像对象的12.5%贡献、来自绘图的第二图像对象的25%贡献、来自绘图的第三图像对象的50%贡献。
再次参照图5B,在列525b中在列515b中的原有图像对象顺序旁边描绘重新排序的图像对象。如可以通过比较图5A的列505a与图5B的列520b而领会到的那样,原有分层数字图像数据需要三个绘图调用以渲染对应显示,而重新排序的数字图像数据仅需两个绘图调用以渲染对应显示。应当领会到,相对于不同图像对象类型的数目具有高层数比的原有分层数字图像数据将关于所需处理资源受益,为了易于例示而选择图5A和图5B的示例,该示例具有原有分层数字图像数据中的三层并且具有两个不同图像对象类型。
图4B描绘适合用于在客户端设备116-122上执行的显示渲染例程400b。在开始块405b中发起显示渲染例程。接着,在块410b中获取重新排序的数字图像数据集。在块415b中从最顶部图像对象(即,与查看者最接近的顶部)开始并且向最底部图像对象继续连续地缓冲层内图像对象。在块420b中从底部层(即,与查看者最远离的底部)开始连续地缓冲重新排序的数字图像数据的第一层和第二层。在块425b中执行用于渲染每层的个别绘图调用。
在如应用于图5A和图5B的示例的显示渲染例程400b的具体实现中,缓冲来自原有分层数字图像数据集的第一组层内对象,从而使得用图像对象顺序6、4、2缓冲包括三个内部填充对象(即,原有图像对象顺序2、4、6)的第一原有层,继而用图像对象顺序10、8缓冲包括两个内部填充对象(即,原有图像对象顺序8、10)的第二原有层,并且用图像对象顺序18、16、14、12缓冲包括四个内部填充对象(即,原有图像对象顺序12、14、16、18)的第三原有层。缓冲来自原有分层数字图像数据集的第二组层内对象,从而使得用图像对象顺序5、3、1缓冲包括三个轮廓对象(即,原有图像对象顺序1、3、5)的第一原有层,继而用图像对象顺序9、7缓冲包括两个轮廓对象(即,原有图像对象顺序7、9)的第二原有层,并且继而用图像对象顺序17、15、13、11缓冲包括四个轮廓对象(即,原有图像对象顺序11、13、15、17)的第三原有层。在块425b中执行在显示上渲染内部填充对象的第一绘图调用、继而执行渲染轮廓对象的第二绘图调用。
第一绘图调用和第二绘图调用可以包括相同图像对象属性集。然而,向属性中的一些属性赋值不同值(即,不同线类型、不同线宽度、不同颜色等)。再次参照公路地图,内部填充对象和轮廓对象二者被可见地表示为线。用于轮廓对象的线宽度属性大于用于内部填充对象的线宽度。通过在对应线对象以上渲染内部填充对象,实现用于公路的希望的外观,该外观如参照图6A、图6B、图7A、图7B、图8和图9所示的那样具有第一颜色的轮廓而在它们之间有第二颜色。
为了例示,图6A将第一公路605a的地下道600a描绘在区域610a在第二公路615a以下通过。第一公路605a具有轮廓606a、607a,并且第二公路615a具有轮廓616a、617a。在区域610a在第一公路与第二公路之间未提供阿尔法混合。因此,公路615a的轮廓和内部部分二者被描绘为贯穿区域610a连续。
与图6A相似,图6B将第一公路805b的地下道600b描绘为在区域610b在第二公路615b以下通过。第一公路805b具有轮廓606b、607b,并且第二公路610b具有轮廓616b、617b。不同于图6A的示例,在区域610b中在第一公路605b与第二公路615b之间提供阿尔法混合。这样,公路605b、615b的对应轮廓和内部部分二者可见地图示在区域610b中的重叠。区域610b的颜色是公路605b的内部部分的颜色和公路615b的内部部分的颜色的阿尔法混合。在根据这里描述的z值赋值例程向个别图像对象赋值z值时,在不同类型的图像对象相互重叠时未使用阿尔法混合。仅为相同类型的重叠图像对象执行阿尔法混合。例如,相互阿尔法混合内部填充对象的重叠部分,然而,未与轮廓对象的重叠部分阿尔法混合内部填充对象。
图7A描绘第一公路705a在区域710a与第二公路715a的交点700a。第一公路705a具有轮廓706a、707a,并且第二公路710a具有轮廓716a、717a。在区域710a在第一公路与第二公路之间未提供阿尔法混合,因为公路相交并且因此通常为相同颜色。这样,公路705a、715a的对应轮廓和内部部分二者可见地图示公路相交。
图7B描绘第一公路705b在区域710b与第二公路715b的交点700b。第一公路705a具有轮廓706b、707b,并且第二公路710b具有轮廓716b、717b。在区域710b在第一公路与第二公路之间提供阿尔法混合。如可以通过比较图6A和图6B与图7A和图7B而领会到的那样,阿尔法混合增强重叠公路的可见外观。在另一方面,阿尔法混合削弱相交公路的可见外观。
图8描绘包括海湾区域805的数字图像显示800,海湾区域805在任一侧上具有陆地810。第一内部填充对象815和第二内部填充对象820以及关联轮廓对象816、817、821指示在海湾区域805以下的隧道。区域825、826指示隧道入口和出口。第二内部填充对象830和关联轮廓对象831、832指示在海湾区域805以上的桥梁。第三内部填充对象835和关联轮廓对象836、837指示在陆地810上的公路。图8描绘隧道,该隧道被表示为分层并且与其它公路阿尔法混合的虚线轮廓,从而使得虚线轮廓可见地指示隧道在水体以下和在其它公路下方延伸。
在区域825、826中在显示800内可见地代表与隧道关联的虚线轮廓对象和内部填充对象二者。与隧道关联的虚线轮廓对象和内部填充对象均未被与陆地(或者水体)关联的图像对象、与表面公路关联的图像对象或者与天桥关联的图像对象中的任何图像对象遮蔽。相互阿尔法混合与隧道、陆地(或者水体)、表面公路和天桥关联的内部填充对象的重叠部分以可见地反映仅两个内部填充对象何时重叠、三个内部填充对象何时重叠等。关联重叠内部填充对象部分的所得颜色是每个个别内部填充对象部分的阿尔法混合。
使用原有分层数字图像数据集来渲染显示需要使用中间图像。例如,渲染具有与隧道关联的虚线轮廓对象的显示通过以下操作来继续:1)向中间图像中渲染粗的全不透明灰色虚线轮廓对象、2)向中间图像中渲染略微更细的实心清澈内部填充对象而无阿尔法混合(即,用重叠部分中的全透明像素替换中间图像中的不透明灰色像素,因此灰色在隧道的内部部分内消失),以及3)使用阿尔法混合将中间图像合成到在它以下的基础地图上。在通过渲染过程跟踪在水体内的隧道的中间区域中的像素时:1)像素作为代表水体的蓝色开始,2)创建具有蓝色背景的中间图像、3)向第二中间图像中渲染虚线轮廓对象从而造成不透明、虚线灰色轮廓对象、4)向第二中间图像中渲染清澈、隧道内部填充对象从而造成清澈内部填充对象和虚线灰色隧道轮廓,并且5)用阿尔法混合合成两个中间图像,从而使得蓝色背景与由虚线灰色轮廓代表的隧道一起出现。未使用中间图像并且向背景上直接渲染隧道轮廓对象和内部填充对象产生不同结果。在这一序列中渲染显示通过以下操作来继续:1)像素从水体始于蓝色,2)渲染灰色虚线轮廓对象,像素变成灰色,并且3)渲染清澈实心内部填充对象,像素如果未使用阿尔法混合则变成清澈而如果使用阿尔法混合则保持灰色。与隧道的内部部分关联的像素保持蓝色。因此,在使用原有分层数字层数据集来渲染显示时需要中间图像。即使在颠倒层对象渲染顺序并且在背景上直接渲染层对象时,仍然在使用原有分层数字图像数据集来渲染显示时需要中间图像。例如,跟踪在水体的区域内的隧道的内部部分内的像素通过以下操作来继续:1)像素始于蓝色,2)渲染清澈实心内部填充对象,像素如果未使用阿尔法混合则变成清澈或者如果使用阿尔法混合则它保持蓝色,并且3)渲染灰色虚线轮廓对象,像素变成灰色。同样,希望的结果是让与隧道的内部部分关联的像素为蓝色。
在利用z缓冲以使得内部填充对象比对应轮廓对象更接近查看者并且使用重新排序的数字图像数据来渲染显示时,渲染序列通过以下操作来继续:1)像素用比隧道轮廓对象或者隧道内部填充对象更低的z值始于蓝色,2)渲染清澈实心内部填充对象,像素如果未使用阿尔法混合则变成清楚或者像素在使用阿尔法混合时保持蓝色,所得像素z值变得更接近查看者,并且3)渲染灰色虚线轮廓对象,像素将变成灰色,然而,虚线灰色轮廓对象具有比像素当前具有的z值更远离查看者的z值,因此无改变出现。如希望的那样,所得像素在使用阿尔法混合时为蓝色。因此,在通过先用比用于对应轮廓对象的z值更接近查看者的z值渲染内部填充对象来使用重新排序的数字图像数据渲染显示时实现希望的结果。
图9描绘包括陆地906的数字图像显示900,陆地906具有用第一内部填充对象905和关联轮廓对象906、907描绘的高速路。用第二内部填充对象910和关联轮廓对象911、912描绘从高速路向本地公路延伸的一系列出口匝道。用在区域918中在高速路以上交叉的第三内部填充对象915和关联轮廓对象916、917描绘本地公路。在至少一个实施例中,如图6B中描绘的那样阿尔法混合第三内部填充对象915的区域918和第一内部填充对象905。可见透明性效果经常在如下实例(比如在图9中描绘的实例)中是希望的,在这些实例中,区域918是基础航空相片和在基础层上方堆叠的两个交叉公路的组合。轮廓916、917是连续的,并且轮廓906、907是不连续的,从而可见地指示哪些公路在上面交叉。与33.33%基础层颜色、33.33%公路905和33.33%公路915阿尔法混合与区域918关联的内部填充对象。与区域918关联的内部填充对象可以备选地是50%基础层颜色、25%公路905和25%公路915的阿尔法混合。在任一情况下,未与轮廓对象阿尔法混合内部填充对象。
可以渲染透明天桥以在使用重新排序的数字图像数据来渲染显示时提供下层图像对象的视图。例如,可以在具有100%不透明黑色轮廓的50%不透明黄色公路内部以下描绘具有50%不透明白色公路内部和100%不透明黑色轮廓的绿色背景。在使用重新排序的数字图像数据来渲染显示时,在对应轮廓对象之前渲染公路的白色内部填充对象。渲染过程通过以下操作来继续:1)从具有从查看者远离的z值的绿色背景开始,2)在背景上渲染具有50%白色的内部填充对象从而造成50%绿色和50%白色并且具有相对于查看者为中级的z值,3)渲染具有在与白色内部填充对象比较时相对于查看者更远离的z值的黑色轮廓对象,因此在内部填充对象的界限内的与轮廓对象关联的像素保持白色,4)渲染具有50%黄色和接近查看者的z值的黄色内部填充对象,结果是背景25%绿色、25%白色和50%黄色,并且5)渲染具有比与对应黄色内部填充对象关联的z值更远离查看者的z值的黑色轮廓对象,因此与黄色内部填充对象的内部部分关联的像素保持不变。使用重新排序的数字图像数据来渲染显示实现希望的结果以提供透明天桥。
在使用原有分层数字图像数据集来渲染显示时,需要中间图像以产生透明天桥。显示渲染过程通过以下操作来继续:1)向用于白色道路的轮廓的中间图像中渲染粗的100%不透明黑色线,2)向中间图像中渲染更细的50%不透明白色线而无阿尔法混合,用白色替换重叠部分中的黑色,3)用阿尔法混合向背景上合成中间图像以获得50%绿色背景和具有100%黑色轮廓的50%白色道路,4)向与黄色道路的轮廓关联的第二中间图像中渲染粗的100%不透明黑色轮廓对象,5)向第二中间图像中渲染更细的50%不透明黄色内部填充对象而无阿尔法混合,用黄色替换重叠部分中的黑色轮廓对象,并且6)用阿尔法混合向背景上合成第二中间图像以获得25%绿色背景、25%白色公路和50%黄色公路。通过对应渲染过程跟踪像素继续以下操作:1)背景为绿色,2)创建具有绿色背景的中间图像,公路的内部部分为白色,3)与白色公路的轮廓关联的黑色轮廓对象,背景为绿色并且公路轮廓为黑色,4)渲染白色道路内部,背景为绿色,中间为50%不透明白色,5)具有背景的中间图像,所得公路内部部分为50%绿色和50%白色,6)创建具有50%绿色和50%白色背景的第二中间图像,7)渲染与黄色公路的轮廓关联的黑色轮廓对象,结果为50%绿色和50%白色而黑色轮廓用于黄色道路,8)渲染黄色内部填充对象,该结果具有背景而内部填充对象为50%绿色和50%白色并且是50%不透明黄色内部填充对象,并且9)用阿尔法混合合成中间图像从而造成25%绿色、25%白色和50%黄色的重叠部分。
使用原有分层数字图像数据集来渲染显示而无中间图像造成:1)绿色、2)黑色、3)50%黑色、50%白色、4)黑色,和5)50黑色和50%黄色。这未实现具有透明天桥。相似地不希望的结果在颠倒图像对象渲染时出现,其中使用z值并且使用阿尔法混合:1)从绿色背景和从查看者远离的对应z值开始,2)添加50%黄色,结果是50%绿色、50%黄色,所得z值更接近查看者,3)用比对应内部填充对象更远离查看者的z值渲染黑色轮廓对象,从而造成在重叠部分中省略黑色,4)用与黄色内部填充对象比较更远离查看者的z值渲染白色道路,该结果是在重叠部分中闭塞白色,5)渲染具有在与黄色内部填充对象比较时更远离查看者的z值中的黑色轮廓,因此在重叠部分中闭塞黑色轮廓对象。该结果为50%绿色和50%黄色,并且未阿尔法混合白色内部填充对象,这是不希望的。即使在向白色道路赋值更高z值从而使得未闭塞白色道路时,渲染过程通过以下操作来继续:1)从具有远离查看者的z值的绿色背景开始,2)添加50%黄色,该结果为50%绿色和50%黄色,所得z值更接近查看者,3)渲染具有更远离的z值的黑色轮廓对象,从而使得在重叠部分中闭塞黑色轮廓对象,4)渲染具有接近查看者的z值的白色道路内部填充对象,该结果为25%绿色、25%黄色和50%白色,所得z值更接近查看者,并且5)渲染具有更远离的z值的黑色轮廓对象,从而使得在重叠部分中闭塞黑色轮廓对象。希望让黄色最强,代之以结果为白色。
一种用于渲染分层数字图像数据而未个别地渲染每层的方法延伸至在层中渲染数据的通用概念,其中每层未利用在给定的层内的图像对象的阿尔法混合。然而,将个别层本身阿尔法混合在一起。例如,原有分层图像数据集与具有骨骼系统、循环系统等的人体的解剖图关联作为不同层,其中在个别层内仅在每个像素渲染最顶部对象,而在相互上面阿尔法混合层。这允许客户端设备的查看者例如将肌肉转变成50%不透明性以看见器官后面并且看见它们如何排队,而不是仅透过顶部肌肉看见在它下面的肌肉和在它下面的另一肌肉,因此客户端设备的查看者不能足够好地透视器官。
可以通过保证用于在层内的每个通过的z深度值大于该层的任何先前通过的z深度值但是小于相对于查看者在上面的任何层的任何通过的z深度值来在相同数据以上的多个通过中渲染层。按照从最后到最先的相反顺序渲染通过造成实现希望的显示。作为示例,可以在显示中描绘具有落下阴影的图像对象层(即,在卡通画中的对话气泡)。先通过相对于关联对话气泡用向下和向右平移用透明黑色渲染气泡来渲染落下阴影。在渲染用于给定的层的所有阴影之后,以希望的颜色和位置渲染对话气泡本身而无阿尔法混合,从而使得闭塞的阴影区域被对话气泡的对应部分完全替换。也可以通过先渲染最后通过并且保证如这里描述的那样赋值z深度函数值来实现这一类两个通过的渲染,从而使得对话气泡先被渲染并且闭塞阴影原本将被绘图的部分。在随后渲染阴影时,未在那些重叠区域中渲染阴影,从而给予如同已经先绘图并且然后闭塞阴影一样的相同外观。
应当理解,给定的数字图像数据重新排序例程可以创建附加数字图像数据层(即,第三集合、第四集合…等)。例如,原有数字图像数据集可以包含与在各种层内排列的人类解剖体有关的图像对象。根据本公开内容的一种数字图像数据重新排序例程在被执行时提供:与“皮肤”对象对应的第一数字图像数据层;与“肌肉”对象对应的第二数字图像数据层;与“骨骼”对象对应的第三数字图像数据层;与“神经”对象对应的第四数字图像数据层;…等。
应当理解,这里具体描述的具体示例和实施例旨在于提供实现本发明的最佳方式的描述并且满足书面描述以使本领域普通技术人员能够实现和使用本发明。决不应当将这些示例和实施例解释为限制所附权利要求的范围。

Claims (26)

1.一种用于对用于在渲染显示时使用的原有分层数字图像数据集重新排序的计算机实施的方法,包括:
在计算机设备获得包括多个原有图像数据层的原有分层图像数据集,所述多个原有图像数据层被排列用于当在显示中渲染中间图像之前被渲染以形成所述中间图像,所述原有图像数据层中的每个原有图像数据层包括按照层内图像对象顺序排列的多个图像对象;
在所述计算机设备上执行图像数据重新排序例程,所述图像数据重新排序例程从所述原有图像数据层中的两个或者更多原有图像数据层提取第一类型的图像对象集合,并且创建重新排序的图像数据集以用于用作单个重新排序的图像数据层以用于在渲染显示时使用,所述重新排序的图像数据层包括所述第一类型的所述图像对象,所述第一类型的所述图像对象根据从其提取所述第一类型的所述图像对象中的每个图像对象的所述原有图像数据层的标识、并且根据从其提取所述第一类型的所述图像对象中的每个图像对象的所述原有图像数据层的所述层内图像对象顺序被排序;以及
在所述计算机设备存储所述重新排序的图像数据层。
2.根据权利要求1所述的计算机实施的方法,其中将所述多个原有图像数据层接收为与升序关联,并且其中执行所述图像数据重新排序例程包括对所述第一类型的所述图像对象重新排序,从而使得来自所述原有图像数据层中的特定原有图像数据层的所述第一类型的所有所述图像对象在所述重新排序的图像数据层中位于如下第一类型的图像对象中的任何图像数据之前:这些第一类型的图像对象来自所述原有图像数据层中按照所述升序在所述特定原有图像数据层之后的所述原有图像数据层中的任何原有图像数据层,并且从而使得来自所述原有图像数据层中的所述特定原有图像数据层的所述第一类型的所述图像对象中的每个图像对象在所述重新排序的图像数据层中位于所述原有图像数据层中按照所述升序在所述特定原有图像数据层之前的所述原有图像数据层中的任何原有图像数据层的所有所述图像对象之后,并且其中所述原有图像数据层中的每个原有图像数据层的所述第一类型的所述图像对象按照所述原有图像数据层中的每个原有图像数据层的所述层内图像对象顺序的相反顺序位于所述重新排序的图像数据层中。
3.根据权利要求2所述的计算机实施的方法,其中所述第一类型的所述图像对象是代表地理地图中的公路的线对象。
4.根据权利要求2所述的计算机实施的方法,其中执行所述图像数据重新排序例程还包括从所述原有图像数据层中的两个或者更多个原有图像数据层提取第二类型的图像对象集合,并且创建另一重新排序的数字图像数据集以用于用作第二重新排序的图像数据层。
5.根据权利要求4所述的计算机实施的方法,其中所述第一类型的所述图像对象是代表地理地图中的公路的内部部分的内部填充对象,并且第二类型的所述图像对象是代表地理地图中的公路的轮廓部分的轮廓对象。
6.根据权利要求5所述的计算机实施的方法,还包括执行在所述存储器上存储的z值赋值例程,所述z值赋值例程根据图像对象类型、每个图像对象位于其内的原有层的标识和所述图像对象按照所述层内图像对象顺序的原有定位而向所述图像对象赋值z值以维持原有相对图像对象深度。
7.根据权利要求6所述的计算机实施的方法,还包括使用第一重新排序的图像数据层和第二重新排序的图像数据层来执行显示渲染例程以渲染显示,其中所述显示渲染例程在所述轮廓对象之前渲染所述内部填充对象,从而使得所述内部填充对象遮蔽在所述显示中的重叠区域中的关联的轮廓对象。
8.根据权利要求1所述的计算机实施的方法,还包括使用所述重新排序的图像数据集来执行显示渲染例程以渲染显示。
9.根据权利要求1所述的计算机实施的方法,还包括执行阿尔法属性值赋值和混合例程,所述阿尔法属性值赋值和混合例程向每个图像对象赋值阿尔法属性值、并且阿尔法混合相同图像对象类型的图像对象的重叠部分以用于渲染对应的显示以可见地描绘重叠部分。
10.一种用于当在显示上渲染图像时使用的数字图像处理系统,包括:
通信网络接口;
一个或者多个处理器;
耦合到所述一个或者多个处理器的存储器;
在所述一个或者多个存储器中的至少一个存储器上存储的例程,所述例程在所述一个或者多个处理器之一上执行以获得包括多个原有图像数据层的原有分层数字图像数据集,所述多个原有图像数据层按照升序被排列用于在显示中被渲染,每个原有图像数据层包括按照层内图像对象顺序排列的不同类型的多个图像对象;
在所述一个或者多个存储器之一上存储的数字图像数据重新排序例程,当所述数字图像数据重新排序例程在所述一个或者多个处理器之一上被执行时,从所述原有分层数字图像数据集提取第一类型的第一图像对象集合并且创建重新排序的数字图像数据集,所述重新排序的数字图像数据集包括第一层,所述第一层包括所述第一类型的图像对象,其中所述数字图像数据重新排序例程对所述第一类型的所述图像对象重新排序,从而使得来自所述原有图像数据层中的特定原有图像数据层的所述第一类型的所有所述图像对象在所述重新排序的数字图像数据中位于如下第一类型的图像对象中的任何图像对象之前:这些第一类型的图像对象来自所述原有图像数据层中按照所述升序在所述特定原有图像数据层之后的所述原有图像数据层中的任何原有图像数据层,并且从而使得来自所述原有图像数据层中的所述特定原有图像数据层的所述第一类型的所述图像对象中的每个图像对象在所述重新排序的数字图像数据中位于所述原有图像数据层中按照所述升序在所述特定原有图像数据层之前的所述原有图像数据层中的任何原有图像数据层的所有所述图像对象之后,并且其中所述原有图像数据层中的每个原有图像数据层的所述第一类型的所述图像对象按照所述原有图像数据层中的每个原有图像数据层的所述层内图像对象顺序的相反顺序位于所述重新排序的数字图像数据中;以及
在所述一个或者多个存储器之一上存储的z值赋值例程,所述z值赋值例程在被执行时,根据所述重新排序的数字图像数据中的每个图像对象在所述重新排序的数字图像数据中的顺序向所述图像对象赋值z值。
11.根据权利要求10所述的数字图像处理系统,还包括:客户端,被配置用于经由通信网络接收重新排序的数字图像数据集,所述客户端设备包括显示设备和显示渲染例程,所述显示渲染例程在被执行时使用所述重新排序的数字图像数据集在所述显示上渲染图像。
12.根据权利要求10所述的数字图像处理系统,还包括在被执行时经由通信网络向客户端设备发送所述重新排序的数字图像数据以用于在客户端设备显示器上渲染的例程。
13.根据权利要求10所述的数字图像处理系统,其中所述第一类型的所述图像对象是代表地理地图中的公路的线对象。
14.根据权利要求10所述的数字图像处理系统,其中所述数字图像数据重新排序例程执行以从所述原有分层数字图像数据集提取第二类型的另一图像对象集合,并且其中所述数字图像数据重新排序例程执行以创建另一重新排序的数字图像数据集,所述另一重新排序的数字图像数据集包括所述第二类型的图像对象,其中所述数字图像数据重新排序例程对所述第二类型的所述图像对象重新排序,从而使得来自所述原有图像数据层中的特定原有图像数据层的所述第二类型的所有所述图像对象在所述另一重新排序的数字图像数据集中位于如下第二类型的图像对象中的任何图像对象之前:这些第二类型的图像对象来自所述原有图像数据层中按照所述升序在所述特定原有图像数据层之后的所述原有图像数据层中的任何原有图像数据层,并且从而使得来自所述原有图像数据层中的所述特定原有图像数据层的所述第二类型的所述图像对象中的每个图像对象在所述另一重新排序的图像数据集中位于所述原有图像数据层中按照所述升序在所述特定原有图像数据层之前的所述原有图像数据层中的任何原有图像数据层的所有所述图像对象之后,并且其中所述原有图像数据层中的每个原有图像数据层的所述第二类型的所述图像对象按照所述原有图像数据层中的每个原有图像数据层的所述层内图像对象顺序的相反顺序位于所述重新排序的图像数据中。
15.根据权利要求14所述的数字图像处理系统,其中所述第一类型的所述图像对象是代表地理地图中的公路的内部部分的内部填充对象,并且所述第二类型的所述图像对象是代表地理地图中的公路的轮廓部分的轮廓对象。
16.根据权利要求15所述的数字图像处理系统,其中所述显示渲染例程执行以在所述轮廓对象之前渲染所述内部填充对象,从而使得所述内部填充对象遮蔽在显示中的重叠区域中的关联的轮廓对象。
17.根据权利要求10所述的数字图像处理系统,其中所述显示渲染例程在渲染对应的显示时阿尔法混合相同图像对象类型的图像对象的重叠部分以可见地描绘重叠部分。
18.根据权利要求10所述的数字图像处理系统,还包括阿尔法属性值赋值和混合例程,所述阿尔法属性值赋值和混合例程在被执行时向每个图像对象赋值阿尔法属性值、并且阿尔法混合相同类型的图像对象的重叠部分。
19.根据权利要求10所述的数字图像处理系统,其中所述z值赋值例程在被执行时根据i)图像对象类型、ii)每个图像对象位于其内的原有层和iii)所述图像对象的原有顺序而向所述图像对象赋值z值以维持原有相对图像对象深度。
20.一种用于在具有处理器和显示渲染例程的成像系统中使用并且用于在渲染显示时使用而未在中间图像中渲染原有分层数字图像数据集的每层的数字图像数据重新排序例程,所述数字图像数据重新排序例程包括:
在存储器上存储的第一数据访问例程,当所述第一数据访问例程在所述处理器上被执行时访问包括多个原有层的原有分层数字图像数据集,所述多个原有层被排列用于在合并中间图像以用于在渲染显示时使用之前被渲染以形成所述中间图像,每个原有层包括按照层内图像对象顺序排列的多个图像对象,并且所述原有层按照升序被排序;
一个或者多个数字图像数据处理例程,当所述数字图像数据处理例程在所述处理器上被执行时,从所述原有分层数字图像数据集提取第一图像对象集合,并且创建重新排序的数字图像数据集,所述重新排序的数字图像数据集包括第一层,所述第一层包括第一类型的图像对象,其中所述一个或者多个数字图像数据处理例程对所述第一类型的所述图像对象重新排序,从而使得来自所述原有层中的特定原有层的所述第一类型的所有所述图像对象在所述重新排序的图像数据集中位于如下第一类型的图像对象中的任何图像对象之前:这些第一类型的图像对象来自所述原有图像数据层中按照所述升序在所述特定原有图像数据层之后的所述原有层中的任何原有层,并且从而使得来自所述原有层中的所述特定原有层的所述第一类型的所述图像对象中的每个图像对象在所述重新排序的图像数据集中位于所述原有层中按照所述升序在所述特定原有层之前的所述原有层中的任何原有层的所有所述图像对象之后,并且其中所述原有层中的每个原有层的所述第一类型的所述图像对象按照所述原有图像数据层的所述层内图像对象顺序的相反顺序位于所述重新排序的图像数据集中;以及
在所述一个或者多个存储器之一上存储的z值赋值例程,所述z值赋值例程在被执行时,根据在所述原有分层数字图像数据集内的相对图像对象深度向所述重新排序的数字图像数据中的每个图像对象赋值z值。
21.根据权利要求20所述的成像系统,其中所述第一类型的所述图像对象是代表地理地图中的公路的线对象。
22.根据权利要求20所述的成像系统,其中执行所述数字图像数据重新排序例程还从所述原有分层数字图像数据集提取第二图像对象集合,所述重新排序的数字图像数据集包括第二层,所述第二层包括第二类型的图像对象。
23.根据权利要求22所述的数字图像数据重新排序例程,其中第一类型的所述图像对象是代表地理地图中的公路的内部部分的内部填充对象,并且第二类型的所述图像对象是代表地理地图中的公路的轮廓部分的轮廓对象。
24.根据权利要求23所述的数字图像数据重新排序例程,在数字图像系统内配置的远程服务器处理器上被执行,所述数字图像系统还包括客户端设备,所述客户端设备包括显示渲染例程,所述显示渲染例程在被执行时使用所述重新排序的数字图像数据集以渲染显示。
25.根据权利要求23所述的数字图像数据重新排序例程,其中所述内部填充对象在所述轮廓对象之前被渲染,从而使得所述内部填充对象遮蔽在显示中的重叠区域中的关联的轮廓对象。
26.根据权利要求20所述的数字图像数据重新排序例程,还包括阿尔法属性赋值例程,所述阿尔法属性赋值例程在被执行时向每个图像对象赋值阿尔法属性值、并且阿尔法混合相同类型的图像对象的重叠部分。
CN201280059548.2A 2011-10-12 2012-09-19 分层数字图像数据重新排序和有关的数字图像渲染引擎 Active CN103959343B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161546395P 2011-10-12 2011-10-12
US61/546,395 2011-10-12
US13/306,052 2011-11-29
US13/306,052 US8411113B1 (en) 2011-10-12 2011-11-29 Layered digital image data reordering and related digital image rendering engine
PCT/US2012/056092 WO2013055505A1 (en) 2011-10-12 2012-09-19 Layered digital image data reordering and related digital image rendering engine

Publications (2)

Publication Number Publication Date
CN103959343A true CN103959343A (zh) 2014-07-30
CN103959343B CN103959343B (zh) 2017-05-03

Family

ID=47989818

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280059548.2A Active CN103959343B (zh) 2011-10-12 2012-09-19 分层数字图像数据重新排序和有关的数字图像渲染引擎

Country Status (9)

Country Link
US (1) US8411113B1 (zh)
EP (1) EP2766878B1 (zh)
JP (1) JP6008973B2 (zh)
KR (1) KR101991470B1 (zh)
CN (1) CN103959343B (zh)
AU (1) AU2012321223B2 (zh)
CA (1) CA2851049C (zh)
DE (1) DE202012013456U1 (zh)
WO (1) WO2013055505A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109767466A (zh) * 2019-01-10 2019-05-17 深圳看到科技有限公司 画面渲染方法、装置、终端及对应的存储介质

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2460589B (en) * 2007-08-31 2012-11-28 Furuno Electric Co Chart display device and method for displaying chart
KR20120072124A (ko) * 2010-12-23 2012-07-03 한국전자통신연구원 실내 전자지도 데이터 생성 방법
JP2013118468A (ja) * 2011-12-02 2013-06-13 Sony Corp 画像処理装置および画像処理方法
US20150029214A1 (en) * 2012-01-19 2015-01-29 Pioneer Corporation Display device, control method, program and storage medium
US9124635B2 (en) 2012-11-30 2015-09-01 Intel Corporation Verified sensor data processing
CN105247566B (zh) 2013-06-23 2020-10-16 英特尔公司 基于上下文关系选择性地公开信息的方法、装置、介质
JP6244137B2 (ja) * 2013-08-12 2017-12-06 株式会社ジオ技術研究所 3次元地図表示システム
US9823824B2 (en) * 2013-08-19 2017-11-21 Kodak Alaris Inc. Context sensitive adaptable user interface
KR102146557B1 (ko) * 2013-11-06 2020-08-21 삼성전자주식회사 어플리케이션의 데이터를 렌더링하는 방법, 장치 및 기록매체
US20150170617A1 (en) * 2013-12-16 2015-06-18 Kabushiki Kaisha Toshiba Electronic device, method, and storage medium
US20150371429A1 (en) * 2014-02-10 2015-12-24 Sigma Cubed Inc. Method and Apparatus For Interactive 3D Visual Display of Microseismic Events
JP5759605B1 (ja) * 2014-09-29 2015-08-05 株式会社 ディー・エヌ・エー 画像描画装置及び画像描画プログラム
US9665924B2 (en) 2015-04-01 2017-05-30 Microsoft Technology Licensing, Llc Prioritized requesting of mapping layers
KR102292789B1 (ko) * 2015-04-07 2021-08-25 삼성전자 주식회사 디스플레이장치 및 그 제어방법
KR102395023B1 (ko) * 2015-06-30 2022-05-06 현대오토에버 주식회사 그래픽 기반의 웹 벡터 지도 표시 시스템 및 방법
JP6449180B2 (ja) * 2016-02-01 2019-01-09 ベステラ株式会社 三次元画像表示システム、三次元画像表示装置、三次元画像表示方法及びプラント設備の三次元画像表示システム
US10296565B2 (en) * 2017-01-18 2019-05-21 International Business Machines Corporation Optimized browser object rendering
US10503457B2 (en) 2017-05-05 2019-12-10 Nvidia Corporation Method and apparatus for rendering perspective-correct images for a tilted multi-display environment
US11321914B1 (en) * 2018-01-10 2022-05-03 Amazon Technologies, Inc. System for generating a navigational map of an environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030028315A1 (en) * 2001-07-31 2003-02-06 Hiroshi Miyahara Satellite navigation system of which map data are partially updateable
US20040117358A1 (en) * 2002-03-16 2004-06-17 Von Kaenel Tim A. Method, system, and program for an improved enterprise spatial system
CN101415018A (zh) * 2007-10-17 2009-04-22 北京灵图软件技术有限公司 一种地理信息数据的传输方法和系统
US20090210388A1 (en) * 2008-02-20 2009-08-20 Microsoft Corporation Efficiently discovering and synthesizing maps from a large corpus of maps

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07225849A (ja) * 1993-12-17 1995-08-22 Hitachi Ltd グラフィックスコンピュータと直線描画装置
US6034697A (en) * 1997-01-13 2000-03-07 Silicon Graphics, Inc. Interpolation between relational tables for purposes of animating a data visualization
US7483042B1 (en) * 2000-01-13 2009-01-27 Ati International, Srl Video graphics module capable of blending multiple image layers
JP2003185445A (ja) * 2001-12-21 2003-07-03 Zenrin Co Ltd ネットワークを介した経路探索用電子地図データの配信
US6906643B2 (en) * 2003-04-30 2005-06-14 Hewlett-Packard Development Company, L.P. Systems and methods of viewing, modifying, and interacting with “path-enhanced” multimedia
JP2005235041A (ja) 2004-02-23 2005-09-02 Nippon Telegr & Teleph Corp <Ntt> 検索画像表示方法および検索画像表示プログラム
KR20060083331A (ko) * 2005-01-14 2006-07-20 엘지전자 주식회사 디지털 방송 수신기에 있어서의 그래픽 데이터 처리방법
EP1681656A1 (en) * 2005-01-18 2006-07-19 Oculus Info Inc. System and method for processing map data
ITMI20070038A1 (it) 2007-01-12 2008-07-13 St Microelectronics Srl Dispositivo di renderizzazione per grafica a tre dimensioni con architettura di tipo sort-middle.
GB2460589B (en) * 2007-08-31 2012-11-28 Furuno Electric Co Chart display device and method for displaying chart
US8296056B2 (en) * 2009-04-20 2012-10-23 Honeywell International Inc. Enhanced vision system for precision navigation in low visibility or global positioning system (GPS) denied conditions
US20110193871A1 (en) 2010-02-07 2011-08-11 Microsoft Corporation Rendering multi-layered image

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030028315A1 (en) * 2001-07-31 2003-02-06 Hiroshi Miyahara Satellite navigation system of which map data are partially updateable
US20040117358A1 (en) * 2002-03-16 2004-06-17 Von Kaenel Tim A. Method, system, and program for an improved enterprise spatial system
CN101415018A (zh) * 2007-10-17 2009-04-22 北京灵图软件技术有限公司 一种地理信息数据的传输方法和系统
US20090210388A1 (en) * 2008-02-20 2009-08-20 Microsoft Corporation Efficiently discovering and synthesizing maps from a large corpus of maps

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109767466A (zh) * 2019-01-10 2019-05-17 深圳看到科技有限公司 画面渲染方法、装置、终端及对应的存储介质
CN109767466B (zh) * 2019-01-10 2021-07-13 深圳看到科技有限公司 画面渲染方法、装置、终端及对应的存储介质

Also Published As

Publication number Publication date
EP2766878B1 (en) 2020-02-05
JP6008973B2 (ja) 2016-10-19
WO2013055505A1 (en) 2013-04-18
US8411113B1 (en) 2013-04-02
AU2012321223B2 (en) 2018-03-15
AU2012321223A1 (en) 2014-04-17
CN103959343B (zh) 2017-05-03
US20130093780A1 (en) 2013-04-18
KR20140072205A (ko) 2014-06-12
CA2851049A1 (en) 2013-04-18
EP2766878A1 (en) 2014-08-20
KR101991470B1 (ko) 2019-09-30
CA2851049C (en) 2020-09-22
JP2014534510A (ja) 2014-12-18
EP2766878A4 (en) 2015-10-28
DE202012013456U1 (de) 2017-01-27

Similar Documents

Publication Publication Date Title
CN103959343A (zh) 分层数字图像数据重新排序和有关的数字图像渲染引擎
KR101085390B1 (ko) 3d 네비게이션을 위한 영상표현 방법, 장치 및 그 장치를포함한 모바일 장치
US9500496B2 (en) Apparatus, method and computer program for spatially representing a digital map section
CN103765413B (zh) 渲染跟随线条的文本图像
JPH0620063A (ja) テクスチャマップ透視図を生成する方法及び装置
JPH09292830A (ja) 電子地図表示方法及び電子地図表示装置
TW201537533A (zh) 三次元地圖顯示系統
US7053912B2 (en) System and method for run-time integration of an inset geometry into a background geometry
CN104952101A (zh) 一种基于高度场的动态矢量渲染方法
TWI552120B (zh) 三次元地圖顯示系統
JP5893142B2 (ja) 画像処理装置および画像処理方法
Rallis et al. A mobile game for enhancing Tourism and Cultural Heritage
US20090009526A1 (en) Method and system for rendering a shape
Murphy Intellectual highlighting of remote sensing imagery for better image map design
Hoarau et al. Color and texture interpolation between orthoimagery and vector data
CN113689515A (zh) 地图渲染系统、方法及介质
Hill An efficient, hardware-accelerated, level-of-detail rendering technique for large terrains
Häberling et al. Mountain cartography: revival of a classic domain
US20090213111A1 (en) Method for three-dimensional depiction of a digital road map
Sidiropoulos et al. Ultra-real or symbolic visualization? the case of the city through time
Pescarin¹ et al. Back to 2nd AD A VR on-line experience with Virtual Rome Project
van Lammeren et al. 3D visualizations and 2D scenarios
KR101061549B1 (ko) 3차원 사물의 텍스쳐 맵핑 시스템 및 그 방법
Lambers et al. Visual assistance tools for interactive visualization of remote sensing data
van Lammeren et al. Centre for Geo Information (CGI)

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: American California

Patentee after: Google limited liability company

Address before: American California

Patentee before: Google Inc.