基于位置信息生成可收集项

文档序号:975837 发布日期:2020-11-03 浏览:17次 >En<

阅读说明:本技术 基于位置信息生成可收集项 (Generating collectible items based on location information ) 是由 J·布罗迪 J·H·科恩 B·德威勒 A·冯 E·Hk·林 W·林 K·A·菲弗 A· 于 2019-03-14 设计创作,主要内容包括:用于基于位置信息生成可收集媒体内容项的方法开始于处理器从耦接到第一客户端计算装置的位置传感器接收位置信息。处理器使得基于位置信息以及与地理坐标相关联的多个可收集项的子集来显示地图界面,该地图界面包括该位置处的第一用户的化身。当确定第一客户端计算装置在与所选择的可收集项相距预定距离之内时,处理器使得在第一客户端计算装置上显示前置相机视图,使得与所选择的可收集项相对应的镜头应用于前置相机视图,并使得在前置相机视图上显示的所选择的可收集项的图像发生变化。镜头包括覆盖在前置相机视图上的所选择的可收集项的图像。本文描述了其它实施例。(A method for generating a collectible media content item based on location information begins with a processor receiving location information from a location sensor coupled to a first client computing device. The processor causes a map interface to be displayed based on the location information and a subset of the plurality of collectible items associated with the geographic coordinates, the map interface including an avatar of the first user at the location. When it is determined that the first client computing device is within a predetermined distance from the selected collectible item, the processor causes a front camera view to be displayed on the first client computing device, causes a lens corresponding to the selected collectible item to be applied to the front camera view, and causes an image of the selected collectible item displayed on the front camera view to change. The lens includes an image of the selected collectible item overlaid on the front camera view. Other embodiments are described herein.)

基于位置信息生成可收集项

优先权要求

本专利申请要求于2018年3月14日提交的序列号为62/642,945的美国临时专利申请的优先权,其通过引用整体并入本文。

背景技术

电子消息传递(特别是即时消息传递)的普及持续增长。用户越来越多地彼此共享诸如电子图像和视频的媒体内容项,这反映了对更直观地通信的全球需求。

随着越来越多的系统向用户提供针对其移动装置的应用和游戏,每个系统都面临着挑战,即提供图形用户界面来吸引用户的注意力并允许他查看感兴趣的媒体内容项以及进一步在系统上与用户关联的个人网络进行交互。

具体实施方式

以下的描述包括体现本公开的说明性实施例的系统、方法、技术、指令序列和计算机器程序产品。在下面的描述中,出于解释的目的,阐述了许多具体细节以便提供对本发明主题的各种实施例的理解。然而,对于本领域技术人员显而易见的是,本发明主题的实施例也可以在没有这些具体细节的情况下实践。通常,不必详细示出公知的指令实例、协议、结构和技术。

除其它事项外,本公开的实施例通过基于来自用户的计算装置的位置传感器信息来吸引用户来改进电子消息传递和成像软件和系统的功能。例如,系统基于用户的位置生成包含互动项的地图界面。地图界面可以对应于用户位置附近的位置。例如,地图界面可以包括基于位置信息的地图、参与当前活动的用户的化身(avatar)、与用户的当前活动相关联的状态消息或与地图显示上的地图位置相关的状态消息。使用该系统,用户还可以为各种主题生成媒体内容,并与其他用户共享。例如,可以生成媒体内容(例如,图像或视频)并将其显示在用户的计算装置上,以及经由电子通信(诸如,短消息服务(SMS)或多媒体服务(MMS)文本和电子邮件)发送给其他用户。

图1是示出消息传递系统100的示例的框图,用于通过网络交换数据(例如,消息和相关联内容)。消息传递系统100包括多个客户端装置102,每个客户端装置102托管包括消息传递客户端应用104的多个应用。每个消息传递客户端应用104经由网络106(例如,因特网)通信地耦接到消息传递客户端应用104的其它实例和消息传递服务器系统108。如本文所使用的,术语“客户端装置”可以指与通信网络(例如网络106)接口连接以从一个或多个服务器系统或其它客户端装置获得资源的任何机器。客户端装置可以是但不限于移动电话、台式计算机、膝上型计算机、便携式数字助理(PDA)、智能电话、平板计算机、超级本、上网本、膝上型计算机、多处理器系统、基于微处理器或可编程的消费电子产品、游戏控制台、机顶盒或用户可用其访问网络的任何其它通信装置。

在图1示出的示例中,每个消息传递客户端应用104能够经由网络106与另一消息传递客户端应用104和消息传递服务器系统108通信和交换数据。在消息传递客户端应用104之间以及在消息传递客户端应用104和消息传递服务器系统108之间交换的数据包括功能(例如,调用功能的命令)以及有效载荷数据(例如,文本、音频、视频或其它多媒体数据)。

网络106可包括以下或与以下结合操作:自组织网络、内联网、外联网、虚拟专用网络(VPN)、局域网(LAN)、无线LAN(WLAN)、广域网(WAN)、无线WAN(WWAN)、城域网(MAN)、因特网、因特网的一部分、公共交换电话网(PSTN)的一部分、普通老式电话服务(POTS)网络、蜂窝电话网络、无线网络、网络、另一种类型的网络,或两个以上此类网络的组合。例如,网络或网络的一部分可以包括无线或蜂窝网络,并且耦接可以是码分多址(CDMA)连接、全球移动通信系统(GSM)连接或其它类型的蜂窝或无线耦接。在该示例中,耦接可以实现各种类型的数据传输技术中的任何一种,诸如单载波无线电传输技术(1xRTT)、演进数据优化(EVDO)技术、通用分组无线服务(GPRS)技术、GSM演进增强型数据速率(EDGE)技术、包括3G的第三代合作伙伴计划(3GPP)、***无线(4G)网络、通用移动电信系统(UMTS)、高速分组接入(HSPA)、全球微波接入互操作性(WiMAX)、长期演进(LTE)标准、由各种标准制定组织定义的其它标准、其它远程协议或其它数据传输技术。

