智能相机用户界面的制作方法

文档序号:11851582阅读:213来源:国知局
智能相机用户界面的制作方法与工艺

用户越来越多地使用诸如智能电话的设备来捕获包含信息的图像。在某些实例下,除其他原因之外,用户还出于信息的目的而捕获图像作为纪念品来与其他用户共享和/或作为提醒。



技术实现要素:

本说明书涉及基于图像数据中所提供的内容来使得能够执行一个或多个动作。

本公开的实施方式大体上涉及在设备上执行的相机应用的取景器中提供动作界面,该动作界面包括基于场景的内容的动作要素。

大体上,本说明书中所描述的主题的创造性方案能够被包含在方法中,该方法包括如下动作:接收图像数据,所述图像数据从相机提供且与所述相机所查看的场景相对应;接收一个或多个注释,所述一个或多个注释基于从所述场景所确定的一个或多个实体来提供,每个注释与至少一个实体相关联;基于所述一个或多个注释来确定一个或多个动作;以及提供显示动作界面的指令,所述动作界面包括一个或多个动作要素,每个动作要素能被选择以引起相应动作的执行,所述动作界面在取景器中显示。该方面的其他实施方式包括被编码在计算机存储设备上的对应的系统、装置、以及计算机程序,其被配置为执行该方法的动作。

这些和其他实施方式均能够可选地地包括以下特征中的一个或多个:所述指令包括在所述取景器中显示所述动作界面的至少一部分以及响应于对所述动作界面的所述至少一部分的用户选择来显示所述动作界面的指令,动作进一步包括接收与所述一个或多个动作要素的动作要素相对应的用户输入;以及执行与所述动作要素相关联的动作;动作包括共享内容动作、购买动作、下载动作、添加事件动作、以及添加到专辑动作中的一个或多个;接收所述一个或多个注释发生在图像被所述相机捕获之后,所述图像数据与所述图像相对应;动作进一步包括将所述图像数据提供给注释系统,所述注释系统处理所述图像数据以识别所述一个或多个实体中的至少一个实体以及提供所述一个或多个注释中的至少一个注释;所述一个或多个动作要素被提供作为内容特有的动作要素;所述动作界面进一步包括一个或多个内容无关的动作要素;所述图像数据包括预捕获的图像数据和捕获后的图像数据中的一个;以及所述取景器由设备上所执行的相机应用来提供。

能够实现本说明书所描述的主题的特定实施方式以便实现以下优点中的一个或多个。在一些示例中,本公开的实施方式使得用户在捕获图像时能够更容易地实现原始意图。例如,虽然用户正在捕获场景的图像,但是用户的意图可能实际上是将图像用作提醒或者作为对例如相册的图像集合的贡献。在一些示例中,实施方式使得用户能够将计算设备用作物理-数字转换器,例如将真实世界场景转换为提醒。在一些示例中,实施方式使得用户能够获得关于图像中描绘的实体的知识,例如基于搜索结果来提供动作。

在附图和以下描述中阐述了本说明书中所描述的主题的一个或多个实施方式的细节。本主题的其他特征、方面、和优点从说明书、附图、和权利要求书将变得显而易见。

附图说明

图1描绘了能够提供本公开的实施方式的示例环境。

图2A至图2C描绘了根据本公开的实施方式的示例界面。

图3描绘了根据本公开的实施方式来执行的示例过程。

各个附图中相似的附图标记和名称指示相似的元件。

具体实施方式

