CN115885247A - 用于启动应用的视觉搜索 - Google Patents

用于启动应用的视觉搜索 Download PDF

Info

Publication number
CN115885247A
CN115885247A CN202180050055.1A CN202180050055A CN115885247A CN 115885247 A CN115885247 A CN 115885247A CN 202180050055 A CN202180050055 A CN 202180050055A CN 115885247 A CN115885247 A CN 115885247A
Authority
CN
China
Prior art keywords
user interface
application
message
receiving
visual identifier
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.)
Pending
Application number
CN202180050055.1A
Other languages
English (en)
Inventor
迪伦·沙恩·爱林柏格
约翰·詹森
威廉姆·吴
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.)
Snap Inc
Original Assignee
Snap Inc
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 Snap Inc filed Critical Snap Inc
Publication of CN115885247A publication Critical patent/CN115885247A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B5/00Visible signalling systems, e.g. personal calling systems, remote indication of seats occupied
    • G08B5/22Visible signalling systems, e.g. personal calling systems, remote indication of seats occupied using electric transmission; using electromagnetic transmission

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Optics & Photonics (AREA)
  • Electromagnetism (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本文中的系统和方法访问视觉标识符,执行对视觉标识符的视觉搜索,响应于执行对视觉标识符的视觉搜索,使得在计算设备的图形用户界面内呈现应用菜单,接收对应用菜单内的第一用户界面元素的选择,以及响应于接收到该选择,运行计算机应用。

Description

用于启动应用的视觉搜索
优先权要求
本申请要求于2020年6月10日提交的序列号为63/037,314的美国临时申请的优先权的权益,该美国临时申请的全部内容通过引用并入本文中。
技术领域
本公开内容的实施方式总体上涉及游戏应用。更特别地但并非通过限制的方式,所提出的系统和方法描述了使用视觉标识符来启动计算机应用。
背景技术
社交媒体应用在应用内提供游戏功能。例如,社交媒体应用允许计算机应用(例如,游戏)在应用内运行。
附图说明
在不一定按比例绘制的附图中,相似的附图标记可以在不同视图中描述类似的部件。为了容易地识别对任何特定元件或动作的讨论,附图标记中的一个或多个最高位数字指代该元件被首次引入时所在的图号。在附图的图中以示例而非限制的方式示出了一些实施方式,在附图中:
图1是根据一些示例的其中可以部署本公开内容的联网环境的图解表示。
图2是根据一些示例的具有客户端侧和服务器侧二者的功能的消息系统的图解表示。
图3是根据一些示例的在数据库中维护的数据结构的图解表示。
图4是根据一些示例的消息的图解表示。
图5是根据一些示例的访问限制过程的流程图。
图6是根据一些示例的使用视觉标识符以启动应用的流程图。
图7是根据一些示例的视觉标识符的示意图。
图8是根据一些示例的消息应用内的用户界面的图示。
图9是根据一些示例的计算机应用内的用户界面的图示。
图10是根据一些示例的计算机应用内的用户界面的图示。
图11是根据一些示例的计算机系统形式的机器的图解表示,在该机器中,可以执行一组指令以使机器执行本文中讨论的任何一种或更多种方法。
图12是示出可以在其中实现示例的软件架构的框图。
具体实施方式
示例方法和系统描述了用于使用视觉标识符来启动计算机应用的视觉标识符系统。视觉标识符系统访问视觉标识符,该视觉标识符包括表示计算机应用的编码数据。视觉标识符可由用户配置。例如,视觉标识符可以是快速响应(QR)码或条形码。在一些示例中,视觉标识符是对数据进行编码的任何合适的机器可读光学标签。例如,视觉标识符可以包含指向计算机应用的数据。视觉标识符系统可以将多个视觉标识符与同一计算机应用相关联。例如,视觉标识符系统可以访问第二视觉标识符,该第二视觉标识符包括表示计算机应用的编码数据。
视觉标识符系统执行视觉标识符的视觉搜索。例如,视觉标识符系统可以使用图像捕获设备扫描视觉标识符。在一些示例中,在计算设备上,视觉标识符系统使用安装在计算设备上的图像处理软件扫描视觉标识符。
在一些示例中,视觉标识符系统验证计算设备。在一些示例中,视觉标识符系统接收包括验证成功的指示。响应于接收到验证成功的指示,视觉标识符系统显示应用菜单。在一些示例中,视觉标识符系统接收包括验证失败的指示。如果计算设备被列入黑名单、如果计算设备的位置被列入黑名单或者如果计算设备的任何其他属性被认为不能支持计算机应用,则视觉标识符系统可以接收验证失败的指示。响应于接收到验证失败的指示,视觉标识符系统在计算设备的图形用户界面(GUI)上呈现通知。通知可以显现为弹出窗口(例如,弹出窗口声明“抱歉!看起来这种体验在您的设备上行不通”)。应当理解,可以使用任何形式的视觉或听觉通知。
响应于执行视觉标识符的视觉搜索,视觉标识符系统在计算设备的GUI内显示应用菜单。应用菜单可以包括用户界面元素(例如,按钮、文本字段、复选框、滑块、图标、标签、消息框、分页等)。在一些示例中,选择“开始(Play)”按钮使得视觉标识符系统运行应用。在一些示例中,选择“开始”按钮可以使视觉标识符系统导航到应用内的预定义用户窗口(例如,计算机应用的第二用户界面窗口)。在另一示例中,选择“分享”按钮使得视觉标识符系统将应用作为消息应用内的短暂消息进行分享。在一些示例中,选择“分享”按钮使得视觉标识符系统将视觉标识符作为消息应用内的短暂消息进行分享。在一些示例中,选择“取消”按钮使得视觉标识符系统关闭应用菜单并且显示不同的用户界面系统(例如,修改图形用户界面)。下面描述关于视觉标识符系统的另外的细节。
所描述的计算机应用可以包括计算机游戏、媒体叠加(overlay)或任何合适的计算机应用。
联网计算环境
图1是示出用于通过网络来交换数据(例如消息及相关联的内容)的示例消息系统100的框图。消息系统100包括客户端设备102的多个实例,每个客户端设备托管包括消息客户端104的多个应用。每个消息客户端104经由网络106(例如,因特网)通信上耦接至消息服务器系统108和消息客户端104的其他实例。
消息客户端104能够经由网络106与另一消息客户端104和消息服务器系统108通信和交换数据。在消息客户端104之间以及消息客户端104与消息服务器系统108之间交换的数据包括功能(例如,激活功能的命令)以及净荷数据(例如,文本、音频、视频或其他多媒体数据)。
消息服务器系统108经由网络106向特定消息客户端104提供服务器侧功能。虽然消息系统100的某些功能在本文中被描述为由消息客户端104或由消息服务器系统108执行,但是某些功能是位于消息客户端104内还是位于消息服务器系统108内可以是设计选择。例如,可能在技术上优选的是:最初将某些技术和功能部署在消息服务器系统108内,但是后面将该技术和功能迁移至客户端设备102具有足够处理能力的消息客户端104。
消息服务器系统108支持向消息客户端104提供的各种服务和操作。这样的操作包括向消息客户端104发送数据、从消息客户端104接收数据以及对由消息客户端104生成的数据进行处理。作为示例,该数据可以包括消息内容、客户端设备信息、地理位置信息、媒体增强和叠加、消息内容持久化条件、社交网络信息和实况事件信息。通过经由消息客户端104的用户接口(UI)可用的功能来激活和控制消息系统100内的数据交换。
现在具体地转至消息服务器系统108,应用程序接口(API)服务器110耦接至应用服务器212并且向应用服务器212提供编程接口。应用服务器212通信上耦接至数据库服务器118,数据库服务器118促进对数据库120的访问,该数据库120存储与通过应用服务器212处理的消息相关联的数据。类似地,web服务器126耦接至应用服务器212,并且向应用服务器212提供基于web的接口。为此,web服务器126通过超文本传输协议(HTTP)和若干其他相关协议处理传入的网络请求。
应用程序接口(API)服务器110在客户端设备102与应用服务器212之间接收和发送消息数据(例如,命令和消息净荷)。具体地,应用程序接口(API)服务器110提供一组接口(例如,例程和协议),该组接口可以由消息客户端104调用或查询以激活应用服务器212的功能。应用程序接口(API)服务器110公开了由应用服务器212支持的各种功能,包括:帐户注册;登录功能;经由应用服务器212将消息从特定消息客户端104发送至另一消息客户端104;将媒体文件(例如,图像或视频)从消息客户端104发送至消息服务器114并且用于另一消息客户端104的可能访问;设置媒体数据集合(例如,故事);检索客户端设备102的用户的朋友列表;检索这样的集合;检索消息和内容;在实体图(例如社交图)中添加和删除实体(例如朋友);在社交图中定位朋友;以及打开应用事件(例如,与消息客户端104有关)。
应用服务器212托管若干服务器应用和子系统,包括例如消息服务器114、图像处理服务器116以及社交网络服务器122。消息服务器114实现了若干消息处理技术和功能,特别是与从消息客户端104的多个实例接收到的消息中包括的内容(例如,文本和多媒体内容)的聚合和其他处理有关的消息处理技术和功能。如将进一步详细描述的,来自多个源的文本和媒体内容可以被聚合成内容的集合(例如,被称为故事或图库)。然后,使这些集合对消息客户端104可用。鉴于对这样的处理的硬件要求,也可以由消息服务器114在服务器侧执行其他处理器和存储器密集型数据处理。
应用服务器212还包括图像处理服务器116,该图像处理服务器116专用于执行各种图像处理操作,通常相对于从消息服务器114发送或者在消息服务器114处接收的消息的净荷内的图像或视频,执行各种图像处理操作。
社交网络服务器122支持各种社交联网功能和服务并且使这些功能和服务可用于消息服务器114。为此,社交网络服务器122维护和访问数据库120内的实体图306(如图3所示)。由社交网络服务器122支持的功能和服务的示例包括识别特定用户与之有关系或“跟随”的消息系统100的其他用户,以及识别特定用户的兴趣和其他实体。
视觉标识符系统124使用视觉标识符来启动计算机应用。例如,视觉标识符系统对视觉标识符执行视觉搜索以启动计算机应用。
系统架构
图2是示出根据一些示例的关于消息系统100的进一步细节的框图。具体地,消息系统100被示出为包括消息客户端104和应用服务器212。消息系统100包含若干子系统,这些子系统在客户端侧由消息客户端104支持并且在服务器侧由应用服务器212支持。这些子系统包括例如短暂定时器系统202、集合管理系统204、增强系统206、地图系统208、游戏系统210和视觉标识符系统124。
短暂定时器系统202负责实施由消息客户端104和消息服务器114对内容进行临时或限时访问。短暂定时器系统202包含若干个定时器,这些定时器基于与消息或消息的集合(例如,故事)相关联的持续时间和显示参数,选择性地实现经由消息客户端104访问(例如,用于呈现和显示)消息及相关联的内容。下面提供关于短暂定时器系统202的操作的另外的细节。
集合管理系统204负责管理媒体的组或集合(例如,文本、图像、视频和音频数据的集合)。可以将内容(例如,消息,包括图像、视频、文本和音频)的集合组织成“事件图库(gallery)”或“事件故事”。可以使这样的集合在指定时间段(例如,内容所涉及的事件的持续时间)内可用。例如,可以使与音乐会相关的内容在该音乐会的持续时间内作为“故事”可用。集合管理系统204还可以负责向消息客户端104的用户接口发布提供特定集合的存在通知的图标。
此外,集合管理系统204包括使得集合管理者能够管理和策展特定的内容集合的策展接口214。例如,策展接口214使得事件组织者能够策展与特定事件相关的内容集合(例如,删除不适当的内容或冗余消息)。此外,集合管理系统204采用机器视觉(或图像识别技术)和内容规则来自动策展内容集合。在某些示例中,可以向用户支付对将用户生成的内容包括到集合中的补偿。在这样的情况下,集合管理系统204进行操作以自动地向这样的用户支付以使用他们的内容。
增强系统206提供使得用户能够增强(例如,注释或以其他方式修改或编辑)与消息相关联的媒体内容的各种功能。例如,增强系统206提供与生成和发布用于由消息系统100处理的消息的媒体叠加相关的功能。增强系统206基于客户端设备102的地理位置可操作地向消息客户端104供应媒体叠加或增强(例如,图像过滤器)。在另一示例中,增强系统206基于诸如客户端设备102的用户的社交网络信息的其他信息可操作地向消息客户端104供应媒体叠加。媒体叠加可以包括音频和视觉内容以及视觉效果。音频和视觉内容的示例包括图片、文本、标志、动画和声音效果。视觉效果的示例包括颜色叠加。音频和视觉内容或视觉效果可以应用于客户端设备102处的媒体内容项(例如,照片)。例如,媒体叠加可以包括可以叠加在由客户端设备102拍摄的照片的顶部上的文本或图像。在另一示例中,媒体叠加包括位置标识叠加(例如,威尼斯海滩)、实时事件的名称或商家名称叠加(例如,海滩咖啡馆)。在另一示例中,增强系统206使用客户端设备102的地理位置来标识包括客户端设备102的地理位置处的商家的名称的媒体叠加。媒体叠加可以包括与商家相关联的其他标记。媒体叠加可以存储在数据库120中并通过数据库服务器118访问。
在一些示例中,增强系统206提供基于用户的发布平台,该基于用户的发布平台使得用户能够选择地图上的地理位置并上传与所选择的地理位置相关联的内容。用户还可以指定特定媒体叠加应当被提供给其他用户的环境。增强系统206生成包括所上传的内容并将所上传的内容与所选择的地理位置相关联的媒体叠加。
在其他示例中,增强系统206提供基于商家的发布平台,该基于商家的发布平台使商家能够经由竞价过程选择与地理位置相关联的特定媒体叠加。例如,增强系统206将最高出价商家的媒体叠加与对应地理位置相关联达预定义时间量。
地图系统208提供各种地理定位功能,并且支持由消息客户端104呈现基于地图的媒体内容和消息。例如,地图系统208使得能够在地图上显示(例如,存储在简档数据308中的)用户图标或化身,以指示用户的“朋友”的当前或过去位置,以及由这样的朋友在地图的上下文内生成的媒体内容(例如,包括照片和视频的消息的集合)。例如,在消息客户端104的地图界面上,可以将用户从特定地理位置发布到消息系统100的消息在地图的该特定位置的上下文内显示给特定用户的“朋友”。用户还可以经由消息客户端104与消息系统100的其他用户分享他或她的位置和状态信息(例如,使用适当的状态化身),其中该位置和状态信息类似地在消息客户端104的地图界面的上下文内被显示给选定用户。
游戏系统210在消息客户端104的上下文内提供各种游戏功能。消息客户端104提供游戏界面,该游戏界面提供可用游戏的列表,该游戏可以由用户在消息客户端104的上下文中启动并且与消息系统100的其他用户一起玩。消息系统100还使特定用户能够通过从消息客户端104向其他用户发出邀请来邀请这样的其他用户参与玩特定游戏。消息客户端104还支持游戏上下文内传送语音和文本消息两者(例如,聊天),为游戏提供排行榜,并且还支持提供游戏内奖励(例如,钱币和物品)。
视觉标识符系统124使用视觉标识符来启动计算机应用。例如,视觉标识符系统对视觉标识符执行视觉搜索以启动计算机应用。在一些示例中,视觉标识符系统124在消息客户端104的上下文内操作。在一些示例中,视觉标识符系统124可以由应用服务器112支持。
数据架构
图3是示出根据某些示例的可以存储在消息服务器系统108的数据库120中的数据结构300的示意图。虽然数据库120的内容被示出为包括若干表,但是将理解的是,数据可以存储在其他类型的数据结构(例如,面向对象数据库)中。
数据库120包括存储在消息表302内的消息数据。对于任何特定的一条消息,该消息数据包括至少消息发送者数据、消息接收方(或接收者)数据和净荷。下面参照图4描述关于可以被包括在消息中并且被包括在存储在消息表302中的消息数据中的信息的另外的细节。
实体表304存储实体数据,并且(例如,引用地)链接到实体图306和简档数据308。在实体表304内为其维持记录的实体可以包括个人、公司实体、组织、对象、地点、事件等。不管实体类型如何,消息服务器系统108存储关于其的数据的任何实体可以是识别的实体。为每个实体提供唯一的标识符以及实体类型标识符(未示出)。
实体图306存储关于实体之间的关系和关联的信息。仅作为示例,这样的关系可以是基于兴趣或基于活动的社交关系、专业关系(例如,在共同的公司或组织工作)。
简档数据308存储关于特定实体的多种类型的简档数据。基于由特定实体指定的私密设置,简档数据308可以被选择性地使用和呈现给消息系统100的其他用户。在实体是个体的情况下,简档数据308包括例如用户名、电话号码、地址、设置(例如,通知和私密设置),以及用户选择的化身表示(或这样的化身表示的集合)。然后,特定用户可以将这些化身表示中的一个或更多个选择性地包括在经由消息系统100传送的消息的内容中以及在由消息客户端104向其他用户显示的地图界面上。化身表示的集合可以包括“状态化身”,其呈现用户可以选择以在特定时间传送的状态或活动的图形表示。
在实体是团体的情况下,除了团体名称、成员和相关团体的各种设置(例如,通知)之外,团体的简档数据308还可以类似地包括与团体相关联的一个或更多个化身表示。
数据库120还在增强表310中存储例如叠加或过滤器的增强数据。增强数据与视频(针对其数据被存储在视频表314中)和图像(针对其数据被存储在图像表318中)相关联并且应用于视频和图像。
在一个示例中,过滤器是在向接收方用户呈现期间被显示为叠加在图像或视频上的叠加。过滤器可以是各种类型的,包括当发送用户正在编写消息时由消息客户端104呈现给发送用户的一组过滤器中用户选择的过滤器。其他类型的过滤器包括地理位置过滤器(也称为地理过滤器),其可以基于地理位置被呈现给发送用户。例如,可以基于由客户端设备102的全球定位系统(GPS)单元确定的地理位置信息,由消息客户端104在用户界面内呈现特定于附近或特定的位置的地理位置过滤器。
另一种类型的过滤器是数据过滤器,其可以基于在消息创建过程期间由客户端设备102收集的其他输入或信息,由消息客户端104选择性地呈现给发送用户。数据过滤器的示例包括特定位置处的当前温度、发送用户行进的当前速度、客户端设备102的电池寿命或当前时间。
可以被存储在图像表318内的其他增强数据包括增强现实内容项(例如,对应于应用透镜或增强现实体验)。增强现实内容项可以是可以被添加至图像或视频的实时特效和声音。
如上所述,增强数据包括增强现实内容项、叠加、图像变换、AR图像以及涉及可以应用于图像数据(例如,视频或图像)的修改的类似项。这包括实时修改,其在使用客户端设备102的设备传感器(例如,一个或多个摄像装置)捕获图像时对图像进行修改并且然后在修改的情况下在客户端设备102的屏幕上显示图像。这还包括对存储的内容(例如可以修改的图库中的视频片段)的修改。例如,在可以访问多个增强现实内容项的客户端设备102中,用户可以将单个视频片段与多个增强现实内容项一起使用来查看不同的增强现实内容项将如何修改存储的片段。例如,通过为同一内容选择不同的增强现实内容项,可以将应用不同伪随机运动模型的多个增强现实内容项应用于该同一内容。类似地,实时视频捕获可以与示出的修改一起使用,以显示当前由客户端设备102的传感器捕获的视频图像将如何修改捕获的数据。这样的数据可以仅显示在屏幕上而不存储在存储器中,或者由设备传感器捕获的内容可以在进行修改或不进行修改(或两者)的情况下被记录和存储在存储器中。在某些系统中,预览功能可以显示不同的增强现实内容项将如何同时在显示器的不同窗口中显示。例如,这可以实现同时在显示器上查看具有不同伪随机动画的多个窗口。
因此,使用增强现实内容项的数据和各种系统或使用该数据修改内容的其他此类变换系统可以涉及视频帧中对象(例如,脸、手、身体、猫、狗、表面、物体等)的检测,在这些对象离开视场、进入视场以及在视场四处移动时跟踪这些对象,以及在跟踪这些对象时对其进行修改或变换。在各种示例中,可以使用用于实现这样的变换的不同方法。一些示例可以涉及生成对象或多个对象的三维网格模型,并使用视频内的模型的变换和动画化纹理来实现变换。在其他示例中,可以使用对象上的点的跟踪将图像或纹理(可以是二维或三维的)放置在所跟踪的位置处。在更进一步的示例中,可以使用视频帧的神经网络分析将图像、模型或纹理放置在内容(例如,图像或视频帧)中。因此,增强现实内容项既是指用于在内容中创建变换的图像、模型和纹理,也是指利用对象检测、跟踪和放置实现这样的变换所需的附加建模和分析信息。
可以利用保存在任何类型的计算机化系统的存储器中的任何类型的视频数据(例如,视频流、视频文件等)来执行实时视频处理。例如,用户可以加载视频文件并将其保存在设备的存储器中,或者可以使用设备的传感器生成视频流。此外,可以使用计算机动画模型来处理诸如人的面部和人身体的各部分、动物或非生物(例如椅子、汽车或其他对象)等任何对象。
在一些示例中,当与要变换的内容一起选择特定修改时,要变换的元素由计算设备识别,并且然后如果要变换的元素存在于视频的帧中,则对其进行检测和跟踪。根据修改请求修改对象的元素,从而变换视频流的帧。对于不同类型的变换,可以通过不同的方法执行对视频流的帧的变换。例如,对于主要涉及改变对象的元素的形式的帧的变换,计算对象的元素中的每一个的特征点(例如,使用主动形状模型(ASM)或其他已知方法)。然后,针对对象的至少一个元素中的每一个生成基于特征点的网格。该网格在后续阶段用于跟踪视频流中的对象的元素。在跟踪过程中,每个元素的所提及的网格与每个元素的位置对准。然后,在网格上生成附加点。基于修改请求针对每个元素生成第一组第一点,并且基于该组第一点和修改请求针对每个元素生成一组第二点。然后,可以通过基于该组第一点和该组第二点以及网格修改对象的元素,以变换视频流的帧。在这样的方法中,也可以通过跟踪和修改背景来改变或扭曲被修改对象的背景。
在一些示例中,使用对象的元素改变对象的一些区域的变换可以通过计算对象的每个元素的特征点并基于计算的特征点生成网格来执行。在网格上生成点,然后生成基于这些点的各种区域。然后,通过将每个元素的区域与至少一个元素中的每一个的位置对准来跟踪对象的元素,并且可以基于修改的请求来修改区域的属性,从而变换视频流的帧。根据具体的修改请求,可以以不同的方式变换所提及的区域的属性。这样的修改可以涉及:改变区域的颜色;从视频流的帧中移除至少一些部分区域;将一个或更多个新对象包括在区域中(这基于修改请求);以及修改或扭曲区域或对象的元素。在各种示例中,可以使用这样的修改或其他类似修改的任何组合。对于要被动画化的某些模型,可以选择一些特征点作为控制点,以用于确定用于模型动画的选项的整个状态空间。
在使用面部检测来变换图像数据的计算机动画模型的一些示例中,使用特定面部检测算法(例如,Viola-Jones)在图像上检测面部。然后,将主动形状模型(ASM)算法应用于图像的面部区域以检测面部特征参考点。
在其他示例中,可以使用适合面部检测的其他方法和算法。例如,在一些示例中,使用界标来定位特征,该界标表示存在于所考虑的大多数图像中的可区分点。例如,对于面部界标,可以使用左眼瞳孔的位置。如果初始界标不可识别(例如,如果人有眼罩),则可以使用次级界标。这样的界标识别过程可以用于任何这样的对象。在一些示例中,一组界标形成形状。可以使用形状中的点的坐标将形状表示为矢量。利用相似变换(允许平移、缩放和旋转)将一个形状与另一个形状对准,该相似变换使形状点之间的平均欧几里德距离最小化。平均形状是对准的训练形状的均值。
在一些示例中,开始从与由全局面部检测器确定的面部的位置和大小对准的均值形状搜索界标。然后,这样的搜索重复以下步骤:通过每个点周围的图像纹理的模板匹配来调整形状点的位置而建议暂定形状,并且然后使暂定形状符合全局形状模型,直至发生收敛。在一些系统中,个别的模板匹配是不可靠的,并且形状模型将弱模板匹配的结果进行池化,形成更强的整体分类器。整个搜索在从粗略分辨率到精细分辨率的图像金字塔的每个级别上重复。
变换系统可以在客户端设备(例如,客户端设备102)上捕获图像或视频流,并且在客户端设备102上本地执行复杂的图像操纵,同时保持适当的用户体验、计算时间和功耗。复杂的图像操纵可以包括大小和形状变化、情绪转换(例如,将面部从皱眉变为微笑)、状态转换(例如,使对象变老、减少表观年龄、改变性别)、风格转换、图形元素应用,以及由已经被配置成在客户端设备102上有效执行的卷积神经网络实现的任何其他合适的图像或视频操纵。
在一些示例中,用于变换图像数据的计算机动画模型可以由系统使用,在该系统中,用户可以使用具有神经网络的客户端设备102来捕获用户的图像或视频流(例如,自拍),该神经网络操作为在客户端设备102上操作的消息客户端104的一部分。在消息客户端104内操作的变换系统确定面部在图像或视频流中的存在并且提供与计算机动画模型相关联的修改图标以变换图像数据,或者计算机动画模型可以被呈现为与本文中描述的界面相关联。修改图标包括以下变化,该变化可以是作为修改操作的一部分的在图像或视频流中修改用户面部的基础。一旦选择了修改图标,则变换系统发起将用户的图像转换以反映所选择的修改图标(例如,在用户上生成笑脸)的处理。一旦图像或视频流被捕获并且指定的修改被选择,修改的图像或视频流就可以呈现在客户端设备102上显示的图形用户界面中。变换系统可以在图像或视频流的一部分上实施复杂的卷积神经网络,以生成和应用所选择的修改。也就是说,用户就可以捕获图像或视频流,并且一旦选择了修改图标则实时或近乎实时地呈现修改结果。此外,当正在捕获视频流时,修改可以是持久的,并且所选择的修改图标保持被切换。机器学习的神经网络可以用于实现这样的修改。
呈现由变换系统执行的修改的图形用户界面可以为用户提供附加的交互选项。这样的选项可以基于用于发起特定计算机动画模型的选择和内容捕获的界面(例如,从内容创建者用户界面发起)。在各种示例中,修改可以在修改图标的初始选择之后持久化。用户可以通过敲击或以其他方式选择由变换系统修改的面部来打开或关闭修改,并且将其存储以供以后查看或浏览到成像应用的其他区域。在由变换系统修改多个面部的情况下,用户可以通过敲击或选择在图形用户界面内修改和显示的单个面部来全局打开或关闭修改。在一些示例中,可以通过敲击或选择图形用户界面内显示的各个面部或一系列各个面部来单独地修改一组多个面部中的各个面部,或者单独切换这样的修改。
故事表312存储关于消息的集合的数据及相关联的图像、视频或音频数据,这些数据被汇编成集合(例如,故事或库)。特定集合的创建可以由特定用户(例如,在实体表306中维护其记录的每个用户)发起。用户可以以已经由该用户创建和发送/广播的内容的集合的形式创建“个人故事”。为此,消息客户端104的用户接口可以包括用户可选择的图标,以使得发送用户能够将特定内容添加到他或她的个人故事。
集合还可以构成作为来自多个用户的内容的集合的“实况故事”,该内容的集合是手动地、自动地或者使用手动技术和自动技术的组合创建的。例如,“实况故事”可以构成来自不同位置和事件的用户提交的内容的策展流。其客户端设备启用了定位服务并且在特定时间处于共同定位事件处的用户可以例如经由消息客户端104的用户接口被呈现有将内容贡献给特定实况故事的选项。可以由消息客户端104基于他或她的位置向用户标识实况故事。最终结果是从社群角度讲述的“实况故事”。
另外类型的内容集合被称为“位置故事”,其使得其客户端设备102位于特定地理位置(例如,在学院或大学校园)内的用户能够对特定集合做出贡献。在一些示例中,对位置故事的贡献可能需要二级认证来验证终端用户属于特定组织或其他实体(例如,是大学校园中的学生)。
如上面提到的,视频表314存储视频数据,在一个示例中,该视频数据与其记录维护在消息表302内的消息相关联。类似地,图像表318存储图像数据,该图像数据与其消息数据存储在实体表304中的消息相关联。实体表304可以使来自增强表310的各种增强与存储在图像表318和视频表314中的各种图像和视频相关联。
数据库120还可以在视觉标识符表316中存储视觉标识符。
数据通信架构
图4是示出根据一些示例的消息400的结构的示意图,消息400由消息客户端104生成,以用于传送至另外的消息客户端104或消息服务器114。特定消息400的内容用于填充存储在数据库120内的消息表302,该消息表302可由消息服务器114访问。类似地,消息400的内容被存储在存储器中作为客户端设备102或应用服务器212的“传输中”或“飞行中”的数据。消息400被示为包括以下示例组成部分:
·消息标识符402:标识消息400的唯一标识符。
·消息文本净荷404:要由用户经由客户端设备102的用户接口生成并且包括在消息400中的文本。
·消息图像净荷406:由客户端设备102的摄像装置部件捕获的或从客户端设备102的存储器部件检索到的、并且包括在消息400中的图像数据。用于发送或接收的消息400的图像数据可以被存储在图像表318中。
·消息视频净荷408:由摄像装置部件捕获的或从客户端设备102的存储器部件检索到的、并且包括在消息400中的视频数据。用于发送或接收的消息400的视频数据可以被存储在视频表314中。
·消息音频净荷410:由麦克风捕获的或从客户端设备102的存储器部件检索到的、并且包括在消息400中的音频数据。
·消息增强数据412:表示要应用于消息400的消息图像净荷406、消息视频净荷408或消息音频净荷410的增强的增强数据(例如,过滤器、贴纸或其他注解或增强)。用于发送或接收的消息400的增强数据可以被存储在增强表310中。
·消息持续时间参数414:参数值,其指示消息的内容(例如,消息图像净荷406、消息视频净荷408、消息音频净荷410)将经由消息客户端104被呈现给用户或使其对于用户可访问的以秒为单位的时间量。
·消息地理位置参数416:与消息的内容净荷相关联的地理位置数据(例如,纬度和经度坐标)。多个消息地理位置参数416值可以被包括在净荷中,这些参数值中的每个参数值与内容中所包括的内容项(例如,消息图像净荷406内的特定图像或消息视频净荷408中的特定视频)相关联。
·消息故事标识符418:标识一个或更多个内容集合(例如,在故事表312中标识的“故事”)的标识符值,其中消息400的消息图像净荷406中的特定内容项与一个或更多个内容集合相关联。例如,可以使用标识符值将消息图像净荷406内的多个图像各自与多个内容集合相关联。
·消息标签420:每个消息400可以用多个标签来标记,这些标签中的每个标签都指示消息净荷中包括的内容的主题。例如,在消息图像净荷406中包括的特定图像描绘动物(例如狮子)的情况下,可以在消息标签420中包括指示相关动物的标签值。标签值可以基于用户输入手动地生成,或可以使用例如图像识别自动地生成。
·消息发送者标识符422:指示在其上生成消息400并且从其发送消息400的客户端设备102的用户的标识符(例如消息系统标识符、电子邮件地址或设备标识符)。
·消息接收者标识符424:指示消息400寻址到的客户端设备102的用户的标识符(例如,消息系统标识符、电子邮件地址或设备标识符)。
消息400的各种组成部分的内容(例如,值)可以是指向表中存储内容数据值的位置的指针。例如,消息图像净荷406中的图像值可以是指向图像表318内的位置(或位置的地址)的指针。类似地,消息视频净荷408内的值可以指向存储在视频表314内的数据,存储在消息增强412内的值可以指向存储在增强表310中的数据,存储在消息故事标识符418内的值可以指向存储在故事表312中的数据,并且存储在消息发送者标识符422和消息接收者标识符424内的值可以指向存储在实体表304内的用户记录。
基于时间的访问限制架构
图5是示出访问限制过程500的示意图,根据该访问限制过程,对内容(例如,短暂消息502及相关联的多媒体数据净荷)或内容集合(例如,短暂消息组504)的访问可以是时间受限的(例如,使得是短暂的)。
短暂消息502被示为与消息持续时间参数506相关联,消息持续时间参数506的值确定消息客户端应用104将向短暂消息502的接收用户显示短暂消息502的时间量。在一个示例中,取决于发送用户使用消息持续时间参数506指定的时间量,接收用户可查看短暂消息502上至最多10秒。
消息持续时间参数506和消息接收者标识符424被示出为消息定时器512的输入,消息定时器512负责确定向由消息接收者标识符424标识的特定接收用户示出短暂消息502的时间量。特别地,仅在由消息持续时间参数506的值确定的时间段内向相关接收用户示出短暂消息502。消息定时器512被示出为向更一般化的短暂定时器系统202提供输出,该短暂定时器系统202负责向接收用户显示内容(例如,短暂消息502)的总体定时。
图5中示出的短暂消息502被包括在短暂消息组504(例如,个人故事或事件故事中的消息的集合)内。短暂消息组504具有相关联的组持续时间参数508,组持续时间参数508的值确定短暂消息组504被呈现并且可由消息系统100的用户访问的持续时间。例如,组持续时间参数508可以是音乐会的持续时间,其中,短暂消息组504是有关该音乐会的内容的集合。替选地,当执行短暂消息组504的设置和创建时,用户(拥有用户或策展者用户)可以指定组持续时间参数508的值。
另外,短暂消息组504内的每个短暂消息502具有相关联的组参与参数510,组参与参数510的值确定在短暂消息组504的上下文内可访问短暂消息502的持续时间。因此,在短暂消息组504本身根据组持续时间参数508到期之前,特定的短暂消息组504可以“到期”并且在短暂消息组504的上下文中变得不可访问。组持续时间参数508、组参与参数510和消息接收者标识符424各自向组定时器514提供输入,组定时器514可操作地首先确定短暂消息组504的特定短暂消息502是否将被显示给特定接收用户,并且如果是,则确定显示多长时间。注意,由于消息接收者标识符424,短暂消息组504也知道特定接收用户的身份。
因此,组定时器514可操作地控制相关联的短暂消息组504以及包括在短暂消息组504中的单独的短暂消息502的总寿命。在一个示例中,短暂消息组504内的每个短暂消息502在由组持续时间参数508指定的时间段内保持可查看和可访问。在另一示例中,在短暂消息组504的上下文内,某个短暂消息502可以基于组参与参数510而到期。注意,即使在短暂消息组504的上下文内,消息持续时间参数506也仍然可以确定向接收用户显示特定短暂消息502的持续时间。因此,消息持续时间参数506确定向接收用户显示特定短暂消息502的持续时间,而不管接收用户是在短暂消息组504的上下文之内还是之外查看该短暂消息502。
短暂定时器系统202还可以基于确定已经超过相关联的组参与参数510而从短暂消息组504中可操作地移除特定的短暂消息502。例如,当发送用户已经建立了从发布起24小时的组参与参数510时,短暂定时器系统202将在指定的24小时之后从短暂消息组504中移除相关的短暂消息502。短暂定时器系统202还进行操作以在短暂消息组504内的每个短暂消息502的组参与参数510已到期时或者在短暂消息组504本身根据组持续时间参数508已到期时,移除短暂消息组504。
在某些使用情况下,特定短暂消息组504的创建者可以指定无期限的组持续时间参数508。在这种情况下,短暂消息组504内最后剩余的短暂消息502的组参与参数510的到期将确定短暂消息组504本身何时到期。在这种情况下,添加至短暂消息组504的具有新的组参与参数510的新的短暂消息502实际上将短暂消息组504的寿命延长到等于组参与参数510的值。
响应于短暂定时器系统202确定短暂消息组504已经到期(例如,不再是可访问的),短暂定时器系统202与消息系统100(并且例如特别是消息客户端104)通信,以使得与相关短暂消息组504相关联的标记(例如,图标)不再显示在消息客户端104的用户接口内。类似地,当短暂定时器系统202确定针对特定短暂消息502的消息持续时间参数506已经到期时,短暂定时器系统202使消息客户端104不再显示与短暂消息502相关联的标记(例如,图标或文本标识)。
图6是根据一些示例的用于使用视觉标识符以启动计算机应用的流程图。尽管所描述的流程图可以将操作示出为顺序处理,但是操作中的许多操作可以并行或同时执行。另外,可以重新布置操作的顺序。当其操作完成时,处理终止。处理可以对应于方法、过程、算法等。方法的操作可以作为整体或部分执行,可以与其他方法中的一些或所有操作结合执行,并且可以由任何数目的不同系统(例如本文描述的系统)或者其任何部分(例如包括在任何系统中的处理器)来执行。
在操作602中,视觉标识符系统124使用一个或更多个处理器访问视觉标识符,该视觉标识符包括表示计算机应用的编码数据。在操作604中,视觉标识符系统124执行视觉标识符的视觉搜索。在操作606中,响应于执行视觉标识符的视觉搜索,视觉标识符系统124使得应用菜单呈现在计算设备的图形用户界面内。在操作608中,视觉标识符系统124接收对应用菜单内的第一用户界面元素的选择。在操作610中,响应于接收到选择,视觉标识符系统124运行计算机应用。
图7是根据一些示例的视觉标识符702的示意图。视觉标识符702可以是QR码。视觉标识符702可以包括图标704。图标704可以是视觉标识符702表示的计算机应用的视觉指示。在一些示例中,视觉标识符702内的图标704的大小、位置和填充是预定义的。
图8是根据一些示例的消息应用内的用户界面800的图示。例如,计算机应用可以是游戏应用。视觉标识符系统124可以显示用户界面800以使用户能够提供同意将由消息应用(例如,消息客户端104)存储的用户数据提供给游戏应用的用户输入。
图9是根据一些示例的计算机应用内的用户界面900的图示。例如,计算机应用可以包括餐馆信息。视觉标识符系统124可以使得用户能够经由消息应用中的短暂消息与其他用户分享计算机应用。
图10是根据一些示例的计算机应用内的用户界面1000的图示。例如,计算机应用可以是媒体叠加。用户能够定制媒体叠加并且经由消息应用中的短暂消息来分享定制的媒体叠加(例如,增强现实内容项)。
机器架构
图11是机器1100的图解表示,在该机器1100中可以执行使机器1100执行本文中所讨论的方法中的任何一个或更多个的指令1108(例如,软件、程序、应用、小程序、app或其他可执行代码)。例如,指令1108可以使机器1100执行本文中描述的方法中的任何一种或更多种。指令1108将通用的未编程的机器1100转换成被编程为以所描述的方式执行所描述和示出的功能的特定机器1100。机器1100可以作为独立设备操作,或者可以耦接(例如,联网)至其他机器。在联网部署中,机器1100可以在服务器-客户端网络环境中以服务器机器或客户端机器的能力操作,或者作为对等(peer-to-peer)(或分布式)网络环境中的对等机器操作。机器1100可以包括但不限于:服务器计算机、客户端计算机、个人计算机(PC)、平板计算机、膝上型计算机、上网本、机顶盒(STB)、个人数字助理(PDA)、娱乐媒体系统、蜂窝电话、智能电话、移动设备、可穿戴设备(例如,智能手表)、智能家居设备(例如,智能电器)、其他智能设备、web装置、网络路由器、网络交换机、网络桥接器或者能够顺序地或以其他方式执行指定要由机器1100采取的动作的指令1108的任何机器。此外,虽然仅示出了单个机器1100,但是术语“机器”还应当被视为包括单独地或联合地执行指令1108以执行本文中讨论的任何一种或更多种方法的机器的集合。例如,机器1100可以包括客户端设备102或者形成消息服务器系统108的一部分的若干个服务器设备中的任何一个。在一些示例中,机器1100还可以包括客户端和服务器系统二者,其中在服务器侧执行特定方法或算法的某些操作,并且在客户端侧执行特定方法或算法的某些操作。
机器1100可以包括可以被配置成经由总线1140彼此通信的处理器1102、存储器1104和输入/输出(I/O)部件638。在示例中,处理器1102(例如,中央处理单元(CPU)、精简指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、射频集成电路(RFIC)、另外的处理器或其任何合适的组合)可以包括例如执行指令1108的处理器1106和处理器1110。术语“处理器”旨在包括多核处理器,该多核处理器可以包括可以同时执行指令的两个或更多个独立的处理器(有时被称为“核”)。尽管图11示出了多个处理器1102,但是机器1100可以包括具有单个核的单个处理器、具有多个核的单个处理器(例如,多核处理器)、具有单个核的多个处理器、具有多个核的多个处理器或者其任何组合。
存储器1104包括主存储器1112、静态存储器1114以及存储单元1116,其均可由处理器1102经由总线1140访问。主存储器1104、静态存储器1114和存储单元1116存储实现本文中描述的方法或功能中的任何一个或更多个的指令1108。指令1108还可以在其被机器1100执行期间完全地或部分地驻留在主存储器1112内、在静态存储器1114内、在存储单元1116内的机器可读介质1118内、在处理器1102中的至少一个处理器内(例如,在处理器的高速缓存存储器内)、或其任何合适的组合。
I/O部件1138可以包括用于接收输入、提供输出、产生输出、发送信息、交换信息、捕获测量结果等的各种部件。特定机器中包括的特定I/O部件1138将取决于机器的类型。例如,诸如移动电话的便携式机器可以包括触摸输入设备或其他这样的输入机构,而无头服务器机器将可能不包括这样的触摸输入设备。将理解的是,I/O部件1138可以包括图11中未示出的许多其他部件。在各种示例中,I/O部件1138可以包括用户输出部件1124和用户输入部件1126。用户输出部件1124可以包括视觉部件(例如,诸如等离子显示面板(PDP)、发光二极管(LED)显示器、液晶显示器(LCD)、投影仪或阴极射线管(CRT)的显示器)、声学部件(例如,扬声器)、触觉部件(例如,振动马达、阻力机构)、其他信号生成器等。用户输入部件1126可以包括字母数字输入部件(例如,键盘、被配置成接收字母数字输入的触摸屏、光电键盘或其他字母数字输入部件)、基于点的输入部件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或另一指向仪器)、触觉输入部件(例如,物理按钮、提供触摸或触摸姿势的位置和力的触摸屏或其他触觉输入部件)、音频输入部件(例如,麦克风)等。
在其他示例中,I/O部件1138可以包括生物计量部件1128、运动部件1130、环境部件1132、或位置部件1134以及各种其他部件。例如,生物计量部件1128包括用于检测表达(例如,手表达、面部表达、声音表达、身体姿势或眼睛跟踪)、测量生物信号(例如,血压、心率、体温、出汗或脑波)、识别人(例如,语音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别)等的部件。运动部件1130包括加速度传感器部件(例如,加速度计)、重力传感器部件、旋转传感器部件(例如,陀螺仪)。
环境部件1132包括例如:一个或更多个摄像装置(具有静态图像/照片和视频功能)、照明传感器部件(例如,光度计)、温度传感器部件(例如,检测环境温度的一个或更多个温度计)、湿度传感器部件、压力传感器部件(例如,气压计)、声学传感器部件(例如,检测背景噪声的一个或更多个麦克风)、接近传感器部件(例如,检测附近物体的红外传感器)、气体传感器(例如,为了安全而检测危险气体的浓度或者测量大气中的污染物的气体检测传感器)或者可以提供与周围物理环境对应的指示、测量或信号的其他部件。
关于摄像装置,客户端设备102可以具有摄像装置系统,该摄像装置系统包括例如在客户端设备102的前表面上的前置摄像装置和客户端设备102的后表面上的后置摄像装置。前置摄像装置可以例如用于捕获客户端设备102的用户的静态图像和视频(例如,“自拍”),然后可以用上述增强数据(例如,过滤器)对该静态图像和视频进行增强。例如,后摄像装置可以用于以更常规的摄像装置模式捕获静态图像和视频,这些图像类似地用增强数据进行增强。除了前置摄像装置和后置摄像装置之外,客户端设备102还可以包括用于捕获360°照片和视频的360°摄像装置。
此外,客户端设备102的摄像装置系统可以包括双后置摄像装置(例如,主摄像装置以及深度感测摄像装置),或者甚至在客户端设备102的前后侧上包括三重、四重或五重后置摄像装置配置。例如,这些多摄像装置系统可以包括广角摄像装置、超广角摄像装置、长焦摄像装置、微距摄像装置和深度传感器。
位置部件1134包括定位传感器部件(例如,GPS接收器部件)、海拔传感器部件(例如,检测可以得到海拔的气压的高度计或气压计)、取向传感器部件(例如,磁力计)等。
可以使用各种技术来实现通信。I/O部件1138还包括通信部件1136,该通信部件可操作以经由相应的耦接或连接将机器1100耦接至网络1120或设备1122。例如,通信部件1136可以包括网络接口部件或与网络1120对接的另一合适设备。在另外的示例中,通信部件1136可以包括有线通信部件、无线通信部件、蜂窝通信部件、近场通信(NFC)部件、
Figure BPA0000334581280000201
部件(例如,/>
Figure BPA0000334581280000202
低能量)、/>
Figure BPA0000334581280000203
部件以及经由其他模态提供通信的其他通信部件。设备1122可以是其他机器或各种外围设备中的任何外围设备(例如,经由USB耦接的外围设备)。
此外,通信部件1136可以检测标识符或包括可操作以检测标识符的部件。例如,通信部件1136可以包括射频识别(RFID)标签阅读器部件、NFC智能标签检测部件、光学阅读器部件(例如,用于检测诸如通用产品代码(UPC)条形码的一维条形码、诸如快速反应(QR)码、Aztec码、数据矩阵、数据符号(Dataglyph)、最大码(MaxiCode)、PDF417、超码(UltraCode)、UCC RSS-2D条形码的多维条形码和其他光学码的光学传感器)或声学检测部件(例如,用于识别标记的音频信号的麦克风)。此外,可以经由通信部件1136得到各种信息,如经由因特网协议(IP)地理定位得到的位置、经由
Figure BPA0000334581280000214
信号三角测量得到的位置、经由检测可以指示特定位置的NFC信标信号得到的位置等。
各种存储器(例如,主存储器1112、静态存储器1114以及处理器1102的存储器)以及存储单元1116可以存储由本文中描述的方法或功能中的任何一种或更多种实施或使用的一组或更多组指令和数据结构(例如,软件)。这些指令(例如,指令1108)在由处理器1102执行时使各种操作实现所公开的示例。
可以经由网络接口设备(例如,通信部件1136中包括的网络接口部件),使用传输介质并且使用若干公知的传输协议中的任意一种传输协议(例如,超文本传输协议(HTTP)),通过网络1120来发送或接收指令1108。类似地,可以使用传输介质经由到设备1122的耦接(例如,对等耦接)来发送或接收指令1108。
软件架构
图12是示出可以安装在本文中所描述的设备中的任何一个或更多个上的软件架构1204的框图1200。软件架构1204由硬件例如包括处理器1220、存储器1226和I/O部件1238的机器1202支持。在该示例中,软件架构1204可以被概念化为层的堆栈,在该层的堆栈中,每个层提供特定的功能。软件架构1204包括诸如操作系统1212、库1210、框架1208和应用1206的层。在操作上,应用1206通过软件堆栈激活API调用1250并且响应于API调用1250而接收消息1252。
操作系统1212管理硬件资源并且提供公共服务。操作系统1212包括例如:内核1214、服务1216、以及驱动器1222。内核1214充当硬件层与其他软件层之间的抽象层。例如,内核1214提供存储器管理、处理器管理(例如,调度)、部件管理、联网和安全设置以及其他功能。服务1216可以为其他软件层提供其他公共服务。驱动器1222负责控制底层硬件或与底层硬件对接。例如,驱动器1222可以包括显示驱动器、摄像装置驱动器、
Figure BPA0000334581280000211
或/>
Figure BPA0000334581280000212
低能量驱动器、闪存驱动器、串行通信驱动器(例如,USB驱动器)、/>
Figure BPA0000334581280000213
驱动器、音频驱动器、电源管理驱动器等。
库1210提供由应用1206使用的公共低级基础设施。库1210可以包括系统库1218(例如,C标准库),系统库1218提供诸如存储器分配功能、字符串操纵功能、数学功能等的功能。另外,库1210可以包括API库1224,例如媒体库(例如,用于支持各种媒体格式的呈现和操纵的库,所述各种媒体格式例如运动图像专家组-4(MPEG4)、高级视频编码(H.264或AVC)、运动图像专家组层-3(MP3)、高级音频编码(AAC)、自适应多速率(AMR)音频编解码器、联合图像专家组(JPEG或JPG)或便携式网络图形(PNG))、图形库(例如,用于在显示器上的图形内容中以二维(2D)和三维(3D)呈现的OpenGL框架)、数据库库(例如,用于提供各种关系数据库功能的SQLite)、web库(例如,用于提供web浏览功能的WebKit)等。库1210还可以包括各种各样的其他库1228,以向应用1206提供许多其他API。
框架1208提供由应用1206使用的公共高级基础设施。例如,框架1208提供各种图形用户界面(GUI)功能、高级资源管理以及高级定位服务。框架1208可以提供可由应用1206使用的广泛的其他API,其中的一些API可以专用于特定的操作系统或平台。
在示例中,应用1206可以包括家庭应用1236、联系人应用1230、浏览器应用1232、书籍阅读器应用1234、定位应用1242、媒体应用1244、消息应用1246、游戏应用1248和诸如第三方应用1240的各种各样的其他应用。应用1206是执行程序中限定的功能的程序。可以使用各种编程语言来创建以各种方式构造的应用1206中的一个或更多个,所述编程语言例如面向对象的编程语言(例如,Objective-C、Java或C++)或过程编程语言(例如,C或汇编语言)。在特定示例中,第三方应用1240(例如,由除了特定平台的供应商之外的实体使用ANDROIDTM或IOSTM软件开发工具包(SDK)开发的应用)可以是在诸如IOSTM、ANDROIDTM
Figure BPA0000334581280000221
Phone的移动操作系统或其他移动操作系统上运行的移动软件。在该示例中,第三方应用1240可以激活由操作系统1212提供的API调用1250以便于本文中描述的功能。
术语表
“载波信号”是指能够存储、编码或携载由机器执行的指令的任何无形介质并且包括数字或模拟通信信号或其他无形介质以利于这些指令的通信。可以使用传输介质经由网络接口设备来通过网络发送或接收指令。
“客户端设备”是指与通信网络接口以从一个或更多个服务器系统或其他客户端设备获得资源的任何机器。客户端设备可以是但不限于移动电话、桌上型计算机、膝上型计算机、便携式数字助理(PDA)、智能电话、平板计算机、超级本、上网本、膝上型计算机、多处理器系统、基于微处理器或可编程消费电子产品、游戏控制台、机顶盒或用户可以用于访问网络的任何其他通信设备。
“通信网络”是指网络的一个或更多个部分,该网络可以是自组织网络、内联网、外联网、虚拟专用网络(VPN)、局域网(LAN)、无线LAN(WLAN)、广域网(WAN)、无线WAN(WWAN)、城域网(MAN)、因特网、因特网的一部分、公共交换电话网(PSTN)的一部分、普通老式电话服务(POTS)网络、蜂窝电话网络、无线网络、
Figure BPA0000334581280000231
网络、其他类型的网络或者两个或更多个这样的网络的组合。例如,网络或网络的一部分可以包括无线网络或蜂窝网络,并且耦接可以是码分多址(CDMA)连接、全局移动通信系统(GSM)连接或其他类型的蜂窝或无线耦接。在该示例中,耦接可以实现各种类型的数据传输技术中的任何数据传输技术,例如单载波无线电传输技术(1xRTT)、演进数据优化(EVDO)技术、通用分组无线电服务(GPRS)技术、增强数据速率的GSM演进(EDGE)技术、包括3G的第三代合作伙伴计划(3GPP)、第四代无线(4G)网络、通用移动电信系统(UMTS)、高速分组接入(HSPA)、全球微波接入互操作性(WiMAX)、长期演进(LTE)标准、由各种标准设置组织定义的其他数据传输技术、其他长距离协议或其他数据传输技术。
“部件”是指具有以下边界的设备、物理实体或逻辑,该边界由功能或子例程调用、分支点、API或者对特定处理或控制功能提供分区或模块化的其他技术定义。部件可以经由其接口与其他部件组合以执行机器处理。部件可以是被设计用于与其他部件一起使用的经封装的功能硬件单元,以及可以是通常执行相关功能中的特定功能的程序的一部分。部件可以构成软件组件(例如,在机器可读介质上实施的代码)或硬件部件。“硬件部件”是能够执行某些操作的有形单元,并且可以以某种物理方式来配置或布置。在各种示例中,可以通过软件(例如,应用或应用部分)将一个或更多个计算机系统(例如,独立计算机系统、客户端计算机系统或服务器计算机系统)或者计算机系统的一个或更多个硬件部件(例如,处理器或处理器组)配置为进行操作以执行如本文描述的某些操作的硬件部件。也可以机械地、电子地或以其任何合适的组合来实现硬件部件。例如,硬件部件可以包括被永久地配置成执行某些操作的专用电路或逻辑。硬件部件可以是例如现场可编程门阵列(FPGA)或专用集成电路(ASIC)的专用处理器。硬件部件还可以包括通过软件临时配置成执行某些操作的可编程逻辑或电路。例如,硬件部件可以包括由通用处理器或其他可编程处理器执行的软件。一旦通过这样的软件被配置,则硬件部件就成为被独特地定制成执行所配置的功能的特定机器(或机器的特定部件),而不再是通用处理器。将认识到,是机械地、在专用且永久配置的电路系统中还是在临时配置(例如,通过软件配置)的电路系统中实现硬件部件的决定可以出于成本和时间考虑来驱动。相应地,短语“硬件部件”(或“硬件实现的部件”)应当被理解成包含有形实体,即被物理构造、永久配置(例如,硬连线)或临时配置(例如,编程)成以某种方式操作或者执行本文中描述的某些操作的实体。考虑硬件部件被临时配置(例如,被编程)的示例,硬件部件中的每一个无需在任一时刻处均被配置或实例化。例如,在硬件部件包括通过软件配置而成为专用处理器的通用处理器的情况下,通用处理器可以在不同时间处被配置成分别不同的专用处理器(例如,包括不同的硬件部件)。软件相应地对一个或多个特定处理器进行配置以例如在一个时刻构成特定硬件部件并且在不同时刻构成不同的硬件部件。硬件部件可以向其他硬件部件提供信息以及从其他硬件部件接收信息。因此,描述的硬件部件可以被认为通信地耦接。在同时存在多个硬件部件的情况下,可以通过在两个或更多个硬件部件之间或之中(例如,通过适当的电路和总线)的信号传输来实现通信。在其中多个硬件部件在不同时间处被配置或实例化的示例中,可以例如通过将信息存储在多个硬件部件可以访问的存储器结构中并且在该存储器结构中检索信息来实现这样的硬件部件之间的通信。例如,一个硬件部件可以执行操作并且将该操作的输出存储在与其通信地耦接的存储器装置中。然后,其他硬件部件可以在随后的时间访问存储器装置以检索所存储的输出并对其进行处理。硬件部件还可以发起与输入设备或输出设备的通信,并且可以对资源(例如,信息的集合)进行操作。在本文中描述的示例方法的各种操作可以至少部分地由(例如,通过软件)临时地配置或永久地配置以执行相关操作的一个或更多个处理器来执行。无论是临时地被配置还是永久地被配置,这样的处理器可以构成操作以执行本文中描述的一个或更多个操作或功能的处理器实现的部件。如本文中使用的,“处理器实现的部件”是指使用一个或更多个处理器实现的硬件部件。类似地,本文中描述的方法可以至少部分地由处理器实现,其中特定的一个或多个处理器是硬件的示例。例如,方法的各操作中的至少一些操作可以由一个或更多个处理器1004或处理器实现的部件来执行。此外,一个或更多个处理器还可以操作成支持“云计算”环境中的相关操作的执行或者操作为“软件即服务”(SaaS)。例如,操作中的至少一些操作可以由计算机组(作为包括处理器的机器的示例)执行,其中这些操作能够经由网络(例如,因特网)并且经由一个或更多个适当的接口(例如,API)进行访问。某些操作的执行可以分布在处理器之间,不是仅驻留在单个机器内,而是跨多个机器部署。在一些示例中,处理器或处理器实现的部件可以位于单个地理位置中(例如,在家庭环境、办公室环境或服务器群内)。在其他示例中,处理器或处理器实现的部件可以跨若干地理位置分布。
“计算机可读存储介质”是指机器存储介质和传输介质两者。因此,这些术语包括存储设备/介质和载波/调制数据信号两者。术语“机器可读介质”、“计算机可读介质”和“设备可读介质”意指相同的事物,并且可以在本公开内容中可互换地使用。
“短暂消息”是指在时间有限的持续时间内可访问的消息。短暂消息可以是文本、图像、视频等。短暂消息的访问时间可以由消息发送者设置。替选地,访问时间可以是默认设置或者由接收方指定的设置。无论设置技术如何,消息都是暂时的。
“机器存储介质”是指存储可执行指令、例程和数据的单个或多个存储设备和介质(例如,集中式或分布式数据库,以及相关联的高速缓存和服务器)。因此,术语应被视为包括但不限于固态存储器以及光学和磁介质,包括处理器内部或外部的存储器。机器存储介质、计算机存储介质和设备存储介质的具体示例包括:非易失性存储器,包括例如半导体存储器设备,例如可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、FPGA和闪存设备;磁盘,例如内部硬盘和可移动盘;磁光盘;以及CD-ROM和DVD-ROM盘。术语“机器存储介质”、“设备存储介质”、“计算机存储介质”意指相同的事物,并且在本公开内容中可以互换地使用。术语“机器存储介质”、“计算机存储介质”和“设备存储介质”明确地排除了载波、调制数据信号和其他这样的介质,所述载波、调制数据信号和其他这样的介质中的至少一些被涵盖在术语“信号介质”中。
“非暂态计算机可读存储介质”是指能够存储、编码或携载由机器执行的指令的有形介质。
“信号介质”是指能够存储、编码或携载由机器执行的指令的任何无形介质,并且“信号介质”包括数字或模拟通信信号或其他无形介质以便于软件或数据的通信。术语“信号介质”应当被视为包括任何形式的调制数据信号、载波等。术语“调制数据信号”意指使其特性中的一个或更多个特性以对信号中的信息进行编码的方式来设置或改变的信号。术语“传输介质”和“信号介质”意指相同的事物,并且可以在本公开内容中互换使用。

