CN110447024A - 用户界面内容的索引、搜索和取回 - Google Patents

用户界面内容的索引、搜索和取回 Download PDF

Info

Publication number
CN110447024A
CN110447024A CN201880020098.3A CN201880020098A CN110447024A CN 110447024 A CN110447024 A CN 110447024A CN 201880020098 A CN201880020098 A CN 201880020098A CN 110447024 A CN110447024 A CN 110447024A
Authority
CN
China
Prior art keywords
user
content
image
content element
described image
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.)
Withdrawn
Application number
CN201880020098.3A
Other languages
English (en)
Inventor
A·D·威尔森
M·毛德雷
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN110447024A publication Critical patent/CN110447024A/zh
Withdrawn legal-status Critical Current

Links

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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5846Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using extracted text
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04803Split screen, i.e. subdividing the display area or the window area into separate subareas

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

公开了用于用户界面内容的索引、搜索和取回的系统和方法。在一个实现中,可以捕获经由显示设备呈现给用户的用户界面的图像。该图像可以被处理以标识在图像内描绘的内容元素。内容元素可以与图像相关联。可以与用户相关地,将图像存储为与内容元素相关联。

Description

用户界面内容的索引、搜索和取回
技术领域
本公开的各方面和实现涉及数据处理,并且更具体地而非限制性地涉及用户界面内容的索引、搜索和取回。
背景技术
现有搜索技术可以在存储在特定位置(例如,在设备上)的一组基于文本的文档上生成搜索索引。然后,该索引可以用于响应于搜索查询而取回这样的文档。
发明内容
以下呈现本公开的各个方面的简要的发明内容,以便提供对这样的方面的基本理解。本发明内容不是对所有预期方面的广泛概述,并且既不旨在标识关键或重要元素,也不旨在界定这样的方面的范围。本发明内容的目的是以紧凑的形式呈现本公开的一些概念,作为稍后呈现的更详细描述的序言。
在本公开的一个方面,可以捕获经由显示设备呈现给用户的用户界面的图像。图像可以被处理以标识在图像内描绘的内容元素。内容元素可以与图像相关联。可以与用户相关地,将图像存储为与内容元素相关联。
附图说明
从下面给出的具体实施方式以及从本公开的各个方面和实现的附图中,本公开的各方面和实现将能够更全面地被理解,然而,这些不应当被理解为将本公开限制于特定的方面或实现,而是仅用于解释和理解。
图1示出了根据一个示例实施例的示例系统。
图2是根据一个示例实施例的图1的设备的框图。
图3示出了根据一个示例实施例的、本文所描述的一个示例场景。
图4是示出根据一个示例实施例的用于用户界面内容的索引、搜索和取回的方法的流程图。
图5示出了根据一个示例实施例的本文所描述的一个示例场景。
图6示出了根据一个示例实施例的本文所描述的一个示例场景。
图7是示出根据一个示例实施例的机器的组件的框图,该机器能够从机器可读介质读取指令并且执行本文中讨论的任何方法。
具体实施方式
本公开的各方面和实现涉及用户界面内容的索引、搜索和取回。
可以理解,现有的搜索和索引技术可以使得用户能够标识和取回某些类型的内容。例如,可以索引存储在设备上的文本或基于文本的文档(例如,.txt、.doc、.rtf等格式的文件),使得用户可以利用单个搜索界面跨这样的文档以进行搜索(例如,对于搜索项/查询)。
然而,虽然所提及的搜索/索引对于这样的基于文本的文档(例如,存储/保持在设备上的文档)有效,但是在很多场景中,用户可能遇到可能不被存储(或可能不被永久存储)在设备上的内容(例如,文本、媒体等)。例如,用户可以经由网络浏览器从网页读取内容,经由媒体播放器应用查看媒体内容(例如,流视频),等等。在这种情况下,标的内容(例如,来自网页的文本/内容等)可能不会被存储(或可能不会被永久存储)在用于查看它的设备上。因此,在用户希望搜索/取回内容(例如,关于特定主题等)的场景中,现有的搜索/索引技术仅能够取回存储在特定设备上或以特定格式(例如,文本)存储的文档等。然而,这样的技术不能/无法取回用户可能先前已经查看过但是当前没有被存储在设备上(例如,在网页内等)的内容。
因此,本文中在各种实现中描述了包括方法、机器可读介质和系统的技术,其能够例如在持续的基础上捕获设备的用户界面的(多个)图像(例如,静止图像和/或视频)。这样的(多个)图像可以反映正在描绘给用户的内容(例如,在网络浏览器、媒体播放器等内正示出的内容)。然后,这样的(多个)捕获的图像可以被处理以标识(多个)图像内存在的各种内容元素(例如,单词、术语等)。这样的内容项可以与捕获的图像相关联,并且可以基于内容元素生成搜索索引。随后,在从用户接收到搜索查询时,所提及的索引可以被用于标识先前的实例,在该先前的实例中对应的(多个)内容项的曾被呈现给用户(例如,在网页、媒体播放器等内)。然后,可以取回与这样的实例相关联的(多个)捕获的图像并且将其呈现给用户。这样做时,用户可以取回且回顾他/她过去已经查看过的内容,即使在呈现该内容的应用(例如,网络浏览器、媒体播放器等)可能没有保持该内容的副本的场景中。
另外,在某些实现中,在结合各种眼睛跟踪技术而被采用时,可以进一步地增强所描述的技术的各个方面。即可以理解的是,用户可能不一定查看、阅读等在用户界面内显示/呈现的所有内容(例如,在用户具有在用户界面内打开的多个应用,而用户只查看/阅读其中一个应用的场景下)。因此,在某些实现中,可以利用各种眼睛跟踪技术来标识用户实际正在查看的用户界面的这些区域、部分等,而无需处理和/或索引在用户界面处呈现的所有内容(甚至这样的内容是用户可能实际上没有查看/阅读过的)。这样做时,这样的所标识的(多个)区域可以被处理、索引等,而其他区域(确定用户不是正在看的区域)可以不被处理、索引等。这样做时,所描述的技术可以提高效率并且改善与各种操作相关联的资源利用。例如,捕获、处理、索引和/或存储操作可以被限制到确定用户正在看的那些(多个)区域,从而改善正在执行这样的(多个)操作的(多个)设备的操作。另外,在采用眼睛跟踪的场景中,所生成/提供的结果(例如,响应于搜索查询)可能更准确/相关。
因此可以理解,所描述的技术指向并且解决了多个技术领域中的特定技术挑战和长期缺陷,多个技术领域包括但不限于图像处理,内容索引、搜索和取回以及眼睛跟踪。如本文中详细描述的,所公开的技术为所提及的技术领域中的所提及的技术挑战和的未满足的需求提供了特定的技术解决方案,并且在常规方法上提供了很多优点和改进。另外,在各种实现中,本文中提及的硬件元件、组件等中的一个或多个操作以诸如本文所描述的方式来实现、改进和/或增强所描述的技术。
图1示出了根据一些实现的示例系统100。如图所示,系统100包括设备102A。设备102A可以是笔记本电脑、台式电脑、终端、移动电话、平板电脑、智能手表、个人数字助理(PDA)、可穿戴设备、数字音乐播放器、服务器等。用户130可以是可以诸如通过提供各种输入(例如,经由输入设备/接口,诸如键盘、鼠标、触摸屏等)来与设备102A交互的人类用户。
在某些实现中,设备102A可以包括或以其他方式被连接到各种组件,诸如显示设备104和一个或多个跟踪组件108。显示设备104可以是例如发光二极管(LED)显示器、液晶显示器(LCD)显示器、触摸屏显示器、和/或能够显示、描绘或以其他方式呈现用户界面106(例如,图形用户界面(GUI))的任何其他这样的设备。(多个)跟踪组件108可以是例如传感器(例如,光学传感器)、摄像机(例如,二维或三维摄像机)、和/或如本文所述的能够跟踪用户130的眼睛的任何其他这样的设备。应当理解,尽管图1将显示设备104和(多个)跟踪组件108描绘为被集成在单个设备102A内(诸如在具有集成网络摄像头的膝上型计算机,或具有集成前置摄像头的平板/智能电话设备的情况下),但是在其他实现中,显示设备104和跟踪组件108可以是分离的元件(例如,当使用外围网络摄像头设备时)。
例如,如图1所示,设备102A可以经由显示设备104向用户130呈现用户界面106。用户界面106可以是在设备102A上执行的各种应用(和/或经由显示设备104显示或描绘的任何其他这样的内容)的图形描绘,诸如应用110A(其可以是例如网络浏览器)和应用110B(其可以是例如媒体/视频播放器)。这样的(多个)应用还可以包括或以其他方式反映各种内容元素(例如,如图1所示的内容元素120A、120B和120C)。这样的内容元素可以是例如字母数字字符或字符串、单词、文本、图像、媒体(例如,视频)、和/或可以经由设备102A显示、描绘或以其他方式呈现的任何其他这样的电子或数字内容。各种应用还可以描绘、反映内容位置112,或以其他方式与内容位置112相关联。内容位置112可以包括或以其他方式反映可以存储或定位各种内容元素的本地和/或网络/远程位置(例如,统一资源定位符(URL)、本地或远程/网络文件位置/路径等)。
应当注意,尽管图1(以及本文中提供的各种其他示例和图示)将设备102A描绘为膝上型或台式计算设备,但是这仅仅是为了清楚和简洁起见。因此,在其他实现中,设备102A可以是各种其他类型的设备,包括但不限于各种可穿戴设备。
例如,在某些实现中,设备102A可以是虚拟现实(VR)和/或增强现实(AR)耳机。这样的耳机可以被配置为被佩戴在用户的头部、面部或眼睛上或位于用户的头部、面部或眼睛附近。诸如(跨越用户的大部分或全部视场的)沉浸式视觉内容等内容可以经由耳机呈现给用户。因此,这样的VR/AR耳机可以包括或包含与图1描绘和/或本文中描述的组件相对应的组件。
作为说明,VR耳机可以包括显示设备,例如,被包括/并入耳机内的一个或多个屏幕、显示器等。这样的屏幕、显示器等可以被配置为向佩戴耳机的用户呈现/投射VR用户界面。另外,所显示的VR用户界面还可以包括在耳机(或在连接到耳机或与耳机通信的另一计算设备)上执行的各种应用(例如,VR应用)的视觉/图形描绘。
另外,在某些实现中,这样的耳机可以包括或包含诸如本文中描述/提及的(多个)跟踪组件。例如,VR耳机可以包括(多个)传感器、(多个)摄像机、和/或能够检测运动或以其他方式跟踪用户的眼睛(例如,在佩戴或使用耳机时)的任何其他这样的(多个)组件。因此,本文中提供的各种示例和说明(例如,关于设备102A)应当被理解为是非限制性的,因为所描述的技术也可以在其他设置、上下文等(例如,关于VR/AR耳机)中实现。
图2描绘了示出根据示例实施例的系统100的其他方面的框图。如图2所示,设备102A可以包括内容处理引擎202、搜索引擎204和安全引擎206。处理引擎202、搜索引擎204和安全引擎206中的每个可以是例如存储在设备102A上(例如,在设备102A的存储器中,诸如在图7中描绘并且在下面更详细描述的存储器730)的应用或模块。当被执行时(例如,由设备102A的一个或多个处理器,诸如在图7中描绘并且在下面更详细描述的处理器710),这样的应用、模块等配置或以其他方式使得设备能够来执行诸如本文中描述的各种操作。
例如,内容处理引擎202可以配置/使得设备102A能够来捕获(多个)图像200。这样的(多个)图像200可以是经由设备102A的显示设备104描绘给用户130的用户界面106的图像(例如,静止图像、视频或任何其他这样的图形格式)。如下面更详细描述的,(多个)图像200可以包括如显示设备104上示出的整个用户界面106、和/或用户界面106的部分(例如,用户界面或特定应用的特定片段或区域)。在某些实现中,内容处理引擎202还可以配置或使得设备102A能够来处理所捕获的(多个)图像。这样做时,(多个)图像200内描绘或以其他方式反映的各种内容元素(例如,内容元素210A和内容元素210B)可以被标识或以其他方式被提取。例如,内容处理引擎202可以利用各种光学字符识别(OCR)技术来标识(多个)图像200内的字母数字内容(例如,文本)。作为另外的示例,内容处理引擎202可以利用各种图像分析/对象识别技术以标识(多个)图像200内的图形内容(例如,特定对象的图像)。
内容处理引擎202还可以配置或使得设备102A能够来标识(多个)图像200内和/或与(多个)图像200相关的附加信息。例如,时间戳220可以反映时间信息(例如,(多个)时间、(多个)日期、(多个)持续时间等),在其期间(多个)特定内容元素(例如,内容元素210A)经由设备102A的显示设备104曾被显示给用户130/曾是由用户130可查看的。另外,在某些实现中,内容处理引擎202可以计算权重230和/或例如向特定内容元素分配权重230。这样的权重230(其可以是例如基于时间戳220而计算的数字得分)可以反映内容元素的相对的显著性或重要性。例如,可以基于时间或间隔来确定所提及的权重,在该时间或间隔期间内容元素经由设备102A的显示设备104曾被显示给用户130/曾是由用户130可查看的。
此外,在某些实现中,内容处理引擎202还可以包含或以其他方式利用各种眼睛跟踪技术。例如,图3描绘了一个示例场景,在该示例场景中,内容处理引擎202利用输入(其源自(多个)跟踪组件108并且指示/反映用户130的眼睛132指向的方向、用户130的注视的一致性/稳定性等)用以计算/确定用户正在查看的用户界面的区域(这里是如图3所示的区域302A)。在确定例如用户的眼睛指向用户界面的特定区域(例如,如图3所示的区域302A)时,权重230可以与被确定为存在于该区域内的那些(多个)内容元素相关联。例如,所提及的权重可以反映相关联的内容元素曾被用户130查看了相当长的一段时间。权重可以与被确定为存在于该区域内的那些(多个)内容元素(例如,如图3所示的存在于区域302A内的内容元素120A、120B和120C,)相关联。
内容处理引擎202还可以配置/使得设备102A能够用以标识、确定和/或以其他方式获取各种附加信息。例如,可以标识/确定在其中呈现有这样的(多个)内容元素的(多个)内容位置240和/或(多个)应用250。这样的(多个)内容位置可以是例如在用户界面106内描绘的(多个)内容元素的URL、文件位置等。所提及的(多个)应用可以是例如在其中呈现有这样的(多个)内容元素的网络浏览器、媒体播放器等。在某些实现中,可以使用OCR和/或对象识别技术来标识这样的(多个)内容位置和/或(多个)应用,而在其他实现中,可以基于设备102A的元数据和/或其他系统信息(其可以反映在设备102A处正执行的应用、该应用正在访问/请求的本地/远程内容/文件等)来获取这样的信息。
如图2所示,设备102A还可以包括数据存储区214。数据存储214可以是例如存储各种信息的数据库或存储库,各种信息包括但不限于(多个)图像、内容元素、时间戳、权重、内容位置和应用。在某些实现中,数据存储区214可以被存储在设备102A的存储器中(诸如图7中描绘并且在下面更详细描述的存储器730)。
内容处理引擎202还可以配置/使得设备102A能够用以生成内容索引208。如本文中所描述的,内容索引208可以是包含/反映从所捕获的(多个)图像中标识/提取的各种(多个)内容元素的索引。如本文中详细描述的,在接收到搜索查询时,搜索引擎204可以利用内容索引208来标识与搜索查询相对应的(多个)内容元素。然后,与这样的标识的内容元素相对应的(多个)图像可以诸如以本文中描述的方式来被取回并且被呈现给用户。这样做时,所描述的技术使得能够存储已经由用户查看/被显示给用户的视觉内容(和相关信息)并且以使得能够进行后续取回的方式(例如,响应于搜索查询)对这样的内容进行索引。
设备102A还可以包括安全引擎206,安全引擎206可以配置/使得设备能够用以确保(多个)图像200(和/或本文中描述的任何其他相关信息)的安全性。例如,可以理解的是,经由设备102A呈现给用户130的某些内容可以是敏感的、机密的、私人的等。因此,安全引擎206可以例如连同内容处理引擎202一起操作。这样做时,当敏感、机密等的内容被标识出时(例如,在检测到个人财务信息、个人医疗信息等时),安全引擎可以确保(包含这样的内容的用户界面的)(多个)图像不会被存储在数据存储区214中,和/或确保该(多个)图像将以使这样的敏感、个人等内容编辑过后的方式被存储。此外,在某些实现中,安全引擎206可以使得用户130能够“选择加入”、“选择退出”和/或以其他方式配置关于所描述的技术的操作的各种安全性参数、设置等。例如,用户可以能够配置应当或不应当存储什么类型的内容(例如,仅存储诸如网站等公共可用内容,不存储包含诸如姓名、地址等标识信息的内容)。另外,在某些实现中,安全引擎206可以利用各种类型的数据加密、身份验证和/或用以确保未授权方不能访问/取回内容的相关技术。这样做时,安全引擎206可以确保所描述的技术能够在保持用户数据的安全性和隐私的同时,实现所描述的益处和技术改进。
此处应当注意的是,虽然本文中描述的很多示例是关于单个设备(例如,102A)而被示出的,但这仅仅是为了清楚和简洁。然而应当理解,所描述的技术也可以跨多个设备(以任何数目的配置)来实现。例如,如图2所示,设备102A可以经由网络212连接到帐户存储库260和/或各种设备102B、102C和/或以其他方式与之通信。网络212可以包括一个或多个网络,诸如因特网、广域网(WAN)、局域网(LAN)、虚拟专用网(VPN)、内联网等。帐户存储库260可以是例如服务器、数据库、计算设备、存储服务等,其可以存储与用户130相关联的账户内的/关于该账户的内容(例如,(多个)图像200、内容元素210A、210B、内容索引208等)。这样做时,在用户130随后利用另一设备(例如,设备102B,其可以是另一计算机、智能电话等)的场景中,用户可以取回(例如,在提供适当的帐户凭证时)或以其他方式利用存储在帐户储存库260中的这样的内容(尽管用户最初经由设备102A已查看过该内容)。如上所述,即使在这样的场景中,安全引擎206是可操作用以配置或以其他方式使得能够以能够确保所提及内容的隐私和安全性始终得以保持的方式,来操作各种(多个)设备和/或账户存储库260。
下面结合图2-7更详细地描述设备102A的其他方面和特征。
如本文中使用的,术语“配置”涵盖其普遍和普通含义。在一个示例中,机器被配置为通过使用于方法的软件代码被存储在机器的(多个)处理器可访问的存储器中来执行该方法。(多个)处理器访问存储器以实现该方法。在另一示例中,用于执行该方法的指令被硬连线到(多个)处理器中。在又一示例中,指令的一部分被硬连线,并且指令的一部分作为软件代码被存储在存储器中。
图4是示出根据示例实施例的用于索引、搜索和取回用户界面内容的方法400的流程图。该方法由处理逻辑执行,处理逻辑可以包括硬件(电路、专用逻辑等)、软件(诸如在诸如本文中描述的计算设备上运行的软件)或两者的组合。在一个实现中,方法400由关于图1和/或图2描绘和/或描述的一个或多个元件(包括但不限于设备102A)执行。在一些其他实现中,图4的一个或多个框可以由另一或另一些机器执行。
为了简化说明,方法被描绘和描述为一系列动作。然而,根据本公开的动作可以以各种顺序和/或同时发生,并且可以与本文中未呈现和描述的其他动作一起发生。此外,可能不一定需要所有示出的动作来实现根据所公开的主题的方法。另外,本领域技术人员将理解并且了解,该方法可以备选地经由状态图或事件而被表示为一系列相互关联的状态。另外,应当理解,本说明书中公开的方法能够存储在制品上以便于将这样的方法传输和传送到计算设备。本文中使用的术语“制品”旨在涵盖从任何计算机可读设备或存储介质可访问的计算机程序。
在操作405处,可以接收一个或多个输入。在某些实现中,可以从一个或多个跟踪组件108(诸如传感器、摄像机等)接收这样的输入。这样的(多个)输入可以例如指示或以其他方式反映用户130的(多个)眼睛132指向用户界面106的特定范围、区域、片段等。例如,图3描绘了一个示例场景,其中设备102A的(多个)跟踪组件108标识和/或以其他方式检测或确定(例如,使用各种眼睛跟踪技术)用户130的(多个)眼睛132的位置和/或方向。然后,用户130的眼睛132的位置/方向可以与在设备102A的显示设备104上呈现的用户界面106相比较和/或相关联。这样做时,可以确定用户130的眼睛132指向的用户界面106的区域302A(以及用户130的眼睛132没有指向的用户界面的其他(多个)区域302B——在图3中用阴影描绘)。在某些实现中,操作405的各个方面可以由设备102A和/或内容处理引擎202执行。在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
在操作410,可以捕获一个或多个图像200。在某些实现中,所提及的图像可以是(多个)静止图像(例如,以.jpg、.bmp、.png等数字格式)和/或(多个)视频(例如,以.avi、.mpeg等数字格式)。另外,在某些实现中,这样的(多个)图像可以使用一个或多个编解码器(例如,H.264)来压缩,和/或可以由诸如处理器710等的设备102A的各种组件(例如,如下面参考图7详细描述的利用硬件压缩的GPU)来捕获/存储。这样的(多个)图像可以描绘和/或反映经由设备102A的显示设备104呈现给用户130的用户界面106的视觉呈现。在某些实现中,可以响应于设备102A的帧缓冲器的改变来捕获这样的(多个)图像200(其可以被存储在如关于图7描述的存储器732中,并且可以包含用于在显示设备104上呈现的相应的像素和/或相关的显示信息)。在某些实现中,操作410的各个方面可以由设备102A和/或内容处理引擎202执行,而在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
在某些实现中,所捕获的图像200可以反映呈现给用户130的整个用户界面106(例如,如图1所描绘)。然而,在其他实现中,可以被确定为用户130的眼睛132所指向的用户界面106的(多个)区域(例如,如图3所描绘的用户界面106的区域302A)可以被捕获作为图像200。在这种情况下,在(多个)图像200内的(多个)其余区域(其被确定为用户130的眼睛132没有指向的区域——例如,如图3所描绘的区域302B)没有被捕获/反映。通过利用所确定的用户眼睛的方向来指定要捕获用户界面106的哪个(哪些)区域,所描述的技术的效率和性能可以得到改善。例如,(与捕获全部用户界面106相反)捕获用户界面106的仅部分可以需要更少的计算和/或存储资源。另外,通过捕获被确定为用户的眼睛所指向的用户界面106的那些(多个)区域,当随后取回这样的(多个)图像200时(例如,如本文所描述的响应于搜索查询),被确定为用户的眼睛所指向(并且因此更可能与用户相关)的那些区域可以被取回(而其余区域——用户的眼睛没有指向该区域并且因此不太可能与用户相关——则将不被取回)。
在操作415处,可以处理一个或多个图像(诸如在操作410处捕获的(多个)图像)。这样做时,可以标识一个或多个内容元素,诸如在一个或多个图像(诸如在操作410处捕获的图像)内描绘或以其他方式反映的(多个)内容元素。例如,所捕获的(多个)图像(如本文所提及,其可以是静止图像、视频和/或任何其他这样的视觉媒体格式)可以使用各种光学字符识别(OCR)技术来处理、分析等。这样做时,可以标识在所捕获的(多个)图像内描绘和/或以其他方式反映的各种字母数字字符、字符串、单词、文本等。例如,如图1所示的用户界面106的所捕获的图像200可以被处理以标识各种内容元素,诸如“文章”(120A)、“关于”(120B)和“恐龙”(120C)。在某些实现中,操作415的各个方面可以由设备102A和/或内容处理引擎202执行。在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
另外,在某些实现中,可以处理所提及的(多个)图像(例如,在操作410处捕获的那些图像)以标识在用户界面的特定区域内描绘的(多个)内容元素。例如,如图3所示,被确定为用户130的眼睛132所指向的用户界面106的(多个)区域(例如,如图3所描绘的用户界面106的区域302A)可以被处理以标识在这样的区域内描绘的(多个)内容元素。相反地,被确定为用户130的眼睛132没有指向的(多个)其余区域(例如,如图3所描绘的区域302B)可能不一定被处理以标识(多个)内容元素。备选地,可以以相对较少资源密集的方式来处理这样的(多个)其余区域。
此外,在某些实现中,可以关于各种输入/与各种输入相关地来处理一个或多个图像(例如,在操作410处捕获的那些图像),该各种输入从(多个)跟踪组件108(摄像机、传感器等)接收。例如,可以确定时间间隔(例如,一分钟、三分钟等),在该时间间隔期间,用户130的(多个)眼睛132指向某些内容元素120。作为说明,如图3所示,可以确定用户130的(多个)眼睛132指向某些内容元素120C(“恐龙”)两分钟。
在操作420处,可以向例如一个或多个内容元素(诸如在操作415处标识的那些内容元素)分配权重230。在某些实现中,可以基于用户130的(多个)眼睛132指向(多个)内容元素的时间间隔,来计算和/或向所提及的内容元素分配这样的权重。例如,图3可以反映这样的场景:确定用户130的(多个)眼睛132指向内容元素120C(“恐龙”)两分钟,并且指向内容元素120A(“文章”)10秒。在这样的场景中,分配给内容元素120C的权重可以反映出用户的(多个)眼睛在相对较长的时间段内指向这样的内容元素(反映出这样的内容元素可能对用户具有附加的重要性)。另外,分配给内容元素120A的权重可以反映出用户的(多个)眼睛在相对较短的时间段内指向这样的内容元素(反映出这样的内容元素对用户的重要性较小)。在某些实现中,操作420的各个方面可以由设备102A和/或内容处理引擎202执行,而在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
在某些实现中,所提及的权重230(和/或其分量)还可以反映从用户开始查看和/或被呈现以特定内容元素以来已经发生的时间的数量(例如,基于时间戳220而确定的)。例如,较近期地由用户130查看/被呈现给用户130的内容元素可以被分配给较高的权重(即,用户较多可能希望取回这样的内容)。作为另一示例,较不近期地由用户130查看/被呈现给用户130的内容元素可以被分配较低的权重(即,用户较少可能希望取回这样的内容)。
在操作425处,可以将一个或多个内容元素(诸如在操作415处标识的那些内容元素)与一个或多个图像(诸如在操作410处捕获的那些图像)相关联。例如,如图3所示,各种内容元素120A(“文章”)、120B(“关于”)和/或120C(“恐龙”)可以与用户界面106的图像200相关联(如上所述,其可以是用户界面的区域302A的图像)。另外,在某些实现中,(多个)内容元素的内容位置112可以与所提及的(多个)图像200相关联。这样的内容位置可以是例如存储或定位(多个)内容元素的文件路径或网络地址(例如,如图3所示的URL“www.dinosaurs.com”)。另外,也可以将呈现所提及的(多个)内容元素的应用(例如,如图3所示的应用110A,其可以是网络浏览器)与所捕获的(多个)图像200相关联。在某些实现中。操作425的各个方面可以由设备102A和/或内容处理引擎202执行。在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
在操作430处,(多个)图像(例如,在操作410处捕获的那些图像)可以被存储为与(多个)内容元素(例如,在操作415处标识的那些内容元素)相关联(例如,在操作425处)。在某些实现中,可以与用户(例如,用户130,用户界面106由设备102A呈现给用户130)相关地存储这样的图像(作为所提及的(多个)内容元素相关联)。例如,图2描绘了与各种内容元素(例如,内容元素210A和内容元素210B)相关联的(多个)图像200(这些内容元素进一步与诸如时间戳220、权重230、内容位置240和/或应用250等附加项相关联)。这样的(多个)图像200、内容元素210等可以存储在数据存储区214中。
应当理解,数据存储区214可以是与用户130相关联的数据库、存储库等、被分配给用户130等的数据库、存储库等(例如,用户帐户,其被分配给这样的用户)。因此,存储在数据存储区214中的(多个)图像、(多个)内容元素和相关项是用户130已经通过设备102A查看过和/或已经被设备102A呈现过的那些图像、内容元素和相关项。另外,在这样的(多个)图像、(多个)内容元素等还被存储/保持在中央/远程存储设备处的场景中(例如,在“云”实现的情况下,其使得用户130能够经由多个设备访问/取回这样的图像等),这样的(多个)图像、(多个)内容元素等可以存储在与用户130相关联(并且可以仅由用户130可访问)的安全帐户内。在某些实现中,操作430的各个方面可以由设备102A和/或内容处理引擎202执行,而在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
在操作435处,可以生成内容索引208。在某些实现中,可以基于各种(多个)内容元素(例如,在操作415处标识的那些内容元素)来生成这样的内容索引。另外,在某些实现中,索引208还可以包括和/或包含各种(多个)附加项目,该各种(多个)附加项目关于各种(多个)图像、(多个)内容元素等而被标识、确定、计算等。例如,内容索引208还可以包括相应的(多个)权重230(诸如在操作420处计算和/或分配的权重)。在某些实现中,操作435的各个方面可以由设备102A和/或搜索引擎204执行,而在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
在操作440处,可以诸如从用户(例如,关于该用户在操作410处捕获了(多个)图像200)接收搜索查询。例如,图5描绘了一个示例场景,在其中用户130将搜索查询502(这里是“恐龙”)输入到(例如,经由诸如键盘、触摸屏、语音命令等的一个或多个输入设备)搜索应用中。在某些实现中,操作440的各个方面可以由设备102A和/或搜索引擎204执行。在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
此外,在某些实现中,可以以各种方式生成这样的搜索查询(例如,代替如图5所示的直接地输入搜索查询)。例如,可以基于/响应于选择来生成这样的搜索查询,该选择是由用户130对经由设备102A向用户130描绘的用户界面106的各种(多个)区域的选择。作为说明,图6描绘了用户界面106向用户130呈现应用110C(示出“视频:关于恐龙”)的示例场景。如图6所示,在选择(例如,经由触摸屏交互、鼠标点击,例如,“右击”操作等)应用110C内描绘的单词“恐龙”时,可以向用户130呈现诸如上下文菜单602的菜单。这样的菜单602可以包括选项604(“显示我先前已经看过的相关内容”),选项604对应于用户130先前已经查看过的或以其他方式已经被呈现给用户130的、与所选择的项目/元素(这里是“恐龙”)相关联的内容的取回。在选择这样的选项604时(例如,通过将指针606悬停在与选项604相关联的区域上,并且点击或以其他方式选择这样的选项),可以生成搜索查询(这里对应于“恐龙”)。
在操作445处,可以处理内容索引208(例如,在操作435处生成的内容索引)。这样做时,与搜索查询相对应的各种(多个)内容元素可以被标识。例如,在接收到针对“恐龙”的搜索查询时,内容索引208可以搜索针对该索引内存在的这样的术语(和/或(多个)相关术语)的实例。在某些实现中,操作445的各个方面可以由设备102A和/或搜索引擎204执行。在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
在操作450处,可以取回与搜索查询(例如,在操作440处接收的那些查询)相对应的(多个)内容元素(例如,在操作415处标识的那些内容元素)相关联(例如,在操作425处)的一个或多个图像(例如,在操作410处捕获的那些图像)。例如,在接收到针对“恐龙”的搜索查询时(诸如以图5和/或图6中描绘的方式),内容索引208可以被搜索,用以标识与搜索查询相对应和/或相关的内容元素(例如,如图2所示210A、210B等)。在搜索索引内标识到这样的(多个)内容元素时,(多个)图像200(从其中这样的(多个)内容元素最初被标识/提取)可以被取回(例如,从如图2所示的数据存储区214)。在某些实现中,操作450的各个方面可以由设备102A和/或搜索引擎204执行。在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
在操作455处,可以向用户130呈现一个或多个图像(诸如在操作450处取回的那些图像)。在某些实现中,可以经由显示设备(例如,设备102A的显示设备104)向用户呈现这样的取回的(多个)图像。作为说明,图5描绘了一个示例场景,在其中响应于搜索查询502而向用户130呈现(多个)图像200A和(多个)图像200B。这样的(多个)图像200A和/或200B可以是设备102A的用户界面106的(多个)静止图像、视频剪辑等,其是在用户103正在查看和/或以其他方式被呈现给内容(例如,应用等)时被捕获,该内容包括与搜索查询502相对应/相关的内容元素(这里是“恐龙”)。这样做时,用户130可以取回和回顾他/她在过去已经查看过的内容,即使在这样的内容可能没有与用户相关地被存储/索引的场景中。在某些实现中,操作455的各个方面可以由设备102A和/或搜索引擎204执行。在其他实现中,这样的方面可以由诸如本文中描述的一个或多个其他元件/组件执行。
此外,如图5所示,在某些实现中,可以结合取回的(多个)图像200向用户130呈现各种附加信息。例如,取回的图像可以与各种可选择的控件(例如,按钮、链接等)一起呈现。当被选择时,这样的控件可以使得用户能够访问与内容元素(作为搜索的主题)相对应的内容位置和/或在其内这样的内容元素曾被查看/被呈现的应用。
作为说明,图5描绘了(多个)图像200A,图像200A可以是用户界面106的视频或(多个)图像,而内容元素120C(这里是“恐龙”)在设备102A上呈现给用户。如图5所示,(多个)图像200A可以与各种可选择的控件一起呈现。例如,一个这样的控件可以对应于内容位置240A(“链接”)(例如,网站的URL,在网站中标识了该内容元素)。另一这样的控件可以对应于应用250A(“应用”)(例如,用于启动应用的控件——这里的应用是网络浏览器——先前已经在该应用内查看过该内容元素)。如图5中进一步描绘的,还可以呈现(多个)图像200B(例如,另一实例的视频或(多个)图像,在其中用户界面106例如在视频/媒体播放器内将内容元素120C(即,“恐龙”)呈现给用户)。这样的(多个)图像200B也可以与对应于内容位置240B(其可以是所描绘的媒体播放器内播放的位置,在该视频/媒体文件内该内容元素被标识)和应用250B(例如,用于启动媒体播放器应用的控件,内容元素先前在该引用中曾被查看)的控件一起呈现。
如图5进一步所示,各种取回的(多个)图像200可以结合对与关于取回这样的(多个)图像的取回查询(例如,如在操作440处接收的)相对应的(多个)内容元素来呈现。例如,内容元素120C(“恐龙”)可以与取回的图像(例如,200A),连同附加内容一起呈现,该附加内容提供关于先前在何时查看过内容元素的附加上下文(例如,如图所示的“您在上周读过关于恐龙的文章”)。以这样的方式呈现(多个)图像200和(多个)内容元素可以进一步使得用户130能够容易地标识他/她正在寻找的内容。
还应当注意,如图5所描绘,可以基于与(例如如上所描述的)每个相应的内容元素相关联的(多个)相应的权重,来指定用于呈现/优先化(例如,响应于搜索查询)各种取回到的(多个)图像200A、200B的方式。例如,校近期地(例如,如图5中所示的“上周”)捕获的(多个)图像可以被分配给比较不近期(例如,“三周前”)捕获的(多个)图像更高的权重。另外,在某些实现中,还可以基于源自(多个)跟踪组件108的各种输入来指定所提及的权重。例如,与用户在相对较短的时间段内所查看等的内容相比,被确定为用户在更长的时间段内所查看、阅读等的内容可以被分配给更高的权重。这样做时,用户更可能感兴趣的内容的取回可以被赋予优先级。
如上所述,虽然本文中提供的很多示例是关于单个设备(例如,设备102A)而示出的,但是所描述的技术也可以跨多个设备来实现。例如,如本文中关于图2详细描述的,用户可以初始地利用设备102A,并且对应的(多个)图像、内容等可以被捕获且被存储在账户存储库260中。随后,用户可以利用设备102B来取回或以其他方式利用存储在账户存储库260中的(多个)图像、内容等(尽管最初经由设备102A已查看过这样的内容)。这样做时,所描述的技术可以使得用户能够利用一个设备来取回用户最初经由其他设备查看过的图像、内容等。这种功能在以下的场景下是有利的:用户经常使用多个设备并且在利用一设备的期间,可能希望取回先前在另一设备上查看过的图像、内容等。另外,如上所述,在某些实现中,安全引擎206可以在允许设备102B访问账户存储库260(和/或该存储库内的特定账户)之前验证用户的身份(例如,经由正确的账户凭证的接收)。
还应当注意,虽然本文中描述的技术主要是关于用户界面内容的索引、搜索和取回而示出的,但是所描述的技术也可以在任何数目的附加或备选的设置或上下文中被实现,并且被实现用于任何数目的附加目标。应当理解,作为这种实现的结果,可以实现(超出本文中描述和/或提及的那些)其他技术优点、解决方案和/或改进。
本文中将某些实现描述为包括逻辑或多个组件、模块或机制。模块可以构成软件模块(例如,包含在机器可读介质上的代码)或硬件模块。“硬件模块”是能够执行某些操作的有形单元,并且可以以某种物理方式被配置或布置。在各种示例实现中,一个或多个计算机系统(例如,独立计算机系统、客户端计算机系统或服务器计算机系统)或者计算机系统的一个或多个硬件模块(例如,处理器或一组处理器)可以通过软件(例如,应用或应用部分)而被配置为用于执行如本文中描述的某些操作的硬件模块。
在一些实现中,硬件模块可以机械地、电子地或以其任何合适的组合来实现。例如,硬件模块可以包括永久地配置为执行某些操作的专用电路或逻辑。例如,硬件模块可以是专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。硬件模块还可以包括由软件临时配置为执行某些操作的可编程逻辑或电路。例如,硬件模块可以包括由通用处理器或其他可编程处理器执行的软件。一旦由这样的软件配置,硬件模块就成为被独特地被定制成用以执行所配置的功能的特定机器(或机器的特定组件)而不再是通用处理器。应当理解,用以机械地、在专用和永久配置的电路中、或在临时配置的电路(例如,由软件配置)中来实现硬件模块的决定可以由成本和时间考虑来驱动。
因此,短语“硬件模块”应当被理解为涵盖有形实体,该实体即是被物理地构造为、永久地配置(例如,硬连线)为或临时配置(例如,编程)为以特定方式操作或执行本文中描述的某些操作。如本文中使用的,“硬件实现的模块”是指硬件模块。考虑硬件模块被临时配置(例如,编程)的实现,硬件模块中的每个硬件模块不一定需要在任何一个时刻被配置或被实例化。例如,在硬件模块包括由软件而被配置为专用处理器的通用处理器的情况下,通用处理器可以在不同时间处被配置为相应的不同的专用处理器(例如,包括不同的硬件模块)。软件相应地将特定(多个)处理器配置为例如在一个时刻构成特定硬件模块,而在另一时刻构成不同硬件模块。
硬件模块可以向其他硬件模块提供信息,以及从其他硬件模块接收信息。因此,所描述的硬件模块可以被视为通信地耦合。在同时存在多个硬件模块的情况下,可以通过在两个或更多个硬件模块之间或之中的信号传输(例如,通过适当的电路和总线)来实现通信。在多个硬件模块在不同时间处被配置或实例化的实现中,这样的硬件模块之间的通信可以,例如,通过存储器结构中的信息的存储和取回来实现,多个硬件模块具有对该存储器的访问权。例如,一个硬件模块可以执行操作,并且将该操作的输出存储在与其通信耦合的存储器设备中。然后,另一硬件模块可以在随后的时间访问存储器设备以取回和处理所存储的输出。硬件模块还可以启动与输入或输出设备的通信,并且可以在资源(例如,信息集合)上操作。
本文中描述的示例方法的各种操作可以至少部分地由被临时配置(例如,通过软件)为或被永久配置为执行相关操作的一个或多个处理器来执行。无论是被临时配置还是永久配置,这样的处理器可以构成处理器实现的模块,处理器实现的模块操作以执行本文中描述的一个或多个操作或功能。如本文中使用的,“处理器实现的模块”指代使用一个或多个处理器实现的硬件模块。
类似地,本文中描述的方法可以至少部分地由处理器实现,其中特定(多个)处理器是硬件的示例。例如,方法的至少一些操作可以由一个或多个处理器、或处理器实现的模块来执行。此外,一个或多个处理器还可以操作以支持“云计算”环境中的相关操作的执行,或者操作为“软件即服务”(SaaS)。例如,至少一些操作可以由一组计算机(作为包括处理器的机器的示例)执行,其中这些操作是经由网络(例如,因特网)并且经由一个或多个适当的接口(例如,API)可访问的。
某些操作的执行可以在处理器之间分配,不仅可以驻留在单个机器内,而且可以跨多个机器部署。在一些示例实现中,处理器或处理器实现的模块可以位于单个地理位置(例如,在家庭环境、办公室环境或服务器群内)。在其他示例实现中,处理器或处理器实现的模块可以跨多个地理位置而分布。
结合图1-6描述的模块、方法、应用等在机器和相关软件架构的上下文中的一些实现中被实现。以下部分描述适合于与所公开的实现结合使用的代表性软件架构和机器(例如,硬件)架构。
软件架构与硬件架构相结合使用以创建针对特定目的而定制的设备和机器。例如,与特定软件架构耦合的特定硬件架构将创建诸如移动电话、平板设备等的移动设备。稍微不同的硬件和软件架构可以产生用于在“物联网”中使用的智能设备,而另一种组合产生用于云计算架构的服务器计算机。本文中并未呈现这样的软件和硬件架构的所有组合,因为本领域技术人员可以容易地理解如何在与本文中包含的公开内容不同的上下文中实现本发明的主题。
图7是示出根据一些示例实现的机器700的组件的框图,该机器能够从机器可读介质(例如,机器可读存储介质)读取指令并且执行本文中讨论的任何一种或多种方法。具体地,图7示出了以计算机系统的示例形式的机器700的图形表示,在该计算机系统内用于引起机器700执行本文中讨论的任何一种或多种方法的指令716(例如,软件、程序、应用、小应用、app或其他可执行代码)可以被执行。指令716将通用的、未编程的机器变换为被编程为以所描述的方式执行所描述和示出的功能的特定机器。在备选的实现中,机器700作为独立设备操作或者可以被耦合(例如,联网)到其他机器。在联网部署中,机器700可以在服务器客户端网络环境中以服务器机器或客户端机器的能力操作,或者在对等(或分布式)网络环境中作为对等机器而操作。机器700可以包括但不限于服务器计算机、客户端计算机、个人计算机(PC)、平板电脑、膝上型电脑、上网本、机顶盒(STB)、个人数字助理(PDA)、娱乐媒体系统、蜂窝电话、智能电话、移动设备、可穿戴设备(例如,智能手表)、智能家居设备(例如,智能设备)、其他智能设备、网络设备、网络路由器、网络交换机、网桥、或能够顺序地或以其他方式执行指令716的任何机器,指令716指定要由机器700采取的动作。此外,虽然仅图示了单个机器700,但是术语“机器”应当被理解为还包括单独地或共同地执行指令716以执行本文中讨论的任何一种或多种方法的机器700的集合。
机器700可以包括处理器710、存储器/储存空间730和I/O组件750,其可以被配置为诸如经由总线702而彼此通信。在示例实现中,处理器710(例如,中央处理单元(CPU)、精简指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、ASIC、射频集成电路(RFIC)、另一处理器、或其任何合适的组合)可以包括例如可以执行指令716的处理器712和处理器714。术语“处理器”旨在包括多核处理器,多核处理器包括可以同时执行指令的两个或更多个独立处理器(有时被称为“核”)。虽然图7示出了多个处理器710,但是机器700可以包括具有单个核的单个处理器、具有多个核的单个处理器(例如,多核处理器)、多个具有单个核的处理器、多个具有多个核的处理器、或其任何组合。
存储器/储存空间730可以包括存储器732(诸如主存储器或其他存储器存储)和存储单元736,这两者都是处理器710诸如经由总线702可访问的。存储单元736和存储器732存储具体化本文中描述的方法或功能中的任何一个或多个方法或功能的指令716。在机器700对指令716的执行期间,指令716还可以完全或部分地驻留在存储器732内,在存储单元736内,在至少一个处理器710内(例如,在处理器的高速缓冲存储器内),或其任何合适的组合。因此,存储器732、存储单元736、和处理器710的存储器是机器可读介质的示例。
如本文中使用的,“机器可读介质”表示能够临时或永久地存储指令(例如,指令716)和数据的设备,并且可以包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、缓冲存储器、闪存、光学介质、磁介质、高速缓冲存储器、其他类型的存储器(例如,可擦除可编程只读存储器(EEPROM))、和/或其任何合适的组合。术语“机器可读介质”应当被理解为包括能够存储指令716的单个介质或多个介质(例如,集中式或分布式数据库、或者相关联的高速缓存和服务器)。术语“机器可读介质”应当还可以被理解为包括能够存储由机器(例如,机器700)执行的指令(例如,指令716)的任何介质或多个介质的组合,使得该指令在由机器的一个或多个处理器(例如,处理器710)执行时,引起该机器执行本文中描述的任何一种或多种方法。因此,“机器可读介质”指代单个存储装置或设备、以及包括多个存储装置或设备的“基于云的”存储系统或存储网络。术语“机器可读介质”不包括信号本身。
I/O组件750可以包括用以接收输入、提供输出、产生输出、传输信息、交换信息、捕获测量等的多种的组件。被包括在特定机器中的特定I/O组件750将取决于机器的类型。例如,诸如移动电话等便携式机器可能包括触摸输入设备或其他这样的输入机构,而无头服务器机器可能不包括这样的触摸输入设备。应当理解,I/O组件750可以包括图7中未示出的很多其他组件。仅仅是为了简化以下讨论,I/O组件750根据功能进行分组,并且分组决不是限制性的。在各种示例实现中,I/O组件750可以包括输出组件752和输入组件754。输出组件752可以包括视觉组件(例如,显示器,诸如等离子显示面板(PDP)、发光二极管(LED)显示器、液晶显示器(LCD)、投影仪或阴极射线管(CRT))、声学组件(例如,扬声器)、触觉组件(例如,振动电机、阻性机构)、其他信号发生器等。输入组件754可以包括字母数字输入组件(例如,键盘、被配置为接收字母数字输入的触摸屏、光学键盘或其他字母数字输入组件)、基于指向的输入组件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或另一指向仪器)、触觉输入组件(例如,物理按钮、提供触摸或触摸手势的位置和/或力的触摸屏、或其他触觉输入组件)、音频输入组件(例如,麦克风)等。
在其他示例实现中,I/O组件750可以包括生物信息组件756、运动组件758、环境组件760或位置组件762等各种其他组件。例如,生物信息组件756可以包括用于进行以下操作的组件:检测表达(例如,手部表达、面部表情、声音表达、身体姿势或眼睛跟踪),测量生物信号(例如,血压、心率、体温、出汗或脑波),识别人(例如,语音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别),等等。运动组件758可以包括加速度传感器组件(例如,加速度计)、重力传感器组件、旋转传感器组件(例如,陀螺仪)等。环境组件760可以包括例如照明传感器组件(例如,光度计)、温度传感器组件(例如,检测环境温度的一个或多个温度计)、湿度传感器组件、压力传感器组件(例如,气压计)、声学传感器组件(例如,检测背景噪声的一个或多个麦克风)、接近传感器组件(例如,检测附近物体的红外传感器)、气体传感器(例如,用以检测危险气体的浓度以确保安全或测量大气中的污染物的气体检测传感器)、或可以提供与周围物理环境相对应的指示、测量或信号的其他组件。位置组件762可以包括定位传感器组件(例如,全球定位系统(GPS)接收器组件)、高度传感器组件(例如,高度计或气压计,气压计检测可以被用于导出高度的气压)、定向传感器组件(例如,磁力计)等。
可以使用各种技术来实现通信。I/O组件750可以包括可操作以经由耦合782和耦合772将机器700相应地耦合到网络780或设备770的通信组件764。例如,通信组件764可以包括网络接口组件或与网络780接口的其他合适的设备。在其他示例中,通信组件764可以包括有线通信组件、无线通信组件、蜂窝通信组件、近场通信(NFC)组件、组件(例如,低能耗)、组件、和用以经由其他模式提供通信的其他通信组件。设备770可以是另一台机器或多种外围设备中的任何一种外围设备(例如,经由USB耦合的外围设备)。
此外,通信组件764可以检测标识符或者包括可操作以检测标识符的组件。例如,通信组件764可以包括射频标识(RFID)标签读取器组件、NFC智能标签检测组件、光学读取器组件(例如,用以检测诸如通用产品代码(UPC)条形码等一维条形码,检测诸如快速响应(QR)码、Aztec码、Data Matrix、Dataglyph、MaxiCode、PDF417、Ultra Code、UCC RSS-2D条形码和其他光学码等多维条形码的光学传感器)、或声学检测组件(例如,用以标识所标记的音频信号的麦克风)。另外,可以经由通信组件764导出多种信息,诸如经由因特网协议(IP)地理定位的定位、经由信号三角测量的定位、经由检测可以指示特定定位的NFC信标信号的定位等。
在各种示例实现中,网络780的一个或多个部分可以是自组织(ad hoc)网络、内联网、外联网、虚拟专用网络(VPN)、局域网(LAN)、无线LAN(WLAN)、WAN、无线WAN(WWAN)、城域网(MAN)、因特网、因特网的部分、公共交换电话网(PSTN)的部分、普通老式电话服务(POTS)网络、蜂窝电话网络、无线网络、网络、另一类型的网络、或两个或更多这样的网络的组合。例如,网络780或网络780的部分可以包括无线或蜂窝网络,并且耦合782可以是码分多址(CDMA)连接、全球移动通信系统(GSM)连接或其他类型的蜂窝或无线耦合。在该示例中,耦合782可以实现多种类型的数据传输技术中的任何一种,诸如单载波无线电传输技术(1xRTT)、演进数据优化(EVDO)技术、通用分组无线服务(GPRS)技术、增强型数据速率GSM演进(EDGE)技术、包括3G的第三代合作伙伴计划(3GPP)、第四代无线(4G)网络、通用移动电信系统(UMTS)、高速分组接入(HSPA)、全球微波接入存取(WiMAX)、长期演进(LTE)标准、由各种标准制定组织定义的其他标准、其他远程协议或其他数据传输技术。
可以经由网络接口设备(例如,被包括在通信组件764中的网络接口组件)使用传输介质,并且利用多个众所周知的传输协议(例如,HTTP)中的任何一种在网络780上来传送或接收指令716。类似地,可以经由至设备770的耦合772(例如,对等耦合)使用传输介质来传送或接收指令716。术语“传输介质”应当被视为包括能够存储、编码或携带用于由机器700所执行的指令716的任何无形介质,并且包括用以促进这样的软件的通信的数字或模拟通信信号或其他无形介质。
在整个说明书中,多个实例可以实现被描述为单个实例的组件、操作或结构。尽管一个或多个方法的各个操作被示出并且描述为分离的操作,但是可以同时执行一个或多个分离的操作,并且不一定需要以所示的顺序执行操作。在示例配置中呈现为分离的组件的结构和功能可以被实现为组合结构或组件。类似地,呈现为单个组件的结构和功能可以实现为分离的组件。这些和其他变型、修改、添加和改进都落入本文中的主题的范围内。
尽管已经参考特定的示例实现描述了本发明主题的概述,但是在不脱离本公开的更广泛的实现范围的情况下,可以对这些实现进行各种修改和改变。在本文中,本发明主题的这些实现可以单独地或共同地被称为术语“发明”,但这仅仅是为了方便,而非旨在实际上多于一个单个公开或发明构思被公开的情况下,自愿地将本申请的范围限制于任何单个公开或发明构思。
本文所示的实现以足够的细节被描述,以使得本领域技术人员能够实践所公开的教导。其他实现可以被使用,以及从本文所示的而实现中导出,使得可以在不脱离本公开的范围的情况下进行结构和逻辑的替换和改变。因此,“具体实施方式”不应当被视为具有限制意义,并且各种实现的范围仅由所附权利要求以及这样的权利要求所赋予的等同物的全部范围来限定。
如本文中使用的,术语“或”可以被解释为以包含性或排他性的含义。此外,可以为本文中被描述为单个实例的资源、操作或结构提供多个实例。另外,各种资源、操作、模块、引擎和数据存储器之间的边界在某种程度上是任意的,并且特定操作在特定说明性配置的上下文中示出。其他功能分配是可预期的,并且这些其他功能分配可以落入本公开的各种实现的范围内。通常,在示例配置中呈现为分离的资源的结构和功能可以被实现为组合结构或资源。类似地,呈现为单个资源的结构和功能可以被实现为分离的资源。这些和其他变型、修改、添加和改进落入由所附权利要求表示的本公开的实现的范围内。因此,说明书和附图应当被视为说明性的而非限制性的。

