CN113168514A - 查找和过滤视觉场景的元素 - Google Patents

查找和过滤视觉场景的元素 Download PDF

Info

Publication number
CN113168514A
CN113168514A CN201980077221.XA CN201980077221A CN113168514A CN 113168514 A CN113168514 A CN 113168514A CN 201980077221 A CN201980077221 A CN 201980077221A CN 113168514 A CN113168514 A CN 113168514A
Authority
CN
China
Prior art keywords
visual scene
filter
electronic device
computer
elements
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
CN201980077221.XA
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.)
Google LLC
Original Assignee
Google 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 Google LLC filed Critical Google LLC
Publication of CN113168514A publication Critical patent/CN113168514A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0282Rating or review of business operators or products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • G06F18/2113Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/40Software arrangements specially adapted for pattern recognition, e.g. user interfaces or toolboxes therefor
    • 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
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Abstract

在一般方面,一种方法可以包括通过电子设备接收视觉场景;由电子设备识别视觉场景的多个元素;以及基于在视觉场景中识别的多个元素,确定视觉场景的场境。该方法可以进一步包括基于所确定的视觉场景的场境,应用至少一个过滤器以识别与至少一个过滤器相对应的多个元素中的至少一个元素;以及在电子设备的显示器上的视觉场景中,可视地指示使用至少一个过滤器识别的至少一个元素。

Description