Claims (20)

1.一种方法,包括:
使用一个或更多个处理器访问视觉标识符,所述视觉标识符包括表示计算机应用的编码数据;
执行对所述视觉标识符的视觉搜索;
响应于执行对所述视觉标识符的视觉搜索,使得在计算设备的图形用户界面内呈现应用菜单;
接收对所述应用菜单内的第一用户界面元素的选择;以及
响应于接收到所述选择,运行所述计算机应用。
2.根据权利要求1所述的方法,其中,所述视觉标识符能够由用户配置。
3.根据权利要求1所述的方法,其中,响应于执行对所述视觉标识符的视觉搜索,所述方法还包括:
使得呈现所述计算机应用的第二用户界面窗口。
4.根据权利要求1所述的方法,其中,所述应用菜单包括第二用户界面元素,所述方法还包括:
接收对所述应用菜单内的所述第二用户界面元素的第二选择;以及
响应于接收到所述第二选择,将所述视觉标识符作为消息应用内的短暂消息进行发送。
5.根据权利要求1所述的方法,其中,所述应用菜单包括第三用户界面元素,所述方法还包括:
接收对所述应用菜单内的所述第三用户界面元素的第三选择;以及
响应于接收到所述第三选择,修改所述图形用户界面。
6.根据权利要求1所述的方法,其中,执行对所述视觉标识符的视觉搜索还包括:
验证所述计算设备;
接收包括验证成功的指示;以及
响应于接收到包括验证成功的所述指示,使得呈现所述应用菜单。
7.根据权利要求6所述的方法,其中,所接收的指示包括验证失败,所述方法还包括:
在所述图形用户界面上呈现表示所述验证失败的通知。
8.根据权利要求1所述的方法,还包括:
访问第二视觉标识符,所述第二视觉标识符包括表示所述计算机应用的编码数据。
9.一种系统,包括:
一个或更多个处理器;以及
存储器,所述存储器存储指令,所述指令在由所述一个或更多个处理器执行时使所述一个或更多个处理器执行操作,所述操作包括:
使用一个或更多个处理器访问视觉标识符,所述视觉标识符包括表示计算机应用的编码数据;
执行对所述视觉标识符的视觉搜索;
响应于执行对所述视觉标识符的视觉搜索,使得在计算设备的图形用户界面内呈现应用菜单;
接收对所述应用菜单内的第一用户界面元素的选择;以及
响应于接收到所述选择,运行所述计算机应用。
10.根据权利要求9所述的系统,其中,所述视觉标识符能够由用户配置。
11.根据权利要求9所述的系统,其中,所述应用菜单包括第二用户界面元素,所述操作还包括:
接收对所述应用菜单内的所述第二用户界面元素的第二选择;以及
响应于接收到所述第二选择,将所述视觉标识符作为消息应用内的短暂消息进行发送。
12.根据权利要求9所述的系统,其中,所述应用菜单包括第三用户界面元素,所述操作还包括:
接收对所述应用菜单内的所述第三用户界面元素的第三选择;以及
响应于接收到所述第三选择,修改所述图形用户界面。
13.根据权利要求9所述的系统,其中,执行对所述视觉标识符的视觉搜索还包括:
验证所述计算设备;
接收包括验证成功的指示;以及
响应于接收到包括验证成功的所述指示,使得呈现所述应用菜单。
14.根据权利要求13所述的系统,其中,所接收的指示包括验证失败,所述操作还包括:
在所述图形用户界面上呈现表示所述验证失败的通知。
15.根据权利要求9所述的系统,其中,所述操作还包括:
访问第二视觉标识符,所述第二视觉标识符包括表示所述计算机应用的编码数据。
16.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储指令,所述指令在由机器的一个或更多个处理器执行时,使所述计算机可读存储介质执行操作,所述操作包括:
使用一个或更多个处理器访问视觉标识符,所述视觉标识符包括表示计算机应用的编码数据;
执行对所述视觉标识符的视觉搜索;
响应于执行对所述视觉标识符的视觉搜索,使得在计算设备的图形用户界面内呈现应用菜单;
接收对所述应用菜单内的第一用户界面元素的选择;以及
响应于接收到所述选择,运行所述计算机应用。
17.根据权利要求16所述的计算机可读存储介质,其中,所述视觉标识符能够由用户配置。
18.根据权利要求16所述的计算机可读存储介质,其中,所述应用菜单包括第二用户界面元素,所述操作还包括:
接收对所述应用菜单内的所述第二用户界面元素的第二选择;以及
响应于接收到所述第二选择,将所述视觉标识符作为消息应用内的短暂消息进行发送。
19.根据权利要求16所述的计算机可读存储介质,其中,所述应用菜单包括第三用户界面元素,所述操作还包括:
接收对所述应用菜单内的所述第三用户界面元素的第三选择;以及
响应于接收到所述第三选择,修改所述图形用户界面。
20.根据权利要求16所述的计算机可读存储介质,其中,执行对所述视觉标识符的视觉搜索还包括:
验证所述计算设备;
接收包括验证成功的指示;以及
响应于接收到包括验证成功的所述指示,使得呈现所述应用菜单。
CN202180050055.1A 2020-06-10 2021-06-09 用于启动应用的视觉搜索 Pending CN115885247A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063037314P 2020-06-10 2020-06-10
US63/037,314 2020-06-10
PCT/US2021/036659 WO2021252662A1 (en) 2020-06-10 2021-06-09 Visual search to launch application