消息传递服务器系统108经由网络106向特定的消息传递客户端应用104提供服务器端功能。虽然消息传递系统100的某些功能在此被描述为由消息传递客户端应用104或由消息传递服务器系统108来执行,但是可以理解,消息传递客户端应用104或消息传递服务器系统108内的某些功能的位置是设计选择的。例如,技术上优选的是在消息传递服务器系统108内初始部署某些技术和功能,但稍后将该技术和功能迁移到其中客户端装置102具有足够的处理能力的消息客户端应用104。

消息传递服务器系统108支持提供给消息传递客户端应用104的各种服务和操作。此类操作包括向消息传递客户端应用104发送数据,从消息传递客户端应用104接收数据、以及处理由消息传递客户端应用104生成的数据。例如,该数据可包括消息内容、客户端装置信息、地理位置信息、媒体注释和覆盖物、消息内容持久性条件、社交网络信息和直播事件信息。消息传递系统100内的数据交换经由消息传递客户端应用104的用户界面(UI)可用的功能来调用和控制。

现在转到消息传递服务器系统108,应用程序接口(API)服务器110耦接到应用服务器112并向应用服务器112提供编程接口。应用服务器112被通信地耦接到数据库服务器118,该数据库服务器118便于访问数据库120,在该数据库120中存储与由应用服务器112处理的消息相关联的数据。

具体地处理应用程序接口(API)服务器110,该服务器在客户端装置102和应用服务器112之间接收和发送消息数据(例如,命令和消息有效载荷)。具体地,应用程序接口(API)服务器110提供可由消息传递客户端应用104调用或查询的一组接口(例如,例程和协议),以便调用应用服务器112的功能。应用程序接口(API)服务器110公开由应用服务器112支持的各种功能,包括账户注册,登录功能,经由应用服务器112从特定消息传递客户端应用104向另一个消息传递客户端应用104发送消息、从消息传递客户端应用104向消息传递服务器应用114发送电子媒体文件(例如,电子图像或视频),以及可能由另一个消息传递客户端应用104访问,媒体数据集合(例如,故事)的设置,客户端装置102的用户的朋友列表的取得,此类集合的取得,消息和内容的取得,对社交图添加和删除朋友,朋友在社交图内的定位,开放和应用事件(例如,与消息传递客户端应用104有关)。

应用服务器112托管多个应用和子系统,包括消息传递服务器应用114、图像处理系统116和社交网络系统122。消息传递服务器应用114实现多种消息处理技术和功能,特别是与从消息传递客户端应用104的多个实例接收的消息中包括的内容(例如,文本和多媒体内容,其包括图像或视频片段)的聚合和其它处理有关的技术和功能。如将进一步详细描述的,来自多个源的文本和媒体内容可以聚合成内容集合(例如,称为故事或图库)。然后,消息传递服务器应用114使这些集合对消息传递客户端应用104可用。鉴于用于此类处理的硬件要求,消息传递服务器应用114还可以在服务器端执行其它处理器和存储器密集的数据处理。

应用服务器112还包括图像处理系统116,图像处理系统116专用于通常关于在消息传递服务器应用114处的消息的有效载荷内接收的电子图像或视频来执行各种图像处理操作。

社交网络系统122支持各种社交网络功能服务,并使这些功能和服务可用于消息传递服务器应用114。为此,社交网络系统122保持并访问数据库120内的实体图304。由社交网络系统122支持的功能和服务的示例包括消息传递系统100中的与特定用户具有关系或特定用户“关注”的其它用户的标识,以及特定用户的其它实体和关注的标识。

应用服务器112通信地耦接到一个或多个数据库服务器118,该数据库服务器118便于访问数据库120,在该数据库120中存储与由消息传递服务器应用114处理的消息相关联的数据。

一些实施例可以包括一个或多个可穿戴设备,例如具有与客户端装置102集成、通信或耦合的集成相机的挂件。任何期望的可穿戴设备可以与本公开的实施例结合使用,例如手表、眼镜、护目镜、耳机、腕带、耳塞、衣物(例如具有集成电子装置的帽子或夹克)、夹式电子装置或任何其它可穿戴装置。

图2是示出根据示例性实施例的关于消息传递系统100的进一步细节的框图。具体地,消息传递系统100被示出为包括消息传递客户端应用104和应用服务器112,其进而包含多个子系统,即短时定时器系统202、集合管理系统204和注释系统206。

短时定时器系统202负责实施对由消息传递客户端应用104和消息传递服务器应用114允许的内容的临时访问。为此,短时定时器系统202包括多个定时器,该定时器基于与消息相关联的持续时间和显示参数或消息集合,经由消息传递客户端应用104选择性地显示和启用对消息和相关联内容的访问。

集合管理系统204负责管理媒体集合(例如,文本、图像、视频和音频数据的集合)。在一些示例中,内容的集合(例如,消息,包括图像、视频、文本和音频)可以被组织成“事件图库”或“事件故事”。此类集合可以在指定的时间段(诸如内容所涉及的事件的持续时间)内可用。例如,与音乐会有关的内容可以在该音乐会的持续时间内作为“故事”提供。集合管理系统204还可以负责发布向消息传递客户端应用104的用户界面提供特定集合的存在的通知的图标。

集合管理系统204另外包括策展界面208,策展界面208允许集合管理器管理和策划特定的内容集合。例如,策展界面208使事件组织者能够策划与特定事件有关的内容集合(例如,删除不适当的内容或冗余消息)。另外,集合管理系统204采用机器视觉(或图像识别技术)和内容规则来自动策展内容集合。在某些实施例中,可以向用户支付报酬以将用户生成的内容包括在集合中。在此类情况下,策展界面208操作以便为了使用其内容而自动向此类用户付款。