Claims (15)

1.一种系统,包括:
处理设备;以及
存储器,被耦合到所述处理设备并且存储指令,所述指令在由所述处理设备执行时引起所述系统执行包括以下各项的操作:
捕获经由显示设备被呈现给用户的用户界面的图像;
处理所述图像以标识在所述图像内被描绘的内容元素;
将所述内容元素与所述图像相关联;以及
与所述用户相关地、将所述图像存储为与所述内容元素相关联。
2.根据权利要求1所述的系统,其中所述存储器还存储用于引起所述系统执行包括以下的操作的指令:从跟踪组件接收输入,所述输入指示所述用户的一只或多只眼睛指向所述用户界面的第一区域。
3.根据权利要求2所述的系统,其中捕获所述图像包括捕获所述用户界面的所述第一区域的图像。
4.根据权利要求2所述的系统,其中处理所述图像包括处理所述图像以标识在所述用户界面的所述第一区域内被描绘的内容元素。
5.根据权利要求2所述的系统,其中处理所述图像包括关于从所述跟踪组件接收的所述输入来处理所述图像以确定时间间隔,在所述时间间隔期间所述用户的所述一只或多只眼睛指向所述内容元素。
6.根据权利要求5所述的系统,其中所述存储器还存储用于引起所述系统执行包括以下的操作的指令:基于所述时间间隔向所述内容元素分配权重。
7.根据权利要求1所述的系统,其中处理所述图像包括使用光学字符识别(OCR)处理所述图像以标识在所述图像内被描绘的一个或多个字母数字字符。
8.根据权利要求1所述的系统,其中将所述内容元素相关联包括将所述内容元素的内容位置与所述图像相关联。
9.根据权利要求1所述的系统,其中将所述内容元素相关联包括将所述图像与应用相关联,所述内容元素被呈现在所述应用内。
10.根据权利要求1所述的系统,其中所述存储器还存储用于引起所述系统执行包括以下的操作的指令:基于所述内容元素生成内容索引。
11.根据权利要求10所述的系统,其中所述存储器还存储用于引起所述系统执行包括以下各项的操作的指令:
从所述用户接收搜索查询;
处理所述内容索引以标识与所述搜索查询相对应的一个或多个内容元素;
取回至少一个图像,所述至少一个图像与对应于所述搜索查询相的所述一个或多个内容元素中的至少一个内容元素相关联;以及
经由所述显示设备向所述用户呈现所述至少一个图像。
12.根据权利要求11所述的系统,其中接收搜索查询包括基于对所述用户界面的区域的选择生成搜索查询。
13.根据权利要求11所述的系统,其中呈现所述至少一个图像包括结合与所述搜索查询相对应的所述一个或多个内容元素来呈现所述至少一个图像。
14.一种方法,包括:
从跟踪组件接收输入,所述输入指示用户的一只或多只眼睛指向经由显示设备被呈现给所述用户的用户界面的第一区域;
捕获所述用户界面的所述第一区域的图像;
处理所述图像以标识在所述用户界面的所述第一区域内被描绘的内容元素;
将所述内容元素与所述图像相关联;以及
与所述用户相关地、将所述图像存储为与所述内容元素相关联。
15.根据权利要求14所述的方法,还包括:
基于所述内容元素生成内容索引;
从所述用户接收搜索查询;
处理所述内容索引以标识与所述搜索查询相对应的一个或多个内容元素;
取回至少一个图像,所述至少一个图像与对应于所述搜索查询的所述一个或多个内容元素中的至少一个内容元素相关联;以及
经由所述显示设备向所述用户呈现所述至少一个图像。
CN201880020098.3A 2017-03-21 2018-03-14 用户界面内容的索引、搜索和取回 Withdrawn CN110447024A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/465,341 US20180275751A1 (en) 2017-03-21 2017-03-21 Index, search, and retrieval of user-interface content
US15/465,341 2017-03-21
PCT/US2018/022279 WO2018175158A1 (en) 2017-03-21 2018-03-14 Index, search, and retrieval of user-interface content