Publications (1)

Publication Number Publication Date
CN115885247A true CN115885247A (zh) 2023-03-31

Family

ID=76731092

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180050055.1A Pending CN115885247A (zh) 2020-06-10 2021-06-09 用于启动应用的视觉搜索

Country Status (5)

Country Link
US (1) US11857879B2 (zh)
EP (1) EP4165489A1 (zh)
KR (1) KR20230022241A (zh)
CN (1) CN115885247A (zh)
WO (1) WO2021252662A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11857879B2 (en) 2020-06-10 2024-01-02 Snap Inc. Visual search to launch application

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11360733B2 (en) 2020-09-10 2022-06-14 Snap Inc. Colocated shared augmented reality without shared backend
USD978160S1 (en) 2020-12-31 2023-02-14 Snap Inc. Display screen or portion thereof with a graphical user interface
US11949527B2 (en) 2022-04-25 2024-04-02 Snap Inc. Shared augmented reality experience in video chat

Family Cites Families (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758257A (en) 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
US5978773A (en) 1995-06-20 1999-11-02 Neomedia Technologies, Inc. System and method for using an ordinary article of commerce to access a remote computer
EP0814611B1 (de) 1996-06-17 2002-08-28 Siemens Aktiengesellschaft Kommunikationssystem und Verfahren zur Aufnahme und Verwaltung digitaler Bilder
JP3783331B2 (ja) 1997-05-14 2006-06-07 ブラザー工業株式会社 メール送信システム、メール受信システムおよび記録媒体
US6158044A (en) 1997-05-21 2000-12-05 Epropose, Inc. Proposal based architecture system
WO1998058321A1 (en) 1997-06-17 1998-12-23 Purdue Pharma Lp Self-destructing document and e-mail messaging system
FI973945A (fi) 1997-10-13 1999-04-14 Nokia Telecommunications Oy Lyhytsanomia välittävä tiedonsiirtojärjestelmä
US6484196B1 (en) 1998-03-20 2002-11-19 Advanced Web Solutions Internet messaging system and method for use in computer networks
US7173651B1 (en) 1998-06-02 2007-02-06 Knowles Andrew T Apparatus and system for prompt digital photo delivery and archival
US6205432B1 (en) 1998-06-05 2001-03-20 Creative Internet Concepts, Llc Background advertising system
WO2000017768A1 (en) 1998-09-23 2000-03-30 Ogilvie John W L Self-removing email
US6324569B1 (en) 1998-09-23 2001-11-27 John W. L. Ogilvie Self-removing email verified or designated as such by a message distributor for the convenience of a recipient
US6757713B1 (en) 1998-09-23 2004-06-29 John W. L. Ogilvie Method for including a self-removing indicator in a self-removing message
US6701347B1 (en) 1998-09-23 2004-03-02 John W. L. Ogilvie Method for including a self-removing code in a self-removing email message that contains an advertisement
US6167435A (en) 1998-10-30 2000-12-26 Netcreations, Inc. Double opt-in™ method and system for verifying subscriptions to information distribution services
US7240199B2 (en) 2000-12-06 2007-07-03 Rpost International Limited System and method for verifying delivery and integrity of electronic messages
US7149893B1 (en) 1999-09-07 2006-12-12 Poofaway.Com, Inc. System and method for enabling the originator of an electronic mail message to preset an expiration time, date, and/or event, and to control processing or handling by a recipient
US7124164B1 (en) 2001-04-17 2006-10-17 Chemtob Helen J Method and apparatus for providing group interaction via communications networks
US6505123B1 (en) 2000-07-24 2003-01-07 Weatherbank, Inc. Interactive weather advisory system
US6754621B1 (en) 2000-10-06 2004-06-22 Andrew Cunningham Asynchronous hypertext messaging system and method
JP2002132647A (ja) 2000-10-19 2002-05-10 Kizna Corp 電子掲示板及び電子掲示板システム
US7243163B1 (en) 2001-08-07 2007-07-10 Good Technology, Inc. System and method for full wireless synchronization of a data processing apparatus with a messaging system
JP4440503B2 (ja) 2001-09-20 2010-03-24 富士通株式会社 情報一覧作成装置及びそのプログラム
US20100098702A1 (en) 2008-09-16 2010-04-22 Longgui Wang Method of treating androgen independent prostate cancer
US7356564B2 (en) 2002-01-09 2008-04-08 At&T Delaware Intellectual Property, Inc. Method, system, and apparatus for providing self-destructing electronic mail messages
US20030217106A1 (en) 2002-03-25 2003-11-20 Eytan Adar System and method for profiling clients within a system for harvesting community knowledge
US7278168B1 (en) 2002-11-27 2007-10-02 Adobe Systems Incorporated Dynamic enabling of functionality in electronic document readers
US7411493B2 (en) 2003-03-01 2008-08-12 User-Centric Ip, L.P. User-centric event reporting
US6978147B2 (en) 2003-03-19 2005-12-20 Motorola, Inc. Wireless messaging device with selectable scroll display and message pre-fetch
GB0308991D0 (en) 2003-04-17 2003-05-28 Psion Digital Ltd A data access replication or communication system comprising a distributed software application
US7703140B2 (en) 2003-09-30 2010-04-20 Guardian Data Storage, Llc Method and system for securing digital assets using process-driven security policies
US7191221B2 (en) 2003-10-30 2007-03-13 International Business Machines Corporation Method for managing electronic mail receipts using audio-visual notification enhancements
US7535890B2 (en) 2003-12-18 2009-05-19 Ayalogic, Inc. System and method for instant VoIP messaging
WO2005062217A1 (ja) 2003-12-19 2005-07-07 Fujitsu Limited プレゼンス情報管理方法、及び、サーバ
US7478402B2 (en) 2004-02-12 2009-01-13 Microsoft Corporation Configurable message pipelines
US7904510B2 (en) 2004-02-23 2011-03-08 Microsoft Corporation Systems and methods for managing discussion threads based on ratings
US7912904B2 (en) 2004-03-31 2011-03-22 Google Inc. Email system with conversation-centric user interface
US7607096B2 (en) 2004-05-01 2009-10-20 Microsoft Corporation System and method for a user interface directed to discovering and publishing presence information on a network
US7593740B2 (en) 2004-05-12 2009-09-22 Google, Inc. Location-based social software for mobile devices
EP1752000A1 (fr) 2004-05-27 2007-02-14 France Telecom S.A. Procede et installation de transmission d"un message a duree de validite predeterminee a destination d"un terminal d"abonne
US7519670B2 (en) 2004-08-12 2009-04-14 International Business Machines Corporation Method for disappearing ink for text messaging
US8745132B2 (en) 2004-09-10 2014-06-03 Silver State Intellectual Technologies, Inc. System and method for audio and video portable publishing system
US7496347B2 (en) 2004-11-12 2009-02-24 Velocita Wireless Llc Method and apparatus for providing secure wireless communication
US8396456B2 (en) 2005-06-28 2013-03-12 Avaya Integrated Cabinet Solutions Inc. Visual voicemail management
US8266219B2 (en) 2005-07-20 2012-09-11 Research In Motion Limited Method and system for instant messaging conversation security
US7610345B2 (en) 2005-07-28 2009-10-27 Vaporstream Incorporated Reduced traceability electronic message system and method
CN1794708A (zh) 2005-07-29 2006-06-28 华为技术有限公司 呈现业务系统及发布呈现信息的方法
US8332475B2 (en) 2005-08-22 2012-12-11 Triplay Communications Ltd. Messaging system and method
US7949107B2 (en) 2005-08-24 2011-05-24 International Business Machines Corporation Method, system, and computer program product for providing privacy measures in instant messaging systems
US20070073823A1 (en) 2005-09-29 2007-03-29 International Business Machines Corporation Method and apparatus to secure and retrieve instant messages
US8284663B2 (en) 2005-10-14 2012-10-09 Turbine, Inc. Selectively ordered protocol for unreliable channels
ITMI20052290A1 (it) 2005-11-30 2007-06-01 Pasqua Roberto Della Servizio di messaggistica istantanea con interfaccia utente minimizzata
US7856360B2 (en) 2006-01-30 2010-12-21 Hoozware, Inc. System for providing a service to venues where people aggregate
US7743009B2 (en) 2006-02-10 2010-06-22 Strands, Inc. System and methods for prioritizing mobile media player files
US8112478B2 (en) 2006-03-13 2012-02-07 Oracle International Corporation Email and discussion forum system
US8255473B2 (en) 2006-04-04 2012-08-28 International Business Machines Corporation Caching message fragments during real-time messaging conversations
US9304675B2 (en) 2006-09-06 2016-04-05 Apple Inc. Portable electronic device for instant messaging
USRE47534E1 (en) 2007-04-23 2019-07-23 Ramot At Tel Aviv University Ltd. System, method and a computer readable medium for providing an output image
US20080270938A1 (en) 2007-04-29 2008-10-30 Elizabeth Marie Carlson System for self-registering visitor information with geographic specificity and searchable fields
US8170957B2 (en) 2007-08-08 2012-05-01 Sinart Points Technology, Inc. System and method for managing digital interactions
US8909714B2 (en) 2007-08-21 2014-12-09 Microsoft Corporation Electronic mail delay adaptation
US8244593B2 (en) 2007-11-20 2012-08-14 Pure Verticals, Inc. Method and system for monetizing content
KR101387527B1 (ko) 2007-12-06 2014-04-23 엘지전자 주식회사 단말기 및 그 메뉴 아이콘 디스플레이 방법
US8214443B2 (en) 2008-03-05 2012-07-03 Aol Inc. Electronic mail forwarding service
WO2009121046A1 (en) 2008-03-28 2009-10-01 Celltrust Corporation Systems and methods for secure short messaging service and multimedia messaging service
US20100082427A1 (en) 2008-09-30 2010-04-01 Yahoo! Inc. System and Method for Context Enhanced Ad Creation
US8719238B2 (en) 2009-01-22 2014-05-06 Sunstein Kann Murphy & Timbers LLP Office-based notification messaging system
US8214446B1 (en) 2009-06-04 2012-07-03 Imdb.Com, Inc. Segmenting access to electronic message boards
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US20110099507A1 (en) 2009-10-28 2011-04-28 Google Inc. Displaying a collection of interactive elements that trigger actions directed to an item
CN102118419B (zh) 2009-12-30 2014-07-16 华为技术有限公司 一种图片信息的传输方法、装置和通信系统
US9443227B2 (en) * 2010-02-16 2016-09-13 Tigertext, Inc. Messaging system apparatuses circuits and methods of operation thereof
US20110213845A1 (en) 2010-02-26 2011-09-01 Research In Motion Limited Automatic deletion of electronic messages
US8433755B2 (en) 2010-04-07 2013-04-30 Apple Inc. Dynamic designation of a central distributor in a multi-participant conference
WO2011133824A1 (en) 2010-04-21 2011-10-27 Michael Jerry Saylor Multimodal interactive voice response system
US20110320373A1 (en) 2010-06-25 2011-12-29 Microsoft Corporation Product conversations among social groups
AU2011274218C1 (en) 2010-07-01 2016-11-03 Absolute Software Corporation Automatic creation and modification of dynamic geofences
US8233887B2 (en) 2010-07-28 2012-07-31 Sprint Communications Company L.P. Covert message redaction and recovery in a wireless communication device
US8457668B2 (en) 2011-01-18 2013-06-04 Claremont Speede Mobile sender initiated SMS message deletion method and system
US20120209921A1 (en) 2011-02-10 2012-08-16 International Business Machines Corporation Instant Message Management Method and Apparatus
US9331972B2 (en) 2011-03-31 2016-05-03 Loment, Inc. Automatic expiration of messages communicated to an end user communication device
WO2013008251A2 (en) 2011-07-08 2013-01-17 Hughes Systique India Private Limited Method and system for social networking in a restricted connectivity environment
US20130071093A1 (en) 2011-09-16 2013-03-21 William Turner Hanks Maintaining viewer activity information of a recorded program for program deletion decisions
US20130194301A1 (en) 2012-01-30 2013-08-01 Burn Note, Inc. System and method for securely transmiting sensitive information
US9560006B2 (en) 2012-07-26 2017-01-31 Google Inc. Method and apparatus for expiring messages in electronic communications
US20150199082A1 (en) 2012-11-13 2015-07-16 Google Inc. Displaying actionable items in an overscroll area
US20140201527A1 (en) 2013-01-17 2014-07-17 Zohar KRIVOROT Systems and methods for secure and private delivery of content
US9264463B2 (en) 2013-03-15 2016-02-16 Facebook, Inc. Method and system of managing ephemeral post in a social networking system
US9736218B2 (en) 2013-04-24 2017-08-15 Blackberry Limited Device, system and method for processing character data
US9742713B2 (en) 2013-05-30 2017-08-22 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US9705831B2 (en) 2013-05-30 2017-07-11 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US8914752B1 (en) 2013-08-22 2014-12-16 Snapchat, Inc. Apparatus and method for accelerated display of ephemeral messages
US9083770B1 (en) 2013-11-26 2015-07-14 Snapchat, Inc. Method and system for integrating real time communication features in applications
CA2863124A1 (en) 2014-01-03 2015-07-03 Investel Capital Corporation User content sharing system and method with automated external content integration
US9628950B1 (en) 2014-01-12 2017-04-18 Investment Asset Holdings Llc Location-based messaging
WO2015123537A1 (en) 2014-02-13 2015-08-20 Ashok Ramu Virtual data backup
US8909725B1 (en) 2014-03-07 2014-12-09 Snapchat, Inc. Content delivery network for ephemeral objects
US9479909B2 (en) 2014-03-20 2016-10-25 Tigertext, Inc. Method of sending messages to devices not configured to receive them
US9594555B2 (en) * 2014-04-07 2017-03-14 Quikkly Ltd. Computer readable storage media for invoking direct actions and processes and systems utilizing same
US9311340B2 (en) * 2014-04-15 2016-04-12 International Business Machines Corporation Multiple partial-image compositional searching
US9276886B1 (en) 2014-05-09 2016-03-01 Snapchat, Inc. Apparatus and method for dynamically configuring application component tiles
US9537811B2 (en) 2014-10-02 2017-01-03 Snap Inc. Ephemeral gallery of ephemeral messages
US9396354B1 (en) 2014-05-28 2016-07-19 Snapchat, Inc. Apparatus and method for automated privacy protection in distributed images
KR20200033999A (ko) 2014-10-24 2020-03-30 스냅 인코포레이티드 메시지의 우선 순위 지정
US9113301B1 (en) 2014-06-13 2015-08-18 Snapchat, Inc. Geo-location based event gallery
US9225897B1 (en) 2014-07-07 2015-12-29 Snapchat, Inc. Apparatus and method for supplying content aware photo filters
US11783898B2 (en) 2014-09-18 2023-10-10 Jonker Llc Ephemeral storage elements, circuits, and systems
US10824654B2 (en) 2014-09-18 2020-11-03 Snap Inc. Geolocation-based pictographs
US11216869B2 (en) 2014-09-23 2022-01-04 Snap Inc. User interface to augment an image using geolocation
US9854219B2 (en) 2014-12-19 2017-12-26 Snap Inc. Gallery of videos set to an audio time line
US10311916B2 (en) 2014-12-19 2019-06-04 Snap Inc. Gallery of videos set to an audio time line
US9385983B1 (en) 2014-12-19 2016-07-05 Snapchat, Inc. Gallery of messages from individuals with a shared interest
US9754355B2 (en) 2015-01-09 2017-09-05 Snap Inc. Object recognition based photo filters
US9111164B1 (en) 2015-01-19 2015-08-18 Snapchat, Inc. Custom functional patterns for optical barcodes
US9294425B1 (en) 2015-02-06 2016-03-22 Snapchat, Inc. Storage and processing of ephemeral messages
US9148424B1 (en) 2015-03-13 2015-09-29 Snapchat, Inc. Systems and methods for IP-based intrusion detection
KR102371138B1 (ko) 2015-03-18 2022-03-10 스냅 인코포레이티드 지오-펜스 인가 프로비저닝
US9482882B1 (en) 2015-04-15 2016-11-01 Snapchat, Inc. Eyewear having selectively exposable feature
US9482883B1 (en) 2015-04-15 2016-11-01 Snapchat, Inc. Eyewear having linkage assembly between a temple and a frame
US9881094B2 (en) 2015-05-05 2018-01-30 Snap Inc. Systems and methods for automated local story generation and curation
CN107431632B (zh) 2015-05-06 2022-09-16 斯纳普公司 用于短暂群组聊天的系统和方法
US9652896B1 (en) 2015-10-30 2017-05-16 Snap Inc. Image based tracking in augmented reality systems
US20170161382A1 (en) 2015-12-08 2017-06-08 Snapchat, Inc. System to correlate video data and contextual data
US10354425B2 (en) 2015-12-18 2019-07-16 Snap Inc. Method and system for providing context relevant media augmentation
US9911073B1 (en) * 2016-03-18 2018-03-06 Snap Inc. Facial patterns for optical barcodes
US11900418B2 (en) 2016-04-04 2024-02-13 Snap Inc. Mutable geo-fencing system
US10686899B2 (en) 2016-04-06 2020-06-16 Snap Inc. Messaging achievement pictograph display system
US9681265B1 (en) 2016-06-28 2017-06-13 Snap Inc. System to track engagement of media items
US10748207B2 (en) * 2017-03-31 2020-08-18 Sina Sohangir Pattern based apparel search engine and recommendation
KR102318422B1 (ko) * 2017-11-29 2021-10-28 스냅 인코포레이티드 전자 메시징 애플리케이션들을 위한 그래픽 렌더링
US11857879B2 (en) 2020-06-10 2024-01-02 Snap Inc. Visual search to launch application

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11857879B2 (en) 2020-06-10 2024-01-02 Snap Inc. Visual search to launch application

Also Published As

Publication number Publication date
KR20230022241A (ko) 2023-02-14
US11857879B2 (en) 2024-01-02
US20210387090A1 (en) 2021-12-16
WO2021252662A1 (en) 2021-12-16
EP4165489A1 (en) 2023-04-19

Similar Documents

Publication Publication Date Title
CN115552403B (zh) 用于媒体内容项的私人集合的邀请媒体覆盖物
US11843574B2 (en) Featured content collection interface
CN115668887A (zh) 用于媒体内容项的共享集合的邀请媒体覆盖
CN115917608A (zh) 增强现实内容项中的机器学习
CN116057533A (zh) 自动网站数据迁移
US11857879B2 (en) Visual search to launch application
CN115917506A (zh) 第三方资源授权
CN115867882A (zh) 用于图像的基于出行的增强现实内容
CN115668119A (zh) 用于消息收发系统的具有标贴的回复界面
CN115697508A (zh) 游戏结果覆盖系统
CN116783575A (zh) 媒体内容检测和管理
CN115428414A (zh) 事件覆盖邀请消息传送系统
CN116438788A (zh) 媒体内容回放和评论管理
US20230061559A1 (en) Cross-platform data management and integration
US20230022826A1 (en) Media content discard notification system
CN115668169A (zh) 自动生成的个性化消息
CN116235194A (zh) 媒体内容传输和管理
CN115701304A (zh) 上下文发送菜单
CN115516834A (zh) 具有相关实体的轮播的消息收发系统
CN115698931A (zh) 上下文动作栏
US20230273950A1 (en) Location-based timeline media content system
CN116322914A (zh) 用于增强现实连续性的qr生成系统
CN116235500A (zh) 生成用于分享到外部应用的媒体内容项
CN117795931A (zh) 组合的读取和反应消息

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination