自适应图像渲染以及假象的使用的制作方法

文档序号:6360855阅读:165来源:国知局
专利名称:自适应图像渲染以及假象的使用的制作方法
自适应图像渲染以及假象的使用
背景技术
图像从基础的内容源进行渲染。许多内容源允许图像以广泛多样的分辨率或者以任意高的分辨率进行渲染。然而,将图像置于屏幕上会耗费很长时间,这或者是因为对图像进行渲染是计算密集的,或者是由于输入/输出(I/o)响应时间,从网络或较慢的本地存储设备下载图像可能耗费很长时间。因此,渲染会耗费相当多的时间。在许多情况下,所要显示的图像内容实际上是图像的集合(例如,响应于图像搜索的许多图像的集合)。由于集合中的每个图像具有其自己必须被单独渲染的源,所以对图像集合进行渲染所需的时间要数 倍于渲染单个图像。从提供高质量的用户体验的角度来看,总体上有两种处理渲染图像所采取的时机的方式。一种方式是在图像被请求之前对它们进行预先渲染。这种方法涉及预测哪些图像将会被请求,以及被请求以什么分辨率。其还涉及存储大量预先渲染图像,并且将计算资源专用于渲染在未来的某个点可能或可能不会被请求的图像。此外,如果预先渲染的图像为高分辨率,则虽然避免了渲染图像时的延迟,但是仍然会从传送高分辨率图像所占用的时间量产生延迟。当涉及高分辨率图像的集合时,则这样的延迟同样会数倍地增加。另一种处理渲染图像所采取的时机的方式是按需渲染图像,并且告诉用户其将必须在图像被渲染时进行等待。当使用该技术时,用户可能被示出以告诉其在图像被渲染时进行等待的消息,或者可能在图像被渲染的同时被示出以符号或动画(例如,沙粒经过沙漏落下,手在时钟上移动,等等)。这种技术通常会导致非常低质量的用户体验。一些系统使用有限形式的预先渲染。例如,图像可以以两种形式进行存储涉及大量数据的高分辨率图像,以及非常低分辨率的小型缩略像。这种方法的缺陷在于其迫使显示系统在示出低分辨率的缩略图还是示出会占用很长时间来传送或者在显示器上进行绘制的高分辨率图像之间进行选择。

发明内容
图像可以以将已有的预先渲染图像的可用性以及能够以其传送和/或绘制图像的速度纳入考虑之中的方式进行渲染,并且这即使在没有预先渲染的图像可用的情况下也能够提升用户体验。当图像要被显示时,图像渲染系统尝试确定预先渲染的图像在进行渲染的机器上是否是本地可用的。如果是,该图像就可以被呈现。如果没有可用的适当预先渲染的图像,则系统绘制被称之为“假象(imposter)”的占位图像。该假象例如可能是颜色的斑迹(blur)。假象的外观可以启示用户该假象是将以逐渐提高的分辨率变清晰的图像的第一次迭代。然而,该假象可能并非是基于来自基础图像的任何实际信息。因此,假象表示高分辨率图像绘制中的早期阶段的推断仅是一种错觉一但是是一种提升用户体验的错觉。当要对图像的集合进行渲染时(例如,响应于图像搜索的图像集),不以预先渲染形式获得的每个图像可以被作为假象图像而示出。—旦已经在为图像指定的地方绘制了一些内容(无论所绘制的东西是假象还是真实图像的低分辨率版本),就可以进行获得真实图像或者该图像的较高分辨率版本的处理。假设无法在本地获得适当的预先渲染图像,则可以获取图像源(即,包含待渲染图像的基础模型的数据,诸如JPEG文件)。该图像随后可以以较高分辨率进行渲染。在可应用的情况下,若干图像可以被渲染为包括在集合之中,在这样的情况下,获取并渲染作为该集合一部分的单独图像的处理可以并行进行。渲染高分辨率图像以替代低分辨率图像或假象的思想的一种变化形式是连续渲染和绘制较高分辨率的图像,由此使得令图像变得更为清晰的处理动画呈现。当使用假象图像时,连续的图像可以将有所增加的实际图像数据量与假象数据进行混合。渲染并绘制图像的方式可以是自适应的以使得将各种资源的可用性和能力纳入考虑之中。例如,一些图像格式的属性提供了对某些分辨率进行渲染的快速路径(例如,能够从JPEG以256或512像素的分辨率快速渲染图像),从而处于特定格式的图像的可用性可以被用作选择特定分辨率的基础。此外,能够以其绘制和/或传送图像的速度可能被用作选择要绘制多少种不同分辨率的图像的基础。例如,某人可能想要通过例如在一秒钟内示出三十个相继更高的分辨率而使得变清晰的图像动画呈现。但是如果环境的物理能力并·不允许以每秒钟三十帧对图像进行绘制和/或传送,则系统会关于将以其对图像进行渲染的分辨率进行不同的选择。相反,环境可能允许以高速对图像进行绘制和/或传送,但是那些图像的渲染却可能很慢。换句话说,与绘制处理的缓慢以及渲染处理的缓慢相关的考虑因素可能在确定要渲染什么图像时被单独纳入考虑之中。提供该发明内容而以简化形式引入随后在具体实施方式
中进一步描述的概念的选择。该发明内容并非意在识别出所请求保护主题的关键特征或必要特征,也并非意在被用来对所请求保护主题的范围进行限制。