Publications (1)

Publication Number Publication Date
CN110447024A true CN110447024A (zh) 2019-11-12

Family

ID=61832602

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880020098.3A Withdrawn CN110447024A (zh) 2017-03-21 2018-03-14 用户界面内容的索引、搜索和取回

Country Status (4)

Country Link
US (1) US20180275751A1 (zh)
EP (1) EP3602338A1 (zh)
CN (1) CN110447024A (zh)
WO (1) WO2018175158A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10599877B2 (en) * 2017-04-13 2020-03-24 At&T Intellectual Property I, L.P. Protecting content on a display device from a field-of-view of a person or device
US10846573B2 (en) * 2018-07-31 2020-11-24 Triangle Digital Ventures Ii, Llc Detecting, redacting, and scoring confidential information in images
US10833945B2 (en) * 2018-11-13 2020-11-10 International Business Machines Corporation Managing downloading of content

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8442311B1 (en) * 2005-06-30 2013-05-14 Teradici Corporation Apparatus and method for encoding an image generated in part by graphical commands
US9405751B2 (en) * 2005-08-23 2016-08-02 Ricoh Co., Ltd. Database for mixed media document system
US7429108B2 (en) * 2005-11-05 2008-09-30 Outland Research, Llc Gaze-responsive interface to enhance on-screen user reading tasks
US8494983B2 (en) * 2010-11-16 2013-07-23 Microsoft Corporation Object-sensitive image search
EP2587342A1 (en) * 2011-10-28 2013-05-01 Tobii Technology AB Method and system for user initiated query searches based on gaze data
KR102068604B1 (ko) * 2012-08-28 2020-01-22 삼성전자 주식회사 휴대단말기의 문자 인식장치 및 방법
US8571851B1 (en) * 2012-12-31 2013-10-29 Google Inc. Semantic interpretation using user gaze order
US20140280267A1 (en) * 2013-03-14 2014-09-18 Fotofad, Inc. Creating real-time association interaction throughout digital media
US10223454B2 (en) * 2013-05-01 2019-03-05 Cloudsight, Inc. Image directed search
US10152495B2 (en) * 2013-08-19 2018-12-11 Qualcomm Incorporated Visual search in real world using optical see-through head mounted display with augmented reality and user interaction tracking
US9143880B2 (en) * 2013-08-23 2015-09-22 Tobii Ab Systems and methods for providing audio to a user based on gaze input
US9830561B2 (en) * 2014-04-30 2017-11-28 Amadeus S.A.S. Visual booking system
US9959591B2 (en) * 2014-07-31 2018-05-01 Seiko Epson Corporation Display apparatus, method for controlling display apparatus, and program
US10248982B2 (en) * 2014-12-23 2019-04-02 Ebay Inc. Automated extraction of product data from production data of visual media content
US10078440B2 (en) * 2015-03-25 2018-09-18 Ebay Inc. Media discovery and content storage within and across devices
KR101713197B1 (ko) * 2015-04-01 2017-03-09 주식회사 씨케이앤비 서버 컴퓨팅 장치 및 이를 이용한 콘텐츠 인식 기반의 영상 검색 시스템
US20180292907A1 (en) * 2015-05-28 2018-10-11 Itay Katz Gesture control system and method for smart home
US10409623B2 (en) * 2016-05-27 2019-09-10 Microsoft Technology Licensing, Llc Graphical user interface for localizing a computer program using context data captured from the computer program
US10387485B2 (en) * 2017-03-21 2019-08-20 International Business Machines Corporation Cognitive image search refinement