图1描绘了能够提供本公开的实施方式的示例环境100。示例性环境100包括设备102、服务器系统104、和网络106。在一些示例中,设备102包括个人计算机、移动计算设备——例如智能电话、可穿戴计算设备、和/或平板计算设备。设备102能够通过网络106来发送和接收数据。在图1的示例中,提供设备102作为智能电话,例如被启动以通过互联网通信的电话。可以设想,本公开的实施方式也能够使用其它类型的设备来实现。在一些示例中,网络106包括连接设备102与服务器系统104的局域网(LAN)、广域网(WAN)、互联网、或它们的组合。在一些示例中,网络106能够通过有线通信链路和/或无线通信链路来访问。例如,设备102能够利用蜂窝网络来访问网络106。在一些示例中,服务器系统104包括计算设备110和计算机可读存储器,该计算机可读存储器被提供作为持久性存储设备112,例如数据库。在一些示例中,服务器系统104表示各种形式的服务器系统,包括但不限于web服务器、应用服务器、代理服务器、网络服务器、或服务器群。

在一些实施方式中,设备102包括能够被用于提供图像数据相机。在一些示例中,相机被集成到设备102中。在一些示例中,相机与设备102通信。在一些示例中,设备102执行使得设备102能够基于相机所查看的场景来提供图像数据的应用,例如被提供作为计算机可执行程序的相机应用。在图1的示例中,提供示例场景122、124。在一些示例中,场景能够包括一个或多个实体,例如人、地点、事物。例如,场景122包括饮料128和汉堡130,并且场景124包括海报132。

在一些示例中,设备102显示取景器界面,取景器界面使得用户140能够使用相机来查看场景。例如,用户140能够操纵设备102来将相机指向场景,例如场景122、124。作为响应,能够提供与场景相对应的图像数据。在一些示例中,可以处理该图像数据以提供场景的图形表示——例如图像。在一些示例中,图像数据能够被提供作为预捕获图像数据,例如作为实时数据。在一些示例中,预捕获图像数据包括与场景相对应的图像数据,并且在捕获该场景的图像之前提供,例如用户“拍摄(snapping)”照片。在一些示例中,图像数据能够被提供作为后捕获图像数据。在一些示例中,捕获后图像数据包括与场景相对应的图像数据,并且在捕获场景的图像之后提供,例如,被提供在响应于用户“拍摄”照片所提供的图像文件中。

本公开的实施方式涉及基于图像数据来提供动作界面以用于在设备上所显示的取景器中显示。在一些示例中,取景器由计算设备上所执行的图像捕获应用来提供,图像捕获应用例如相机应用。更具体而言,本公开的实施方式涉及基于图像数据来提供一个或多个注释,基于该一个或多个注释来确定一个或多个动作,以及基于该一个或多个注释来提供动作界面。在一些实施方式中,基于用户特有信息来提供一个或多个动作。例如,在一些实施方式中,动作界面包括一个或多个动作要素,每个动作要素可选择以引起相应动作的执行。示例动作能够包括:共享内容动作——其能够被执行来与其他用户共享例如图像、视频的内容、购买动作——其能够被执行来购买一个或多个项目、下载动作——其能够被执行来下载例如音乐、视频、图像的内容、添加事件动作——其能够被执行来向日历添加事件)、以及添加到专辑(album)动作——其能够被执行来向例如相册的专辑添加例如图像的内容。虽然本文提供了示例动作,但是可以想到,本公开的实施方式能够包括任何适当的动作和相应的动作要素。

通过示例的方式,用户能够使用例如图1的设备102的设备,该设备能够提供例如预捕获或捕获后的第一图像数据,该第一图像数据能够在例如设备的显示器上所显示的取景器中显示。如本文所述,能够基于第一图像数据的内容来处理该第一图像数据以提供第一动作界面,该第一动作界面包括与相应的动作相对应的动作要素的第一集合。用户能够使用例如图1的设备102的设备,该设备能够提供例如预捕获或捕获后的第二图像数据,该第二图像数据能够在例如设备的显示器上所显示的取景器中显示。如本文所述,能够基于第二图像数据的内容来处理第二图像数据以提供第二动作界面,该第二动作界面包括与相应的动作相对应的动作要素的第二集合。在一些示例中,动作要素的第一集合不同于动作要素的第二集合。