查找和过滤视觉场景的元素
相关申请的交叉引用
本申请要求于2018年11月26日提交的美国临时申请No.62/771,129的优先权和权益,其全部内容通过引用合并于此。
技术领域
本文档通常涉及用于查找和过滤视觉场景中包括的元素,诸如用于识别用户感兴趣的元素的方法。
背景技术
电子设备(诸如智能电话和平板电脑)继续发展并且向消费者(用户等)提供新的和/或改进的功能能力。例如,这样的设备可以诸如使用设备中包括的相机,或者通过访问所存储的照片来捕获视觉场景(例如,实时、多帧视图、单帧照片视图等)。这些设备使用人工智能、计算机视觉和/或机器学习可以识别给定视图内的元素(文本和/或对象),并且提供(和/或允许用户获得)关于那些识别出的对象的信息。然而,存在用于对给定视觉场景或视图内的元素(例如,对象、文本等),提供与用户(或多个用户)有关的信息的附加方案的可能性。
发明内容
在一般方面,一种方法可以包括:由电子设备接收视觉场景;由所述电子设备识别所述视觉场景的多个元素;以及基于在所述视觉场景中识别的多个元素,确定所述视觉场景的场境。该方法可以进一步包括:基于所确定的所述视觉场景的场境,应用至少一个过滤器,以识别与所述至少一个过滤器相对应的所述多个元素中的至少一个元素;以及在所述电子设备的显示器上的视觉场景中,可视地指示使用所述至少一个过滤器识别的至少一个元素。
该方法可以包括下述可选特征。所述视觉场景是下述之一:由所述电子设备的相机捕获的多帧实时视图;或者单帧照片。应用所述至少一个过滤器可以包括基于来自用户的输入来应用过滤器。来自所述用户的输入可以包括下述中的至少一个:文本输入;语音输入;或者与用户相关联的推断输入,该推断输入是使用机器学习根据所述用户的动作确定的。确定所述视觉场景的场境进一步基于来自用户的输入。确定所述视觉场景的场境可以进一步基于所述电子设备的地理学位置。识别所述视觉场景的所述多个元素可以包括文本辨识或图像辨识中的至少一个。所述视觉场景可以是由所述电子设备的相机捕获的多帧、实时视图;以及可以使用所述至少一个过滤器识别的至少一个元素随着所述多帧、实时视图的改变而改变。可以响应于相应的选择,应用所应用的所述至少一个过滤器中的过滤器。所述至少一个过滤器中的过滤器可以是从所述电子设备的显示器上的菜单中可选择的。识别所述视觉场景的元素可以包括:使用计算机视觉识别所述元素;以及使用互联网搜索获得与所识别的元素相关联的至少一个细节;以及应用所述至少一个过滤器包括将所述至少一个过滤器应用于从所述互联网搜索获得的至少一个细节。该方法可以进一步包括:接收对所述至少可视地指示的元素中的可视地指示的元素的选择;以及响应于接收到所述选择,在所述电子设备的显示器上显示与所选择的元素相对应的信息。该电子设备可以包括下述中的至少一个:智能电话;膝上型计算机;上网本计算机;平板计算机;增强现实眼镜;或者头戴式显示器。
在另一方面,一种电子设备可以包括存储指令的存储器;以及处理器,该处理器被配置为执行所述指令以使得所述电子设备:接收视觉场景;识别所述视觉场景的多个元素;基于在所述视觉场景中识别的多个元素,确定所述视觉场景的场境;基于所确定的所述视觉场景的场境,应用至少一个过滤器,以识别与所述至少一个过滤器相对应的所述多个元素中的至少一个元素;以及在所述电子设备的显示器上的视觉场景中,可视地指示使用所述至少一个过滤器识别的至少一个元素。
该设备可以包括下述可选特征。该设备可以进一步包括被配置为捕获所述视觉场景的相机,所述视觉场景是下述之一:多帧实时视图;或者单帧照片。该设备可以进一步包括至少一个输入设备,其中,应用所述至少一个过滤器包括基于经由所述至少一个输入设备接收的输入来应用至少一个过滤器。所接收的输入可以包括下述的至少一个:文本输入;语音输入;或者与用户相关联的推断输入,所述推断输入是使用机器学习根据所述用户的动作确定的。确定所述视觉场景的场境可以进一步基于来自用户的输入。确定所述视觉场景的场境可以进一步基于所述电子设备的地理学位置。识别所述视觉场景的所述多个元素可以包括文本辨识或图像辨识中的至少一个。所述视觉场景可以是由所述电子设备的相机捕获的多帧、实时视图;以及使用所述至少一个过滤器识别的所述至少一个元素随着所述多帧、实时视图的改变而改变。可以响应于经由所述电子设备的输入设备接收的相应选择,应用所述至少一个过滤器中的过滤器。所述至少一个过滤器中的过滤器可以是从所述电子设备的显示器上的菜单中可选择的。识别所述视觉场景的元素可以包括:使用计算机视觉识别所述元素;以及使用互联网搜索获得与所识别的元素相关联的至少一个细节;以及应用所述至少一个过滤器包括将所述至少一个过滤器应用于从所述互联网搜索获得的至少一个细节。该设备可以进一步被配置为接收对所述至少一个可视地指示的元素中的可视地指示的元素的选择;以及响应于接收到所述选择,在所述电子设备的显示器上显示与所选择的元素相对应的信息。
在又一方面,一种在其上存储指令的计算机可读介质,所述指令在由电子设备的处理器执行时,使得所述电子设备:接收视觉场景;识别所述视觉场景的多个元素;基于在所述视觉场景中识别的多个元素,确定所述视觉场景的场境;基于所确定的所述视觉场景的场境,应用至少一个过滤器,以识别与所述至少一个过滤器相对应的所述多个元素中的至少一个元素;以及在所述电子设备的显示器上的视觉场景中,可视地指示使用所述至少一个过滤器识别的至少一个元素。
将意识到,在一个方面的场境中描述的特征可以与在另一方面的场境中描述的特征结合。例如,电子设备可以被配置为根据方法方面执行特征,并且计算机可读介质可以具有指令以使电子设备执行根据方法方面的特征。
方面可以提供视觉场景的元素或过滤的识别,以帮助用户执行技术任务,从而提供引导的人机交互过程。识别和/或过滤可以为用户提供关于系统的内部状态的实时信息。
附图说明
图1是图示根据示例性实施方式的系统的框图。
图2是示意性地图示可以使用本文所述的方案进行分析和过滤的视觉场景的框图。
图3A、3B、3C和3D是示意性地图示根据示例性实施方式的电子设备的用户界面(UX)的图。
图4A、4B和4C是图示根据示例性实施方式,在电子设备的UX中配置用于应用到视觉场景的过滤器的序列的图。
图5A、5B、5C和5D是图示根据示例性实施方式,分析和过滤电子设备的UX中的视觉场景的元素的序列的图。
图6是图示根据示例性实施方式的示例性电子环境的框图。
图7是根据示例性实施方式,用于利用分类引擎使用结构化正交随机特征的示例性过程的流程图。
图8示出了可以被用来实现本文描述的技术的计算机设备和移动计算机设备的示例。
各个附图中相似的参考符号指示相似的元件。
具体实施方式
本文档描述了用于查找和过滤视觉场景的元素的示例性方案。本文描述的方案可以使用诸如智能电话、平板计算机、增强现实(AR)眼镜、膝上型计算机、上网本计算机等的电子设备来实现。例如,可以在电子设备上提供用户界面(UX)(例如,作为相关联的查找和过滤器功能的一部分),其中,UX可以被配置为显示视觉场景并且将过滤器应用于该视觉场景。应用这样的过滤器可以包括(基于与可以由用户选择和/或配置的所应用的过滤器相对应的用户意图)在视觉显示器内识别感兴趣的项目。本文描述的方案还可以包括(在电子设备的显示器上)诸如通过高亮项目、将图标应用到项目、模糊(例如,变暗)与所应用的过滤器相对应的视觉场景部分,可视地指示与所应用的过滤器相对应的视觉场景的特定元素。在一些实施方式中,实现这种方案的电子设备可以协同诸如一个或多个服务器计算机(例如,互联网服务器、数据库服务器、机器学习服务器等)或其他适当的设备(诸如下文参考图8所述的设备)的一个或多个其他设备操作。
在本文所述的示例性实施方式中,计算机视觉和/或机器学习可以被用来在提供给电子设备(由电子设备接收、电子设备可访问等)的视觉场景中识别(发现、定位等)以及辨识单独的元素,将那些识别出的元素分割成单独的元素,并且跟踪被分割的单独的元素。在一些实施方式中,这样的视觉场景可以是由电子设备的相机捕获(动态地捕获)的多帧、实时视觉场景。在一些实施方式中,视觉场景可以处于存储在电子设备上或被提供给电子设备的单帧图像(例如照片)的形式。识别视觉场景的元素可以包括在视觉场景上执行文本辨识和/或图像辨识。而且,(例如,协同一个或多个其他设备工作的)电子设备可以基于辨识的文本、辨识的对象、(例如,如由电子设备中包括的地理位置设备确定的)视觉场景的地理学位置(地理位置)和/或其他信息(诸如用户输入),(例如,使用机器学习、人工智能等)确定视觉场景的场境。例如,可以基于在视觉场景中辨识的文本与已知词汇的比较、在视觉场景中识别的对象与已知图像的数据库的比较、与视觉场景相关联的地理位置、由用户应用的过滤器等,确定视觉场景的场境。
例如,在一些实施方式中,可以根据与给定视觉场景相关联的一个或多个因子来确定场境。例如,可以通过将第一权重应用于第一因子并且将第二权重应用于第二因子来确定场境,并且加权因子可以被用作可以被用于过滤的场境。例如,可以被用来确定视觉场景的场境的因子可以是以下一个或多个:(例如,如由捕获场景的设备或从另一个来源确定的)视觉场景的地理学位置;视觉场景中的对象的识别、在视觉场景中辨识的文本、来自用户的输入(例如,包括可以使用机器学习进行分析的先前用户输入);用户的先前活动;对来自设备的关于视觉场景的查询的响应;明确声明的用户意图(例如,用户可能指示他们正在寻找商店中的特定商品)以及许多其他因子。
例如,用户可以使用电子设备的相机来捕获(查看等)特定餐厅的菜单的图像。使用本文描述的方案,可以分析菜单的图像,包括辨识菜单上的文本、辨识菜单上的标志等。辨识的文本与已知词汇的比较可以指示该文本描述餐厅菜肴。辨识的标志(或菜单中包括的其他图像)与已知图像的比较可以匹配与特定餐厅相关联的已知标志(或图像)。此外,电子设备的地理位置可以指示电子设备在特定餐厅处(或附近)。基于前述分析,电子设备可以确定视觉场景的场境是特定餐厅的菜单的视图。可以使用类似方法来确定其他视觉场景的场境。
例如由电子设备的UX实现(在其中实现)的过滤器可以允许电子设备的用户明确地声明意图(提供他们感兴趣的内容的指示)并因此控制视觉场景的视图以及作为应用至少一个过滤器的结果,如何改变视觉场景。即,在一些实施方式中,诸如本文中所描述的过滤器可以使用户能够过滤内容的多个来源并且仅查看(或可视地指示)给定视觉场景的视图中的某些对象或元素(例如,如在UX中呈现的)。应用于视觉场景的过滤器可以是由用户诸如从在电子设备上实现的UX(诸如本文所述的UX)内可选择的。
在一些实施方式中,由电子设备应用于视觉场景的过滤器可以是全局过滤器,或者不是全局过滤器的过滤器特定地基于被过滤的视觉场景的场境。全局过滤器可以是例如语言翻译过滤器、货币转换过滤器、查找过滤器(例如,查找特定单词)。在一些实施方式中,应用于视觉场景的过滤器可以是基于视觉场景的场境和/或用户输入的场境性过滤器。例如,在上文餐厅菜单场境的示例中,可以应用场境性过滤器(例如,当由用户选择时)以(例如,基于从互联网搜索获得的评论)识别菜单上的受欢迎的菜肴。在一些实施方式中,可以基于用户的输入(例如,语音输入、文本输入、从用户先前动作推断出的意图等)来应用场境性过滤器。例如,用户可以请求过滤餐厅菜单的视图以识别特定的项目,诸如包括或不包括用户过敏的项目(例如,查找不含麸质的项目),或可以基于用户的已知过敏(例如,基于用户的先前动作)将应用这样的过滤器的选项提供给用户。在一些实施方式中,用户可以一起选择(应用等)多个过滤器,以识别与他们想要在给定视觉场景中可视地指示的内容一样多或一样少的内容。
如上所述,并且在下文进一步讨论,在一些实施方式中,电子设备可以包括允许用户观看视觉场景(例如,实时、多帧视图、单帧照片视图等)的UX,并且选择用户想要识别(高亮等)或移除(模糊、变暗等)的视觉场景的元素(例如,使用一个或多个过滤器声明意图)。UX可以被配置为向用户提供相应视觉场景的视图(例如,在电子设备的显示器上的UX内)以及与用户声明的意图相对应(例如,与一个或多个应用的过滤器相对应)的视觉指示。在应用一个或多个过滤器之前,电子设备可以(例如,与可访问电子设备的一个或多个服务器协同工作)分析相应的视觉场景,以识别该场景的单独的元素(例如,文本、文本分组、对象等),并且分割单独的元素。然后可以将(与用户声明的意图相对应发)一个或多个过滤器应用于被分割的对象,并且可以将适当的视觉指示(高亮、图标、模糊、变暗等)应用于UX中与所应用的过滤器相对应的视觉场景的视图。在视觉场景是实时视图的实施方式中,用户(例如,利用电子设备的相机)在该视觉场景周围查看时,可以由电子设备跟踪所识别和分割的元素(连同相关联的视觉指示)。
如上所述,可以使用计算机视觉、机器学习和/或人工智能来识别、分割和跟踪视觉场景中包括的元素,以及理解视觉场景的场境。在下文中,参考图6和7讨论用于执行这种机器学习的示例性方案。然而,将意识到,通过示例和为了说明目的,讨论了这些实施方式,但可以使用其他机器学习方案。特定的机器学习方案将至少部分地取决于特定的实施方式、被分析的特定图像或视觉场景等。
图1是图示根据示例性实施方式的系统100的框图。如图1所示,系统100包括电子设备110和视觉场景120,视觉场景120可以被设备110捕获、提供给设备110或以其他方式由设备110访问。取决于特定的实施方式,设备110可以是智能电话、平板计算机、增强现实(AR)眼镜、膝上型计算机、上网本计算机等。在一些实施方式中,系统100还可以包括一个或多个其他电子设备、网络连接等(诸如例如参考图8所述)。在一些实施方式中,设备110可以与这样的附加设备协同工作以实现本文描述的方案。
在一些实施方式中,视觉场景120可以是由电子设备的相机捕获(动态地捕获)的多帧、实时视觉场景。在一些实施方式中,视觉场景120可以是存储在电子设备上或被提供给电子设备的单帧图像(例如照片)。在一些实施方式中,视觉场景120采取其他合适的形式,诸如视频流等。
如图1所示,电子设备110可以包括处理器111、存储器112、相机113、麦克风114和显示器(例如,触摸屏显示器)115。图1的设备110还被示为包括查找和过滤器(FF)块116,其可以实现UX并且提供用于实现用于查找和过滤视觉场景中包括的元素的方案(诸如本文所述的方案)的相关功能。虽然在图1中被示为分开的块,但是,FF块116的至少一些元件或部分可以被包括在设备110的其他元件或其他设备(诸如与设备110可操作地耦合的服务器)中和/或由其实现。
例如,FF块116可以包括存储在存储器112中并且由处理器111执行(例如,以实现UX或FF块116的其他功能)的机器可读指令。FF块116还可以协同设备110的其他元件(诸如相机113(例如,以捕获视觉场景120)、麦克风114(例如,以接收输入或来自用户的声明意图)和/或显示器(例如,以提供视觉场景120的已过滤或未过滤的UX和/或视图))工作。此外,在一些实施方式中,作为设备110协同一个或多个其他设备(例如,服务器等)工作以执行计算机视觉、机器学习和/或人工智能任务(操作等)的结果,可以实现FF块116的操作以(例如,从由FF块116识别的视觉场景120的帧中)识别、分割和/或跟踪视觉场景120中包括的元素。
图2是示意性地图示可以使用本文所述的方法进行分析和过滤的视觉场景120的示例的框图。如图2所示,视觉场景120包括多个元素(Element_1 122至Element_N 124),其中,N可以是视觉场景120中的元素的数量。为示例目的,可以进一步参考图1进行图2的下述讨论。将意识到,该讨论是作为示例给出的。
给定视觉场景120的单独元素将取决于特定的实施方式。使用本文描述的方法,视觉场景120可以由设备110(例如,相机113)捕获,或者以其他方式提供给设备110。设备110(例如,使用FF块116)可以分析视觉场景以识别视觉场景120的每个元素Element_1 122到Element_N 124、对这些元素进行分割、理解视觉场景的场境、(例如,根据用户意图)对视觉场景120的元素应用一个或多个过滤器,并且(例如,在显示器115上显示的UX中)提供视觉场景120的过滤视图,其中,根据所应用的过滤器可视地指示(例如,高亮、添加图标、模糊、变暗等)视觉场景的元素。
下文是视觉场景120以及这些场景的元素的一些示例,其被提供用于说明目的。下文所述的视觉场景的元素可以被识别和分割,诸如本文所述。然后可以使用分割的元素(例如,结合其他信息,诸如地理位置、声明的用户意图等)来确定视觉场景的场境。然后可以将(如由用户选择的)过滤器应用于视觉场景的分割的元素,并且可以在设备110的显示器115上显示视觉场景的视图,以及与所应用的过滤器相对应的一个或多个视觉指示(例如,高亮、图标、模糊处理、变暗等)。当然,实现本文描述的方案的电子设备可以查看和过滤任何数量的其他视觉场景及其相关元素。
在示例性实施方式中,视觉场景120可以是餐厅菜单,并且用户可以声明显示无麸质菜单项目的意图(例如,菜单被过滤以指示无麸质菜肴)。可以(在用相机113实时查看的同时)分析菜单以识别菜单的元素,诸如餐厅名称、不同菜肴的清单、标题等。然后可以例如使用机器学习,将所识别的元素分割成视觉场景的单独元素。然后可以(例如,基于分割的元素、声明的用户意图和/或由电子设备110确定的地理位置等)将视觉场景的场境确定为来自给定餐厅的菜单。在一些实施方式中,可以(例如,基于所确定的场境和/或用户声明的意图)应用多个过滤器。例如,可以应用针对无麸质菜单项目和包括海鲜的菜单项目的过滤器,这将导致仅无麸质、海鲜菜肴被显示在过滤视图中,例如,在与FF块116相对应的UX中显示在显示器113上。可以基于关于从视觉场景(例如,从菜单的文本)、从互联网搜索等获得的菜单项目有关的信息来应用一个或多个过滤器。例如,如果应用受欢迎的菜肴过滤器,则可以使用来自在线(互联网)评论的信息来过滤用于受欢迎项目的菜单项目。
在另一示例性实施方式中,视觉场景120可以是商店中品项的架子(或多个架子),并且用户可以声明意图显示(例如,在视觉场景的过滤视图中可视地指示)某些类型的品项,诸如低于某一价格的品项、包括或排除某些属性的品项(例如有机品项、过敏原等)。然后可以对货架(或多个货架)进行分析,以识别该视觉场景的元素(诸如架子(或多个架子))、架子(或多个架子)上的产品、价格标签、所显示的产品信息等。然后可以将所识别的元素分割为视觉场景中的单独元素。然后,可以基于分割的元素、声明的用户意图、地理位置等,将视觉场景的场境确定为商店中的产品架子。然后可以从视觉场景的元素和/或其他来源(诸如互联网搜索数据等)确定有关单独产品的信息(例如,成分、价格等)。
作为一些其他示例,本文所述的方案可以被用来过滤视觉场景,以在建筑物地图上查找会议室、在食品标签上查找过敏原、在机场航班状态屏幕上查找特定航班、在架子上查找书籍、在苗圃中查找特定的植物、在杂乱的房间中查找用户的钥匙等。同样,这些示例仅是说明性的,并且可以使用本文所述的方案查看和过滤任何数量的其他视觉场景。应用于任何特定视觉场景的过滤器可以基于由用户提供的信息、由用户的先前动作推断的信息(例如,过敏、价格敏感度等)、(使用基于所确定的场境,向用户建议的过滤器,诸如在餐厅菜单场境中指示受欢迎的菜肴的过滤器)所确定的视觉场景的场境。可以使用设备110的麦克风114捕获用户提供的意图,或者使用例如在显示器115上实现的虚拟键盘或设备110的其他数据输入设备(未具体示出)(诸如物理键盘)作为文本输入。
图3A、3B、3C和3D是示意性地示出根据示例性实施方式的电子设备300的UX 310的图。在一些实施方式中,设备300可以被用来实现图1的设备110。在图3A-3D中,示出了用于在诸如UX 310的UX中实现视觉场景过滤器的示例性方案。在一些实施方式中,设备110中的UX 310可是以FF块116的一部分且允许控制FF块116的操作,诸如以实现本文所述的方法。
在图3A-3D的每一个中,仅示出了示例性UX 310的一部分。例如,在图3A-3C中,示出了UX 310的较高部分(上部),而在图3D中,示出了UX 310的较低部分(下部)。在其他UX实施方式中,这些UX元素的其他布置或其他UX元素是可能的。
如图3A所示,UX 310可以包括持久性过滤器入口点320,用户可以利用该持久性过滤器入口点320来访问用于给定视觉场景的可用过滤器。在一些实施方式中,可以响应于用户点击入口点320的图标(例如,堆叠线图标)来选择性地打开和关闭入口点320。在一些实施方式中,响应于在UX 310中的其他地方启用过滤器,可以打开入口点320,诸如在图3D的示例中。
如上所述,视觉场景过滤器(可以被称为取景器过滤器,或仅被称为过滤器)可以是全局过滤器或场境性过滤器。例如,全局过滤器可以在没有建立的视觉场景场境的情况下,或者与所确定的视觉场景场境无关地用于应用(选择等)。相比之下,场境性过滤器可能仅可用于具有给定场境(或场境集)的视觉场景。例如,在机场查看航班状态显示时,不会呈现查找受欢迎的菜单项目过滤器,因为该过滤器与航班状态显示的视觉场景场境不匹配(不适用于航班状态显示的视觉场景场境)。
参考图3B,示出了在打开入口点320之后的UX 310的示例。如图3B所示,示出了分别对应于查找过滤器和翻译过滤器的两个按钮(按片(chip)等)322和325。在一些实施方式中,用户可以通过点击它们相应的按片322和/或324来激活(选择、启用等)或停用(禁用等)这些过滤器。在其他实施方式中,可以从UX 310的单独的元素(抽屉、菜单、面板等)启用或禁用其他过滤器(诸如场境性过滤器),诸如在图3D的示例中。在启用这样的(场境性)过滤器之后,可以在入口点320中示出用于那些过滤器的相应的按片(例如,当展开入口点320时)。
在一些实施方式中,用户可以通过选择(点击、敲击等)用于相应过滤器的相对应的按片(例如322、324)来访问“查找和翻译”(或其他可用过滤器)的配置选项。而且,可以在入口点320中提供哪些过滤器被启用的可视指示。例如,可以以第一颜色(例如,如图3B所示的蓝色)显示所启用的过滤器的文本标签,而以第二颜色(例如,黑色)显示用于未被启用的过滤器的文本标签。在图3B的示例中,由于按片322和324上的文本标签都是蓝色的,因此在该示例中,在UX 310中启用了查找过滤器和翻译过滤器两者。
参考图3C,以折叠视图示出了UX 310的入口点320。在图3C中还图示了视觉通知(通知圆点)326,其中,视觉通知326可以(例如向用户)指示附加的过滤器(诸如基于所确定的视觉场景的联系的场境性过滤器)可用。在该示例中,选择(点击、敲击等)具有视觉通知326的入口点320,可以导致在UX 310中显示(打开等)面板(抽屉等)330,诸如图3所示。如图3D所示,面板330可以包括(显示等)与视觉通知326相对应的可用过滤器。在图3D的示例中,示出了高亮受欢迎的按片332(与高亮受欢迎的菜肴过滤器相对应),诸如示出了可以在餐厅菜单视觉场景场境中应用。选择(点击、敲击等)按片332可以导致高亮受欢迎过滤器被激活(启用等)以在UX 310中查看视觉场景(例如,餐厅菜单)。在一些实施方式中,点击按片332以启用高亮受欢迎过滤器还可以导致入口点320被展开(如果尚未展开的话),并且高亮受欢迎过滤器在展开的入口点320内被显示为活动(例如,以蓝色文本)。
图4A、4B和4C是图示了根据示例性实施方式,用于配置被应用于(要被应用于等)电子设备400的UX 410中的视觉场景的过滤器的序列的图。如图4A所示,UX 410包括用于过滤器的持久性入口点420,该过滤器可被应用于在UX 410内正查看的视觉场景。在图4A中,入口点420被示出为展开(诸如上文参考入口点320所讨论的),并且包括与翻译过滤器相对应的按片422。在该示例中,类似于UX 310,按片422上的文本翻译(例如,蓝色)可以指示在UX 410中翻译过滤器是活动的,以应用于在UX 410中查看的视觉场景。
在该示例中,选择(点击、敲击等)入口点420中的按片422可以导致在UX 410中打开面板430,诸如图4B所示。在该示例中,面板430可以被用来配置翻译过滤器(例如,翻译语言、货币转换、是否翻译对象上的文本等)(改变和/或添加翻译过滤器的设置)。在该示例中,当面板430打开时,UX 410的其他元素可以变暗,以在面板430上在UX 410中提供强调。在UX 410中,如图4B所示,面板430包括应用按钮432,当被敲击(被选择、被点击等)时,该应用按钮432可以将所选择或添加到面板430的配置设置应用于翻译过滤器,并且可以关闭UX410中的面板430,然后如图4C所示的UX 410中的视图可以返回到与图4类似的视图,其中,入口点420中的按片422示出在UX 410中(例如基于文本颜色)启用了(新配置的)翻译过滤器。
图5A、5B、5C和5D是图示根据示例性实施方式,分析和过滤视觉场景的元素的序列的图。图5A-5D的示例是用于过滤视觉场景,其中,视觉场景的场境是餐厅菜单540。图5A-5D的序列被图示为在UX 510内,在电子设备500上实现。如图5A所示,UX 510被图示为包括持久性过滤器入口点520(处于折叠状态)和面板530,面板530可以显示可用于应用于UX 510中的视觉场景的一个或多个场境性过滤器。例如,在该示例中,面板中的按片532指示高亮受欢迎过滤器可用于应用到正在UX 510中显示的菜单540。在一些实施方式中,可以响应于电子设备确定视觉场景的场境来显示面板530。在一些实施方式中,可以(例如,在显示视觉通知(例如参考图3C所讨论的)之后)响应于对进入点520的选择(点击、敲击等),显示面板530。
在该示例中,如图5B所示,点击按片532可以导致启用高亮受欢迎过滤器、展开入口点520以及在展开的入口点520中(例如,使用蓝色文本)显示受欢迎菜肴按片522,以指示启用了高亮受欢迎过滤器。在展开的入口点520中还示出了对应于翻译过滤器的按片524。在该示例中,翻译过滤器被指示为被禁用(例如,通过按片524中的黑色文本)。
同样,在图5B中,在UX 510中示出了菜单540周围的高亮542。在一些实施方式中,高亮542可以指示菜单已经被辨识为要过滤的视觉场景,和/或对于在UX 510中正查看的视觉场景,已经确定场境(例如,餐厅菜单540)。
进一步在图5B,示出了与将高亮受欢迎过滤器应用于菜单540相对应的视觉指示器544、546和548。在图5B的示例中,视觉指示器544、546和548包括在每个相应的受欢迎菜肴名称上的高亮,以及在每个高亮的受欢迎菜肴名称旁边的心形图标。在一些实施方式中,可以使用其他视觉指示。同样在图5B的UX 510中,与图5A相比,使菜单540的未高亮的(过滤的元素)变暗,这可以在由高亮受欢迎过滤器标识的项目与菜单540的其余项目之间提供附加的视觉区分。如图5B所示,在该示例中,即使在通过选择(点击、敲击等)图5A中的按片532选择(启用)高亮受欢迎过滤器之后,面板530也可以保持在UX 510中。
如图5C所示,在一些实施方式中,多个过滤器(例如,场境性过滤器)可用于应用到视觉场景,其中,特定的场境性过滤器可以取决于视觉场景的内容、声明的用户意图等。即,可用的场境性过滤器可以基于对例如在UX 510内正在查看的视觉场景所确定的场境。在图5C的示例中,附加的高亮素食过滤器是可用的,其中,选择面板530中的相应按片534可以被用来激活高亮素食过滤器。在图5C的示例中,高亮素食过滤器由入口点520中的素食菜肴按片526指示为禁用(不活动等)(例如,如在按片526中由黑色文本所示)。在一些实施方式中,其他按片可以被显示在面板530中,诸如搜索(例如正在查看的视觉场景)的按片、保存用于与正在查看的视觉场景相关联的网站的浏览器书签等。
在该示例中,如图5D所示,选择(点击、敲击等)图5C中所示的高亮的(过滤的)项目之一(例如,项目546)可以导致UX 510提供该选择的项目的放大视图和/或定格视图,以及显示面板530,该面板530包括(例如,从互联网搜索的)有关所选择的项目546的信息。在该示例中,附加信息可以包括所选项目546的一个或多个图像、所选项目546的评论,尽管可以在面板550中呈现附加或不同的信息。此外,在一些实施方式中,面板550可以以采取其他形式,诸如占据整个UX 510、添加导航按钮等。在一些实施方式中,面板550中的信息可以以排序的顺序(例如,以确定相关性的顺序等)显示。
图6是图示了机器学习系统600的框图,该机器学习系统600在一些实施方式中,可以被用在查找和过滤视觉场景中的项目的方案中,诸如本文所述。系统600可以实现机器学习方案,该方案包括根据称为结构化正交随机特征(SORF)的框架,为高斯核生成无偏估计量。该核的无偏估计量KSORF涉及使用一组矩阵对的乘积计算的线性变换矩阵WSORF,每对矩阵包括正交矩阵和相应的对角矩阵,其中,矩阵的元素是遵循特定概率分布的实数。在一些实施方式中,正交矩阵是沃尔什-哈达玛矩阵,特定概率分布是拉德玛切尔分布,并且至少有两对或三对矩阵相乘在一起以形成线性变换矩阵WSORF
在图6中,系统600图示了根据实施方式的大规模学习系统的示例。在一些实施方式中,诸如本文所述的方案,系统600可以被用来生成精确输入向量的非线性图,并允许计算上的有效训练和测试支持向量机(SVM)或其他类型的基于核的机器学习系统。这些向量可以是高斯核的近似值,其可以被用作各种机器学习问题的输入,诸如分类系统、聚类系统、回归系统等。例如,分类系统可以使用近似值来使用线性分类器对数据项进行分类。图6中的系统600的描绘被描述为基于服务器的分类器系统。但是,可以使用其他配置和应用。例如,系统600可以是聚类系统、回归系统、异常检测系统等。
大规模学习系统600可以是一个或多个计算设备,其采用许多不同设备的形式,例如标准服务器、一组这样的服务器或机架服务器系统,诸如基于核的机器学习服务器620。另外,系统600可以在个人计算机,例如膝上型计算机中实现。如图8所描绘的,基于核的机器学习服务器620可以是计算机设备的示例。
基于核的机器学习服务器620包括网络接口622、一个或多个处理单元624和存储器626。网络接口622包括例如以太网适配器、令牌环适配器等,用于将从网络670接收到的电子和/或光信号转换为电子形式,以供基于核的机器学习服务器620使用。处理单元624集包括一个或多个处理芯片和/或组件。存储器626包括易失性存储器(例如,RAM)和非易失性存储器(诸如一个或多个ROM、磁盘驱动器、固态驱动器等)。该处理单元624集和存储器626一起形成控制电路,该控制电路被配置和布置为执行如本文所述的各种方法和功能。
在一些实施例中,基于核的机器学习服务器620的一个或多个组件可以是或可以包括被配置为处理存储在存储器626中的指令的处理器(例如,处理单元624)。如图6所示的这样的指令的示例包括正交矩阵管理器630、对角矩阵管理器640和机器学习管理器650。此外,如图6所示,存储器626被配置为存储各种数据,这些数据参考使用这样的数据的相应管理器被描述。
基于核的机器学习服务器620可以使用从数据项提取的特征向量,并且例如经由高斯内核来生成产生特征的近似值的随机化特征图。特征向量可以被认为是维数为d的浮点数的数组,或换句话说,是具有d个位置的数组。数据项可以是数据库,例如文件或搜索项。例如,数据项可以是任何种类的文件,诸如文档、图像、声音文件、视频文件等,并且可以从文件中提取特征向量。数据项还可以是数据库记录,并且可以从与数据库中的项有关的数据中提取特征。
正交矩阵管理器630被配置为生成正交矩阵数据632。正交矩阵数据632包括定义一个或多个矩阵的数字,该矩阵具有形成正交基的行。正交矩阵管理器632生成的正交矩阵的大小基于维数d。例如,在一些实施方式中,正交矩阵管理器630被配置为生成沃尔什-哈达玛矩阵。此类矩阵是根据以下规则生成的:
Figure BDA0003080035330000181
Figure BDA0003080035330000182
其中
Figure BDA0003080035330000183
表示克罗内克积。因此,沃尔什-哈达马矩阵是维度为2的幂的方形矩阵。响应于接收,正交矩阵管理器630然后可以生成维度为大于d的2的最小幂的沃尔什-哈达玛矩阵。
对角矩阵管理器640被配置为生成对角矩阵数据644。对角矩阵数据644包括定义作为非对角元素为0的矩阵的数字。经由特定概率分布函数642定义对角元素的值。对角矩阵的维度与正交矩阵数据632的正交矩阵的维度相同。在一些实施方式中,对角元素的值为-1或1,并且概率分布642是拉德马赫尔(Rademacher)分布(即硬币翻转分布)。
基于核的机器学习服务器620可以被配置为由正交矩阵数据632和对角矩阵数据644形成线性变换矩阵数据646。沿着这些线,当对角矩阵数据632包括定义N个对角矩阵D1,D2,...,DN的数字时,则定义线性变换矩阵数据646的线性变换矩阵WSORF等于
Figure BDA0003080035330000184
其中,n是大于d的2的最小幂的指数,而σ是高斯核的宽度。在一些实施方式中,N至少为2;在典型的实施方式中,N等于3。
系统600可以使用机器学习管理器650来对向量数据652执行图像搜索、语音辨识、文本辨识等。系统600可以使用常规方法从向量数据652提取向量,或者可以提供给所提取的特征向量数据654。作为一些示例,所提取的特征向量654可以是来自数据项或语音波形中的图像文件的像素。
在一些实施方式中,存储器626可以是任何类型的存储器,诸如随机存取存储器、磁盘驱动器存储器、闪存等等。在一些实施方式中,存储器626可以被实现为与基于核的机器学习服务器620的组件相关联的多于一个的存储器组件(例如,多于一个的RAM组件或磁盘驱动器存储器)。在一些实施方式中,存储器626可以是数据库存储器。在一些实施方式中,存储器626可以是或可以包括非本地存储器。例如,存储器626可以是或可以包括由多个设备(未示出)共享的存储器。在一些实施方式中,存储器626可以与网络内的服务器设备(未示出)相关联并且被配置成服务于基于核的机器学习服务器620的组件。
压缩计算机620的组件(例如,模块、处理单元624)可以被配置为基于可以包括一种或多种类型的硬件、软件、固件、操作系统、运行时库等的一个或多个平台(例如一个或多个类似或不同的平台)操作。在一些实施方式中,基于核的机器学习服务器620的组件可以被配置为在设备集群(例如,服务器场)内操作。在这样的实施方式中,基于核的机器学习服务器620的组件的功能和处理可以被分布到设备集群中的几个设备。
基于核的机器学习服务器620的组件可以是或可以包括被配置为处理属性的任何类型的硬件和/或软件。在一些实施方式中,在图6中的基于核的机器学习服务器620的组件中所示的组件的一个或多个部分可以是或可以包括基于硬件的模块(例如,数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储器)、固件模块和/或基于软件的模块(例如,计算机代码模块、可以在计算机上执行的一组计算机可读指令)。例如,在一些实施方式中,基于核的机器学习服务器620的组件的一个或多个部分可以是或可以包括被配置为由至少一个处理器(未示出)执行的软件模块。在一些实施方式中,组件的功能可以被包括在与图6所示的模块不同的模块和/或不同的组件中。
尽管在图6中未示出,但是,在一些实施方式中,基于核的机器学习服务器620的组件(或其部分)可以被配置为在例如数据中心(例如,云计算环境)、计算机系统、一个或多个服务器/主机设备等等内操作。在一些实施方式中,基于核的机器学习服务器620的组件(或其部分)可以被配置为在网络内操作。因此,基于核的机器学习服务器620的组件(或其部分)可以被配置为在可以包括一个或多个设备和/或一个或多个服务器设备的各种类型的网络环境内运行。例如,该网络可以是或可以包括局域网(LAN)、广域网(WAN)等。该网络可以是或可以包括无线网络和/或使用例如网关设备、网桥、交换机等实现的无线网络。该网络可以包括一个或多个网段和/或可以具有基于诸如互联网协议(IP)和/或专有协议的各种协议的部分。该网络可以包括互联网的至少一部分。
在一些实施例中,压缩计算机620的一个或多个组件可以是或可以包括被配置为处理存储在存储器中的指令的处理器。例如,正交矩阵管理器630(和/或其一部分)、对角矩阵管理器640(和/或其一部分)以及机器学习管理器650(和/或其一部分)可以是被配置为执行与实现一个或多个功能的过程有关的指令的处理器和存储器的组合。
图7是根据所公开的主题,用于将球面随机特征与分类引擎一起使用的示例性过程700的流程图。过程700可以由诸如图6的系统600的大规模学习系统执行。过程700是使用图1的基于核的机器学习服务器120,将输入向量转换为第二向量的示例,该第二向量是输入向量的非线性近似。过程700可以从大规模学习系统接收输入数据项开始(702)。输入数据项可以是可以从其中提取特征向量的任何项。示例包括图像、文档、视频文件、声音文件、具有元数据的实体、用户配置文件、利用电子设备的相机捕获的实时视觉场景等。系统可以使用常规技术,从输入数据项中提取特征(704)。系统可以将特征向量归一化为单位l2范数(706)。然后,系统可以使用(例如,由系统600生成的)高斯随机特征图来生成用于输入数据项的近似特征向量(708)。近似特征向量可以是具有与输入特征向量不同维数的非线性近似。
系统可以将近似特征向量作为输入提供给分类器(710)。分类器可以具有对数据项的大存储的访问权。数据项可以已经具有相对应的近似特征向量,或者可以启动对数据项生成近似特征向量。在一些实施方式中,分类器可以计算输入数据项的近似特征向量与数据项的存储之间的点积。在一些实施方式中,分类器可以使用点积来确定输入数据项的标签、分类等。例如,分类器可以将图像分类为动物、人、建筑物等。在一些实施方式中,分类器可以确定数据存储中与输入数据项最相似的项。因此,系统可以从分类器获得输入数据项的分类(712)。然后过程700结束。
图7的过程是使用结构正交随机特征的一个例子。(例如,从基于核的机器学习服务器620输出的)特征图可以在任何机器学习应用中使用,包括但不限于聚类、回归、异常分析等。因此,例如,替代(附加、替换等)操作712可以包括获取输入数据项的聚类指派,获取输入数据项的回归分析等。此外,例如,在执行过程700前进行的训练模式中,球面随机特征可以被用作机器学习分类器的训练示例。
图8示出了可以与在此描述的技术一起使用的计算机设备1000和移动计算机设备1050的示例。计算设备1000包括处理器1002、存储器1004、存储设备1006、连接到存储器1004和高速扩展端口1010的高速接口1008以及连接到低速总线1014和存储设备1006的低速接口1012。组件1002、1004、1006、1008、1010和1012中的每一个都使用各种总线互连,并且可以安装在通用主板上或视情况以其他方式安装。处理器1002可以处理用于在计算设备1000内执行的指令,包括存储在存储器1004中或存储设备1006上的指令,以在诸如耦合到高速接口1008的显示器1016的外部输入/输出设备上显示用于GUI的图形信息。在其他实施方式中,可以适当地使用多个处理器和/或多个总线,以及多个存储器和存储器类型。而且,可以连接多个计算设备1000,每个设备提供必要操作的一部分(例如,作为服务器阵列、刀片服务器组或多处理器系统)。
存储器1004将信息存储在计算设备1000内。在一个实施方式中,存储器1004是一个或多个易失性存储器单元。在另一实施方式中,存储器1004是一个或多个非易失性存储器单元。存储器1004还可以是另一种形式的计算机可读介质,诸如磁盘或光盘。
存储设备1006能够为计算设备1000提供大容量存储。在一个实施方式中,存储设备1006可以是或包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备,或磁带设备、闪存或其他类似的固态存储器设备或设备阵列,包括存储区域网络或其他配置中的设备。计算机程序产品可以有形地体现在信息载体中。该计算机程序产品还可以包含在指令中,该指令当被执行时,执行诸如上述的一种或多种方法。信息载体是计算机或机器可读介质,诸如存储器1004、存储设备1006或处理器1002上的内存。
高速控制器1008管理计算设备1000的带宽密集型操作,而低速控制器1012管理较低带宽密集型操作。这种功能分配仅是示例性的。在一个实施方式中,高速控制器1008耦合到存储器1004、显示器1016(例如,通过图形处理器或加速器)以及耦合到高速扩展端口1010,其可以接受各种扩展卡(未示出)。在该实施方式中,低速控制器1012耦合到存储设备1006和低速扩展端口1014。包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口可以例如通过网络适配器耦合到一个或多个输入/输出设备,诸如键盘、定点设备、扫描仪或联网设备,诸如交换机或路由器。
计算设备1000可以以多种不同的形式实现,如图所示。例如,它可以被实现为标准服务器1020,或者多次被实现在这样的服务器组中。它也可以实现为机架服务器系统1024的一部分。此外,它还可以实现在诸如膝上型计算机1022的个人计算机中。可替选地,来自计算设备1000的组件可以与例如设备1050的移动设备中的其他组件(未示出)组合。这些设备中的每一个可以包含计算设备1000、1050中的一个或多个,并且整个系统可以由彼此通信的多个计算设备1000、1050组成。
计算设备1050包括处理器1052、存储器1064、诸如显示器1054的输入/输出设备、通信接口1066和收发器1068以及其他组件。设备1050还可被提供有存储设备,例如微驱动器或其他设备,以提供附加的存储。组件1050、1052、1064、1054、1066和1068中的每一个都使用各种总线互连,并且其中一些组件可以安装在通用主板上,也可以采用其他合适的方式安装。
处理器1052可以执行计算设备1050内的指令,包括存储在存储器1064中的指令。处理器可以被实现为包括分离的以及多个模拟和数字处理器的芯片的芯片组。处理器可以提供例如设备1050的其他组件的协调,诸如用户界面的控制,设备1050运行的应用以及通过设备1050的无线通信。
处理器1052可以通过控制接口1058和耦合到显示器1054的显示器接口1056与用户通信。显示器1054可以是例如TFT LCD(薄膜晶体管液晶显示器)或OLED(有机发光二极管)显示器或其他合适的显示技术。显示器接口1056可以包括用于驱动显示器1054向用户呈现图形和其他信息的适当电路。控制接口1058可以从用户接收命令并且将其转换以提交给处理器1052。另外,可以提供与处理器1052通信的外部接口1062,以便实现设备1050与其他设备的近距离通信。外部接口1062可以例如在一些实施方式中提供有线通信,或者在其他实施方式中提供无线通信,并且也可以使用多个接口。
存储器1064在计算设备1050内存储信息。存储器1064可以被实现为一个或多个计算机可读介质、一个或多个易失性存储器单元或一个或多个非易失性存储器单元中的一个或多个。还可以提供扩展存储器1074,并通过扩展接口1072将其连接到设备1050,扩展接口1072可以包括例如SIMM(单列直插存储器模块)卡接口。这样的扩展存储器1074可以为设备1050提供额外的存储空间,或者也可以为设备1050存储应用或其他信息。具体地,扩展存储器1074可以包括用于执行或补充上述过程的指令,并且还可以包括安全信息。因此,例如,扩展存储器1074可以被提供为设备1050的安全模块,并且可以用允许安全使用设备1050的指令来编程。此外,可以经由SIMM卡以及附加信息来提供安全应用,诸如以不可入侵的方式在SIMM卡上放置标识信息。
存储器可以包括例如闪存和/或NVRAM存储器,如下所述。在一个实施方式中,计算机程序产品有形地体现在信息载体中。该计算机程序产品包含在执行时执行诸如上述的一种或多种方法的指令。信息载体是计算机可读介质或机器可读介质,诸如存储器1064、扩展存储器1074或处理器1052上的存储器,可以例如通过收发器1068或外部接口1062接收。
设备1050可以通过通信接口1066进行无线通信,该通信接口在必要时可以包括数字信号处理电路。通信接口1066可以提供各种模式或协议下的通信,诸如GSM语音呼叫、SMS、EMS或MMS消息收发、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等等。这样的通信可以例如通过射频收发器1068发生。此外,可以进行短距离通信,诸如使用蓝牙、Wi-Fi或其他这样的收发器(未示出)。此外,GPS(全球定位系统)接收器模块1070可以向设备1050提供其他与导航和位置相关的无线数据,设备1050上运行的应用可以适当地使用这些数据。
设备1050还可以使用音频编解码器1060可听地通信,音频编解码器1060可以从用户接收语音信息并将其转换为可用的数字信息。音频编解码器1060同样可以诸如通过扬声器为用户生成可听的声音,扬声器例如在设备1050的听筒中。这种声音可以包括来自语音电话呼叫的声音,可以包括录制的声音(例如,语音消息、音乐文件等),并且还可以包括由在设备1050上运行的应用生成的声音。
如图所示,可以以多种不同形式来实现计算设备1050。例如,它可以被实现为蜂窝电话1080。它也可以被实现为智能电话1082、个人数字助理或其他类似的移动设备的一部分。
本文描述的系统和技术的各种实施方式可以在数字电子电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中实现。这些各种实施方式可以包括在一个或多个计算机程序中的实施方式,该程序可以在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用的或通用的,其被耦合以从存储系统、至少一个输入设备和至少一个输出设备中接收数据和指令,并且向存储系统、至少一个输入设备和至少一个输出设备传输数据和指令。
这些计算机程序(也称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且可以以高级过程和/或面向对象的编程语言和/或以汇编/机器语言实现。如本文所使用的,术语“机器可读介质”、“计算机可读介质”是指用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、装置和/或设备(例如磁盘,光盘、存储器、可编程逻辑设备(PLD)),其包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。
为了提供与用户的交互,可以在具有用于向用户显示信息的显示设备(LED(发光二极管)或OLED(有机LED)或LCD(液晶显示器)监视器/屏幕)以及键盘和用户可以通过其向计算机提供输入的定点设备(例如,鼠标或轨迹球)的计算机上实现此处描述的系统和技术。其他种类的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。
在此描述的系统和技术可以在包括后端组件(例如,作为数据服务器)的计算系统中实现、或者在包括中间件组件(例如,应用服务器)的计算系统中实现、或者在包括前端组件(例如,具有用户可以通过其与此处描述的系统和技术的实施方式进行交互的图形用户界面或Web浏览器的客户端计算机)的计算系统中实现,或在包括此类后端、中间件或前端组件的任意组合的计算系统中实现。系统的组件可以通过数字数据通信的任何形式或介质(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”)和互联网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器之间的关系是通过在各自计算机上运行并彼此具有客户端-服务器关系的计算机程序产生的。
在一些实施方式中,图8中所描绘的计算设备可以包括与增强现实(AR)头戴式耳机/AR眼镜/头戴式显示器(HMD)设备1090对接的传感器,以生成用于查看物理空间内的插入内容(诸如上文所述的内容)的增强环境。例如,包括在图8中描绘的计算设备1050或其他计算设备上的一个或多个传感器(诸如头戴式耳机1090本身)可以向AR耳机1090提供输入,或者通常,可以向AR空间提供输入。传感器可以包括但不限于触摸屏、加速度计、陀螺仪、压力传感器、生物特征传感器、温度传感器、湿度传感器和环境光传感器。计算设备1050(或其他设备)可以使用传感器确定AR空间中计算设备的绝对位置和/或检测到的旋转,然后可以将其用作AR空间的输入。例如,计算设备1050(或其他设备)可以作为诸如控制器、激光指示器、键盘、武器等的虚拟对象被并入AR空间。当被并入AR空间时,用户对计算设备/虚拟对象的定位可以允许用户定位计算设备以便以某种方式在AR空间中观看虚拟对象。例如,如果虚拟对象表示激光指示器,则用户可以像实际的激光指示器一样操纵计算设备。用户可以左右、上下或以圆圈等移动计算设备,并以与使用激光指示器类似的方式使用设备。
在一些实施方式中,可以将包括在计算设备1050上或连接到计算设备1050的一个或多个输入设备用作AR空间的输入。输入设备可以包括但不限于触摸屏、键盘、一个或多个按钮、触控板、触摸板、定点设备、鼠标、轨迹球、操纵杆、相机、麦克风、具有输入功能的耳机或耳塞,游戏控制器或其他可连接输入设备。当计算设备被合并到AR空间中时,与计算设备1050上包括的输入设备进行交互的用户会导致在AR空间中发生特定动作。
在一些实施方式中,计算设备1050的触摸屏可以被渲染为AR空间中的触摸板。用户可以与计算设备1050的触摸屏进行交互。例如,在AR头戴式耳机1090中,将该交互作为在AR空间中所渲染的触摸板上的移动来进行渲染。渲染运动可以控制AR空间中的虚拟对象。
在一些实施方式中,计算设备1050上包括的一个或多个输出设备可以向AR空间中的AR头戴式耳机1090的用户提供输出和/或反馈。输出和反馈可以是视觉、战术或音频。输出和/或反馈可以包括但不限于振动、一个或多个灯或频闪灯的打开、关闭或闪烁和/或闪光、发出警报、播放铃声、播放歌曲以及播放音频文件。输出设备可以包括但不限于振动马达、振动线圈、压电设备、静电设备、发光二极管(LED)、闪光灯和扬声器。
在一些实施方式中,计算设备1050可以在计算机生成的3D环境中表现为另一对象。用户与计算设备1050的交互(例如,旋转、摇动、触摸触摸屏、在触摸屏上滑动手指)可以被解释为与AR空间中的对象的交互。在AR空间中的激光指示器的示例中,计算设备1050在计算机生成的3D环境中显现为虚拟激光指示器。当用户操纵计算设备1050时,AR空间中的用户看到激光指示器的移动。用户在计算设备1050或AR头戴式耳机1090上的AR环境中从与计算设备1050的交互中接收反馈。
在一些实施方式中,计算设备1050可以包括触摸屏。例如,用户可以以可以模仿触摸屏上发生的事情和AR空间中发生的事情的特定方式与触摸屏进行交互。例如,用户可以使用捏合式运动来缩放显示在触摸屏上的内容。触摸屏上的这种捏合式运动会导致AR空间中提供的信息被缩放。在另一示例中,计算设备可以在计算机生成的3D环境中被渲染为虚拟书本。在AR空间中,可以在AR空间中显示书本的页面,并且用户的手指在触摸屏上的轻扫可以被解释为翻动/翻转虚拟书本的页面。当翻动/翻转每个页面时,除了看到页面内容变化之外,还可以向用户提供音频反馈,诸如书本中翻页的声音。
在一些实施方式中,除了计算设备之外,还可以在计算机生成的3D环境中渲染一个或多个输入设备(例如,鼠标、键盘)。渲染的输入设备(例如,渲染的鼠标、渲染的键盘)可以在AR空间中被渲染时使用,以控制AR空间中的对象。
计算设备1000旨在代表各种形式的数字计算机和设备,包括但不限于膝上型计算机、台式计算机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。计算设备1050旨在代表各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话和其他类似的计算设备。此处所示的组件,它们的连接和关系以及它们的功能仅是示例性的,并不意味着限制本文档中描述和/或要求保护的发明的实现。
已经描述了多个实施例。然而,将理解的是,可以在不脱离本说明书的精神和范围的情况下进行各种修改。
此外,附图中描绘的逻辑流程不需要所示的特定顺序或连续顺序来实现期望的结果。另外,可以从所描述的流程中提供其他步骤,或者可以从所描述的流程中去除步骤,并且可以向所描述的系统中添加其他组件或从中移除其他组件。因此,其他实施例在所附权利要求的范围内。
尽管已经如本文中所描述的那样描述了所描述的实施方式的某些特征,但是本领域技术人员现在将想到许多修改、替换、改变和等同物。因此,应理解,所附权利要求书旨在覆盖落入实施方式的范围内的所有此类修改和改变。应当理解,它们仅以示例而非限制的方式给出,并且可以进行形式和细节上的各种改变。除相互排斥的组合之外,本文描述的装置和/或方法的任何部分可以以任何组合进行组合。本文描述的实施方式可以包括所描述的不同实施方式的功能,组件和/或特征的各种组合和/或子组合。

Claims (26)

1.一种计算机实现的方法,包括:
由电子设备接收视觉场景;
由所述电子设备识别所述视觉场景的多个元素;
基于在所述视觉场景中所识别的多个元素,确定所述视觉场景的场境;
基于所确定的所述视觉场景的场境,应用至少一个过滤器,以识别与所述至少一个过滤器相对应的所述多个元素中的至少一个元素;以及
在所述电子设备的显示器上的所述视觉场景中,可视地指示使用所述至少一个过滤器所识别的所述至少一个元素。
2.根据权利要求1所述的计算机实现的方法,其中,所述视觉场景是下述之一:
由所述电子设备的相机捕获的多帧实时视图;或者
单帧照片。
3.根据权利要求1或2所述的计算机实现的方法,其中,应用所述至少一个过滤器包括:基于来自用户的输入来应用过滤器。
4.根据权利要求3所述的计算机实现的方法,其中,来自所述用户的所述输入包括下述中的至少一个:
文本输入;
语音输入;或者
与所述用户相关联的推断输入,所述推断输入是使用机器学习根据所述用户的动作确定的。
5.根据前述权利要求中的任一项所述的计算机实现的方法,其中,确定所述视觉场景的所述场境是进一步基于来自用户的输入。
6.根据前述权利要求中的任一项所述的计算机实现的方法,其中,确定所述视觉场景的所述场境是进一步基于所述电子设备的地理学位置。
7.根据前述权利要求中的任一项所述的计算机实现的方法,其中,识别所述视觉场景的所述多个元素包括文本辨识或图像辨识中的至少一个。
8.根据前述权利要求中的任一项所述的计算机实现的方法,其中:
所述视觉场景是由所述电子设备的相机捕获的多帧实时视图;以及
使用所述至少一个过滤器识别的所述至少一个元素随着所述多帧实时视图的改变而改变。
9.根据前述权利要求中的任一项所述的计算机实现的方法,其中,响应于相应的选择,应用所应用的所述至少一个过滤器中的过滤器。
10.根据权利要求9所述的计算机实现的方法,其中,所述至少一个过滤器中的过滤器是从所述电子设备的显示器上的菜单中能够选择的。
11.根据前述权利要求中的任一项所述的计算机实现的方法,其中:
识别所述视觉场景的元素包括:
使用计算机视觉来识别所述元素;以及
使用互联网搜索来获得与所识别的元素相关联的至少一个细节;以及
应用所述至少一个过滤器包括:将所述至少一个过滤器应用于从所述互联网搜索所获得的所述至少一个细节。
12.根据前述权利要求中的任一项所述的计算机实现的方法,进一步包括:
接收对所述至少可视地指示的元素中的可视地指示的元素的选择;以及
响应于接收到所述选择,在所述电子设备的显示器上显示与所选择的元素相对应的信息。
13.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述电子设备包括下述中的至少一个:
智能电话;
膝上型计算机;
上网本计算机;
平板计算机;
增强现实眼镜;或者
头戴式显示器。
14.一种电子设备,包括:
存储指令的存储器;以及
处理器,所述处理器被配置为执行所述指令以使得所述电子设备用于:
接收视觉场景;
识别所述视觉场景的多个元素;
基于在所述视觉场景中所识别的多个元素,确定所述视觉场景的场境;
基于所确定的所述视觉场景的场境,应用至少一个过滤器,以识别与所述至少一个过滤器相对应的所述多个元素中的至少一个元素;以及
在所述电子设备的显示器上的所述视觉场景中,可视地指示使用所述至少一个过滤器所识别的所述至少一个元素。
15.根据权利要求14所述的电子设备,进一步包括被配置为捕获所述视觉场景的相机,所述视觉场景是下述之一:
多帧实时视图;或者
单帧照片。
16.根据权利要求14或15所述的电子设备,进一步包括至少一个输入设备,其中,应用所述至少一个过滤器包括:基于经由所述至少一个输入设备接收的输入来应用至少一个过滤器。
17.根据权利要求16所述的电子设备,其中,所接收的输入包括下述中的至少一个:
文本输入;
语音输入;或者
与用户相关联的推断输入,所述推断输入是使用机器学习根据所述用户的动作确定的。
18.根据权利要求14至17中的任一项所述的电子设备,其中,确定所述视觉场景的所述场境是进一步基于来自用户的输入。
19.根据权利要求14至18中的任一项所述的电子设备,其中,确定所述视觉场景的所述场境是进一步基于所述电子设备的地理学位置。
20.根据权利要求14至19中的任一项所述的电子设备,其中,识别所述视觉场景的所述多个元素包括文本辨识或图像辨识中的至少一个。
21.根据权利要求14至20中的任一项所述的电子设备,其中:
所述视觉场景是由所述电子设备的相机捕获的多帧实时视图;以及
使用所述至少一个过滤器识别的所述至少一个元素随着所述多帧实时视图的改变而改变。
22.根据权利要求14至21中的任一项所述的电子设备,其中,响应于经由所述电子设备的输入设备接收的相应选择,应用所述至少一个过滤器中的过滤器。
23.根据权利要求22所述的电子设备,其中,所述至少一个过滤器中的过滤器是从所述电子设备的显示器上的菜单中能够选择的。
24.根据权利要求14至23中的任一项所述的电子设备,其中:
识别所述视觉场景的元素包括:
使用计算机视觉来识别所述元素;以及
使用互联网搜索来获得与所识别的元素相关联的至少一个细节;以及
应用所述至少一个过滤器包括:将所述至少一个过滤器应用于从所述互联网搜索所获得的所述至少一个细节。
25.根据权利要求14至24中的任一项所述的电子设备,进一步包括:
接收对所述至少一个可视地指示的元素中的可视地指示的元素的选择;以及
响应于接收到所述选择,在所述电子设备的显示器上显示与所选择的元素相对应的信息。
26.一种在其上存储有指令的计算机可读介质,所述指令在由电子设备的处理器执行时,使得所述电子设备用于:
接收视觉场景;
识别所述视觉场景的多个元素;
基于在所述视觉场景中所识别的多个元素,确定所述视觉场景的场境;
基于所确定的所述视觉场景的场境,应用至少一个过滤器,以识别与所述至少一个过滤器相对应的所述多个元素中的至少一个元素;以及
在所述电子设备的显示器上的所述视觉场景中,可视地指示使用所述至少一个过滤器所识别的所述至少一个元素。
CN201980077221.XA 2018-11-25 2019-11-13 查找和过滤视觉场景的元素 Pending CN113168514A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862771129P 2018-11-25 2018-11-25
US62/771,129 2018-11-25
PCT/US2019/061202 WO2020106524A2 (en) 2018-11-25 2019-11-13 Finding and filtering elements of a visual scene

Publications (1)

Publication Number Publication Date
CN113168514A true CN113168514A (zh) 2021-07-23

Family

ID=68835316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980077221.XA Pending CN113168514A (zh) 2018-11-25 2019-11-13 查找和过滤视觉场景的元素

Country Status (3)

Country Link
US (2) US11574473B2 (zh)
CN (1) CN113168514A (zh)
WO (1) WO2020106524A2 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11933986B2 (en) * 2022-03-11 2024-03-19 Bank Of America Corporation Apparatus and methods to extract data with smart glasses

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102625937A (zh) * 2009-08-07 2012-08-01 谷歌公司 用于对视觉查询作出响应的体系结构
CN102761668A (zh) * 2012-07-13 2012-10-31 青岛海信传媒网络技术有限公司 基于图片中的电话号码信息拨打电话的方法及装置
US20130061148A1 (en) * 2011-09-01 2013-03-07 Qualcomm Incorporated Systems and methods involving augmented menu using mobile device
US20130085345A1 (en) * 2011-09-30 2013-04-04 Kevin A. Geisner Personal Audio/Visual System Providing Allergy Awareness
US20140172408A1 (en) * 2012-12-14 2014-06-19 Microsoft Corporation Text overlay techniques in realtime translation
CN103914539A (zh) * 2014-04-01 2014-07-09 百度在线网络技术(北京)有限公司 信息查询方法和装置
US20140344745A1 (en) * 2013-05-20 2014-11-20 Microsoft Corporation Auto-calendaring
CN105447109A (zh) * 2015-11-13 2016-03-30 小米科技有限责任公司 关键字词搜索方法及装置
CN107609914A (zh) * 2017-09-22 2018-01-19 上海爱优威软件开发有限公司 一种智能菜单设计方法及系统
CN107730402A (zh) * 2017-10-13 2018-02-23 李继泽 一种智能点餐系统及方法
CN108491839A (zh) * 2018-03-27 2018-09-04 北京小米移动软件有限公司 信息获取方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9547644B2 (en) * 2013-11-08 2017-01-17 Google Inc. Presenting translations of text depicted in images

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102625937A (zh) * 2009-08-07 2012-08-01 谷歌公司 用于对视觉查询作出响应的体系结构
US20130061148A1 (en) * 2011-09-01 2013-03-07 Qualcomm Incorporated Systems and methods involving augmented menu using mobile device
US20130085345A1 (en) * 2011-09-30 2013-04-04 Kevin A. Geisner Personal Audio/Visual System Providing Allergy Awareness
CN102761668A (zh) * 2012-07-13 2012-10-31 青岛海信传媒网络技术有限公司 基于图片中的电话号码信息拨打电话的方法及装置
US20140172408A1 (en) * 2012-12-14 2014-06-19 Microsoft Corporation Text overlay techniques in realtime translation
US20170255614A1 (en) * 2012-12-14 2017-09-07 Microsoft Technology Licensing, Llc Text overlay techniques in realtime translation
US20140344745A1 (en) * 2013-05-20 2014-11-20 Microsoft Corporation Auto-calendaring
CN103914539A (zh) * 2014-04-01 2014-07-09 百度在线网络技术(北京)有限公司 信息查询方法和装置
CN105447109A (zh) * 2015-11-13 2016-03-30 小米科技有限责任公司 关键字词搜索方法及装置
CN107609914A (zh) * 2017-09-22 2018-01-19 上海爱优威软件开发有限公司 一种智能菜单设计方法及系统
CN107730402A (zh) * 2017-10-13 2018-02-23 李继泽 一种智能点餐系统及方法
CN108491839A (zh) * 2018-03-27 2018-09-04 北京小米移动软件有限公司 信息获取方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
无: "BREAKTHROUGH MOBILE IMAGING EXPERIENCE", pages 1 - 26, Retrieved from the Internet <URL:《https://www.qualcomm.com/content/dam/qcomm-martech/dm-assets/documents/breakthrough_mobile_imaging_experiences_-_web_.pdf》> *

Also Published As

Publication number Publication date
WO2020106524A2 (en) 2020-05-28
US20230259993A1 (en) 2023-08-17
US20220027626A1 (en) 2022-01-27
WO2020106524A3 (en) 2020-07-23
US11574473B2 (en) 2023-02-07

Similar Documents

Publication Publication Date Title
US11287956B2 (en) Systems and methods for representing data, media, and time using spatial levels of detail in 2D and 3D digital applications
KR102038639B1 (ko) 증강 현실 및/또는 가상 현실에서의 터치 스크린 호버 검출
KR102173123B1 (ko) 전자장치에서 이미지 내의 특정 객체를 인식하기 위한 방법 및 장치
US11700220B2 (en) Generation of electronic media content collections
US20200310601A1 (en) Dynamic media selection menu
US9342930B1 (en) Information aggregation for recognized locations
US20200311116A1 (en) Context based media curation
US20130091462A1 (en) Multi-dimensional interface
US20190228031A1 (en) Graphical image retrieval based on emotional state of a user of a computing device
US10169342B1 (en) Filtering document search results using contextual metadata
KR20150046313A (ko) 증강 현실 표본 생성
US11533434B2 (en) Generating and rendering motion graphics effects based on recognized content in camera view finder
CN111736702A (zh) 利用计算设备的意图检测
US20220206645A1 (en) Management of screen content capture
WO2019105457A1 (zh) 图像处理方法、计算机设备和计算机可读存储介质
US20230259993A1 (en) Finding and Filtering Elements of a Visual Scene
KR102303206B1 (ko) 전자장치에서 이미지 내의 특정 객체를 인식하기 위한 방법 및 장치
EP3679485A1 (en) Context based operation execution
CN108052506A (zh) 自然语言处理方法、装置、存储介质及电子设备
US10831280B2 (en) Augmented reality system for efficient and intuitive document classification
Hu et al. Microcam: Leveraging smartphone microscope camera for context-aware contact surface sensing
CN116775924A (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