注释系统206提供使得用户能够注释或以其它方式修改或编辑与消息相关联的媒体内容的各种功能。例如,注释系统206提供与由消息传递系统100处理的消息的媒体覆盖物的生成和发布有关的功能。注释系统206基于客户端装置102的地理位置可操作地向消息传递客户端应用104提供媒体覆盖物(例如,滤镜)。在另一示例中,注释系统206基于诸如客户端装置102的用户的社交网络信息的其它信息可操作地向消息传递客户端应用104提供媒体覆盖物。媒体覆盖物可包括音频和视觉内容和视觉效果。音频和视觉内容的示例包括图片、文本、徽标、动画和声音效果。视觉效果的示例包括颜色覆盖。可以将音频和视觉内容或视觉效果应用于客户端装置102处的媒体内容项(例如,图像或视频)。例如,媒体覆盖物包括可以覆盖在由客户端装置102生成的照片/电子图像之上的文本。在另一示例中,媒体覆盖物包括位置覆盖物的标识(例如,威尼斯海滩)、直播事件的名称或商家覆盖物的名称(例如,海滩咖啡馆)。在另一示例中,注释系统206使用客户端装置102的地理位置来识别包括客户端装置102的地理位置处的商家名称的媒体覆盖物。媒体覆盖物可以包括与商家相关联的其它标记。媒体覆盖物可以存储在数据库120中并通过数据库服务器118访问。

在一些示例性实施例中,如下面更详细地讨论的,本公开的实施例可以针对媒体内容项生成、显示、分配以及应用媒体覆盖。例如,实施例可以利用由客户端装置102生成的媒体内容项(例如,使用耦合到客户端装置102的数字相机采集的图像或视频)来生成媒体覆盖,该媒体覆盖可以被应用到其它媒体内容项。

图3是示出根据某些示例性实施例的存储在消息传递服务器系统108的数据库120中的数据300的示意图300。虽然数据库120的内容被示出为包括多个表,但是应当理解,但是数据可以以其它类型的数据结构存储(例如,作为面向对象的数据库)。

数据库120包括存储在消息表314内的消息数据。实体表302存储实体数据,包括实体图304。实体(其记录保持在实体表302内)可以包括个人、公司实体、组织、对象、地点、事件等。无论何种类型,消息传递服务器系统108存储数据相关的任何实体都可以是识别的实体。为每个实体提供唯一标识符,以及实体类型标识符(未示出)。

实体图304另外存储关于实体之间的关系和关联的信息。仅以以下为例,此类关系可以是社交关系、基于专业(例如,在共同的公司或组织工作)兴趣的关系、或基于活动的关系。

数据库120还将注释数据(例如以滤镜的形式)存储在注释表312中。滤镜(其数据存储在注释表312内)与视频(其数据存储在视频表310中)和/或图像(其数据存储在图像表308中)相关联并应用于视频或图像。在一个示例中,滤镜是在向接收者用户呈现期间显示为覆盖在图像或视频上的覆盖物。滤镜可以是各种类型的,包括当发送用户正在编写消息时由消息传递客户端应用104向发送用户呈现的滤镜图库中的用户选择的滤镜。

其它类型的滤镜包括地理位置滤镜(也称为地理滤镜),其可以基于地理位置呈现给发送用户。例如,基于由客户端装置102的GPS单元确定的地理位置信息,消息客户端应用104可以在用户界面内呈现特定于邻域或特殊位置的地理位置滤镜。另一种类型的滤镜是数据滤镜,其可以基于由客户端装置102在消息创建过程期间收集的其它输入或信息,由消息传递客户端应用104选择性地将其呈现给发送用户。数据滤镜的示例包括特定位置处的当前温度、发送用户正在行进的当前速度、客户端装置102的电池寿命或当前时间。可以存储在图像表308内的其它注释数据是所谓的“镜头”数据。“镜头”可以是可以添加到图像或视频的实时特效和声音。

如上所述,视频表310存储视频数据,在一个实施例中,视频数据与消息(其记录保持在消息表314内)相关联。类似地,图像表308存储与消息(其消息数据存储在实体表302中)相关联的图像数据。实体表302可以将来自注释表312的各种注释与存储在图像表308中的各种图像和视频表310中的各种视频相关联。

故事表306存储关于消息和相关联图像、视频或音频数据的集合的数据,其被编译成集合(例如,故事或图库)。特定集合的创建可以由特定用户(例如,在实体表302中保持其记录的各个用户)发起。用户可以以已经由该用户创建和发送/广播的内容集合的形式创建“个人故事”。为此,消息传递客户端应用104的用户界面可以包括用户可选择的图标,以使发送用户能够将特定内容添加到他或她的个人故事中。

集合还可以构成“现场故事”,其是来自多个用户的内容的集合,其是手动、自动或使用手动和自动技术的组合来创建的。例如,“现场故事”可以构成来自不同位置和事件的用户提交内容的策划流。例如,可以经由消息传递客户端应用104的用户界面向用户(该用户的客户端装置启用了位置服务并且其在特定时间处于公共位置事件)呈现选项,以向特定的现场故事贡献内容。可以由消息传递客户端应用104基于他或她的位置向用户识别现场故事。最终结果是从社区角度讲述的“现场故事”。

另一种类型的内容集合被称为“位置故事”,其使得用户(该用户的客户端装置102位于特定地理位置(例如,在学院或大学校园内))能够对特定集合做出贡献。在一些实施例中,对位置故事的贡献可能需要验证终端用户属于特定组织或其它实体(例如,是大学校园中的学生)的第二程度的认证。

数据库120还可以存储客户端装置102的用户的位置。在一个实施例中,数据库120存储用户访问过的确切位置的历史或地区的历史。

在一个实施例中,数据库120还存储为每个用户设置的位置共享偏好。例如,用户的位置共享偏好可以设置为(i)“所有朋友”,其中所有用户的朋友都可以访问他的当前位置;(ii)“选择朋友”,其中用户特别选择允许他的哪些朋友访问他的当前位置;或(iii)“幻象模式(ghost mode)”,其中没有人能看到他的当前位置。

本发明的实施例可以生成并呈现定制的媒体内容项以便在电子消息/通信中使用,电子消息/通信例如是短消息服务(SMS)或多媒体消息服务(MMS)文本和电子邮件。定制的媒体内容项还可以与本文讨论的故事,滤镜和短时消息传递功能结合使用。

本发明的以下实施例可以被描述为一种过程,该过程通常被描绘为流程、流程图、结构图或框图。尽管流程图可以将操作描述为顺序的过程,但是许多操作也可以并行或同时执行。另外,还可以重新布置操作的顺序。在操作完成后,该过程终止。过程可以对应于方法、程序等。

图4描绘了根据本公开的各个方面的示例性过程400。方法400的步骤可以全部或部分地执行,可以彼此结合以及与其它方法中的一些或所有步骤一起执行,并且可以由任意数量的不同系统执行,例如在图1和7中描述的系统。例如,图1中的消息传递服务器系统108或耦接到消息传递服务器系统108的处理器可以执行方法400。

在一个实施例中,方法400在操作410开始,其中系统的处理器(例如,图1中的消息传递服务器系统108)从耦接到与第一用户相关联的第一客户端计算装置的位置传感器接收位置信息。位置信息可以包括在通过诸如因特网的网络(例如,图1中的网络106)从用户的第一客户端计算装置(例如,图1中的客户端装置102)发送的电子通信中。位置传感器可以是耦接到第一客户端计算装置的例如图7的系统700中的定位组件738(下面讨论)。在一些实施例中,位置传感器可以包括集成在第一客户端计算装置中的全球定位传感器(GPS)组件以及其它类型的位置传感器。处理器可以定期接收位置信息,并且可以从用户的计算装置请求信息和/或在没有请求的情况下从用户的装置接收信息。在一个示例性实施例中,例如,第一客户端计算装置包含监视来自第一客户端计算装置的位置传感器信息并且响应于位置改变而将更新发送到系统的软件。在一些实施例中,第一客户端计算装置可以仅在位置改变至少预定距离之后用新位置来更新系统,以允许用户在建筑物或其它位置周围移动而不触发更新。

在一个实施例中,处理器可以从第一客户端计算装置接收授权以利用位置信息和/或在媒体内容项中显示用户的化身或位置。可以经由接受用于利用在线社交网络的服务或系统提供的其它服务的条款,通过用户逐案接受(例如,经由在用户的计算装置上显示的弹出窗口)或使用任何其它合适的获得用户的授权的方法来获得该授权。

在操作420,处理器使得由第一客户端计算装置显示地图界面。地图界面可以显示在第一客户端计算装置的显示屏上。地图界面包括基于位置信息的地图显示和在基于位置信息的地图显示上的位置处的第一用户的化身。地图显示包括地图和其它背景。

在一些实施例中,处理器随着用户计算装置的位置改变而更新地图的图像。图5A描绘了地图界面,该地图界面包括用户在其当前位置的化身以及系统中与系统中的用户连接的其他用户的化身。其他用户的化身也被包括在地图界面中与他们在现实世界中的当前位置相对应的地图位置处(例如,地理坐标)。如图5A所示,当若干用户位于相同位置时,系统可以呈现化身的集群以代替单独化身。通过这种方式,系统可以直观地跟踪用户化身的位置以及其他化身的群集和其他单独化身的位置。

用户可以与对应于其他化身的各个用户以及其他人共享媒体内容项(例如,经由社交媒体、文本或其它电子通信)。在这种情况下,“媒体内容项”可以包括任何格式的任何类型的电子媒体。媒体内容项可以包括静止图像、动画图像、视频或其它内容。例如,媒体内容项可以包括JPG格式的图像、PNG格式的图像、FLV格式的视频、AVI格式的视频等。在一些示例性实施例中,媒体内容项可以包括使用耦接到执行方法400的功能的系统或与执行方法400的功能的系统通信的图像采集装置或组件(例如,数字相机)来采集的内容。在图7中描绘的示例系统700可以包括数码相机,作为输入组件728中的一者。另外或替代地,可以从另一系统或装置接收媒体内容项。在图1中,例如,媒体内容项还可以包括音频以及不同媒体格式(例如,静止图像和视频)的组合。第一用户还可以与系统中的其他用户共享(例如,经由社交媒体、文本或其它电子通信)地图界面的显示。在一个实施例中,用户可以通过选择显示器上的媒体内容元素来共享显示(例如,选择要共享的图标或按钮或图像)。

如本文所使用的,用户的“化身”是用户的任何视觉表示。用户的化身可以是基于从用户的图像导出的信息(例如,特征)以及从用户与其他用户的关系中识别出的化身特征的。替代地或附加地,用户可以经由用户的计算装置来选择和定制用户化身的特征。该化身特征可以包括例如用户的身体特征(例如,肌肉,瘦弱等),面部特征,衣服和配饰,与化身结合显示的文本,以及与化身结合显示的图像。化身信息可以从各种源中取得,诸如执行方法400的步骤的装置(例如,图1中的消息传递服务器系统108)的本地存储器以及其它系统和装置。例如,处理器可以从数据库(例如,数据库120)中取得与第一用户相关联的化身信息,并基于化身信息生成第一用户的化身。

生成并使其在操作420处显示的地图界面还包括基于位置信息的多个可收集项的子集。在地图显示上的地图位置处示出的可收集媒体内容项对应于已预先分配给可收集媒体内容项的地理坐标。处理器可以与预先分配给可收集项的地理坐标相关联地存储(例如,在数据库120中)可收集项。在一个实施例中,该子集包括分别与地图显示中所包括的地理坐标相关联的可收集项。例如,在图5A中,示出可收集项为散布在整个地图显示(例如,西洛杉矶)中的寻宝蛋。每个蛋都已预先分配了地理坐标。处理器可以根据需要更改地理坐标。

处理器可以预先分配与包括在系统的数据库中存储的批准列表上的公共位置相对应的地理坐标。例如,批准列表可包括公园、购物中心、草地公共区域、电影院、大学或学院校园、机场航站楼、景点、博物馆、动物园、火车站、市政厅、体育馆、邮局、纪念碑、凉亭、咖啡店、商店、饭店、酒吧和其它感兴趣地点。当处理器确定预先分配的地理坐标与非期望或不安全位置(例如,墓地、小学、水域、高速公路、宗教机构、医疗机构、脱衣舞俱乐部等)的地理坐标重叠时,处理器还可以改变预先分配的地理坐标)。

在操作430,处理器从第一客户端计算装置接收以选择所选择的可收集项的输入。所选择的可收集项是第一客户端计算装置的显示屏显示的可收集项中的一者。在图5A中所示,可收集项是在地图界面上显示的蛋。为了收集或采集蛋,用户必须前往地图显示上的蛋的地理坐标(即物理位置)。例如,如果用户前往图5A中显示在90号高速公路以南的PlayaVista,则用户可以在该位置收集蛋。

在操作440,处理器确定第一客户端计算装置是否在与和所选择的可收集项相关联的地理坐标相距预定距离之内。预定距离可以由系统设置。在一个实施例中,预定距离(例如,收集半径)可以在150至250米之间。当处理器确定第一客户端计算装置不在预定距离内时,处理器可以进一步确定第一用户是否在在假冒其位置,如果是,则处理器可以生成告警消息,以指示第一用户可能在他的仿冒的地点没有收集到可收集项(例如,“我们检测到您在仿冒位置。您只能在您的真实位置收集蛋。”)

在操作490,当确定第一客户端计算装置不在预定距离之内时,处理器使得在第一客户端计算装置上显示用于提示用户向与所选可收集项相关联的地理坐标移近的消息。图5B示出了位于纽约中央公园的用户的化身。图5B中的用户在他的用户计算装置的地图显示上选择位于East 49th Street和Lexington Avenue的蛋。在图5B中,处理器确定位于中央公园的用户不在他在地图显示上所选择的蛋的预定距离内。处理器导致提示用户移动靠近蛋的位置(例如“太远!再靠近100英尺”)的消息的显示。

当确定用户的计算装置在预定距离之内时,在操作450,处理器使前置相机视图显示在第一客户端计算装置上,并且在操作460,使对应于所选择的可收集项的镜头将被应用于第一客户端计算装置的前置相机视图。与所选择的可收集项相对应的镜头包括所选择的可收集项的图像,该图像覆盖在前置相机视图上。该镜头可以包括具有静态(即,非运动)特征以及动态(即,运动)特征的覆盖物。

图5G示出了五种不同类型的可收集项的屏幕截图。在图5G中,用户计算装置的前置相机视图示出了办公室空间中的桌子。在图5G的第一行中,与不同类型的可收集项相对应的图像是覆盖在前置相机视图上的不同颜色的蛋。具体地,当在用户计算装置的显示屏上查看时,该蛋看来像在办公室空间的桌子上。

为了采集或收集蛋,第一用户可以在第一客户端计算装置的显示屏上选择蛋(例如,在蛋的位置处点击屏幕)。在操作470,处理器从第一客户端计算装置接收用以选择前置相机视图上的所选择的可收集项的图像的输入。在操作480,处理器使在前置相机视图上显示的所选可收集项的图像改变。图像的改变可以向第一用户指示采集到所选择的可收集项。例如,如图5G的第一行所示,当第一用户选择在其上半部分具有点的蛋(例如,左边的第一只蛋)时,该蛋可以变成图5G的下一行中的干净的兔子(例如,左边的第一只兔子)。类似地,当第一用户选择图5G的第一行中的每个蛋时,蛋分别变成该蛋下方的图5的下一行中的带图案的兔子。图5F示出了与不同的可收集的蛋相关联的不同兔子的示例。

在操作480,当处理器使在前置相机视图上显示的所选可收集项的图像改变时,处理器可以使所选可收集项的图像动画化。图5E示出了所选择的可收集项的动画中的一系列图像的示例。

在一个实施例中,处理器可以基于与所选择的可收集项相关联的点的数量,使包括在地图界面上的分数增加。在一个实施例中,可收集项可以包括不同类型的可收集项,并且每种类型的可收集项可以与不同数量的点相关联。如图5A和图5G所示,可收集项包括具有不同外观(例如,其上的不同图案或设计)的蛋。在一个实施例中,不同的蛋各自与不同数量的点相关联。例如,圆点蛋为10点,而水平条纹蛋和旋涡线蛋可能仅为1点。

在一个实施例中,处理器确定与所选择的可收集项相关联的可收集项的类型。例如,处理器确定哪种蛋类型(例如,圆点蛋,水平条纹蛋等)与所选的可收集项相关联。然后,处理器确定与可收集项的类型相关联的滤镜,并将向第一客户端计算装置提供对滤镜的访问。滤镜是第一客户端计算装置显示的后置相机视图的覆盖。如图5D所示,可以为每种类型的可收集项关联具有不同的覆盖图像或特征的不同的滤镜。当用户采集或收集可收集项时,用户可能解锁了与所采集的可收集项的类型相关联的滤镜。例如,如果第一用户采集了在图5G的上半部分上有点的蛋(例如,左侧的第一个蛋),则第一用户被奖励包括兔耳朵有水平条纹的滤镜(例如,图5D中左侧的第一滤镜)。在提供了对第一客户端计算装置的访问后,第一用户可以将滤镜实时应用于显示在第一客户端计算装置上的后置相机视图。第一用户还可以采集用第一客户端计算装置的后置相机拍摄的其上应用了滤镜的照片,并与系统中的其他用户共享该照片。

处理器可使第一客户端计算装置显示与第一用户相关联的分数或第一用户采集的可收集项的数量。在该实施例中,处理器可以使分数或可收集项的数量与用户的化身相关联地显示在用户的计算装置的显示屏上,如图5C所示。处理器还可以使系统中每个用户的分数或可收集项的数量与他们各自的化身相关联地显示在地图显示(未显示)上。

在一个实施例中,处理器可以使在第一客户端计算装置上显示排行榜。排行榜包括基于通过采集可收集项获得的分数的包括第一用户的多个用户的等级。如图5I中所示,排行榜可以是包括系统上所有参与收集可收集项的用户的全球排行榜。在一个实施例中,只有非幻象模式的用户(即,与公众共享其位置的用户)呈现在全球排行榜上。如图5H所示的排行榜也可以是“朋友排行榜”,其中包括用户的参与收集可收集项的朋友(或在系统上与用户相关联的任何人)。在一个实施例中,仅在“朋友排行榜”上呈现与用户共享位置的朋友。尽管未示出,但是也可以生成本地化的排行榜,其包括参与可收集项的采集的相同地点(例如,在城市、邻里、用户位置的预定半径内)内的用户。对于每个排行榜,显示出用户与其他用户相比的排名。如图5H和5I所示,排行榜还可以包括在领奖台上显示的前三名用户的化身。在图5J中,示出了全球排行榜的另一实施例。全球排行榜可以显示例如用户的当前等级,他的百分等级(例如,“您在所有寻蛋者中排名前20%”)以及提高其百分等级所需的蛋数或点数(例如,“再收集7个蛋,排入蛋猎人的前15%”。

在某些实施例中,用户可以通过选择第一用户的分数来访问排行榜,如图5B所示,在显示的右上角处示出有分数的蛋(例如x9)。游戏的持续时间(即,或系统为用户采集而产生可收集项的持续时间)可能是受限的。在该实施例中,排行榜还可以包括计时器,以指示游戏中剩余的时间,如图5H,5I和5J中的显示的右上方所示。

在一个实施例中,用户还可以与系统中的其他用户分享例如他在排行榜上的分数和位置(例如,选择要分享的图标或按钮或图像)。

本公开的实施例可以发送和接收电子通信,包含媒体内容项、媒体覆盖或任何其它形式的其它内容的电子通信的,诸如SMS文本、MMS文本、电子邮件和其它通信。可以将该通信中包含的媒体内容项作为附件提供,在消息中内联显示,在媒体覆盖内显示、或以任何其它合适的方式传递。

软件架构

图6是示出示例性软件架构606的框图,其可以与在此描述的各种硬件架构结合使用。图6是软件架构的非限制性示例,并且可以理解,许多其它架构可被实现以促进在此描述的功能。软件架构606可以在诸如图7的机器700的硬件上执行,机器700包括处理器704、存储器714和I/O组件718等。代表性硬件层652被示出并且可以表示例如图7的机器700。代表性硬件层652包括具有相关联可执行指令604的处理单元654。可执行指令604表示软件架构606的可执行指令,包括在此描述的方法、组件等的实施方式。硬件层652还包括存储器或存储模块存储器/存储装置656,其也具有可执行指令604。硬件层652还可以包括其它硬件658。

如本文所使用的,术语“组件”是指具有由功能或子例程调用、分支点、应用程序接口(API)或提供特定处理或控制功能的分区或模块化的其它技术定义的边界的装置、物理实体或逻辑。组件可以经由它们的接口与其它组件组合以执行机器过程。组件可以是被设计用于与其它组件一起使用的封装功能硬件单元,以及通常执行相关功能的特定功能的程序的一部分。

组件可以构成软件组件(例如,在机器可读介质上体现的代码)或硬件组件。“硬件组件”是能够执行某些操作的有形单元,并且可以以某种物理方式配置或布置。在各种示例性实施例中,一个或多个计算机系统(例如,独立计算机系统、客户端计算机系统或服务器计算机系统)或计算机系统的一个或多个硬件组件(例如,处理器或一组处理器)可以通过软件(例如,应用或应用部分)将其配置为操作以执行如在此所述的某些操作的硬件组件。硬件组件还可以机械地、电子地或其任何合适的组合来实现。例如,硬件组件可以包括永久配置为执行某些操作的专用电路或逻辑。

硬件组件可以是专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。硬件组件还可以包括由软件临时配置以执行某些操作的可编程逻辑或电路。例如,硬件组件可以包括由通用处理器或其它可编程处理器执行的软件。在由该软件配置后,硬件组件就成为特定的机器(或机器的特定组件),其被独特地定制以执行配置的功能并且不再是通用处理器。应当理解,可以由成本和时间考虑来驱动在专用和永久配置的电路中或在临时配置的电路(例如,由软件配置)中机械地实现硬件组件的决定。

处理器可以是或包括根据控制信号(例如,“命令”、“操作码”、“机器代码”等”)操纵数据值以及产生应用于操作机器的对应输出信号的任何电路或虚拟电路(由在实际处理器上执行的逻辑模拟的物理电路)。例如,处理器可以是中央处理单元(CPU)、精简指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、射频集成电路(RFIC)或其任何组合。处理器可以进一步是具有可以同时执行指令的两个或更多个独立处理器(有时称为“核”)的多核处理器。

因此,短语“硬件组件”(或“硬件实现的组件”)应该被理解为包含有形实体,即物理构造、永久配置(例如,硬连线)或临时配置(例如,编程)的实体,以某种方式操作或执行在此所述的某些操作。考虑其中硬件组件被临时配置(例如,编程)的实施例,不需要在任何一个时刻配置或实例化硬件组件中的每个硬件组件。例如,在硬件组件包括由软件配置成为专用处理器的通用处理器的情况下,通用处理器可以在不同时间被配置为相应的不同的专用处理器(例如,包括不同的硬件组件)。软件相应地配置特定的一个或多个处理器,例如,在一个时刻构成特定的硬件组件,并在不同的时刻构成不同的硬件组件。硬件组件可以向其它硬件组件提供信息并从其接收信息。因此,所描述的硬件组件可以被视为通信地耦接。在同时存在多个硬件组件的情况下,可以通过在两个硬件组件之间或更多个硬件组件之中的信号传输(例如,通过适当的电路和总线)来实现通信。在其中在不同时间配置或实例化多个硬件组件的实施例中,例如通过对多个硬件组件可访问的存储器结构中的信息的存储和取得,可以实现该硬件组件之间的通信。

例如,一个硬件组件可以执行操作并将该操作的输出存储在与其通信耦接的存储器装置中。然后,另一硬件组件可以稍后访问存储器装置以取得和处理所存储的输出。硬件组件还可以启动与输入或输出装置的通信,并且可以在资源(例如,信息集合)上操作。在此描述的示例方法的各种操作可以至少部分地由临时配置(例如,通过软件)或永久配置为执行相关操作的一个或多个处理器来执行。无论是临时配置还是永久配置,该处理器可以构成处理器实现的组件,其用于执行在此描述的一个或多个操作或功能。如在此所使用的,“处理器实现的组件”是指使用一个或多个处理器实现的硬件组件。类似地,在此描述的方法可以至少部分地由处理器实现,其中特定的一个处理器或多个处理器是硬件的示例。例如,方法的操作中的至少一些操作可以由一个或多个处理器或处理器实现的组件来执行。

此外,一个或多个处理器还可以操作以支持“云计算”环境中的相关操作的性能或作为“软件即服务”(SaaS)。例如,操作中的至少一些操作可以由一组计算机(作为包括处理器的机器的示例)执行,这些操作可以经由网络(例如,因特网)并且经由一个或多个适当的接口(例如,应用程序接口(API))访问。操作中的某些操作的性能可以在处理器之间分配,不仅驻留在单个机器内,而且部署在多个机器上。在一些示例性实施例中,处理器或处理器实现的组件可以位于单个地理位置(例如,在家庭环境、办公室环境或服务器群内)。在其它示例性实施例中,处理器或处理器实现的组件可以分布在多个地理位置上。

在图6的示例性架构中,软件架构606可以概念化为层的堆栈,其中每个层提供特定的功能。例如,软件架构606可以包括诸如操作系统602、库620、应用616和表示层614的层。在操作上,层内的应用616或其它组件可以通过软件堆栈调用应用编程接口(API)API调用608,并且响应于API调用608接收消息612。所示的层本质上是代表性的,并且并不是所有软件架构都具有所有层。例如,一些移动或专用操作系统可能不提供框架/中间件618,而其它操作系统可提供此类层。其它软件架构可以包括附加的层或不同的层。

操作系统602可以管理硬件资源并提供公共服务。操作系统602可以包括例如内核622、服务624和驱动器626。内核622可以用作硬件和其它软件层之间的抽象层。例如,内核622可以负责存储器管理、处理器管理(例如,调度)、组件管理、网络、安全设置等。服务624可以为其它软件层提供其它公共服务。驱动器626负责控制底层硬件或与底层硬件接口连接。例如,驱动器626包括显示驱动器、相机驱动器、驱动器、闪存驱动器、串行通信驱动器(例如,通用串行总线(USB)驱动器)、Wi-Fi驱动器、音频驱动器、电源管理驱动器等等,取决于硬件配置。

库620提供由应用616或其它组件或层使用的公共基础结构。库620提供允许其它软件组件以比与底层操作系统602功能(例如,内核622、服务624或驱动器626)直接接口连接更容易的方式执行任务的功能。库620可以包括系统库644(例如,C标准库),其可以提供诸如存储器分配功能、字符串操作功能、数学功能等的功能。另外,库620可以包括API库646,诸如媒体库(例如,用于支持各种媒体格式(诸如MPREG4、H.264、MP3、AAC、AMR、JPG、PNG)的呈现和操作的库)、图形库(例如,可用于在显示器上的图形内容中呈现2D和3D的OpenGL框架)、数据库库(例如,可提供各种关系数据库功能的SQLite)、web库(例如,可提供web浏览功能的WebKit)等。库620还可以包括各种其它库648,以向应用616和其它软件组件/模块提供许多其它API。

框架/中间件618(有时也称为中间件)提供可由应用616或其它软件组件/模块使用的更高级别的公共基础结构。例如,框架/中间件618可以提供各种图形用户界面(GUI)功能、高级资源管理、高级位置服务等。框架/中间件618可以提供可以由应用616或其它软件组件/模块使用的宽范围的其它API,其中的一些可以针对特定操作系统602或平台。

应用616包括内置应用638或第三方应用640。代表性内置应用638的示例可包括但不限于联系人应用、浏览器应用、书籍阅读器应用、位置应用、媒体应用、消息传递应用和/或游戏应用。第三方应用640可以包括由特定平台的供应商以外的实体使用ANDROIDTM或IOSTM软件开发工具包(SDK)开发的应用,并且可以是在诸如IOSTM、ANDROIDTM

Figure BDA0002677268180000201

Phone的移动操作系统或其它移动操作系统上运行的移动软件。第三方应用640可以调用由移动操作系统(诸如操作系统602)提供的API调用608以便于实现在此描述的功能。

应用616可以使用内置操作系统功能(例如,内核622、服务624或驱动器626)、库620和框架/中间件618来创建用户界面以与系统的用户交互。可替代地或另外地,在一些系统中,与用户的交互可以通过表示层(诸如表示层614)发生。在这些系统中,应用/组件“逻辑”可以与和用户交互的应用/组件的方面分开。

图7是示出根据一些示例性实施例的能够从机器可读介质(例如,机器可读存储介质)读取指令并执行在此所讨论的任何一种或多种方法的机器700的组件(在此也称为“模块”)的框图。具体地,图7示出了以计算机系统的示例形式的机器700的图形表示,在该计算机系统内可以执行用于使机器700执行在此所讨论的任何一种或多种方法的指令710(例如,软件、程序、应用、小应用、应用软件或其它可执行代码)。这样,指令710可用于实现在此描述的模块或组件。指令710将通用的非程序化的机器700变换成被编程为以所描述的方式执行所描述和示出的功能的特定的机器700。在替代实施例中,机器700作为独立装置操作或者可以耦接(例如,联网)到其它机器。在联网部署中,机器700可以在服务器-客户端网络环境中以服务器机器或客户端机器的能力操作,或者作为对等(或分布式)网络环境中的对等机器操作。机器700可以包括但不限于服务器计算机、客户端计算机、个人计算机(PC)、平板计算机、膝上型计算机、上网本、机顶盒(STB)、个人数字助理(PDA)、娱乐媒体系统、蜂窝电话、智能电话、移动装置、可穿戴装置(例如,智能手表)、智能家居装置(例如,智能家电)、其它智能装置、网络装置、网络路由器、网络交换机、网络桥接器、或者能够顺序地或以其它方式执行指令710的任何机器,该指令710指定机器700要采取的动作。此外,尽管仅示出了单个机器700,但是术语“机器”还可被视为包括单独或联合地执行指令710以执行在此所讨论的任何一种或多种方法的机器的集合。

机器700可以包括处理器704、存储器/存储装置706和I/O组件718,其可以被配置为例如经由总线702彼此通信。存储器/存储装置706可以包括存储器714(诸如主存储器或其它存储器存储装置)和存储单元716,两者都可由处理器704诸如经由总线702访问。存储单元716和存储器714存储体现在此描述的任何一种或多种方法或功能的指令710。在机器700的执行期间,指令710还可以完全或部分地驻留在存储器714内、存储单元716内、处理器704中的至少一个处理器内(例如,处理器的高速缓冲存储器内)、或其任何合适的组合。因此,存储器714、存储单元716和处理器704的存储器是机器可读介质的示例。

如本文所使用的,术语“机器可读介质”、“计算机可读介质”等可以指能够临时或永久地存储指令和数据的组件、装置或其它有形介质。此类介质的示例可包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、缓冲存储器、闪存、光介质、磁介质、高速缓冲存储器、其它类型的存储器(例如,可擦除可编程只读存储器(EEPROM))或其任何合适的组合。术语“机器可读介质”应被视为包括能够存储指令的单个介质或多个介质(例如,集中式或分布式数据库,或相关联的高速缓存和服务器)。术语“机器可读介质”还可被视为包括能够存储由机器执行的指令(例如,代码)的任何介质或多个介质的组合,使得指令在由机器的一个或多个处理器执行时使机器执行在此描述的任何一种或多种方法。因此,“机器可读介质”可以指单个存储设备或装置,以及包括多个存储设备或装置的“基于云的”存储系统或存储网络。术语“机器可读介质”排除信号本身。

I/O组件718可以包括各种组件,以提供用户接口用于接收输入、提供输出、产生输出、发送信息、交换信息、采集测量等。在特定机器700的用户接口中包括的特定I/O组件718将取决于机器的类型。例如,诸如移动电话的便携式机器可能包括触摸输入装置或其它此类输入机构,而无头服务器机器可能不包括此类触摸输入装置。可以理解,I/O组件718可以包括图7中未示出的许多其它组件。I/O组件718根据功能分组仅仅是为了简化以下讨论,并且分组决不是限制性的。在各种示例性实施例中,I/O组件718可以包括输出组件726和输入组件728。输出组件726可以包括可视组件(例如,显示器,诸如等离子显示面板(PDP)、发光二极管(LED)显示器、液晶显示器(LCD)、投影仪或阴极射线管(CRT))、声学组件(例如扬声器)、触觉组件(例如,振动电机、电阻机构)、其它信号发生器等等。输入组件728可以包括字母数字输入组件(例如,键盘、配置为接收字母数字输入的触摸屏、光电键盘或其它字母数字输入组件)、基于点的输入组件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或其它指向仪器)、触知输入组件(例如,物理按钮、提供触摸或触摸手势的位置或力的触摸屏,或其它触知输入组件)、音频输入组件(例如,麦克风)等。输入组件728还可包括一个或多个图像采集装置,诸如用于生成数字图像或视频的数字相机。

在进一步的示例性实施例中,I/O组件718可以包括生物度量组件730、运动组件734、环境的环境组件736或定位组件738,以及多种其它组件。此类组件(或其一部分)中的一个或多个可共同地在本文中被称作“传感器组件”或“传感器”,用于收集与机器700、机器700的环境、机器700的用户或其组合相关的各种数据。

例如,生物度量组件730可包括检测表达(例如手部表达、面部表情、声音表达、身体姿势或眼睛跟踪)、测量生物信号(例如,血压、心率、体温、汗水或脑波)、识别人(例如,语音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别)等的组件。运动组件734可包括加速度传感器组件(例如,加速度计)、重力传感器组件、速度传感器组件(例如速度计)、旋转传感器组件(例如陀螺仪)等。环境组件736可包括例如照明传感器组件(例如,光度计)、温度传感器组件(例如,检测环境温度的一个或多个温度计)、湿度传感器组件、压力传感器组件(例如气压计)、声学传感器组件(例如,检测背景噪声的一个或多个麦克风)、接近度传感器组件(例如,检测附近物体的红外传感器)、气体传感器(例如,用于为了安全而检测危险气体浓度或测量大气中的污染物的气体检测传感器)或可能提供与周围物理环境相对应的指示、测量或信号的其它组件。定位组件738可包括定位传感器组件(例如,全球定位系统(GPS)接收器组件)、高度传感器组件(例如,高度计或气压计,其可以检测可以从哪个高度导出空气压力)、取向传感器组件(例如,磁力计)等。例如,定位传感器组件可提供与系统700相关联的位置信息,例如系统700的GPS坐标或者与系统700当前所在位置有关的信息(例如,餐馆或其它公司的名称)。

通信可以使用各种技术来实现。I/O组件718可以包括通信组件740,其可操作以分别经由耦接器722和耦接器724将机器700耦接到网络732或装置720。例如,通信组件740可包括网络接口组件或与网络732接口连接的另一合适装置。在另外的示例中,通信组件740包括有线通信组件、无线通信组件、蜂窝通信组件、近场通信(NFC)组件、蓝牙组件(例如,低功耗

Figure BDA0002677268180000232

)、组件和经由其它模式提供通信的其它通信组件。装置720可以是另一机器或各种***装置(例如,经由通用串行总线(USB)耦接的***装置)中的任何一个。

此外,通信组件740可检测标识符或包括可操作以检测标识符的组件。例如,通信组件740可包括射频识别(RFID)标签读取器组件、NFC智能标签检测组件、光学读取器组件(例如,光学传感器,其用于检测诸如通用产品代码(UPC)条形码的一维条形码、诸如快速响应(QR)代码、Aztec代码、数据矩阵、数字图形、最大码、PDF417、超码、UCC RSS-2D条形码和其它光学代码的多维条形码)或声学检测组件(例如,用于识别标记的音频信号的麦克风)。此外,可以经由可以指示特定位置的通信组件740来导出各种信息,诸如经由因特网协议(IP)地理位置的位置、经由信号三角测量的位置、经由检测NFC信标信号的位置等。

其中使用类似于“A、B或C中的至少一个”,“A、B和C中的至少一个”,“A、B或C中的一个或多个”或“A、B和C中的一个或多个”的术语,意旨将该术语解释为表示实施例中可以单独存在A,实施例中可以单独存在B,实施例中可以单独存在C,或者在单独的实施例中可以存在元素A、B和C的任何组合;例如,可以存在A和B,A和C,B和C,或者A和B和C。

在不脱离本公开的范围的情况下,可以对所公开的实施例进行改变和修改。如所附权利要求所表达的,这些和其它改变或修改旨在被包括在本公开的范围内。

32页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:自动减少在在线游戏环境中使用欺骗软件

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类