因此,本公开的实施方式使得动作要素能够基于图像数据中所表示的内容来被提供。这与例如基于在图像数据中所描绘的机器可读代码的功能形成了对比。例如,图像数据能够包括能够被处理的机器可读代码的表示,该机器可读代码例如QR码、条形码。通常,机器可读代码对规定能够被执行的功能的指令进行编码,所述指令例如向用户显示信息、导航到网站、播放音频。相比之下,并且如本文所更详细描述的,本公开的实施方式确定图像数据中所描绘的实体,基于该实体来确定能够被执行的一个或多个动作,以及在取景器中提供对应的动作要素以使得用户能够执行动作。

在一些实施方式中,并且如上指出,图像数据对应于由相机查看的场景。在一些示例中,所述场景包括在图像数据中表现的一个或多个实体。在一些实施方式中,对图像数据进行处理以识别一个或多个实体。在一些示例中,能够将图像数据提供给实体识别引擎,该实体识别引擎处理图像数据以提供在图像数据中所表示的实体集合。在一些示例中,实体识别引擎被提供为能够由一个或多个计算设备执行的一个或多个计算机可执行程序,所述一个或多个计算设备例如设备102和/或服务器系统104。在一些示例中,实体集合能够包括一个或多个实体。在一些示例中,实体集合不包括实体,例如实体识别引擎没有识别出实体。在一些实施方式中,实体能够包括特定实体。例如,实体能够包括图像数据中描绘的汉堡。在一些示例中,实体能够包括实体的类别。例如,实体能够包括食物。作为另一个示例,如果在图像数据中描述了汉堡,则实体集合能够包括“汉堡”和“食物”,例如特定实体和相对应的类别。

在一些示例中,将一个或多个注释与一个或多个实体中的每个实体相关联。在一些示例中,能够将实体集合提供给注释引擎,该注释引擎处理该实体集合以提供注释集合。在一些示例中,注释引擎被提供为能够由执行的一个或多个计算机可执行程序,所述一个或多个计算设备例如设备102和/或服务器系统104。在一些实施方式中,将实体识别引擎与注释引擎组合,例如组合为同一引擎。

在一些示例中,注释集合能够包括一个或多个注释。在一些示例中,注释集合不包括注释,例如实体集合中不包括实体。在一些示例中,如果实体集合中不包括实体,则不将实体集合提供给注释引擎。在一些实施方式中,每个注释包括注释数据,其能够被附加至基础图像数据——例如被处理以提供实体集合的图像数据。

在一些实施方式中,能够基于使用搜素引擎搜索实体来提供注释。在一些示例中,注释引擎能够将实体作为搜索查询来提供给搜索引擎,并且该搜索引擎能够将搜索结果提供给注释引擎。在一些示例中,注释能够基于搜索结果。例如,实体能够包括文本“Best Band Ever(史上最佳乐队)”,该文本被描绘在图像数据中,并且其是一个乐队的名称。在一些示例中,文本“Best Band Ever”能够作为搜索查询来被提供给搜索引擎,并且能够提供与特定乐队相关联的搜索结果。示例搜索结果能够包括与乐队相关联的巡演日期、专辑、和/或商品,哪些搜索结果能够被提供作为注释。

在一些实施方式中,注释能够涉及图像数据中描绘的实体。例如,实体能够包括文本“Best Band Ever”,实体能够包括文本“Jan.30,2014”,并且实体能够包括文本“TX State Fair(德州展会)”,例如图1的场景124中所描绘的。在一些示例中,能够将实体作为搜索项目提供给搜索引擎,并且作为响应,搜索结果包括2014年1月30日Best Band Ever要在或者先前在TX State Fair演出的音乐会,其能够被提供作为注释。

在一些实施方式中,能够基于具有例如知识图的结构化数据图的交叉参考实体来提供注释。在一些示例中,结构化数据图包括多个节点以及节点之间的边。在一些示例中,节点表示实体,并且边表示实体之间的关系。能够基于实体之间已经被确定的关联来提供结构化数据图的节点和/或实体。在一些示例中,能够基于一个或多个模式(schema)来提供结构化数据图。在一些示例中,模式描述在用户特有知识图中数据是如何被结构化的。

示例模式基于域、类型、和性质来组织数据。在一些示例中,域包括共享名称空间的一个或多个类型。在一些示例中,提供名称空间作为被唯一命名的对象的目录,其中名称空间中的每个对象具有唯一名称,例如标识符。在一些示例中,类型表示关于主题的“is a”关系,且用于保持性质的集合。在一些示例中,主题表示实体,诸如人、地点、或事物。在一些示例中,每个主题可具有与其相关联的一个或多个类型。在一些示例中,性质与主题相关联并且定义了主题与性质的值之间的“has a”关系。在一些示例中,性质的值能够包括另一个主题。

在一些实施方式中,注释引擎能够将实体作为输入来提供给结构化数据图系统——例如知识图系统,并且结构化数据图系统能够将一个或多个注释作为输出来提供给注释引擎。在一些示例中,结构化数据图系统能够将该实体与在结构化数据图中被捕获的对象进行交叉参考,并且能够基于模式来提供注释作为对象和/或对象之间的关系。例如,能够提供实体汉堡来作为输入,并且能够提供注释“汉堡是食物”来作为输出。

在一些实施方式中,基于相应的实体和/或注释来确定一个或多个动作。在一些实施方式中,提供图像数据的设备——例如图1的设备102基于实体和/或注释来确定一个或多个动作。例如,设备能够提供实体的集合和/或注释的集合,并且能够确定一个或多个动作。作为另一个示例,设备例如能够从服务器系统104接收实体和/或注释的集合,并且能够确定一个或多个动作。在一些示例中,设备提供实体的集合和/或注释的集合,并且设备也接收实体的集合和/或注释的集合。

在一些实施方式中,提供图像数据的设备——例如图1的设备102基于实体和/或注释来接收一个或多个动作。例如,设备和/或服务器系统能够提供实体的集合和/或注释的集合,并且服务器系统能够确定一个或多个动作。在一些实施方式中,设备确定一个或多个动作,并且该设备接收一个或多个动作。

在一些实施方式中,基于将实体和/或注释映射至动作来提供一个或多个动作。例如,能够将与例如演唱会的事件相关联的实体和/或注释映射至添加事件动作——其能够被执行来将事件添加到日历,和/或映射至购买动作——例如购买事件的票、购买专辑。因此,添加事件动作和/或购买动作能够被包括在一个或多个事件中。作为另一个示例,实体和/或注释能够对应于用户的图像专辑——例如食物专辑,并且能够被映射至添加到专辑动作,该添加到专辑动作能够被执行来将例如图像的内容添加到专辑。因此,基于用户特有信息来提供动作,所述用户特有信息例如对用户具有与图像中所描绘的实体有关的图像专辑的了解。作为另一个示例,实体和/或注释能够对应于例如在社交网络服务内的用户的一个或多个联系人,并且能够被映射到共享图像动作,该共享图像动作能够被执行来与联系人共享图像。因此,基于用户特有信息来提供动作,所述用户特有信息例如对用户通常与特定联系人共享图像中所描绘的内容的了解。

根据本公开的实施方式,能够基于一个或多个动作来显示动作界面。在一些示例中,在取景器中显示动作界面,该取景器显示例如从其确定一个或多个动作的图像数据。在一些示例中,动作界面包括一个或多个动作要素,每个动作要素与一个或多个动作中的动作相对应。每个动作要素可选择以引起对相应动作的执行。因此,动作界面的动作要素能够包括内容特有动作要素,例如基于动作来提供的动作要素,所述动作基于图像数据的内容来被确定。

在一些实施方式中,动作界面能够包括信息帧,该信息帧提供关于图像数据中描绘的例如实体的内容的信息。例如,如果特定书本被表示在图像数据中,则动作界面能够包括描绘与该书本相关联的信息的信息帧,所述信息例如封面的图像、标题、摘要、作者、出版日期、体裁。作为另一个示例,如果特定乐队被表示在图像数据中,则动作界面能够包括描述与该乐队相关联的信息的信息帧,所述信息例如乐队的照片、乐队成员的列表、专辑列表。

在一些实施方式中,动作界面能够包括内容无关(content-agnostic)的动作要素。在一些示例中,内容无关的动作要素对应于无论图像数据的内容如何都能够提供的动作。例如,图像数据能够对应于相机所捕获的图像。因此,能够提供共享动作要素来共享图像。在一些示例中,响应于所捕获的图像而不是图像中所描绘的内容来提供共享动作要素。

本文在非限制性示例的场境下更详细地对本公开的实施方式进行描述。可以想到,能够在包括本文提供的示例的适当背景下,以及在除了本文提供的示例之外的适当场境下,实现本公开。

图2A至图2C描绘了根据本公开的实施方式的示例界面。具体参照图2A,例如图1的设备102的设备200包括显示器202。在所描绘的示例中,显示器202正在显示取景器204。例如,能够响应于用户对相机应用的选择来显示取景器204,所述相机应用例如由设备200执行的计算机可执行程序。取景器204包括捕获图标206。在一些示例中,例如图1的用户140的用户能够选择捕获图标206来捕获取景器204中显示的场景的图像。在所描绘示例中,取景器204正在显示包括海报132的图1的场景124。例如,用户能够将设备200指向场景124,使得相机查看场景124并在取景器204中显示该场景124。

根据本公开的实施方式,提供被用于在取景器204中显示场景124的图像数据。在一些示例中,图像数据被处理来从场景124的内容识别一个或多个实体。在所描绘的示例中,示例内容能够包括海报132中所提供的插图220以及海报132中所提供的文本222。在所描绘的示例中,插图220包括聚光灯下的吉他手的图像,并且文本222包括:乐队的名称——例如“Best Band Ever”、日期——例如“Jan.30,2014”、位置——例如“TX State Fair”、以及其他信息——例如“Doors@8PM(晚8点开始)”。在一些实施方式中,图像数据被处理来将乐队“Best Band Ever”识别为实体,将日期“Jan.30,2014”识别为实体,将时间“8PM”识别为实体,和/或将位置“TX State Fair”识别为实体。

在一些实施方式中,基于一个或多个实体来提供一个或多个注释。例如,能够基于实体“Best Band Ever”来提供一个或多个注释。示例注释能够包括“名称”、“乐队”、“音乐”、以及音乐的类别——例如“摇滚(rock)”、“独立(indie)”、“经典(classical)”。作为另一个示例,能够基于实体“TX State Fair”来提供一个或多个注释。示例注释能够包括“位置”、“场所”、和“音乐会”。如本文所述,在一些示例中,能够提供注释来作为从知识图系统接收的图像特有的结构化数据。

在一些实施方式中,基于一个或多个实体和/或图像特有的结构化数据来提供一个或多个动作。根据图2A至图2C的示例,动作能够包括购票动作、添加事件动作、以及下载动作,所述购票动作能够被执行来发起对海报中所述音乐会的票的购买,添加事件动作能够被执行来将音乐会作为事件添加到日历,并且下载动作能够被执行来发起对乐队专辑的下载。

图2B描绘了响应于基于图像数据来提供的一个或多个动作的取景器204。更具体而言,在取景器中显示动作卡的表示250。在所描绘的示例中,表示250是动作卡的缩小版本,使得动作卡的表示250小于它本来的大小,并且不会显著干扰取景器204中显示的图像。在一些示例中,表示250被提供作为完整动作卡的一部分。在一些实施方式中,用户能够选择表示250来启动对完整动作卡的显示。

图2C描绘了响应于用户对图2B的表示250的选择的取景器204。在所描绘的示例中,完整动作卡250被显示并且包括动作要素252、254、256。动作要素252对应于购票动作,动作要素254对应于下载动作,并且动作要素256对应于添加事件动作。例如,能够响应于用户对动作要素252的选择来显示界面,用户能够通过该界面来开始购买音乐会的票。作为另一个示例,能够响应于用户对动作要素254的选择来显示界面,用户能够通过该界面开始对乐队发行的一个或多个专辑的购买和/或下载。作为另一个示例,能够响应于用户选择动作要素256来显示界面,用户能够通过该界面开始将演唱会作为事件添加到日历。在一些示例中,能够将响应于用户对动作要素的选择所显示的界面显示为由设备200执行的应用的界面——例如移动app,和/或显示为由设备200执行的浏览器应用中所显示的网页。

在一些实施方式中,动作要素252、254、256包括内容特有的动作要素。虽然图2C中没有描绘,但是动作卡250’能够包括内容无关的动作要素。例如,能够提供共享内容动作要素来与一个或多个其他用户共享图像。

在一些实施方式中,能够响应于对动作要素的选择来执行动作而无需任何附加用户输入。例如,响应于用户对动作项目256的选择,能够将与演唱会相对应的事件自动添加到日程表,而无需进一步的用户输入。

本公开的实施方式能够进一步包括在不要求用户选择动作的情况下所自动执行的一个或多个动作。例如,响应于识别图像数据中所描绘的事件,能够自动执行提醒动作。因此,能够向用户提供事件提醒而无需用户明确请求就事件来提醒他们。在一些示例中,可将提醒增强以包括与事件相关联的内容,例如图像、视频。可以想到,能够在例如事件、共享、添加到相册等的任何适当的场境下提供自动动作。

再参照图1,用户140能够使用设备102来提供基于场景122的图像数据,该图像数据包括饮料128和汉堡130的相应的表示。如本文所述,能够处理图像数据,并且能够确定一个或多个动作。示例动作能够包括将图像添加到食物专辑的动作,和/或将图像添加到汉堡专辑动作。例如,能够确定图像数据描绘了汉堡和/或食物,以及确定用户保持事物专辑和/或汉堡专辑。因此,能够显示动作界面并且该动作界面能够包括相应的内容特有动作要素。

作为另一个示例,用户140能够基于包括一个或多个人的场景来使用设备102提供图像数据,例如,用户拍摄两个朋友Michelle和Louise的照片。如本文所述,能够处理图像数据并且能够确定一个或多个动作。例如,能够处理图像数据并且能够确定图像数据中描绘了Michelle和Louise。示例动作能够包括将图像添加至朋友专辑动作、与Michelle共享图像动作、与Louise共享图像动作、和/或与Michelle和Louise共享图像动作。

图3描绘了能够根据本公开的实施方式来执行的示例过程300。例如,能够由图1的示例环境100来实现示例过程300。在一些示例中,能够使用例如图1的设备102和/或服务器系统104的一个或多个计算设备所执行的一个或多个计算机可执行程序来提供示例性过程300。

接收图像数据(302)。在一些示例中,设备102和/或服务器系统104的一个或多个处理器接收图像数据。在一些示例中,图像数据由例如设备102的相机提供,并且对应于相机所查看的场景。在一些示例中,图像数据是预捕获图像数据。在一些示例中,图像数据是捕获后图像数据。识别一个或多个实体(304)。在一些示例中,由计算设备102和/或服务器系统104处理图像数据以识别一个或多个实体。在一些示例中,实体被提供为图像数据中所表示的人、地点、或事物。

接收一个或多个注释(306)。在一些示例中,由计算设备102和/或服务器系统104处理一个或多个实体和/或结构化数据以提供一个或多个注释。确定动作集合(308)。在一些示例中,由设备102和/或服务器系统104处理一个或多个注释以确定能够执行的动作。在一些示例中,能够确定没有确定出动作。因此,动作集合能够包括空集。在一些示例中,能够确定一个或多个动作被确定。因此,动作集合能够包括一个或多个动作。