Also Published As

Publication number Publication date
US20180275751A1 (en) 2018-09-27
WO2018175158A1 (en) 2018-09-27
EP3602338A1 (en) 2020-02-05

Similar Documents

Publication Publication Date Title
US11869057B2 (en) Generating a digital image using a generative adversarial network
US11630974B2 (en) Prioritized device actions triggered by device scan data
US20220036079A1 (en) Context based media curation
KR102511326B1 (ko) 국지적 증강 현실 지속적 스티커 객체
CN110392881A (zh) 跨设备的任务注册和恢复
CN110050283A (zh) 定制的用户控制的媒体覆盖
CN108885639A (zh) 内容集合导航和自动转发
US11900565B2 (en) Deep feature generative adversarial neural networks
CN109564500A (zh) 使用基于手势的触发器进行应用控制
KR20210039496A (ko) 증강 현실 의인화 시스템
CN114080824B (zh) 实时增强现实装扮
US20190319904A1 (en) Media item attachment system
CN110168476A (zh) 增强现实对象操纵
KR102467015B1 (ko) 옵트아웃 인터스티셜을 이용한 미디어 컬렉션 탐색
KR102547894B1 (ko) 동적 컨텍스트 미디어 필터
KR20230022236A (ko) 광각 이미징 디바이스들을 이용한 3d 재구성
US20230091214A1 (en) Augmented reality items based on scan
CN110447024A (zh) 用户界面内容的索引、搜索和取回
CN110089117A (zh) 处理和格式化视频用于交互式呈现
US11630877B1 (en) Custom visual codes for network links
CN108292318A (zh) 生成概念图
CN114041104B (zh) 可寻址的增强现实内容
KR102670848B1 (ko) 증강 현실 의인화 시스템
KR20240093971A (ko) 동적 컨텍스트 미디어 필터
KR20240093951A (ko) 증강 현실 의인화 시스템

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
WW01 Invention patent application withdrawn after publication

Application publication date: 20191112

WW01 Invention patent application withdrawn after publication