用于改进多姿态3d渲染的速度和视觉保真度的方法_4

文档序号:8207778阅读:来源:国知局
户端设备12所实现的用于通过组合图像而改进多姿态3D 渲染的速度的方法240。客户端设备例如通过接收从可对于其获得多姿态3D渲染的多个所 显示的模型或对象中进行选择的用户输入而请求多姿态3D渲染(框244)。在一些实施例 中,客户端设备12接收观看应用34,其可操作来接收包含2D渲染的单个图像文件并且依序 显示该单个图像文件的多个部分(246)。在观看应用34已经处于客户端设备12上的实施 例中,框246可以被省略。客户端设备12接收具有多个2D渲染部分的图像文件(框246) 并且从该图像以及从随该图像从服务器13接收的其它参数确定该图像的一个或多个参数 (框248)。观看应用34将该图像划分为对应于多个2D渲染的部分(框250)并且依序显 示多个2D图像部分(框252)。当然,如贯穿该说明书所描述的,在各个实施例中,观看应用 34还可以接收一个或多个覆盖图像,可以将该覆盖图像层叠于单个图像文件的各部分上, 可以将单个覆盖图像文件划分为对应于包括2D渲染的部分的部分,可以在接收2D渲染之 前接收缩略图并且在下载2D渲染的同时显示缩略图渲染,等等。
[0091] 图17描绘了可以由服务器14实现以便通过预先加载优化缩略图视图而改进多姿 态3D渲染的速度的方法260。服务器14和/或数据库16可以存储模型或对象的多个2D 渲染(框262)。服务器14和/或数据库16还可以存储多个相对应的缩略图(框264),每 个缩略图用于多个2D渲染中的一个。每个缩略图可以为有所减小的颜色位深,可以为比2D 渲染小的分辨率,和/或可以为在水平维度中比垂直维度中低的分辨率。除此之外或替选 地,如以上所描绘的,缩略图可以被组合为单个图像文件。在一些实施例中,服务器14可以 向客户端12传送网页,该网页描绘了对于其存在多姿态3D渲染的多个模型或对象。客户端 设备12的用户可以选择模型或对象中的一个,使得客户端设备12传送对于相对应的多姿 态3D渲染的请求。当接收到对于多姿态3D渲染的请求时(框266),在一些实施例中,服务 器14可以传送观看应用34,其可操作来在传送多个2D渲染的同时显示缩略图(框268)。 服务器14可以响应于该请求而传送多个缩略图(作为单个图像文件或多个图像文件)(框 270)并且之后可以传送多个2D渲染(框272)。
[0092] 贯穿该说明书,多个实例可以实现作为单个实例所描述的组件、操作或结构。虽然 一种或多种方法的个体操作被图示和描述为分立操作,但是个体操作中的一个或多个可以 同时执行,并且除非明确描述或者以其它方式在逻辑上所要求的(例如,一个结构必须在 其能够使用前被创建),否则不要求操作以所图示的顺序来执行。在示例配置中作为分立组 件所给出的结构和功能可以被实现为组合结构或组件。类似地,作为单个组件所给出的结 构和功能可以被实现为分立组件。这些和其它的变化、修改、添加和改进落入这里的主题的 范围之内。
[0093] 例如,网络16可以包括但并不限于LAN、MAN、WAN、移动、有线或无线网络、私有网 络或虚拟私有网络的任意组合。此外,虽然图1中为了使得描述简化并清楚而仅图示了一 个客户端设备12,但是要理解的是,任意数量的客户端设备12都被支持并且能够与服务器 14通信。
[0094] 此外,某些实施例在这里被描述为包括逻辑或者多种组件、模块、例程、应用或机 制。应用和例程可以构成软件模块(例如,实现于机器可读介质上或传输信号中的代码) 或硬件模块。硬件模块是能够执行某些操作并且可以以某种方式进行配置或部署的有形单 元。在示例实施例中,一个或多个计算机系统(例如,独立、客户端或服务器计算机系统) 或者计算机系统的一个或多个硬件模块(例如,处理器或处理器群组)可以通过软件(例 如,应用或应用部分)被配置为进行操作而执行如这里所描述的某些操作的硬件模块。
[0095] 在各个实施例中,硬件模块可以机械或电子地实现。例如,硬件模块可以包括被永 久性或半永久性地配置为执行某些操作的专用电路或逻辑(例如,作为专用处理器,诸如 现场可编程门阵列(FPGA)或专用集成电路(ASIC))。硬件模块还可以包括通过软件被临 时配置为执行某些操作的可编程逻辑或电路(例如,包含在通用处理器或其它可编程处理 器内)。将要意识到的是,机械地、以专用且永久性配置的电路或者以临时配置的电路(例 如,通过软件进行配置)来实现硬件模块的决定可以由成本和时间方面的考虑所驱使。
[0096] 因此,术语"硬件模块"应当被理解为包含有形实体,其是被物理构建、永久性配置 (例如,被硬线连接)或临时配置(例如,被编程)而以某种方式进行操作或者执行这里所 描述的某些操作的实体。考虑其中硬件模块被临时配置(例如,被编程)的实施例,每个硬 件模块无需在任何一个时间实例进行配置或例示。例如,在硬件模块包括使用软件配置的 通用处理器的情况下,通用处理器可以在不同时间被配置为相应的不同硬件模块。软件因 此可以对处理器进行配置,以例如在一个时间实例构成特定硬件模块而在不同时间实例构 成不同硬件模块。
[0097] 硬件模块能够往来于其它硬件模块提供和接收信息。因此,所描述的硬件模块可 以被示为是通信耦合的。在同时存在多个这样的硬件模块的情况下,可以通过连接硬件模 块的信号传输(例如,通过适当的电路和总线)来实现通信。在其中多个硬件模块在不同 时间进行配置或例示的实施例中,这样的硬件模块之间的通信例如可以通过在该多个硬件 模块可以访问的存储器结构中存储和获取信息来实现。例如,一个硬件模块可以执行操作 并且将该操作的输出存储在其与之通信地耦合的存储器设备中。另外的硬件模块于是在随 后的时间可以访问该存储器设备以获取并处理所存储的输出。硬件模块还可以利用输入或 输出设备来发起通信,并且能够对资源(例如,信息集合)进行操作。
[0098] 这里所描述的示例方法的各种操作可以至少部分地由被临时配置(例如,通过软 件)或永久性配置为执行相关操作的一个或多个处理器来执行。无论被临时还是持久性地 进行配置,这样的处理器都可以构成处理器实现的模块,其进行操作以执行一个或多个操 作或功能。这里所提到的模块在一些示例实施例中可以包括处理器实现的模块。
[0099] 类似地,这里所描述的方法或例程可以至少部分是由处理器实现的。例如,方法的 至少一些操作可以由一个或多个处理器或处理器实现的硬件模块来执行。某些操作的执行 可以分布在一个或多个处理器之间,该处理器不仅处于单个机器内,而且跨多个机器进行 部署。在一些示例实施例中,一个或多个处理器可以位于单个位置(例如,在家庭环境、办 公环境内或者作为服务器组),而在其它实施例中,该处理器可以跨多个位置分布。
[0100] 一个或多个处理器也可以进行操作而支持相关操作在"云计算"环境中的执行或 者作为"软件即服务"(SaaS)的执行。例如,至少一些操作可以由计算机群组(作为包括处 理器的机器的示例)来执行,这些操作可经由网络(例如,互联网)以及经由一个或多个适 当接口(例如,应用编程接口(API))进行访问。
[0101] 某些操作的执行可以分布在一个或多个处理器之间,该处理器不仅处于单个机器 内,而且跨多个机器进行部署。在一些示例实施例中,一个或多个处理器或处理器实现的模 块可以位于单个地理位置(例如,在家庭环境、办公环境内或者作为服务器组),而在其它 实施例中,一个或多个处理器或处理器实现的模块可以跨多个地理位置进行分布。
[0102] 该说明书的一些部分关于对作为比特或二进制数字信号存储在机器存储器(例 如,计算机存储器)内的数据的操作的算法或符号表示而给出。这些算法或符号表示是数 据处理领域的普通技术人员用来向该领域的其它技术人员传递其工作实质的示例技术。如 这里所使用的,"算法"是导致期望结果的操作或类似处理的自洽序列。在该环境中,算法和 操作涉及物理量的物理操控。典型地但并非必然地,这样的量可以采用能够被机器存储、访 问、传输、合并、比较或以其它方式进行操控的电、磁或光学信号的形式。有时原则上出于一 般使用的原因,使用诸如"数据"、"内容"、"比特"、"值"、"要素"、"符号"、"字符"、"项"、"数 字"、"数"等的词语来指代这样的信号是方便的。然而,这些词仅是便利的标记并且要与适 当物理量相关联。
[0103] 除非以其它方式明确指出,否则使用诸如"处理"、"计算"、"运算"、"确定"、"呈 现"、"显示"等的词语所进行的讨论可以指代机器(例如,计算机)的对数据进行操控或变 换的动作或处理,该数据在一个或多个存储器(例如,易失性存储器、非易失性存储器或其 组合)、寄存器或者获取、存储、传送或显示信息的其它机器组件内被表示为物理(例如,电 子、磁性或光学)量。
[0104] 如这里所使用的,对于"一个实施例"或"实施例"的任何引用都意味着结合该实 施例所描述的特定要素、特征、结构或特性都包括在至少一个实施例中。短语"在一个实施 例中"在该说明书中各处的出现并非必然全部都指代同样的实施例。
[0105] -些实施例可以连同其派生词一起使用表达"耦合"和"连接"进行描述。例如, 一些实施例可以使用术语"耦合"进行描述以指示两个或更多元素处于直接的物理或电气 接触。然而,术语"耦合"也可能意味着该两个或更多元素并非互相直接接触,但是仍然互 相协同操作或交互。实施例并不被限于该上下文之中。
[0106] 如这里所使用的,术语"包括"、"包括了"、"包含"、"包含了"、"具有"、"拥有"或者 其任意的其它变体意在覆盖非排他性的包括。例如,包括一系列元素的处理、方法、物品或 装置并非必然仅被限于那些元素,而是可以包括并未明确列出或这样的处理、方法、物品或 装置所固有的其它元素。另外,除非明确相反指出,否则"或"是指可兼或而并非互斥或。 例如,条件A或B被以下任意一个所满足:A为真(或存在)而B为假(或不存在),A为假 (或不存在)而B为真(或存在),以及A和B均为真(或存在)。
[0107] 此外,"一个"("a"或"an")的使用被用来描述这里的实施例中的元素和组件。 这样做仅是为了便利并且给出该描述的一般含义。该描述应当被理解为包括一个或者至少 一个,并且除非明显表示其它含义,否则单数也包括复数。
[0108] 再进一步地,附图仅是出于说明的目的对地图编辑器系统的优选实施例进行描 述。本领域技术人员将从以下讨论轻易认识到,可以采用这里所图示的结构和方法的替选 实施例而并不背离这里所描述的原则。
[0109] 当阅读本公开时,本领域技术人员将会意识到用于通过这里所公开的原则识别终 端道路分段的系统和处理的再另外的替选结构和功能设计。因此,虽然已经图示并描述了 特定实施例和应用,但是所要理解的是,所公开的实施例不限于这里所公开的精确构造和 组件。可以对这里所公开的方法和装置的配置、操作和细节进行对于本领域技术人员将会 显而易见的各种修改、改变和变化而并不背离所附权利要求中所限定的精神和范围。
[0110] 任意特定实施例的特定特征、结构或特性可以以任意适当方式进行组合并且以任 意适当的组合与一个或多个其它实施例进行组合,这包括在并不相对应地使用其它特征的 情况下使用所选择的特征。此外,可以进行许多修改以针对本发明的实质性范围和精神来 适配特定应用、情形或材料。所要理解的是,这里所描述和图示的本发明实施例的其它变化 和修改借助于这里的教导是可能的并且被认为是本发明的精神和范围的一部分。作为示例 而非限制,本公开至少预期以下方面:
[0111] 1. 一种在显示器上描绘对象的多姿态三维(3D)渲染的方法,所述方法包括:
[0112] 在计算机可读介质上存储所述对象的多个二维(2D)渲染,所述多个2D渲染中的 每一个从不同的显性观看角度来描绘所述对象;
[0113] 经由网络将所述多个2D渲染传送至耦合到所述显示器的客户端设备;
[0114] 在所述计算机可读介质上存储第一多个覆盖渲染,所述第一多个覆盖渲染中的每 一个对应于所述多个2D渲染中的相应一个2D渲染,并且每个覆盖渲染包括:
[0115] (I) (a)阴影层,所述阴影层以第一颜色进行渲染并且与如在相对应的2D渲染中 所渲染的所述对象上的阴影相对应,或(b)边缘线条,所述边缘线条以第一颜色进行渲染 并且与如在相对应的2D渲染中所渲染的所述对象的边缘相对应;和
[0116] (2)透明背景;
[0117] 经由所述网络将所述第一多个覆盖渲染传送至所述客户端设备;
[0118] 提供可操作来显示多个复合图像的界面,每个复合图像包括层叠于其相对应的2D 渲染之上的所述第一多个覆盖渲染中的一个覆盖渲染。
[0119] 2.根据方面1所述的方法,其中在所述计算机可读介质上存储第一多个覆盖渲染 包括存储单个图像的文件,所述文件存储单个图像,并且进一步地,其中所述第一多个覆盖 渲染中的每一个形成所述单个图像的一部分。
[0120] 3.根据方面1或方面2所述的方法,其中所提供的界面进一步可操作来提供用于 改变所述阴影层的透明度的控件。
[0121] 4.根据前述方面中的任何一个所述的方法,进一步包括:
[0122] 传送第二多个覆盖渲染,所述第二多个覆盖渲染中的每一个对应于所述第一多个 覆盖渲染中的一个覆盖渲染以及所述多个2D渲染中的一个2D渲染,其中所提供的界面进 一步可操作来依序显示所述第一多个覆盖渲染中的每一个和所述第二多个覆盖渲染中的 每一个作为包括相对应的2D渲染的复合图像的层。
[0123] 5.根据前述方面中的任何一个所述的方法,其中传送第二多个覆盖渲染包括传送 第二单个图像文件,所述第二单个图像文件包含第二单个图像,并且进一步地,其中所述第 二多个覆盖渲染中的每一个形成所述第二单个图像的一部分。
[0124] 6.根据前述方面中的任何一个所述的方法,其中所提供的界面有选择地可操作来 依序显示所述多个2D渲染中的每一个而不是相对应的复合图像。
[0125] 7.根据前述方面中的任何一个所述的方法,其中提供界面包括提供可操作来以预 定义顺序显示所述多个复合图像中的每一个的界面。
[0126] 8.根据前述方面中的任何一个所述的方法,其中在所述计算机可读介质上存储多 个覆盖渲染包括存储单个图像文件,所述文件存储单个图像,并且进一步其中,所述多个覆 盖渲染中的每一个形成所述单个图像的一部分。
[0127] 9.根据前述方面中的任何一个所述的方法,其中所述多个覆盖渲染被排列在所述 单个图像中以对应于所述预定义顺序。
[0128] 10.根据前述方面中的任何一个所述的方法,其中传送所述覆盖渲染包括在传送 所述多个2D渲染之前传送所述覆盖渲染。
[0129] 11.根据前述方面中的任何一个所述的方法,所提供的界面进一步可操作来在所 述多个2D渲染被所述客户端设备完全接收之前依序显示所述多个覆盖渲染中的每一个。
[0130] 12.根据前述方面中的任何一个所述的方法,其中所提供的界面有选择地可操作 来依序显示所述多个覆盖渲染中的每一个而不是相对应的复合图像。
[0131] 13. -种用于在显示器上描绘对象的多姿态三维(3D)渲染的系统,所述系统包 括:
[0132] 数据库,所述数据库存储(1)所述对象的多个二维(2D)渲染,所述多个2D渲染中 的每一个从不同的显性观看角度描绘所述对象,和(2)多个覆盖渲染,每个覆盖渲染对应 于所述多个2D渲染中的相应一个2D渲染并且每个覆盖渲染包括(i) (a)阴影层,所述阴影 层以第一颜色进行渲染并且与如在相对应的2D渲染中所渲染的所述对象上的可见阴影相 对应;或(b)边缘线条,所述边缘线条以第一颜色进行渲染并且与如在相对应的2D渲染中 所渲染的所述对象的边缘的边缘线条相对应;和(ii)透明背景;
[0133] 机器可执行指令,所述机器可执行指令存储在机器可读介质上并且指定界面,所 述界面可操作来显示多个复合图像,每个复合图像包括层叠于其相对应的2D渲染之上的 所述覆盖渲染中的一个覆盖渲染;
[0134] 服务器,所述服务器经由网络通信地耦合至所述数据库并且可操作来(1)向通信 地耦合至所述网络的客户端设备发送指定所述界面的机器指令,以及(2)从所述客户端设 备接收对渲染所述对象的请求,并且响应于所述请求,从所述数据库获取所述多个2D渲染 以及所述多个覆盖渲染,并且将所述多个2D渲染以及所述多个覆盖渲染传送至所述客户 端设备。
[0135] 14.根据方面13所述的系统,其中所述多个覆盖渲染被存储为单个图像文件,所 述单个图像文件存储单个图像,并且进一步其中,所述多个覆盖渲染中的每一个形成所述 单个图像的一部分。
[0136] 15.根据方面13或方面14所述的系统,其中所述服务器可操作来在传送所述多个 2D渲染之前传送所述覆盖渲染。
[0137] 16.根据方面13-15中的任何一个所述的系统,其中由所述服务器所传送的所述 界面进一步可操作来在所述多个2D渲染被所述客户端设备完全接收之前依序显示所述多 个覆盖渲染中的每一个。
[0138] 17.根据方面13-16中的任何一个所述的系统,其中所述服务器所传送的所述界 面有选择地可操作来依序显示所述多个覆盖渲染中的每一个而不是相对应的复合图像。
[0139] 18.根据方面13-17中的任何一个所述的系统,其中所述服务器所传送的所述界 面有选择地可操作来依序显示所述多个2D渲染中的每一个而不是相对应的复合图像。
[0140] 19.根据方面13-18中的任何一个所述的系统,其中服务器所传送的所述界面进 一步可操作来以预定义顺序显示所述多个图像中的每一个。
[0141] 20.根据方面13-19中的任何一个所述的系统,其中所述多个覆盖渲染被存储为 单个图像文件,所述
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1