确定动作集合是否包括至少一个动作(310)。在一些示例中,设备102和/或服务器系统104能够确定动作集合是否包括至少一个动作。如果动作集合包括至少一个动作,则提供显示动作界面的指令(312)。在一些示例中,设备102和/或服务器系统104能够提供指令。例如,设备102的一个或多个处理器能够向设备102的显示处理器提供指令。作为另一个示例,服务器系统104能够向设备102提供指令。如果动作集合不包括至少一个动作,则不提供显示动作界面的指令(314)。

本说明书所描述的主题内容的实施方式以及操作能够以数字电子电路、或者在计算机软件、固件、或硬件、包括本说明书中公开的结构以及它们的结构等同物、或者以它们一个或多个的组合来实现。本说明书所描述主题内容的实施方式能够使用一个或多个计算机程序来实现,所述一个或多个计算机程序即计算机程序指令的一个或多个模块,所述计算机程序指令被编码在计算机存储介质中,用于由数据处理设备执行或者控制数据处理设备的操作。替选地或另外地,程序指令能够被编码在在例如机器生成的电信号、光信号、或电磁信号的人工生成的传播信号上,该传播信号被生成以对用于传送至合适的的接收器装置的信息进行编码以供数据处理装置执行。计算机存储介质能够是如下或者包括于其中:计算机可读存储设备、计算机可读存储基板、随机或串行存取存储器阵列或设备、或者它们一个或多个的组合。此外,尽管计算机存储介质并非传播信号,但是计算机存储介质能够是在人工生成的传播信号中编码的计算机程序指令的源或目的地。此外,计算机存储介质也能够是一个或多个单独的物理组件或介质(例如,多个CD、盘、或其他存储设备)或者被包括在其中。

本说明书所描述的操作能够被实现为由数据处理设备对一个或多个计算机可读存储设备上存储的数据或者从其他源接收的数据执行的操作。

术语“数据处理装置”涵盖用于处理数据的所有类型的装置、设备、以及机器,包括例如可编程处理器、计算机、芯片上系统,或者多个可编程处理器、计算机、芯片上系统、或前述的组合。该装置能够包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,所述装置还能够包括创建用于所讨论的计算机程序的执行环境的代码,例如构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时环境、虚拟机、或者它们一个或多个的组合的代码。装置和执行环境能够实现各种不同的计算模型基础架构,诸如web服务、分布式计算以及网格计算基础架构。

计算机程序(也被称作程序、软件、软件应用、脚本、或代码)能够以任何形式的编程语言编写,包括编译或解释语言、说明性或程序性语言,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程、对象、或适合于在计算环境中使用的其它单元。计算机程序可以但不必对应于文件系统中的文件。程序可以被存储在保存其他程序或数据的文件的一部分中(例如在标记语言文档中存储的一个或多个脚本)、存储在专用于所讨论的程序的单个文件、或者存储在多个协调文件(例如存储一个或多个模块、子程序、或代码的部分的文件)中。计算机程序能够被部署为在一个计算机上执行,也能够被部署为在位于一个地点或跨多个地点分布并且由通信网络互连多个计算机上执行。

本说明书所描述的过程和逻辑流程能够由执行一个或多个计算机程序的一个或多个可编程处理器执行以通过操作输入数据和生成输出来执行动作。过程和逻辑流程还能够由专用逻辑电路执行,并且装置也能够被实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。

例如,适合于执行计算机程序的处理器包括通用微处理器和专用微处理器这两者,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器从只读存储器或随机存取存储器或者从这两者接收指令和数据。计算机的元件能够包括处理器以及一个或多个存储器设备,所述处理器用于根据指令执行动作,所述存储器设备用于存储指令和数据。通常,计算机还包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘、或光盘,或者可操作地耦合以从所述一个或多个大容量存储设备接收数据或向其传送数据,或以上这两者。但是,计算机不必具有这样的设备。此外,能够将计算机嵌入另一设备中,所述另一设备例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器、或便携式存储设备(例如通用串行总线(USB)闪存驱动器),仅举数例。适合于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如:EPROM、EEPROM、以及闪存设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CDROM和DVD-ROM盘。处理器和存储器能够通过专用逻辑电路补充或者合并于其中。