图I和2是示出可以如何以相继更高的分辨率对图像进行渲染的示例的框图。图3是示例图像集合的框图。图4是可以被用来渲染内容的示例组件的框图。图5是提供图像的示例处理的流程图。图6是可以由这里的主题所执行的一些示例适配的框图。图7是可以结合这里所描述主题的实施方式使用的示例组件的框图。
具体实施例方式近年来,图像内容在计算中已经明显变得更为普遍。在早期计算中,人和计算机之间的交互通常以文本通信的形式发生。当前,用户已经开始预期图像形式的内容,并且对图像的质量以及输送那些图像时的体验质量具有了越来越高的预期。电子邮件、搜索结果、网页等通常包含图像,并且用户预期这些图像要通过各种类型的有线或无线连接进行输送,并且处于从台式计算机到无线电话的许多类型的设备上。在许多情况下,图像以无法直接显示的一些模型类型进行存储。相反,图像必须以某种分辨率被渲染为像素,以使得该像素能够在显示设备上进行显示。对图像尤其是高分辨率图像进行渲染的处理在用来产生图像的计算量或者用来对图像执行I/o操作的时间量方面是昂贵的。对这样的图像进行处理所花费的时间量令接收那些图像时的用户体验有所下降。在许多情况下,所要渲染的图像是集合(例如,构成图像搜索的搜索结果的图像集合)的一部分,从而对集合进行渲染的成本可能数倍于渲染单个图像的成本。当要提供高质量的用户体验时,有许多种方式来解决提供所渲染图像的问题。一种方式是对图像进行预先渲染,从而图像将准备响应于用户需求而进行显示。然而,预先渲染图像是具有成本的,原因在于其涉及将大量计算资源和存储用来创建可能被请求或可能永远不会被请求的图像。图像可以被请求以各种分辨率,这意味着预先渲染图像不仅会涉及预测哪些图像将要被请求,而且还涉及那些图像将被请求以什么分辨率。此外,由于可用图像集合不断变化,所述图像的预先渲染是必须针对所能够请求的每个新图像执行的持续进行的处理。此外,虽然预先渲染减少了(有效地减少为零)在请求图像之后将必须等待对图像进行渲染的时间量,但是预先渲染会强加以其它类型的时间成本。由于其可能仅对于以少数的不同分辨率(例如,低、中和高)来渲染图像是可行的,所以预先渲染的高质量图像可能与可用传输带宽或要在其上显示该图像的设备的绘制速度不相兼容。例如,如果可以中等 和高分辨率获得图像,为了(在响应时间和质量的权衡方面)优化用户体验,示出处于中等和高分辨率之间某点的图像可能是有意义的。但是如果不存在这样的图像,则系统将必须在提供中等分辨率图像和提供高分辨率图像之间进行选择。前者的选择可能会通过提供较低的视觉质量而降低用户体验,而后者则可能在向用户设备传送图像所用的时间量以及在显示器上绘制它的所用时间量方面降低用户体验。虽然这里所描述的主题应用于要渲染单个图像的情形以及要渲染图像集合的情形,但是所要注意的是,快速渲染高质量图像的问题在要渲染图像集合时比要渲染单个图像时成倍增加。这里所描述的主题允许以适应于有关提供图像的各种约束的方式对图像进行渲染,以便提供高质量的整体用户体验。关于提供图像的能力而存在的一些约束示例包括预先渲染图像的可用性(或其缺失);与其它分辨率相比相对容易以某些分辨率对图像进行渲染;用于从渲染器向将显示图像的设备传送图像的带宽的可用性;以及显示设备能够绘制连续图像的速度。此外,虽然使用了假象图像,但是这里的主题即使在没有可方便使用的预先渲染图像(甚至没有低分辨率图像)的情况下也能够提升用户接收图像的体验感知。当对一个或多个图像进行请求时,依据这里的主题所设计的系统试图确定其能够快速提供什么。针对图像的请求可以采用直接用户请求的形式。或者作为另一个示例,作为响应于图像搜索请求的处理的一部分,搜索引擎可以请求该图像。或者作为进一步的示例,图像可以在网页上被引用,并且网络浏览器可以作为处理网页的一部分来请求图像。这里的主题并不局限于针对图像的请求所出现的任何特定方式。可能有低分辨率的预先渲染图像是可用的,在这样的情况下,可以提供那些图像。低分辨率图像可以被快速传送和绘制,从而使用低分辨率图像可以使得非常快地对请求进行响应。然而,如果不可获得低分辨率图像,则系统可以提供假象图像。假象图像是对于用户而言可以表现为以越来越高的分辨率绘制图像的处理中非常早期的阶段。然而,假象图像可能仅基于图像的大小和纵横比。例如,假象图像可能简单地是以将随后渲染的绘制形状和大小所示出的颜色斑迹和图案。但是由于假象图像可能基于与绘制相关的很少信息或者并不基于与绘制相关的信息,所以其可以非常快地被提供,由此提供能够被用来对图像请求进行响应的某个内容。该快速响应可以提升用户的体验感知。当用户被示出以假象图像或低分辨率图像时,系统可以致力于以其它分辨率获得图像。存在多种产生这些图像可能涉及的任务。首先,可能必须从本地或远程的源定位基础的未渲染图像。一旦该图像被定位,就可以进行与如何渲染该图像相关的各种决策。例如,系统可能想要通过示出相继更高分辨率的图像渲染而对以较高分辨率绘制图像的处理进行动画呈现。该动画呈现的速率可以取决于图像所能够被传送的速率、能够在屏幕上绘制图像的速率、每单位时间能够完成的不同图像渲染的次数,并且在图像集合的情况下,还取决于该集合中所包括的图像数量。因此,系统可能想要通过令连续图像的分辨率翻倍来对使得图像变清晰的处理进行动画呈现。但是,如果对两个连续功率中的每一个针对每种分辨率来渲染新图像涉及对比系统在给定时间单位中所能够处理的计算资源更多的图像进行渲染,或者涉及比通信和/或显示技术每时间单位所能够处理的更多的图像传输和/或重新绘制,则系统可能选择渲染连续图像以使得每个图像具有之前一个图像的四倍分辨率。或者,以某些图像格式(例如,JPEG),一些分辨率能够比其它分辨率更快地进行渲染,从而系统可能选择以能够快速渲染的分辨率来对图像进行渲染一即使系统在所有其它因素都相等的情况下本会选择不同分辨率。·
通常,这里所描述的主题可以被用来示出任意数量的图像,包括单个图像。然而,在一个示例中,该系统可以被用来对诸如响应于图像搜索查询而被提供给用户的多个图像的图像集合进行渲染。现在转向附图,图I和2示出了可以如何以相继更高的分辨率来渲染图像的示例。在图I中,图像102已经被请求。图像102可以为某种格式,诸如联合图像专家组(JPEG)文件、标签图像文件格式(TIFF)文件、表示几何形状(例如,VISIO绘图程序所生成的文件)的格式,或者可以是任意其它图像类型。针对图像102的请求可以以任意方式出现。例如,用户可以对图像102进行明确请求,或者图像102可以在浏览器试图加载的网页中被引用,或者图像102可以作为对搜索查询的响应而由搜索引擎所返回。以上是针对图像的请求可以如何出现的一些示例,但是针对图像102的请求可以以任意方式出现。在图I和2的示例中,可能的情况是不能获得图像102的预先渲染版本。因此,可以示出假象图像104。在图I的示例中,虽然假象图像104可以具有颜色,但是其为以各种图案绘制的对角线的黑白斑迹。在该示例中,假象图像104是与图像102相同纵横比的矩形。即使没有图像102的渲染版本可用,也可能确认图像102的纵横比(或者,更一般地,图像102的形状),原因在于可以从图像102的元数据确定其纵横比或形状。实际上,即使图像102不是可轻易获得的,其元数据也可以在单独的位置获得。因此,为了使得假象图像104看上去实际是绘制图像102的早期阶段,假象图像104可以以图像102的纵横比并且以图像102要被绘制的大小而被绘制。在图像102是非矩形的情况下,元数据可以揭示出该图像的形状,在这种情况下,假象图像104可以以图像102的形状进行绘制。(通常,纵横比是形状表述的具体类型,其应用于矩形形状)。在极端情况下,甚至不可能获得图像102的元数据。在这种情况下,可以以任意纵横比(或者某个其它形状)绘制假象图像104。注意到,一些系统在渲染图像的同时提供某种类型的消息,其指示在接收图像时将会有延迟(例如,“请在获取您的图像时进行等候”),或者提供表示等待或时间进程的一些符号类型(例如,沙粒通过沙漏落下、圆环绕行、时钟等)。然而,假象图像可能并不包含这样的消息或符号,从而假象能够实施不同的方法假象图像可能被没有针对解释或确认延迟进行这么多的设计,但是相反地使得用户感觉到其开始接收图像。在绘制了假象图像104之后,用户可能对系统工作于绘制所请求图像感到满意。因此,可以执行获得图像、确定以其渲染图像的(多个)分辨率以及以那些(多个)分辨率渲染图像的处理。以下结合图4-6对这些处理如何被执行的示例进行讨论。然而,出于图I和2的目的,将假设以某种方式获得一个或多个渲染图像。那些图像中的第一个是渲染106。渲染106是图像102以低分辨率的渲染。出于说明的目的,该图像的低分辨率属性在图I中通过使得图像的各个要素以虚线出现而表示,虽然在实际上,低分辨率图像是该图像仅以相对少量的像素进行表示的图像。在图2中,渲染108以甚至更大分辨率表示图像102 (如以比图像106的虚线更为密集地出现的虚线所指示的)。可以绘制图像102的相继更高分辨率的版本。最终,可以出现如渲染110的渲染后续,其表现为相对高分辨率的图像102 (例如,具有与要在其上示出该渲染的显示设备一样高的分辨率的图像)。所要注意的是,图I和2中从假象图像104到渲染106、108和110 的渲染进程是对使得图像变为更高分辨率和/或更为清晰的处理的进行动画呈现的示例。虽然图I和2示出了单个图像从假象进行至高分辨率图像,但是所要注意的是,所要渲染的图像可以是诸如图3所示的集合300的集合的一部分。在图3的示例中,集合300是包含九种渲染302、304、306、308、310、312、314、316和318的若干图像的集合。如所能够看到的,集合300中的各个图像处于渲染和/或可用性的不同阶段。例如,渲染302以中等分辨率被示出。(不同图像的)渲染304以低分辨率被示出。(又一不同图像的)渲染306以高分辨率被示出。渲染308-318被示出为假象图像,指示还没有相应图像的渲染可用。集合300可以以各种方式进行显示。在一个示例中,集合中的所有图像(或者在图像不可获得的情况下为假象)被渲染到单个位图上,并且该位图可以被显示。例如,web服务器能够合成包含图像集合的单个页面,并且随后能够将该页面的位图发送到用户的机器以便由用户的浏览器进行渲染。随着另外的图像(或者现有图像的更高分辨率版本)变为可用,该位图能够被更新并且重新发送至浏览器以便替换当前由浏览器所示出的位图。或者,作为另一个示例,集合中的每个图像可以被单独渲染。例如,网页可以包含指向图像的链接,从而浏览器从相应的统一资源定位符(URL)逐一获得图像并且在页面上的适当位置显示每个图像。当请求指向图像的链接时,服务器能够根据可获得什么样的渲染图像来提供假象图像、低分辨率图像或高分辨率图像。随着更高分辨率的图像变为可用,单独图像可以被这样的图像所更新。图4示出了可以用于渲染内容的示例系统400的组件。系统400对针对一个或多个图像的请求402进行处理,并且管理获得并渲染图像的处理。请求402可以被收集系统所接收。收集系统404对拾取图像的处理进行管理,并且还对将多个图像合成到单个图像中(如要显示集合的情况下)的处理进行管理。关于收集系统404在管理图像拾取处理中的角色,当收集系统404确定要提供什么图像时,收集系统404可以调用图像拾取器406以获得那些图像。图像拾取器406可以从各种源获得图像,包括远程图像源408和/或本地图像源410。远程图像源408是位于图像拾取器406在其进行操作的机器之外的某处的源。本地图像源410是位于图像拾取器406在其进行操作的机器上的源。所要注意的是,存在构成“图像拾取器406在其上进行操作的机器”的各种情形。在一个示例中,图像拾取器406在要在其上显示图像的相同机器(即,用户的计算机、用户的智能电话等)上进行操作,在这种情况下,本地图像源410可以是该计算机、智能电话等上的存储区域。在另一个示例中,图像拾取器406在渲染图像的服务器上进行操作,所述图像将不在该服务器上进行显示,而将另外被远程送至用户机器上的浏览器以便在用户的机器上进行显示。在后者的示例中,本地源410是处于渲染图像的服务器上的源,而不是位于要显示图像的机器上的源。除了从本地和远程源获取图像之外,收集系统404还可以从图像高速缓存412获取预先渲染的图像。本地和远程图像源408和410以及图像高速缓存412之间的差异在于图像高速缓存412存储图像的渲染版本,而本地和远程图像源408和410可以存储还有待被渲染的图像的表示。由于相同图像可以被请求多于一次,所以图像高速缓存412存储可能已经作为对一些先前请求进行服务的一部分而被渲染过的图像。因此,图像高速缓存412允许那些图像被再次使用,由此在已经进行过渲染图像的工作的情况下避免该工作。系统400还可以包括渲染器414,其可以执行渲染图像的实际工作。也就是说,当 已经获取了源图像时,渲染器414可以使用源图像来创建将被显示的实际像素。当渲染器414已经对图像进行了渲染时,该图像可以被传送至显示器416。此外,当已经对图像进行了渲染时,渲染器414可以将该图像置于图像高速缓存412中,以使得现在所渲染的图像在随后再次请求相同图像的情况下可供未来使用。所要注意的是,拾取图像的处理可以使用多个线程并行进行。例如,如果说集合包含二十个图像,则收集系统404可以创建图像拾取器406在其上进行操作的二十个单独线程,以使得图像可以被同时获取。图5示出了提供图像的示例处理。在转向图5的描述之前,所要注意的是,参考图1-4所示出的组件通过示例对图5中所包含的流程图进行描述,虽然该处理可以在任意系统中执行而并不局限于图1-4中所示出的情形。此外,图5中的流程图示出了以连接各框的线条所指示的特定顺序执行处理的各阶段的示例,但是该图中所示出的各个阶段可以以任意顺序来执行或者以任意组合或子组合来执行。在502,图像可以被请求。如以上所提到的,请求可以以任意方式出现例如,通过直接用户请求,通过搜索引擎,其中该引擎由于图像相应于搜索而请求图像,等等。在504,请求可以由将处理该请求的组件接收。在506,可以确定是否可在图像高速缓存中获得图像的预先渲染版本。如果可获得图像(和/或发现图像在高速缓存中可以以适当分辨率获得),则在514显示所渲染的图像。否则,该处理在没有渲染的图像的情况下继续进行。为了在没有渲染的图像的情况下继续进行,可以在508显示假象图像。如以上所讨论的,假象图像可以是包含并非从基础图像所得出的颜色和/或图案的图像,但是相反地可以向用户给出该假象是以相继更高的分辨率渲染图像的非常早期的阶段。在一个示例中,假象图像可以以基础图像的纵横比和/或形状进行绘制,并且以实际图像最终将被渲染的大小进行绘制。然而,这里的主题还包括其中假象图像根本不基于与基础图像相关的信息(甚至不是其纵横比和/或形状)的情形。当已经显示了假象图像时,该处理可以继续进行以在510从源获得图像。例如,如以上结合图4所描述的,图像拾取器406可以被用来从远程图像源408和/或本地图像源410获得图像。还如以上所提到的,可以存在要作为集合的一部分进行渲染的若干图像,并且因此获得这些图像的处理可以并行进行一例如,通过在若干同时的线程上运行图像拾取器。此外,所要注意的是,集合中的一些图像可能是可获得的,而其它则可能不是。因此,在图5的处理中,集合中的一些图像可能最初将作为假象进行显示,而其它则最初可以作为基础图像的渲染进行显示。一旦已经获取了图像,则可以在512以可行的分辨率对图像进行渲染。构成可行性的因素可以取决于相关环境。系统可以访问可行性的各种方式说明了这里所描述主题的自适应属性。例如,如以上所提到的,它们可能是关于能够以其渲染图像的速度、能够以其绘制图像的速度、能够从其渲染位置向其显示位置传送图像的速度,或者其它考虑因素的问题。这些考虑因素中的一些在现在将要描述的图6中被示出。通常,一种适应类型是适应于在其中执行图像显示的背景(context)(框602)。该背景的示例包括正被渲染图像的数量(例如,单个图像或图像集合)、可用传输带宽、显示系 统的绘制速度。这些问题可以定义由什么来构成要用于渲染图像的可行分辨率。例如,如以上所提到的,某人可能想要通过令每个连续图像绘制的分辨率翻倍而以动画呈现使得图像变为越来越高的分辨率的处理。然而,如果没有足够的传输带宽或绘制速度,或者足够的渲染带宽,则在连续图像仅是分辨率翻倍时要花费过长时间来对图像有所增加的分辨率进行动画呈现。因此,可以选择使得连续图像之间的分辨率为四倍。另一种类型的适应是对内容特征的适应(框604)。例如,如以上所提到的,某些类型的内容可能使得以一些分辨率进行渲染与其它分辨率相比更为容易一例如,JPEG的属性使得以256或512像素进行渲染与其它分辨率相比更为容易。因此,易于以特定分辨率(和/或内容的其它特征)渲染内容可以通知对内容进行渲染的分辨率选择。所要注意的是,当选择以其对图像进行渲染的(多种)分辨率时,系统在不关心哪些分辨率能够快速绘制的情况下选择特定分辨率(例如,分辨率A)。然而,针对特定分辨率的快速路径的存在可能使得系统选择不同的分辨率(例如,分辨率B),其并不是系统本来将另外选择的分辨率。换句话说,在这样的示例中,系统选择分辨率B并非因为它是系统将基于该系统想要实现的外观而选择的分辨率;而是该系统可能特别地由于快速路径的可用性而选择的与分辨率A有所不同的分辨率B。另一种形式的适应是令图像拾取和/或渲染处理多线程的能力(框606)。如以上所提到的,图像可能是集合的一部分,并且可能同时获取集合中的各个图像。类似地,如针对已经被获取的图像,还可能令渲染处理多线程,由此允许所获取的图像被同时渲染。转向图5,一旦图像已经被渲染(或者是由于如506所确定的已经可获得所渲染图像,或者是因为图像在其被请求之后被获取并渲染),所渲染图像就能够在514被显示。显示图像的操作可以包括图像在屏幕或其它设备上的物理显示。或者,显示图像的操作可以包括指明图像的显示要在另一设备上发生。(例如,如果服务器发送客户端指令以显示图像,则该操作可以被理解为由服务器所执行的显示操作)。在516,可以确定是否存在待渲染的其它分辨率。如以上所提到的,某人可能想要以动画呈现以越来越高的分辨率显示图像的处理,并且因此可以执行相同图像的若干次渲染。可能针对该动画处理所选择的具体分辨率可以基于以上所讨论的可行性考虑来确定。然而,假设已经以某种方式进行了要渲染什么分辨率的选择(其中该选择自身可以在渲染和拾取处理进行时有所变化),则在516确定是否存在(多个)图像的其它分辨率要进行渲染。如果存在这样的其它分辨率,则处理可以返回512而以(多种)其它的分辨率渲染图像。否则,该图像已经以其最终分辨率进行了渲染,并且该处理可以结束。图7示出了可以在其中部署这里所描述主题的各方面的示例环境。计算机700包括一个或多个处理器702以及一个或多个数据记忆组件704。(多个)处理器702典型地为诸如在个人台式机或膝上计算机、服务器、手持计算机或其它类型的计算设备中所找到的那些微处理器。(多个)数据记忆组件704是能够在短或长时期内存储数据的组件。(多个)数据记忆组件704的示例包括硬盘、可移动盘(包括光盘和磁盘)、易失性和非易失性随机访问存储器(RAM)、只读存储器(ROM)、闪存、磁带等。(多个)数据记忆组件是计算机可读存储存储媒体的示例。计算机700可以包括显示器712或者与之相关联,所述显示器712可以是阴极射线管(CRT)监视器、液晶显示(LCD)监视器或者任意其它类型的监视器。软件可以被存储在(多个)数据记忆组件704中,并且可以在一个或多个处理器 702上执行。虽然可以使用任意类型的软件,这样的软件的示例是自适应图像渲染软件706,其可以实施以上结合图1-6所描述的一些或全部功能。例如,软件706可以通过一个或多个组件来实施,所述组件可以是分布式系统、单独文件、单独功能、单独对象、单独代码行等之中的组件。其中程序存储于硬盘上、加载到RAM中并且在计算机的(多个)处理器上执行的计算机(例如,个人计算机、服务器计算机、手持计算机、智能电话等)代表了图7中所描绘的情形,但这里所描述的主题并不局限于该示例。这里所描述的主题可以作为存储在一个或多个数据记忆组件704中并且在一个或多个处理器702上执行的软件来实施。作为另一个示例,该主题可以作为存储在一个或多个计算机可读存储媒体上的指令来实施。诸如光盘或磁盘之类的切实(tangible)媒体是存储媒体的示例。指令可以存在于非切实媒体上。当被计算机或其它机器所执行时,这样的指令可以使得计算机或其它机器执行方法的一个或多个操作。用来执行操作的指令可以被存储在一个媒体上,或者可以跨多个媒体进行分布,从而该指令可能共同出现在一个或多个计算机可读存储媒体上,而无论是否所有指令都恰好出现在相同媒体之上。此外,这里所描述的任意操作(无论是否在图中示出)可以作为方法的一部分而由处理器(例如,一个或多个处理器702)所执行。因此,如果在这里描述了操作A、B和C,则可以执行包括操作A、B和C的方法。此外,如果这里描述的操作A、B和C,则可以执行使用处理器来执行动作A、B和C的方法。在一个示例环境中,计算机700可以通过网络708通信连接至一个或多个其它设备。在结构上可以与计算机700相类似的计算机710是能够连接至计算机700的设备的示例,但是也其它类型的设备也可以这样连接。虽然已经以特定于结构特征和/或方法逻辑操作的语言对主题进行了描述,但是所要理解的是,所附权利要求中所定义的主题并不必被局限于以上所描述的具体特征或操作。相反,以上所描述的具体特征和操作是作为实施权利要求的示例而描述的。
权利要求
1.一种渲染图像的方法,其中该方法包括 接收渲染图像的请求; 提供作为包括所述图像的图像集合的一部分的所述图像的渲染版本或假象图像;确定渲染所述图像的多种分辨率而以动画呈现以越来越高的分辨率示出所述图像的处理,其中所述多种分辨率基于传输带宽、绘制速度或图像格式所确定; 以所述多种分辨率渲染所述图像以创建多个渲染图像;并且 以所述多种分辨率提供所述多个渲染图像。
2.根据权利要求I的方法,其中所述图像具有形状,并且其中该方法进一步包括 接收包括所述形状的数据;并且 以所述形状创建所述假象图像。
3.根据权利要求I的方法,其中所述多种分辨率基于可用于传送所述图像的传输带宽量所确定。
4.根据权利要求I的方法,其中所述多种分辨率基于要在其上显示所述图像的设备的绘制速度所确定。
5.根据权利要求I的方法,其中所述多种分辨率基于所述图像进行存储的格式所确定。
6.根据权利要求5的方法,其中所述格式提供了以第一分辨率渲染所述图像的快速路径,其中所述确定基于可用传输带宽或绘制速度选择不同于所述第一分辨率的第二分辨率,并且随后由于所述快速路径的可用性而确定以所述第一分辨率而不是所述第二分辨率来渲染所述图像。
7.根据权利要求I的方法,进一步包括 使用单独拾取线程同时拾取所述集合中的图像。
8.一种具有用于执行权利要求1-7中任一项的方法的计算机可执行指令的计算机可读介质。
9.一种用于渲染图像的系统,该系统包括 处理器; 数据记忆组件; 图像高速缓存,其存储在所述数据记忆组件中; 图像拾取器,其从处于所述系统本地的源或者处于所述系统远程的源获取图像; 收集组件,其在所述处理器上执行,其中所述收集组件接收渲染图像的请求并且确定是否能够在所述图像高速缓存中获得所述图像的渲染版本,其中所述收集组件指示所述图像拾取器以获取所述图像,其中所述系统指示在所述图像的所述渲染版本不处于所述图像高速缓存中时显示假象图像;和 渲染器,其对所述图像拾取器所获取的所述图像进行渲染,并且其使得所述图像被所述系统进行显示或者被提供至要显示所述图像的设备。
10.根据权利要求9的系统,其中所述收集组件指示所述假象图像得以被显示,其中所述图像具有形状,并且其中所述系统以所述形状来创建所述假象图像。
11.根据权利要求10的系统,其中所述形状包括矩形,并且其中以具有所述矩形的纵横比的矩形形状创建所述假象图像。
12.根据权利要求9的系统,其中所述系统以动画呈现所述图像分辨率的增加并且基于可用于传送所述图像的带宽量来选择要渲染所述图像的分辨率。
13.根据权利要求9的系统,其中所述系统以动画呈现所述图像分辨率的增加并且基于所述设备的绘制速度来选择要渲染所述图像的分辨率。
14.根据权利要求9的系统,其中所述系统以动画呈现所述图像分辨率的增加并且基于所述图像的格式来选择要以其渲染所述图像的分辨率。
15.根据权利要求14的系统,其中所述格式提供了以第一分辨率渲染所述图像的路径,其比以第二分辨率渲染所述图像的路径更快,所述第一分辨率不同于所述第二分辨率,并且其中所述系统由于所述路径的存在而选择所述第一分辨率而不是所述第二分辨率。
全文摘要
可以以适应于周围环境的方式对图像和/或图像集合进行渲染,并且这可以提升用户对体验质量的感知。当图像被请求进行显示时,确定是否存在该图像的渲染版本。如果不存在该图像的渲染版本,则显示假象图像。该假象图像可以包括任意颜色和/或图案。如果存在该图像适当的渲染版本,则可以替代假象版本显示该渲染版本。在显示假象或渲染图像的同时,图像可以被获取,并且可以以其它分辨率(例如,相继较高的分辨率)进行渲染。分辨率的选择可以适应于可用传输带宽、显示速度或者其它考虑因素。
文档编号G06F3/14GK102918492SQ201180028810
公开日2013年2月6日 申请日期2011年5月25日 优先权日2010年6月11日
发明者L.格尔哈德, B.瓦尼克 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1