为了提供与用户的交互,本说明书所描述主题内容的实施方式能够在具有显示设备以及键盘和指示设备的计算机上实现,显示设备用于向用户显示信息,其例如CRT(阴极射线管)、LED(发光二极管)或LCD(液晶显示器)监视器,键盘和指示设备例如鼠标或轨迹球,用户通过其能够向计算机提供输入。也能够使用其他类型的设备来提供与用户的交互;例如,向用户提供的反馈能够是任何形式的感知反馈,例如视觉反馈、听觉反馈、或触觉反馈;并且能够以包括声音、语音、或触觉输入的任何形式接收来自用户的输入。此外,计算机能够通过向用户所使用的设备发送文档以及从用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收的请求,来向用户的客户端设备上的web浏览器发送网页。

本说明书所描述的主题的实施方式能够在包括后端组件的计算系统中实现,所述后端组件例如作为数据服务器;或者在包括中间件组件的计算系统中实现,所述中间件组件例如应用服务器;或者在包括前端组件的计算系统中实现,所述前端组件例如具有图形用户界面或Web浏览器的客户端计算机,用户通过其能够与本说明书所描述的主题的实施方式交互;或者以一个或多个这样的后端组件、中间件组件、或前端组件的任何组合来实现。系统的组件能够通过例如通信网络的任何形式或介质的数字数据通信来互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)、互连网络(例如互联网)、以及对等网络(例如点对点(ad hoc)对等网络)。

计算系统能够包括客户端和服务器。客户端和服务器通常相互远离并且一般通过通信网络交互。客户端与服务器的关系依靠在相应的计算机上运行且相互具有客户端-服务器关系的计算机程序而产生。在一些实施方式中,服务器向客户端设备(例如出于向与客户端设备交互的用户显示数据以及接收来自该用户的用户输入的目的)传送数据(例如HTML页面)。能够在服务器处从客户端接收在客户端设备生成的数据(例如用户交互的结果)。

虽然本说明书包含许多特定实施方式细节,但是它们不应被解释为对本公开任何的实施方式或者可能要求保护的内容的范围的限制,而应当被解释为对示例实施方式特有的特征的描述。本说明书中在单独的实施方式的场境下所描述的某些特征也能够在单个实施方式中组合实现。相反,在单个实施方式场境下所描述的各种特征也能够单独地或者以任何合适的子组合来在多个实施方式中实施。此外,虽然上文可能将特征描述为以某些组合来起作用,甚至最初也这样主张,但是在一些情况下能够将来自所要求保护的组合的一个或多个特征从组合中删去,并且所要求保护的组合可以指向子组合或者子组合的变型。

类似地,虽然以特定顺序在附图中描绘了操作,但是不应将其理解为需要以所示的特定顺序或者以连续顺序来执行这样的操作,或者需要执行所有所图示的操作才能达到期望的结果。在某些情况下,多任务和并行处理可以是有利的。此外,上述实施方式中各种系统组件的分离不应当被理解为在所有实施方式中均需要这样的分离,并且应当理解为通常能够将所描述程序组件和系统一起集成在单个软件产品中或者封装为多个软件产品。

因此,已经描述了本主题的特定实施方式。其他实施方式均落入所附权利要求书的范围。在一些情况下,能够以不同的顺序来执行权利要求书中所记载的动作并且仍然达到期望的结果。此外,附图中所描绘的过程不一定需要所示的特定顺序、或连续顺序来达到期望的结果。在某些实施方式中,多任务和并行处理可以是有利的。

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