CN112740640A - 用于物联网设备的消歧的系统和方法 - Google Patents

用于物联网设备的消歧的系统和方法 Download PDF

Info

Publication number
CN112740640A
CN112740640A CN201980062023.6A CN201980062023A CN112740640A CN 112740640 A CN112740640 A CN 112740640A CN 201980062023 A CN201980062023 A CN 201980062023A CN 112740640 A CN112740640 A CN 112740640A
Authority
CN
China
Prior art keywords
iot device
input
agent
attributes
iot
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
CN201980062023.6A
Other languages
English (en)
Inventor
M·A·刘易斯
A·耶埃
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN112740640A publication Critical patent/CN112740640A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • H04L12/282Controlling appliance services of a home automation network by calling their functionalities based on user interaction within the home
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W60/00Affiliation to network, e.g. registration; Terminating affiliation with the network, e.g. de-registration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • H04W64/003Locating users or terminals or network equipment for network management purposes, e.g. mobility management locating network equipment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

一种装置可以标识第一位置中所包括的对象集中的每个对象,其中该对象集包括至少一个IoT设备和至少一个其他对象。该装置可以确定该至少一个IoT设备的第一属性集。该装置可以存储与该至少一个IoT设备相关联的注册信息,该注册信息包括与该至少一个IoT设备相关联的第一标识符并且包括该至少一个IoT设备的第一属性集。该装置可以获得输入。该装置可以基于与该至少一个IoT设备相关联的注册信息来确定该输入是否对应于该至少一个IoT设备。该装置可以在该输入对应于该至少一个IoT设备时控制该至少一个IoT设备。

Description

用于物联网设备的消歧的系统和方法
背景
根据35U.S.C.§119的优先权要求
本专利申请要求于2018年9月28日提交的题为“SYSTEM AND METHOD FORDISAMIGUATION OF INTERNET-OF-THINGS DEVICES(用于物联网设备的消歧的系统和方法)”的非临时申请No.16/147,319的优先权,该申请已被转让给本申请受让人并由此通过援引明确纳入于此。
技术领域
本公开的某些方面一般涉及机器学习,尤其涉及标识和注册一个或多个物联网设备的改进系统和方法。
背景技术
可包括一群互连的人工神经元(例如,神经元模型)的人工神经网络是一种计算设备或者表示将由计算设备执行的方法。
卷积神经网络是一种前馈人工神经网络。卷积神经网络可包括神经元集合,其中每个神经元具有感受野并且共同地拼出一输入空间。卷积神经网络(CNN)具有众多应用。具体而言,CNN已经在模式识别和分类领域中被广泛使用。
深度神经网络(DNN)可被训练以识别特征阶层并且因此它们已被越来越多地用于对象识别应用。其他模型也可用于对象识别。例如,支持向量机(SVM)是可被应用于分类的学习工具。尽管这些解决方案在数个分类基准上达到了优异的结果,但它们的计算复杂度可能极其高。另外,模型的训练可能是有挑战性的。
概述
以下给出了一个或多个方面的简要概述以提供对此类方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在标识出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一目的是以简化形式给出一个或多个方面的一些概念以作为稍后给出的更详细描述之序言。
本领域技术人员应当领会,本公开可容易地被用作修改或设计用于实施与本公开相同的目的的其他结构的基础。本领域技术人员还应认识到,这样的等效构造并不脱离所附权利要求中所阐述的本公开的教导。被认为是本公开的特性的新颖特征在其组织和操作方法两方面连同进一步的目的和优点在结合附图来考虑以下描述时将被更好地理解。然而,要清楚理解的是,提供每一幅附图均仅用于解说和描述目的,且无意作为对本公开的限定的定义。
在本公开的一方面,提供了一种用于操作计算网络的方法、计算机可读介质和装置。该装置包括存储器以及耦合至该存储器的至少一个处理器。该至少一个处理器可被配置成标识第一位置中所包括的对象集中的每个对象,并且该对象集可以包括至少一个IoT设备和至少一个其他对象。该至少一个处理器可被配置成确定该至少一个IoT设备的第一属性集,并且该第一属性集可以指示该至少一个IoT设备与该至少一个其他对象之间的第一空间关系。该至少一个处理器可被配置成存储与该至少一个IoT设备相关联的注册信息,并且该注册信息可包括与该至少一个IoT设备相关联的第一标识符并且可以包括该至少一个IoT设备的第一属性集。该至少一个处理器可被配置成获得输入。该至少一个处理器可被配置成基于与该至少一个IoT设备相关联的注册信息来确定该输入是否对应于该至少一个IoT设备。该至少一个处理器可被配置成在该输入对应于该至少一个IoT设备时控制该至少一个IoT设备。
本公开的附加特征和优点将在下文描述。本领域技术人员应当领会,本公开可容易地被用作修改或设计用于实施与本公开相同的目的的其他结构的基础。本领域技术人员还应认识到,这样的等效构造并不脱离所附权利要求中所阐述的本公开的教导。被认为是本公开的特性的新颖特征在其组织和操作方法两方面连同进一步的目的和优点在结合附图来考虑以下描述时将被更好地理解。然而,要清楚理解的是,提供每一幅附图均仅用于解说和描述目的,且无意作为对本公开的限定的定义。
附图简述
在结合附图理解下面阐述的详细描述时,本公开的特征、本质和优点将变得更加明显,在附图中,相同附图标记始终作相应标识。
图1解说了根据本公开的某些方面的使用片上系统(SOC)(包括通用处理器)来设计神经网络的示例实现。
图2是解说根据本公开的各方面的在与智能体相关联的视觉显示器上引用的各种物联网(IoT)设备的框图。
图3是解说根据本公开的各方面的位置的框图,该位置包括在空间上与存在于该位置处的一个或多个对象有关的一个或多个IoT设备。
图4是解说根据本公开的各方面的发现和控制IoT设备的方法的呼叫流图。
图5是解说根据本公开的各方面的一种注册和引用IoT设备的方法的示例的呼叫流图。
图6是解说根据本公开的各方面的发现和控制至少一个IoT设备的方法的流程图。
图7是解说根据本公开的各方面的发现位置中的对象的方法的流程图。
图8是解说根据本公开的各方面的确定输入是否与至少一个IoT设备相对应的方法的流程图。
详细描述
以下结合附图阐述的详细描述旨在作为各种配置的描述,而无意表示可实践本文中所描述的概念的仅有配置。本详细描述包括具体细节以提供对各种概念的透彻理解。然而,对于本领域技术人员将显而易见的是,没有这些具体细节也可实践这些概念。在一些实例中,以框图形式示出众所周知的结构和组件以避免湮没此类概念。
基于本教导,本领域技术人员应领会,本公开的范围旨在覆盖本公开的任何方面,不论其是与本公开的任何其他方面相独立地还是组合地实现的。例如,可以使用所阐述的任何数目的方面来实现装置或实践方法。另外,本公开的范围旨在覆盖使用作为所阐述的本公开的各个方面的补充或者与之不同的其他结构、功能性、或者结构及功能性来实践的此类装置或方法。应当理解,所披露的本公开的任何方面可由权利要求的一个或多个元素来实施。
措辞“示例性”在本文中用于意指“用作示例、实例、或解说”。本文中所描述为“示例性”的任何方面不必被解释为优于或胜过其他方面。
尽管在本文中描述了特定方面,但这些方面的众多变体和置换落在本公开的范围之内。虽然提到了一些益处和优点,但本公开的范围并非旨在被限定于特定益处、用途或目标。相反,本公开的各方面旨在能宽泛地应用于不同的技术、系统配置、网络和协议,其中一些作为示例在附图以及以下对优选方面的描述中解说。详细描述和附图仅仅解说本公开而非限定本公开,本公开的范围由所附权利要求及其等效技术方案来定义。
本文中所描述的各方面可以至少部分地通过一个或多个神经网络、机器学习模型、人工智能系统、强化学习系统、和/或其他类似计算系统来实践。此类系统在本公开中可被称为“智能体”或“智能助手”。将领会,这些术语并非旨在进行限定,而是旨在是解说性的。例如,如本文所使用的“智能体”可以指代本地系统和/或互连系统,诸如一个或多个本地传感器与远离该传感器布置的一个或多个处理器相耦合(例如,云计算)。
本公开可以提供一种用以注册和引用一个或多个物联网(IoT)设备的方法。注册IoT设备可以包括在智能体中存储与设备相关联的信息。例如,此类信息可以包括与IoT设备相关联的唯一性标识符。另外,注册IoT设备包括标识该智能体与该IoT设备之间的通信链路,例如以使该智能体可以与IoT设备进行通信。例如,智能体可以获得第一位置(例如,房间)的一个或多个图像。该智能体可以标识该第一位置内的一个或多个对象。该智能体可以标识作为智能体可操作以控制的IoT设备的那些对象中的一者或多者。该智能体可以构建指示这些对象中的每一者例如相对于彼此的位置的空间映射。在一个方面,该空间映射可来自参考系。
此后,该智能体可被配置成从用户接收输入(例如,自然语言输入)。该智能体可以从输入中标识描述IoT设备集中的一个IoT设备的属性集以及指示如何控制该IoT设备的命令。该智能体可以基于指示该IoT设备相对于第一位置中的一个或多个其他对象的空间关系的输入属性集来标识该IoT设备。例如,该智能体可以标识与第一位置中的一个或多个对象具有与描述由该用户观察到的IoT设备的空间关系的输入相匹配的空间关系的IoT设备。该智能体随后可以按与输入命令一致的方式来控制所标识的IoT设备。
图1解说了根据本公开的某些方面的使用片上系统(SOC)100对IoT设备进行前述注册和引用的示例实现,SOC 100可以包括通用处理器(CPU)或多核通用处理器(CPU)102。变量(例如,神经信号和突触权重)、与计算设备(例如,带有权重的神经网络)相关联的系统参数、延迟、频率槽信息、以及任务信息可被存储在与至少一个神经处理单元(NPU)108相关联的存储器块中、与CPU 102相关联的存储器块中、与图形处理单元(GPU)104相关联的存储器块中、与数字信号处理器(DSP)106相关联的存储器块中、专用存储器块118中,或者可跨多个块分布。在通用处理器102处执行的指令可从与CPU 102相关联的程序存储器加载或可从专用存储器块118加载。
SOC 100还可以包括为具体功能定制的附加处理块、连通性块110(其可包括第四代长期演进(4G LTE)连通性、无执照Wi-Fi连通性、USB连通性、蓝牙连通性等)以及例如可检测和识别姿势的多媒体处理器112。在一个实现中,NPU是在CPU、DSP和/或GPU中实现的——例如,一个或多个神经处理功能可以由CPU、DSP和/或GPU来执行。SOC 100还可以包括传感器处理器114、图像信号处理器(ISP)、和/或导航单元120(其可包括全球定位系统)。
SOC 100可基于ARM指令集。在本公开的一方面,加载到通用处理器102中的指令可以包括用于标识第一位置中所包括的对象集中的每个对象的代码,并且该对象集可以包括至少一个IoT设备和至少一个其他对象。这些指令可以包括用于确定该至少一个IoT设备的第一属性集的代码,并且该第一属性集可以指示该至少一个IoT设备与该至少一个其他对象之间的第一空间关系。这些指令可以包括用于存储与该至少一个IoT设备相关联的注册信息的代码,并且该注册信息可包括与该至少一个IoT设备相关联的第一标识符并且可以包括该至少一个IoT设备的第一属性集。这些指令可以包括用于获得输入的代码。这些指令可以包括用于基于与该至少一个IoT设备相关联的注册信息来确定该输入是否对应于该至少一个IoT设备的代码。这些指令可以包括用于在该输入对应于该至少一个IoT设备时控制该至少一个IoT设备的代码。
深度学习架构可通过学习在每一层中以逐次更高的抽象程度来表示输入、藉此构建输入数据的有用特征表示来执行对象识别任务。以此方式,深度学习解决了常规机器学习的主要瓶颈。在深度学习出现之前,用于对象识别问题的机器学习办法可能严重依赖人类工程设计的特征,或许与浅分类器相结合。浅分类器可以是两类线性分类器,例如,其中可将特征向量分量的加权和与阈值作比较以预测输入属于哪一类。人类工程设计的特征可以是由拥有领域专业知识的工程师针对特定问题领域定制的模版或内核。相比之下,深度学习架构可学习以表示与人类工程师可能会设计的类似的特征,但它是通过训练来学习的。此外,深度网络可以学习以表示和识别人类可能还没有考虑过的新类型的特征。
深度学习架构可以学习特征阶层。例如,如果向第一层呈递视觉数据,则第一层可学习以识别输入流中的相对简单的特征(诸如边)。在另一示例中,如果向第一层呈递听觉数据,则第一层可学习以识别特定频率中的频谱功率。取第一层的输出作为输入的第二层可以学习以识别特征组合,诸如对于视觉数据识别简单形状或对于听觉数据识别声音组合。例如,更高层可学习以表示视觉数据中的复杂形状或听觉数据中的词语。再高层可学习以识别常见视觉对象或口语短语。
深度学习架构在被应用于具有自然阶层结构的问题时可能表现特别好。例如,机动交通工具的分类可受益于首先学习以识别轮子、挡风玻璃、以及其他特征。这些特征可在更高层以不同方式被组合以识别轿车、卡车和飞机。
神经网络可被设计成具有各种各样的连通性模式。在前馈网络中,信息从较低层被传递到较高层,其中给定层中的每个神经元向更高层中的神经元进行传达。如上所述,可在前馈网络的相继层中构建阶层式表示。神经网络还可具有回流或反馈(也被称为自顶向下(top-down))连接。在回流连接中,来自给定层中的神经元的输出可被传达给相同层中的另一神经元。回流架构可有助于识别跨越不止一个按顺序递送给该神经网络的输入数据组块的模式。从给定层中的神经元到较低层中的神经元的连接被称为反馈(或自顶向下)连接。当高层级概念的识别可辅助辨别输入的特定低层级特征时,具有许多反馈连接的网络可能是有助益的。
跨各个位置(例如,家、工作场所等),IoT设备越来越普遍。在一些位置,各种IoT设备可以与允许与该各种IoT设备进行交互的智能助手或其他中枢通信地耦合。例如,用户可以使用智能助手来控制用户的家中的IoT设备。
为了引用IoT设备,可以通过标识符(例如,名称)(诸如该IoT设备的名称)来引用该IoT设备。但是,例如在发出语音命令时记住该IoT设备的标识符可能是麻烦的并令用户受挫。例如,IoT设备频繁地与自组织(ad-hoc)和/或非直观标识符或名称相关联,这可能令用户体验受挫。
鉴于前述内容,需要存在引用IoT设备而不必必须记住这些IoT设备的特定标识符的直观方式。确切而言,可以按改善用户体验的自然方式来引用每个IoT设备。例如,本公开可以呈现例如通过利用视觉和其他感官模式在具有智能助手或其他智能体的环境中使用语音命令来引用IoT设备的直观方式。相应地,用户可以在不知晓被指派给该IoT设备的确切标识符的情况下向该IoT设备发出命令。
图2解说了在与智能体相关联的视觉显示器200上引用的多个IoT设备的框图。例如,视觉显示器200可以呈现对可以通过该智能体控制的多个IoT设备的视觉引用。解说性地,该智能体可以通过该视觉显示器(例如,触摸屏)从用户接收输入,以控制一个或多个IoT设备(诸如布置在各个位置中的一个或多个灯具)。该智能体可以按与通过视觉显示器200接收的输入一致的方式控制该一个或多个灯具。然而,这种办法可能限制智能体的范围。也就是说,在视觉显示器200上引用的一个或多个IoT设备仅可以由智能体通过经由视觉显示器接收的输入来控制。视觉显示器200解说了用以接收输入的办法的一个示例,并且智能体可以通过一种或多种其他办法来接收输入,例如,包括文本输入和/或话音输入(例如,自然语言输入)。
在各方面,智能体可以包括允许智能体从不同的源(例如,一个或多个麦克风)接收各种输入的一种或多种不同的机制。为了智能地控制该一个或多个IoT设备,智能体可以标识(例如,学习)一个或多个IoT设备的一个或多个属性。当智能体接收到输入时,该智能体可以基于位置的空间映射来将一个或多个属性(例如,空间属性)与IoT设备的一个或多个属性智能地匹配。进一步基于该输入,该智能体随后可以控制与输入属性集相匹配的IoT设备,如本文中所描述的。
图3是解说根据本公开的各个方面的包括对象集的位置300的框图。图3解说了智能体302。智能体302可以包括一个或多个神经网络、机器学习模型、人工智能系统、强化学习系统、词嵌入模型、自然语言处理(NLP)模型和/或其他类似的计算系统。在一个方面,智能体302可被包括在虚拟助手、智能个人助手、和/或另一计算智能体中。参照图1,智能体302可以包括SoC 100和/或可以与SoC 100通信地耦合。
尽管图3将智能体302解说为被布置在位置300中,但是在智能体302不在位置300中时也可以实践本发明的各方面。例如,智能体302可以位于与位置300不同的另一房间中。在另一方面,智能体302可以与位于位置300中的传感器(例如,麦克风和/或相机)通信地耦合,同时智能体302位于远处(例如,在云或其他远程服务器中)。
位置300可以包括对象集310a-e、312a-k。对象集310a-e、312a-k可以包括IoT设备集310a-e。作为示例,IoT设备集310a-e可以包括电视310a、壁炉310b(例如,电子壁炉)、第一灯310c(例如,落地灯)、第二灯310d(例如,门厅灯)和第三灯310e(例如,桌灯)。IoT设备集310a-e可以由个体使用自然语言来引用,例如,“打开落地灯”、“打开门厅灯”、和/或“打开桌灯”。本公开包括任何数目的IoT设备,诸如水龙头、冰箱、烤箱、炉子、媒体中心、扬声器系统、游戏控制台、咖啡机、搅拌器、微波炉、恒温器、安全系统、相机、检测器(例如,烟雾检测器和/或一氧化碳检测器)、传感器、或能够通过网络(例如,无线局域网(WLAN)、WiFi等)(诸如因特网)进行通信的基本上任何其他设备。在一方面,智能体302可以例如通过网络与IoT设备310a-e通信地耦合。
在一个方面,智能体302可以为每个IoT设备310a-e注册或存储与相应标识符相关联的信息。智能体302可以经由相应标识符来引用IoT设备310a-e中的相应一者。例如,当智能体302向电视310a发出命令时,智能体302可以在网络上发送消息,并且该消息可以包括与电视310a相关联的相应标识符,并指示该命令旨在用于电视310a。
对象集310a-e、312a-k可以进一步包括非IoT对象集312a-k。作为示例,非IoT对象集312a-k可以包括第一图画312a、第二图画312b、第一沙发312c、窗户312d、第二沙发312e、有花的花瓶312f、咖啡桌312g、第一椅子312h、第二椅子312i、一组盆312j、和/或第一墙壁312k。
图4是解说根据各个方面的操作智能体的方法400的呼叫流图。智能体302可以确定420要发现存在于位置300中的IoT设备310a-e中的一者或多者。在一个方面,智能体302可以通过(例如,经由话音输入、经由可以与智能体302进行通信的设备、直接经由智能体等)获得提示(诸如用户输入)来确定420要发现一个或多个IoT设备310a-e。在另一方面,智能体302可以自动确定420要发现一个或多个IoT设备310a-e。
基于确定420要发现IoT设备310a-e,智能体可以执行422对IoT设备310a-e的发现,以确定在位置300处可用的IoT设备310a-e。例如,智能体302和IoT设备310a-e可以与一个网络404a(例如,WiFi网络或另一无线网络)连接。IoT设备310a-e可以在第一网络404a上发送相应的信息(例如,相应标识符和/或其他标识信息,诸如属性),并且智能体302可以获得IoT设备310a-e中的每一者的相应标识符。例如,智能体302可以从第一灯310c接收IoT设备信息424,其可以指示与第一灯310c相关联的标识符。
智能体302可以存储IoT设备310a-e中的每一者的相应标识符。此外,如果从IoT设备310a-e中的一者或多者提供了其他信息,则智能体302可以将该其他信息与对应的标识符相关联地存储。例如,智能体302可以存储IoT设备的类型、IoT设备的能力、和/或智能体302可获得的任何其他信息。在一些方面,智能体302可以在存储IoT设备310a-e中的一者或多者的相应标识符和/或对应信息时执行附加处理。例如,智能体302可以将IoT设备310a-e中的一者或多者分类——例如,可以将IoT设备310c-e分类为“灯”。
在一个方面,在执行422发现期间,智能体302可以将一个或多个相应的视觉属性与IoT设备310a-e中的每一者相关联。例如,智能体302可以获得第一图像数据426,其可以表示位置300并包括对IoT设备310a-e中的每一者的表示。第一图像数据426可以是静止图像或移动图像。
智能体302可以存储与IoT设备310a-e中的每一者相对应的相应属性(诸如视觉和/或空间属性)。例如,智能体302可以存储与一个IoT设备的标识符相对应的属性集,该标识符指示IoT设备是电视310a,并且该属性集可以指示电视310a在壁炉310b上方。在另一示例中,智能体302可以存储与一个IoT设备的标识符相对应的属性集,该标识符指示IoT设备是灯310c,并且该属性集可以指示灯310c在沙发312e左侧和/或灯310c的颜色是蓝色。智能体302可以将与IoT设备310a-e中的每一者相对应的属性集分类,例如,以将灯310c-e分类为具有打开/关闭灯的能力的群。
在执行422发现的一个方面,智能体302可以获得表示包括IoT设备310a-e的位置300的第二图像数据428(例如,静止图像或移动图像)。例如,智能体302可以获得第一图像数据426,并且在获得第二图像数据428之前等待一时间段(例如,预定时间段)。在一个方面,智能体302可以基于IoT设备310a-e中的至少一者的状态改变来获得第二图像数据428。例如,智能体302可以响应于来自第一灯310c的指示第一灯310c已改变状态(例如,从“关”状态改变为“开”状态,或反之)的消息来获得第二图像数据428。在另一方面,智能体302可以例如通过向第一灯310c发送命令来引起IoT设备310a-e中的至少一者的状态改变,该命令包括与第一灯310c相关联的标识符并指令第一灯310c改变状态(例如,通电)。智能体302可以基于引起状态改变来获得第二图像数据428。例如,智能体302可以向第一灯310c发出指示第一灯310c将改变状态(例如,从“关”状态改变为“开”状态,或反之)的命令。
在一方面,智能体302可以将第一图像数据426与第二图像数据428进行比较以检测一个或多个差异。例如,智能体302可以基于第一图像数据426(表示处于“关”状态的第一灯310c)与第二图像数据428(表示处于“开”状态的第一灯310c)之间的差异来确定第一灯310c现在处于“开”状态。智能体302可以确定第一灯310c的标识符(例如,包括在改变第一灯310c的状态的命令中)与第一灯310c在第一图像数据426和/或第二图像数据428中的表示相对应。也就是说,智能体302可以将第二图像数据428与第一图像数据426进行比较,以标识第二图像数据428与第一图像数据426之间的差异,并且标识与用所标识的差异表示的IoT设备相对应的第一灯310c(例如,与标识符相关联)(例如,可以标识第一灯310c在第一图像数据426中被断电但在第二图像数据428中被通电)。
基于所标识的差异,智能体302可以确定检测到的对象与IoT设备之间的对应关系。例如,智能体302可以从第一图像数据426中标识第一灯310c。此后,智能体302可以检测第一灯310c的状态改变(例如,通电)。智能体302可以将第一图像数据426与第二图像数据428进行比较,以检测到被标识为灯的对象经历了状态变化,并且因此该对象是第一灯310c。在一个方面,智能体302可以标识与第一灯310c相关联的第一标识符,并且智能体302可以注册或存储指示位置300中所表示的第一灯310c与第一标识符之间的对应关系的信息(例如,与第一灯310c相对应的第一标识符可被用来与第一灯310c进行通信(例如,控制第一灯310c))。
在一个方面,智能体302可以存储将第一灯310c(例如,在第一图像数据426和/或第二图像数据428中)的视觉表示与第一标识符相关联的信息,诸如视觉和/或空间属性/关系集(例如,第一灯310c在位置300中的定位、第一灯310c相对于一个或多个其他IoT设备310a-b、310d-e的定位和/或相对于一个或多个对象312a-k的定位、第一灯310c的颜色、第一灯310c的相对大小等)。相应地,智能体302可被配置成随时间在IoT设备集310a-e中的每个IoT设备经历相应的状态变化时发现IoT设备集310a-e中的每个IoT设备。
在一个方面,智能体302可以经由作为与智能体302通信地耦合的相机的IoT设备来获得第一图像数据426和/或第二图像数据428。例如,智能体302可以在第二网络404b上与相机通信地耦合,第二网络404b可以是有线或无线网络(例如,蓝牙或其他个域网(PAN)、WiFi网络等)(注意到,第一网络404a可以是与第二网络404b相同的网络)。智能体302可以自动获得第一图像数据426和/或第二图像数据428——例如,智能体302可以基于IoT设备310a-e中的一者的状态改变而在第二网络404b上自动向相机发出命令来捕获第二图像数据428。
在另一方面,智能体302可以基于用户输入来获得第一图像数据426和/或第二图像数据428。例如,智能体302可以在第二网络404b上与用户的个人设备(例如,智能电话、平板计算机等)和/或具有输出提示的能力的IoT设备310a-e(例如,电视310a可以输出音频提示或视觉提示)中的一者进行通信。智能体302可以在第二网络404b上向个人设备发送消息,该消息提示用户捕获表示位置300的图像数据,并且个人设备可以在第一网络404a上向智能体302发送该图像数据。智能体302可以基于IoT设备310a-e中的一者的状态改变来向个人设备发送消息,该消息例如提示用户捕获第二图像数据428,以使得智能体302可以标识第一图像数据426与第二图像数据428之间的差异。在另一示例中,智能体302可以从与智能体302通信地耦合的扬声器(例如,IoT扬声器、集成在智能体302的外壳中的扬声器)输出要捕获第一图像数据426和/或第二图像数据428的提示(诸如音频提示)。
在一个方面,智能体302可以系统地引起智能体302已经从其获得信息(例如,IoT设备310a-e中的每一者的相应标识符,其可以经由在第一网络404a上传达的相应消息来获得)的多个IoT设备的状态改变。例如,智能体302可以迭代通过智能体302已经从其获得信息的IoT设备中的每一者的列表(例如,智能体302可以在第一网络404a上从IoT设备310a-e中的每一者接收相应标识符),从而在每次迭代之后获得新的图像(例如,第二图像数据428)。因此,智能体302可以发现智能体302可以与其进行通信的每个IoT设备并对其编目(诸如通过对与IoT设备310a-e中的每一者相关联的相应位置进行编目)。
当智能体302发现IoT设备310a-e中的至少一者时,智能体302可以监视针对IoT设备310a-e中的一者的命令。在一个方面,智能体302可以经由麦克风来接收命令430。命令430可以是话音输入(诸如自然语言输入)。在另一方面,命令430可以经由消息来写入或获得,诸如从用户的个人设备获得并在第一网络404a上传达给智能体302的书写命令或其他消息。
智能体302可以处理432命令430以确定IoT设备310a-e中的哪个IoT设备被命令430引用。智能体302可以处理432命令430以确定描述IoT设备310a-e中的一者的输入属性集。例如,命令430可以指示“打开在沙发左侧的灯”。智能体302可以处理命令430以标识指示IoT设备的类型(例如,灯)以及IoT设备的相对位置(例如,在沙发左侧)的输入属性集。智能体302可以将输入属性集与所存储的属性集进行比较,以确定命令430引用了第一灯310c。例如,智能体302可以确定设备的类型为灯,并且智能体302可以检索类别灯的属性集。智能体302可以确定类型为灯并在沙发左侧的设备对应于第一灯310c。此外,智能体302可以处理432命令430以确定将要控制第一灯310c,以使得第一灯310c的状态变为“开”。相应地,智能体302可以在第一网络404a上向第一灯310c发送指令434,并且指令434可以使第一灯310c将状态改变为“开”。智能体302可以按与在本文中关于第一灯310c描述的类似的办法来标识和控制其他IoT设备310a-b、d-e。
在一方面,智能体302可以周期性地“刷新”与智能体302可以与其进行通信的IoT设备310a-e中的一者或多者相对应的全部或部分信息(例如,智能体302可以更新与IoT设备310a-e中的一者或多者相对应的一个或多个属性集)。也就是说,智能体302可被配置成确定420要根据预定时间段发现IoT设备310a-e。例如,智能体302可以在每二十四小时的时间段之后、在每周之后、和/或在另一时间段之后确定420要发现IoT设备310a-e。在一个方面,智能体302可以基于事件来确定420要发现IoT设备310a-e。例如,智能体302可能无法解码在第一网络404a上从IoT设备接收到的消息——例如,当红色沙发新放置在位置300中并且智能体302尚未标识位置300中的红色沙发时,命令430可能指示“打开红色沙发上方的灯”。在可能触发智能体302“刷新”的事件的进一步示例中,智能体302可能无法标识在第一网络404a上从其接收到的消息的IoT设备,智能体302可能基于第一图像数据426和/或第二图像数据428检测到该IoT设备已经移动,智能体302可能在第一网络404a上从智能体302尚未注册的IoT设备接收消息,或其他类似事件。
图5是解说根据各个方面的操作智能体的方法500的呼叫流图。方法500解说了发现和控制IoT设备的一个方面。例如,方法500可以是方法400的特定方面。相应地,智能体302’可以是图3和图4的智能体302的一方面。IoT设备310’可以是图3和图4中所解说的IoT设备310a-e中的一者(诸如电视310a、壁炉310b、灯310c-e中的一者或另一IoT设备)的一方面。
在各个方面,智能体302’可以包括相机506和/或可以与相机506通信地耦合,该相机506被配置成捕获图像数据(例如,静态图像、视频等)。此外,智能体302’可以包括麦克风508和/或可以与麦克风508通信地耦合。在一个方面,相机506和/或麦克风508可以位于用户的个人设备(例如,智能电话)、智能扬声器和/或另一虚拟助手上。
在各个方面,智能体302’可被配置成获得表示包括IoT设备集310a-e(310’)和非IoT对象集312a-k的位置300的第一图像数据520。例如,智能体302可以包括一个和多个相机(例如,网际协议(IP)相机、相机506等)和/或可以与一个和多个相机通信地耦合。在一个方面,智能体302’可以从用户获得第一图像数据520。例如,智能体302’可以从用户的智能手机或其他个人设备接收无线传输,并且该无线传输可以包括第一图像数据520。在各个方面,第一图像数据520可以是至少部分地表示位置300的静态图像、至少部分地表示位置300的视频记录、至少部分地表示位置300的移动图像、或表示位置300的视觉描绘的另一类型的数据。
在各个方面,智能体302’可以标识522位置300中的对象集310a-e(310’)、312a-k。智能体302’可以包括DNN和/或其他机器学习模型。例如,智能体302’可以包括一个或多个强化学习模型、CNN、RNN、或另一对象检测系统。在一个方面,智能体302’可以包括一个或多个神经网络,其实现用于对象检测(例如,实时对象检测)的单拍多盒检测器(SSD)和/或仅看一次(YOLO)。在一个方面,智能体302’可以通过使用DNN或其他模型/神经网络处理第一图像数据520来标识位置300中的对象集310a-e(310’)、312a-k中的每个对象。智能体302’可以获得该处理的输出,在该输出中标识出对象集310a-e(310’)、312a-k中的每个对象。
在一个方面,IoT设备310a-e中的一者或多者可以发送(例如,广播)标识一个或多个IoT设备310a-e的信息。例如,第一灯310c可以广播标识符和/或与第一灯310c相关联的其他信息(例如,指示能力、设备类型的信息、指示第一灯310c的状态改变的信息等)。
在一个方面,智能体302’可以检测524第一IoT设备310’的状态改变。例如,智能体302’可检测到第一IoT设备310’被通电或者第一IoT设备310’已经接收到与第一IoT设备310’相关联的信息(例如,经由来自用户的输入、经由由第一IoT设备310’传送给智能体302’的信息等)。例如,接收到的信息可以指示第一IoT设备310’现在处于通电状态(例如,经由用户输入、经由由第一灯310c传送的信息接收到的“第一灯现在为开”指示第一灯310c现在为开等)。智能体302’可以获得表示位置300的第二图像数据526。在一方面,智能体302’可以将第一图像数据520与第二图像数据526进行比较以检测一个或多个差异(例如,被通电的灯、现在正在流水的水龙头等)。例如,智能体302’可以基于第一图像数据520与第二图像数据526之间的差异来确定第一灯310c现在为开,并且智能体302’可以确定接收到的信息对应于第一灯310c。
在一个方面,智能体302’可以基于检测到的状态变化来获得第二图像数据526。例如,智能体302’可以使相机捕获位置300的图像,以将该图像与第一图像数据520进行比较。在一个方面,智能体302’可被配置成引起IoT设备310’的状态改变,例如,在第一图像数据520被处理之后并且在第二图像数据526被处理之前。例如,智能体302’可以从IoT设备310’接收通信,该通信指示与IoT设备310’相关联的信息(诸如IoT设备310’的标识符、IoT设备310’的类型等)。智能体302’可以捕获第二图像数据526,并且随后智能体302’可以向IoT设备310’发送引起IoT设备310’的状态改变的命令(例如,使IoT设备310’通电的命令)。然后,智能体302’可以捕获第二图像数据526。智能体302’可以将第二图像数据526与第一图像数据520进行比较,以标识第二图像数据526与第一图像数据520之间的差异,并且标识与所标识的差异相对应的IoT设备310’(例如,可以标识在第一图像数据520中被断电但在第二图像数据526中被通电的灯310c)。基于标识出IoT设备310’,智能体302’可以存储关联于IoT设备310’的信息(例如,与IoT设备310’相关联的标识符)与IoT设备310’的一个或多个属性之间的相关性,其可以从第一图像数据520和/或第二图像数据526(例如,IoT设备310’在房间中的定位、IoT设备310’的颜色、IoT设备的相对大小等)中导出。
在一个方面,智能体302’可以系统地引起智能体302’已经从其获得信息(例如,IoT设备中的每一者的相应标识符)的多个IoT设备(包括IoT设备310’)的状态改变。例如,智能体302’可以迭代通过智能体302’已经从其获得信息的IoT设备中的每一者的列表,在每次迭代之后捕获新图像(例如,第二图像数据526)。因此,智能体302’可以对智能体302’可以与其进行通信的每个IoT设备进行编目。
基于检测到的差异,智能体302’可以确定检测到的对象与IoT设备之间的对应关系。例如,智能体302’可以从第一图像数据520中将第一IoT设备310’标识为电视310a。此后,智能体302’可以检测第一IoT设备310’的状态改变(例如,通电)。智能体302’可以将第一图像数据520与第二图像数据526进行比较,以检测被标识为电视的对象经历了状态变化,并且因此该对象是第一IoT设备310’。此外,智能体302’可以(例如,经由来自用户的输入)接收指示电视310a已改变状态(例如,已被通电)的信息。智能体302’可以将第一图像数据520与第二图像数据526进行比较,以确定电视310a在第一图像数据520和第二图像数据526之间已经改变了状态,并且因此电视310a是(例如,经由用户输入)被引用的第一IoT设备310’。
智能体302’可以标识与第一IoT设备310’相关联的第一标识符,并且智能体302’可以注册或存储信息,该信息指示存在于位置300中(并在第一图像数据520和/或第二图像数据526中表示)的第一IoT设备310’与可被用来与第一IoT设备310’进行通信(例如,控制第一IoT设备310’)的第一标识符之间的对应关系。例如,智能体302’可以存储将第一IoT设备310’(例如,在第一图像数据520和/或第二图像数据526中)的视觉表示与第一标识符相关联的信息。相应地,智能体302’可被配置成随时间在IoT设备集310a-e(310’)中的每个IoT设备经历相应的状态变化时自动发现IoT设备集310a-e(310’)中的每个IoT设备。
在一个方面,智能体302’可以从用户接收输入,以标识第一IoT设备310’(例如,在第一图像数据520和/或第二图像数据526中表示)的视觉表示与同第一IoT设备310’相关联的第一标识符之间的对应关系。例如,智能体302’可以在第一IoT设备310’的状态改变之后接收与第一IoT设备310’相关联的第一输入。在一个方面,智能体302’可以在状态改变之后向用户提示第一输入以标识第一IoT设备310’,以使得智能体302’可以在第一图像数据520和/或第二图像数据526中标识第一IoT设备310’。
在一个方面,智能体302’可以从第一IoT设备310’接收输入,以标识第一IoT设备310’(例如,在第一图像数据520和/或第二图像数据526中表示)的视觉表示与同第一IoT设备310'相关联的第一标识符之间的对应关系。例如,智能体302’可以在第一IoT设备310’的状态改变之后接收与第一IoT设备310’相关联的第一输入525。例如,智能体302’可以从第一IoT设备310’接收指示第一IoT设备310’已经转变为通电状态的第一输入525,并且智能体302’可以在第一图像数据520和/或第二图像数据526中标识第一IoT设备310’。
相应地,智能体302’可以基于接收到的第一输入来标识第一IoT设备310’。在一个方面,智能体302’可以经由触觉或视觉输入来接收第一输入。例如,智能体302’可能检测到用户正在触摸或指向第一IoT设备310’(例如,基于通过相机506捕获的图像数据)。在另一方面,智能体302’可以接收作为话音输入的第一输入。例如,智能体302’可以(例如,通过麦克风508和/或直接通过智能体302’)接收对第一IoT设备310’的描述,诸如描述第一IoT设备310’的自然语言输入。在另一方面,智能体302’可以接收作为文本输入的第一输入(诸如直接通过智能体302’和/或通过用户的智能电话或其他个人设备)。
基于第一输入,智能体302’可以将由第一输入指示的第一IoT设备310’与关联于第一IoT设备310’的第一标识符进行相关。例如,智能体302’可以存储将第一IoT设备310’(例如,在第一图像数据520和/或第二图像数据526中)的视觉表示与第一标识符相关联的信息。相应地,智能体302’可以注册或存储信息,该信息指示存在于位置300中(并在第一图像数据520和/或第二图像数据526中表示)的第一IoT设备310’与可被用来与第一IoT设备310’进行通信(例如,控制第一IoT设备310’)的第一标识符之间的对应关系。
在一个方面,智能体302’可以基于同时定位和映射(SLAM)来将第一IoT设备310’与第一标识符进行相关。例如,用户可以(例如,带智能手机)在位置300周围行走并描述IoT设备310a-e。麦克风508可以接收用户的话音并将该话音提供给智能体302’。智能体302’可以获得用户的位置(例如,基于智能手机定位、另一传感器、和/或图像数据),并标识IoT设备310a-e中在从麦克风508获得的话音中用户正引用的IoT设备。相应地,智能体302’可以注册或存储信息,该信息指示存在于位置300中(并在第一图像数据520和/或第二图像数据526中表示)的第一IoT设备310’与可被用来与第一IoT设备310’进行通信(例如,控制第一IoT设备310’)的第一标识符之间的对应关系。
基于检测到的对象与IoT设备之间的对应关系,智能体302’可以为每个IoT设备310a-e(310’)确定528属性集。IoT设备集310a-e(310’)中的每个IoT设备的属性集可以指示IoT设备集310a-e(310’)中的相应IoT设备与对象集310a-e(310’)、312a-k中的至少一个其他对象之间的至少一个空间关系。
解说性地,智能体302’可以确定528第一IoT设备310’的第一属性集。第一属性集可以指示第一IoT设备310’与对象集310a-e(310’)、312a-k中的至少一个其他对象之间的空间关系。例如,第一属性集可以指示第一IoT设备310’为在壁炉310b上方的电视310a。在另一示例中,第一属性集可以指示第一IoT设备310’为在灯310c左侧的电视310a。在另一示例中,第一属性集可以指示第一IoT设备310’为在盆312j右侧的电视310a。在另一示例中,第一属性集可以指示第一IoT设备310’为在咖啡桌312g后方的电视310a。
智能体302’可以为IoT设备集310a-e(310’)中的每个IoT设备确定528属性集。在一个方面,智能体302可以构建空间映射,该空间映射指示通过位置300布置的对象集310a-e(310’)、312a-k中的每个对象的相应位置。在一个方面,空间映射可以指示对象集310a-e(310’)、312a-k中的每个对象的坐标、距离和/或矢量。
在一个方面,智能体302’可被配置成基于参考系来动态地引用和/或调整空间映射。例如,智能体302’可以基于第一图像数据520和/或第二图像数据526来构建空间映射。然而,智能体302’可以基于与在第一图像数据520和/或第二图像数据526中捕获的(诸)参考系不同的参考系来动态地引用和/或调整空间映射。智能体302’可以基于该参考系来确定第一IoT设备310’的一个或多个空间属性。例如,可以基于该参考系来动态地确定和/或更新第一IoT设备310’的一个或多个空间属性。
在一个方面,智能体302’可以基于(例如,通过WiFi定位、PAN定位、诸如蓝牙定位、或另一办法)指示用户的智能电话的定位的信息来确定参考系。智能体302’可以获得(例如,接收)指示智能手机的定位的信息,并且智能体302’可以基于与检测到的智能手机一致的参考系来动态地引用和/或更新空间映射。在另一示例中,智能体302’可以(例如,通过相机506)来接收图像数据并标识用户在位置300中的定位。基于用户的定位,智能体302’可以基于与用户的定位一致的参考系来动态地引用和/或更新空间映射。
在一个方面,每个IoT设备310a-e(310’)的属性集可以指示除空间属性之外的其他属性。例如,第一IoT设备310’的第一属性集可以包括与第一IoT设备310’相关联的分类。分类属性可以指示第一IoT设备310’的类别或类型。例如,分类属性可以指示第一IoT设备310’为电视310a,分类属性可以指示第一IoT设备310’为壁炉310b,分类属性可以指示第一IoT设备310’为灯310c,等等。
在另一示例中,第一IoT设备310’的第一属性集可以包括与第一IoT设备310’相关联的视觉属性。视觉属性可以指示第一IoT设备310’的一个或多个物理特性。例如,视觉属性可以指示第一IoT设备310’为某种颜色(例如,红色、绿色、蓝色等)。在另一示例中,视觉属性可以指示第一IoT设备310’具有特定或相对大小(例如,“大”电视)。在另一示例中,视觉属性可以指示第一IoT设备310’包括一个或多个物理特征(例如,带阴影的灯)。在另一示例中,视觉属性可以指示第一IoT设备310’具有一形状。
在另一示例中,第一IoT设备310’的第一属性集可以包括与第一IoT设备310’相关联的能力属性。能力属性可以指示第一IoT设备310’的一个或多个能力。例如,能力属性可以指示第一IoT设备310’能够完成或执行的一个或多个命令。能力属性的示例可以是第一IoT设备310’能够通电或断电(例如,当第一IoT设备310’为电视310a或灯310c时)。能力属性的另一示例可以是第一IoT设备310’能够打开或关闭灯(例如,当第一IoT设备310’为灯310c时)。能力属性的另一示例可以是第一IoT设备310’能够将烘烤温度设为400度(例如,当第一IoT设备310’为烤箱时)。能力属性的另一示例可以是第一IoT设备310’能够打开或关闭水流(例如,当第一IoT设备310’为水龙头时)。
在一个方面,智能体302’可以与相应属性集相关联地存储530(例如,注册)每个IoT设备310a-e(310’)。例如,智能体302’可以存储注册信息,该注册信息包括与第一IoT设备310’相关联的第一标识符并且还包括第一IoT设备310’的第一属性集。相应地,智能体302’可以在存储器(例如,本地或远程存储器)中与相应属性集相关联地注册相应IoT设备310a-e(310’)的相应标识符。因此,智能体302’可以基于相应属性集来标识相应IoT设备310a-e(310’)的相应标识符,以与相应IoT设备310a-e(310’)进行通信。
在各个方面,智能体302’可以基于注册信息来控制每个IoT设备310a-e(310’)的操作,该注册信息包括与相应IoT设备310a-e(310’)相关联的相应标识符并且还包括至少一个IoT设备的相应属性集。例如,智能体302’可以获得(例如,接收)IoT控制输入532,该IoT控制输入532指示输入属性集并且还包括针对IoT设备的命令。智能体302’可以将输入属性集与相应注册信息中所指示的每个所存储属性集进行比较,并且智能体302’可以标识与该输入属性集相匹配的所注册的第一属性集。当所注册的第一属性集与输入属性集近似类似(例如,在阈值误差裕量内)和/或最接近地相匹配(例如,相对于所注册的其他属性集)时,智能体302’可以认为所注册的第一属性集与该输入属性集相匹配。
智能体302’随后可以标识对应于与该输入属性集相匹配的所注册的属性集的相应标识符。基于该相应标识符,智能体302’可以根据输入命令来控制与该相应标识符相对应的IoT设备310a-e(310’)中的相应一者的操作。
例如,第一IoT设备310’可以为第一灯310c。智能体302’可以获得(例如,接收)指示“在沙发左侧”的“灯”的输入属性集的IoT控制输入532以及“将亮度调低”的输入命令。因此,输入属性集可以包括多个属性,诸如空间属性、分类属性、视觉属性、和/或能力属性。
智能体302’可被配置成将输入属性集中的每个输入属性与所注册的属性集的相应对应属性进行匹配。例如,智能体302’可以将输入属性“灯”与第一灯310c的分类属性进行匹配,并且可以将输入属性“在沙发左侧”与指示在沙发312e左侧的相对位置(例如,当用户位于沙发312e前方时从用户的角度来看)的空间属性进行匹配。智能体302’可以标识与第一灯310c相对应的第一标识符。智能体302’随后可以生成指示输入命令(例如,降低亮度)的消息,并且智能体302’可以将所生成的消息提供给第一灯310c,以使第一灯310c降低亮度。
在一个方面,智能体302’可以获得(例如,接收)作为自然语言输入的IoT控制输入532。例如,麦克风508可以从用户接收自然语言输入,并且智能体302’可以从麦克风508获得自然语言输入。智能体302’可以从自然语言输入检测输入属性集和输入控制操作。
在一个方面,智能体302’可以使用DNN来解析自然语言输入,以标识输入属性集和输入控制操作。在各个方面,智能体302’可以使用NLP模型、词嵌入、和/或另一语言建模或特征标识技术来解析自然语言输入。
根据输入属性集,智能体302’可以标识至少一个IoT设备的标识符。例如,智能体302’可以将输入属性集中的每个输入属性与关联于第一IoT设备310’的第一属性集中的每个对应第一属性进行比较(例如,将输入空间属性与第一属性集中的第一空间属性进行比较,将输入分类属性与第一属性集中的第一分类属性进行比较,等等)。在一个方面,智能体302’可以使用DNN以将关联于输入属性集的各特征进行比较或分类,并且智能体302’可以使用DNN的特征比较或分类来比较或对应于第一属性集。当智能体302’确定第一属性集与输入属性集相匹配时,智能体302’可以标识与第一IoT设备310’相关联的第一标识符(例如,智能体302’可以存储指示第一属性集与关联于第一IoT设备310’的第一标识符之间的对应关系的映射)。
智能体302’随后可以基于第一标识符的标识和输入控制操作来控制第一IoT设备310’的操作。例如,智能体302’可以标识与输入控制操作相对应的第一IoT设备310’的操作或功能(诸如通电或断电、改变频道、调节照明水平、设置温度等)。
输入控制操作的其他各种示例包括相对或上下文输入。例如,智能体302’可以获得指示灯310c将通过在灯310c后方的窗口312d与自然光平衡的IoT控制输入532。智能体302’可以(例如,从环境光传感器)获得当前照明水平,并且智能体302’可以确定为了与当前照明水平一致而要将灯310c调节到的水平。在另一示例中,智能体302’可以接收指示“打开在在沙发旁边左侧的灯”的IoT控制输入532。智能体302’可以标识在位置300右侧的沙发312e(例如,基于参考系),并且智能体302’随后可以标识在位置300右侧的沙发312e旁边的灯310c。
智能体302’可以向第一IoT设备310’发出命令或指令534以执行所标识的操作或功能。例如,智能体302’可以生成包括第一标识符并且包括该命令或指令的指令消息534。
智能体302’可以在网络上发送所生成的指令消息534,以供由第一IoT设备310’接收。第一IoT设备310’可以接收指令消息534。作为响应,第一IoT设备310’可以确定指令消息534旨在用于第一IoT设备310’(例如,通过将第一IoT设备310’的标识符与指令消息534中所指示的标识符进行比较)。第一IoT设备310’可以完成或执行由指令消息534所指示的指令。例如,第一IoT设备310’可以通电、改变频道、调节照明水平、调节温度、关闭、调节音量、或IoT设备能够实现的基本上任何其他功能。
图6解说了根据各个方面的操作与至少一个IoT设备处于通信的智能体的方法600。该方法可以由智能体(诸如智能体302/302’)来实践。可以置换、省略和/或同期地执行所解说的操作中的一者或多者。用虚线解说的操作可以是可任选的。
以操作702开始,该智能体可以确定要标识IoT设备集。例如,该智能体可以获得提示(诸如用户输入)。该智能体可以基于该提示来确定要标识IoT设备集。在另一方面,该智能体可以基于时间周期来确定要标识IoT设备集。例如,该智能体可以在一天之后、在一周之后、和/或在另一时间周期之后周期性地确定要标识IoT设备集。在另一方面,该智能体可以基于事件来确定要标识IoT设备集。例如,当智能体无法解码接收自IoT设备的消息时,当智能体从新的(例如,未注册的)IoT设备接收到消息时,当智能体(例如,基于图像数据)检测到IoT设备已经移动时,和/或基于另一事件,智能体可以确定要标识IoT设备集。
在图3-4的上下文中,智能体302可以确定420要发现存在于位置300中的IoT设备310a-e中的一者或多者。在一个方面,智能体302可以通过(例如,经由话音输入、经由可以与智能体302进行通信的设备、直接经由智能体等)获得提示(诸如用户输入)来确定420要发现一个或多个IoT设备310a-e。在另一方面,智能体302可以自动确定420要发现一个或多个IoT设备310a-e。在图5中所解说的示例中,智能体302’可以确定智能体302’将标识522对象集,并且该对象集可以包括IoT设备集。
在操作604,该智能体可以在网络上接收与该IoT设备集中的至少一个IoT设备相关联的信息。例如,该智能体可以在WiFi网络上从IoT设备接收消息,并且该消息可以指示与该IoT设备相关联的标识符。该智能体可以存储该信息以标识该IoT设备。在图3-4的上下文中,智能体302可以从第一灯310c接收IoT设备信息424,其可以包括与第一灯310c相关联的标识符。在图5中所解说的示例中,智能体302’可以从IoT设备310’接收信息,并且所接收的信息可以包括与IoT设备310’相关联的标识符。
在操作606,该智能体可以标识第一位置中所包括的对象集中的每个对象。在一方面,该对象集可以包括至少一个IoT设备和至少一个其他对象。例如,该智能体可以获得表示位置的第一图像数据,并且该智能体可以使用神经网络(例如,DNN)来处理该第一图像数据。该神经网络可以处理第一图像数据以生成至少一个输出,并且该输出可以标识由第一图像数据所表示的第一位置中所包括的对象集中的每个对象(例如,该输出可以指示关于该对象集(包括IoT设备集)中的每个对象的分类或类别)。在图3-4的上下文中,智能体302可以执行422对第一图像数据426所表示的位置300中所包括的对象集310a-e、312a-k中的每个对象的发现。在图5中所解说的示例中,智能体302’可以标识522表示位置300的第一图像数据520中所包括的对象。
在操作608,该智能体可以确定该至少一个IoT设备的第一属性集。在各方面,该第一属性集可以指示至少一个IoT设备与至少一个其他对象之间的视觉和/或空间属性(例如,(诸)关系)。在一个方面,该空间关系可以基于所标识的参考系。在一个方面,该智能体可以构建空间映射,该空间映射相对于第一位置中的至少一个其他对象表示至少一个IoT设备。该智能体可以进一步确定至少一个IoT设备的一个或多个其他属性(例如,分类属性、视觉属性、能力属性等)。
在一方面,该智能体可以基于图像数据(例如,第一图像数据和第二图像数据、移动图像数据等)来确定至少一个IoT设备的第一属性集。例如,该智能体可检测到至少一个IoT设备的状态改变,并且该智能体可以标识经历了该状态改变的至少一个IoT设备的标识符。该智能体可以将该第一图像数据与该第二图像数据进行比较,以确定在状态改变之后在该第一图像数据与该第二图像数据之间不同的至少一个IoT设备,并且该智能体可以推断出该标识符对应于在该第一图像数据与该第二图像数据之间不同的至少一个IoT设备。
在另一方面,该智能体可以基于与至少一个IoT设备相关联的第一输入(例如,用户输入)来确定该第一属性集。例如,该智能体可检测到至少一个IoT设备的状态改变,并且该智能体可以标识经历了该状态改变的至少一个IoT设备的标识符。该智能体可以例如在状态改变之后(例如,通过麦克风或相机)接收描述该至少一个IoT设备的第一输入,并且该智能体可以推断出该标识符对应于由该第一输入描述的至少一个IoT设备。
在图3-4的上下文中,智能体302可以执行422对IoT设备的发现,包括标识第一灯310c的第一属性集。该第一属性集可以指示第一灯310c与该对象集中的至少一个其他对象(例如,IoT设备310a-b、310d-e和/或非IoT对象312a-k)之间的视觉和/或空间关系。例如,智能体302可以确定第一灯310c的第一属性集,并且该第一属性集可以指示为“灯”的分类属性以及指示在沙发左侧、在窗口前侧等的空间关系。在图5中所解说的示例中,智能体302’可以确定528IoT设备310’的属性,并且该第一属性集可以指示第一IoT设备310’与对象集310a-e、312a-k中的至少一个其他对象之间的空间关系。例如,智能体302/302’可以确定电视310a的第一属性集,并且该第一属性集可以指示为“电视”的分类属性以及指示在壁炉上方、在后壁上、在盆右侧等的空间关系。
在操作610,该智能体可以存储包括与该至少一个IoT设备相关联的该第一标识符和该第一属性集的注册信息。例如,该智能体可以存储第一属性集,并且该智能体可以存储指示第一属性集与该至少一个IoT设备的第一标识符之间的对应关系的信息。在图3-4的上下文中,智能体302可以执行422对IoT设备310a-e的发现,包括存储包括与第一灯310c相关联的第一标识符并包括第一灯310c的第一属性集的注册信息。
在操作612,该智能体可以获得输入。在各个方面,该输入可以是话音输入(例如,自然语言输入)。例如,该智能体可以获得(例如,通过麦克风接收)自然语言输入,并且该智能体可以解析该自然语言输入以标识输入属性集和输入控制操作。在另一方面,可以从与智能体302通信地耦合的设备(例如,智能电话)接收输入,并且可以由用户提供该输入。在图3-4的上下文中,智能体302可以获得命令430。在图5中所解说的示例中,智能体302’可以获得IoT控制输入532。
在操作614,该智能体可以基于与该至少一个IoT设备相关联的所存储注册信息来确定该输入是否对应于该至少一个IoT设备。例如,该智能体可以处理输入(例如,使用神经网络,诸如DNN)以标识该输入属性集,并且该智能体可以将该输入属性集与存储为与该至少一个IoT设备相关联的注册信息的所存储属性集进行相关。该智能体可以至少部分地将该输入属性集中的一者或多者与所存储属性集中的一者或多者进行匹配,并且该智能体可以确定与该IoT设备相关联的标识符,该IoT设备与至少部分地与输入属性集匹配的所存储属性集相关联。在一方面,该输入可以指示至少一个IoT设备与至少一个其他对象之间的输入空间关系,并且确定输入是否对应于该至少一个IoT设备可以基于在输入空间属性与关联于该至少一个IoT设备的属性集中所包括的第一空间属性之间的对应关系(例如,至少部分地匹配)。
在图3-4的上下文中,智能体302可以处理432命令430以标识输入属性集。智能体302可以至少部分地将该输入属性集与关联于第一灯310c的所存储属性集进行匹配,以确定命令430旨在用于第一灯310c。在图5中所解说的示例中,智能体302’可以处理IoT控制输入532以标识输入属性集。智能体302可以至少部分地将该输入属性集与关联于IoT设备310’的所存储属性集进行匹配,以确定IoT控制输入532旨在用于IoT设备310’。
在操作616,该智能体可以在该输入对应于该至少一个IoT设备时控制该至少一个IoT设备的操作。例如,该智能体可以生成消息,该消息包括与(至少部分地)匹配的属性集相对应并与该至少一个IoT设备相关联的第一标识符。该智能体可以处理该输入以标识用于该至少一个IoT设备的命令。该智能体可以在所生成的消息中包括用以执行与所标识的命令一致的操作的指令。该智能体可以在网络上向该至少一个IoT设备发送该消息。在图3-4的上下文中,智能体302可以通过在网络404a上向第一灯310c发送指令434来控制第一灯310c的操作。在图5中所解说的示例中,智能体302’可以通过向IoT设备310’发送指令消息534来控制IoT设备310’的操作。
参照图7,流程图解说了一种方法700,该方法是操作606的一个方面,其中该智能体可以标识第一位置中所包括的对象集中的每个对象。在操作702,该智能体可以获得表示包括对象集的第一位置的第一图像数据。在一方面,该对象集可以包括至少一个IoT设备和至少一个其他对象(例如,驻定对象或另一IoT设备)。例如,该智能体可以向相机请求表示包括对象集的第一位置的第一图像数据。基于该请求,该智能体可以接收表示第一位置的第一图像数据。
在图3-4的上下文中,智能体302可以获得表示包括对象集310a-e、312a-k的位置300的第一图像数据426。对象集可以包括IoT设备310a-e和非IoT对象集312a-k。在一方面,智能体302可以在网络404a上(例如,经由与智能体302通信地耦合的相机)获得第一图像数据426。在图5中所解说的示例中,智能体302’可以获得表示包括对象集310a-e(310’)、312a-k的位置300的第一图像数据520。对象集可以包括IoT设备310a-e(310’)和非IoT对象集312a-k。在一方面,智能体302’可以通过相机506来获得第一图像数据520。
在操作704,该智能体可以改变该至少一个IoT设备的状态。例如,该智能体可以生成包括与至少一个IoT设备相关联的标识符的命令,并且该智能体可以在网络上向该至少一个IoT设备发送该命令。该命令可以使该至少一个IoT设备从第一状态(例如,断电、第一频道、第一温度等)改变为第二状态(例如,通电、第二频道、第二温度等)。在图3-4的上下文中,智能体302可以通过在网络404a上发送包括与第一灯310c相关联的标识符的消息来引起与第一灯310c相关联的状态改变。在图5中所解说的示例中,智能体302’可以例如基于输入525来检测524与第一IoT设备310’相关联的状态改变。在一个方面,智能体302’可以引起IoT设备310’的状态改变。
在操作706,该智能体可以在该至少一个IoT设备的状态改变之后获得表示该第一位置的第二图像数据。例如,该智能体可以向相机请求第二图像数据,该第二图像数据表示包括该对象集的第一位置。基于该请求,该智能体可以接收表示第一位置的第二图像数据。在图3-4的上下文中,智能体302可以获得表示包括对象集310a-e、312a-k的位置300的第二图像数据428。例如,智能体302可以在网络404b上例如从与智能体302通信地耦合的设备获得第二图像数据428。在图5中所解说的示例中,智能体302’可以获得表示包括对象集310a-e(310’)、312a-k的位置300的第二图像数据526。在一方面,智能体302/302’可以通过相机506来获得第二图像数据。
在操作708,该智能体可以将该第一图像数据与该第二图像数据进行比较,以检测一个或多个差异。例如,该智能体可以基于第一图像数据(表示处于“关闭”状态的至少一个IoT设备)与第二图像数据(表示处于“开启”状态的至少一个IoT设备)之间的差异来确定该至少一个IoT设备现在处于“开启”状态,并且该智能体可以确定至少一个IoT设备的标识符(以及相关联的所存储注册信息)与该至少一个IoT设备在第一图像数据和/或第二图像数据中的表示相对应。
在图3-4的上下文中,智能体302可以将第二图像数据428与第一图像数据426进行比较,以标识第二图像数据428与第一图像数据426之间的差异,并且标识与用所标识的差异表示的IoT设备相对应的第一灯310c(例如,可以标识在第一图像数据426中被断电但在第二图像数据428中被通电的第一灯310c)。相应地,智能体302可以存储与在第一图像数据426和/或第二图像数据428中表示的第一灯310c相对应的视觉和/或空间属性和/或关系。在图5中所解说的示例中,智能体302’可以基于将第一图像数据520与第二图像数据526进行比较来确定528IoT设备310’的属性。
参照图8,流程图解说了一种方法800,该方法是操作614的一个方面,其中该智能体可以基于与该至少一个IoT设备相关联的所存储注册信息来确定该输入是否对应于该至少一个IoT设备。在操作802,该智能体可以处理该输入以确定输入属性集和指令。在各个方面,该输入可以是话音输入、书写输入和/或由该智能体接收到的其他输入(例如,经由与该智能体通信地耦合的设备)。例如,该智能体可以(例如,通过麦克风)获得描述至少一个IoT设备的话音输入(例如,自然语言输入)或(例如,通过相机)获得描绘(例如,由用户)对至少一个IoT设备的选择或标识的图像数据。该智能体可以处理或解析该输入(例如,使用神经网络)以确定输入属性集和输入指令。在图3-4的上下文中,智能体302可以处理432在网络404b上接收到的命令430。例如,智能体302可以处理432命令430以标识输入属性集和输入命令。在图5中所解说的示例中,智能体302’可以获得与第一IoT设备310’相关联的IoT控制输入532(例如,通过相机506和/或麦克风508)。
在操作804,该智能体可以基于该输入属性集与为该至少一个IoT设备存储的第一属性集之间的对应关系来标识与该至少一个IoT设备相关联的第一标识符。例如,该智能体可以将该输入属性集与一个或多个所注册属性集(例如,作为关于该至少一个IoT设备的注册信息来存储)进行比较。该智能体可以确定该输入属性集是否至少部分地与所存储属性集相匹配。如果该智能体确定该输入属性集至少部分地与所存储属性集相匹配,则该智能体可以标识与匹配的所注册属性集相对应的第一标识符。相应地,该智能体可以向该至少一个IoT设备的标识符发送指令消息,并且该指令消息可以包括第一标识符并指示输入命令,以控制该至少一个IoT设备。在图3-4的上下文中,智能体302可以处理432命令430以确定命令430中所包括的输入属性集是否至少部分地与关联于第一灯310c的所存储属性集相匹配。当命令430中所包括的输入属性集至少部分地与关联于第一灯310c的所存储属性集相匹配时,智能体302可以向第一灯310c发送指令434。该智能体可以生成指令434以包括与第一灯310c相关联的标识符和输入命令,以控制第一灯310c。在图5中所解说的示例中,智能体302’可以基于IoT控制输入532和所存储注册信息(例如,存储530)来标识与第一IoT设备310’相对应的第一标识符。
在一种配置中,智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统被配置成标识第一位置中所包括的对象集中的每个对象,并且该对象集可以包括至少一个IoT设备和至少一个其他对象。该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统被进一步配置成确定该至少一个IoT设备的第一属性集,并且该第一属性集可以指示该至少一个IoT设备与该至少一个其他对象之间的第一空间关系。该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统被进一步配置成存储与该至少一个IoT设备相关联的注册信息,并且该注册信息可包括与该至少一个IoT设备相关联的第一标识符并且可以包括该至少一个IoT设备的第一属性集。该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统被进一步配置成获得输入。该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统被进一步配置成基于与该至少一个IoT设备相关联的注册信息来确定该输入是否对应于该至少一个IoT设备。该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统被进一步配置成在该输入对应于该至少一个IoT设备时控制该至少一个IoT设备。
该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统可以包括用于标识第一位置中所包括的对象集中的每个对象的装置,并且该对象集可以包括至少一个IoT设备和至少一个其他对象。用于标识第一位置中所包括的对象集中的每个对象的装置可以是通用处理器102、与通用处理器102相关联的程序存储器、和/或被配置成执行所叙述的功能的存储器块118。在另一配置中,用于标识第一位置中所包括的对象集中的每个对象的装置可以是任何模块、任何组件、和/或被配置成执行由前述装置所叙述的功能的任何装备(诸如智能体302/302’)或其组件。
该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统可以包括用于确定该至少一个IoT设备的第一属性集的装置,并且该第一属性集可以指示该至少一个IoT设备与该至少一个其他对象之间的第一空间关系。用于确定该至少一个IoT设备的第一属性集的装置可以是通用处理器102、与通用处理器102相关联的程序存储器、和/或被配置成执行所叙述的功能的存储器块118。在另一配置中,用于确定该至少一个IoT设备的第一属性集的装置可以是任何模块、任何组件、和/或被配置成执行由前述装置所叙述的功能的任何装备(诸如智能体302/302’)或其组件。
该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统可以包括用于存储与该至少一个IoT设备相关联的注册信息的装置,并且该注册信息可包括与该至少一个IoT设备相关联的第一标识符并且可以包括该至少一个IoT设备的第一属性集。用于存储与该至少一个IoT设备相关联的注册信息的装置可以是通用处理器102、与通用处理器102相关联的程序存储器、和/或被配置成执行所叙述的功能的存储器块118。在另一配置中,用于存储与该至少一个IoT设备相关联的注册信息的装置可以是任何模块、任何组件、和/或被配置成执行由前述装置所叙述的功能的任何装备(诸如智能体302/302’)或其组件。
该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统可以包括用于获得输入的装置。用于获得输入的装置可以是通用处理器102、与通用处理器102相关联的程序存储器、和/或被配置成执行所叙述的功能的存储器块118。在另一配置中,获得输入可以是任何模块、任何组件、和/或被配置成执行由前述装置所叙述的功能的任何装备(诸如智能体302/302’)或其组件。
该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统可以包括用于基于与该至少一个IoT设备相关联的注册信息来确定该输入是否对应于该至少一个IoT设备的装置。用于基于与该至少一个IoT设备相关联的注册信息来确定该输入是否对应于该至少一个IoT设备的装置可以是通用处理器102、与通用处理器102相关联的程序存储器、和/或被配置成执行所叙述的功能的存储器块118。在另一配置中,用于基于与该至少一个IoT设备相关联的注册信息来确定该输入是否对应于该至少一个IoT设备的装置可以是任何模块、任何组件、和/或被配置成执行由前述装置所叙述的功能的任何装备(诸如智能体302/302’)或其组件。
该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统可以包括用于在该输入对应于该至少一个IoT设备时控制该至少一个IoT设备的装置。用于在该输入对应于该至少一个IoT设备时控制该至少一个IoT设备的装置可以是通用处理器102、与通用处理器102相关联的程序存储器、和/或被配置成执行所叙述的功能的存储器块118。在另一配置中,用于在该输入对应于该至少一个IoT设备时控制该至少一个IoT设备的装置可以是任何模块、任何组件、和/或被配置成执行由前述装置所叙述的功能的任何装备(诸如智能体302/302’)或其组件。
该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统可以包括用于在网络上接收与该至少一个IoT设备相关联的信息的装置,该信息至少包括与该至少一个IoT设备相关联的标识符。用于在网络上接收与该至少一个IoT设备相关联的信息的装置-该信息至少包括与该至少一个IoT设备相关联的标识符-可以是通用处理器102、与通用处理器102相关联的程序存储器、和/或被配置成执行所叙述的功能的存储器块118。在另一配置中,用于在网络上接收与该至少一个IoT设备相关联的信息的装置-该信息至少包括与该至少一个IoT设备相关联的标识符-可以是任何模块、任何组件、和/或被配置成执行由前述装置所叙述的功能的任何装备(诸如智能体302/302’)或其组件。
该智能体、神经网络、机器学习模型、计算网络、处理器、装置(装备)或其他系统可以包括用于确定要标识IoT设备集的装置。用于确定要标识IoT设备集的装置可以是通用处理器102、与通用处理器102相关联的程序存储器、和/或被配置成执行所叙述的功能的存储器块118。在另一配置中,用于确定要标识IoT设备集的装置可以是任何模块、任何组件、和/或被配置成执行由前述装置所叙述的功能的任何装备(诸如智能体302/302’)或其组件。
根据本公开的某些方面,局部处理单元可被配置成基于模型所期望的一个或多个功能特征来确定模型的参数,并且在所确定的参数被进一步适配、调谐和更新时向所期望的功能特征发展该一个或多个功能特征。
在一些方面,方法400、500、600、700、800可以由SOC 100(图1)来执行。也就是说,作为示例而非限定,方法400、500、600、700、800的每个操作可以由SOC 100或者一个或多个处理器(例如,CPU 102)和/或其中所包括的其他组件来执行。
以上所描述的方法的各种操作可由能够执行相应功能的任何合适的装置来执行。这些装置可包括各种硬件和/或(诸)软件组件和/或(诸)模块,包括但不限于电路、专用集成电路(ASIC)、或处理器。一般而言,在附图中有解说的操作的场合,那些操作可具有带相似编号的相应配对装置加功能组件。
如本文所使用的,术语“确定”涵盖各种各样的动作。例如,“确定”可包括演算、计算、处理、推导、研究、查找(例如,在表、数据库或另一数据结构中查找)、查明及诸如此类。另外,“确定”可包括接收(例如接收信息)、访问(例如访问存储器中的数据)、及类似动作。此外,“确定”可包括解析、选择、选取、确立及类似动作。
如本文中所使用的,引述一列项目中的“至少一者”的短语是指这些项目的任何组合,包括单个成员。作为示例,“a、b或c中的至少一个”旨在涵盖:a、b、c、a-b、a-c、b-c、以及a-b-c。
结合本公开所描述的各种解说性逻辑框、模块、以及电路可用设计成执行本文中所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列信号(FPGA)或其他可编程逻辑器件(PLD)、分立的门或晶体管逻辑、分立的硬件组件或其任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,处理器可以是任何市售的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如,DSP与微处理器的组合、多个微处理器、与DSP核心协同的一个或多个微处理器、或任何其他此类配置。
结合本公开所描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中实施。软件模块可驻留在本领域所知的任何形式的存储介质中。可使用的存储介质的一些示例包括随机存取存储器(RAM)、只读存储器(ROM)、闪存、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、寄存器、硬盘、可移动盘、CD-ROM,等等。软件模块可包括单条指令、或许多条指令,且可分布在若干不同的代码段上,分布在不同的程序间以及跨多个存储介质分布。存储介质可被耦合到处理器以使得该处理器能该存储介质读取信息以及向该存储介质写入信息。在替换方案中,存储介质可被整合到处理器。
本文中所公开的方法包括用于达成所描述的方法的一个或多个步骤或动作。这些方法步骤和/或动作可以彼此互换而不会脱离权利要求的范围。换言之,除非指定了步骤或动作的特定次序,否则具体步骤和/或动作的次序和/或使用可以改动而不会脱离权利要求的范围。
所描述的功能可在硬件、软件、固件或其任何组合中实现。如果以硬件实现,则示例硬件配置可包括设备中的处理系统。处理系统可以用总线架构来实现。取决于处理系统的具体应用和整体设计约束,总线可包括任何数目的互连总线和桥接器。总线可将包括处理器、机器可读介质、以及总线接口的各种电路链接在一起。总线接口可用于尤其将网络适配器等经由总线连接至处理系统。网络适配器可用于实现信号处理功能。对于某些方面,用户接口(例如,按键板、显示器、鼠标、操纵杆,等等)也可以被连接到总线。总线还可以链接各种其他电路,诸如定时源、外围设备、稳压器、功率管理电路以及类似电路,它们在本领域中是众所周知的,因此将不再进一步描述。
处理器可负责管理总线和一般处理,包括对存储在机器可读介质上的软件的执行。处理器可用一个或多个通用和/或专用处理器来实现。示例包括微处理器、微控制器、DSP处理器、以及其他能执行软件的电路系统。软件应当被宽泛地解释成意指指令、数据、或其任何组合,无论是被称作软件、固件、中间件、微代码、硬件描述语言、或其他。作为示例,机器可读介质可包括随机存取存储器(RAM)、闪存存储器、只读存储器(ROM)、可编程只读存储器(PROM)、可擦式可编程只读存储器(EPROM)、电可擦式可编程只读存储器(EEPROM)、寄存器、磁盘、光盘、硬驱动器、或者任何其他合适的存储介质、或其任何组合。机器可读介质可被实施在计算机程序产品中。该计算机程序产品可包括包装材料。
在硬件实现中,机器可读介质可以是处理系统中与处理器分开的一部分。然而,如本领域技术人员将容易领会的,机器可读介质或其任何部分可在处理系统外部。作为示例,机器可读介质可包括传输线、由数据调制的载波、和/或与设备分开的计算机产品,所有这些都可由处理器通过总线接口来访问。替换地或补充地,机器可读介质或其任何部分可被集成到处理器中,诸如高速缓存和/或通用寄存器文件可能就是这种情形。虽然所讨论的各种组件可被描述为具有特定位置,诸如局部组件,但它们也可按各种方式来配置,诸如某些组件被配置成分布式计算系统的一部分。
处理系统可被配置为通用处理系统,该通用处理系统具有一个或多个提供处理器功能性的微处理器、以及提供机器可读介质中的至少一部分的外部存储器,它们都通过外部总线架构与其他支持电路系统链接在一起。替换地,该处理系统可包括一个或多个神经元形态处理器以用于实现本文中所描述的神经元模型和神经系统模型。作为另一替换方案,处理系统可以用带有集成在单块芯片中的处理器、总线接口、用户接口、支持电路系统、和至少一部分机器可读介质的专用集成电路(ASIC)来实现,或者用一个或多个现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、控制器、状态机、门控逻辑、分立硬件组件、或者任何其他合适的电路系统、或者能执行本公开通篇所描述的各种功能性的电路的任何组合来实现。取决于具体应用和加诸于整体系统上的总设计约束,本领域技术人员将认识到如何最佳地实现关于处理系统所描述的功能性。
机器可读介质可包括数个软件模块。这些软件模块包括当由处理器执行时使处理系统执行各种功能的指令。这些软件模块可包括传送模块和接收模块。每个软件模块可以驻留在单个存储设备中或者跨多个存储设备分布。作为示例,当触发事件发生时,可以从硬驱动器中将软件模块加载到RAM中。在软件模块执行期间,处理器可以将一些指令加载到高速缓存中以提高访问速度。可随后将一个或多个高速缓存行加载到通用寄存器文件中以供处理器执行。在以下述及软件模块的功能性时,将理解此类功能性是在处理器执行来自该软件模块的指令时由该处理器来实现的。此外,应领会,本公开的各方面产生对处理器、计算机、机器或实现此类方面的其它系统的机能的改进。
如果以软件实现,则各功能可作为一条或多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,这些介质包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,此类计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或能用于携带或存储指令或数据结构形式的期望程序代码且能被计算机访问的任何其他介质。另外,任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或无线技术(诸如红外(IR)、无线电、以及微波)从web网站、服务器、或其他远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL或无线技术(诸如红外、无线电、以及微波)就被包括在介质的定义之中。如本文所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘、和
Figure BDA0002986509020000331
碟,其中盘(disk)常常磁性地再现数据,而碟(disc)用激光来光学地再现数据。因此,在一些方面,计算机可读介质可包括非瞬态计算机可读介质(例如,有形介质)。另外,对于其他方面,计算机可读介质可包括瞬态计算机可读介质(例如,信号)。以上的组合应当也被包括在计算机可读介质的范围内。
因此,某些方面可包括用于执行本文中给出的操作的计算机程序产品。例如,此类计算机程序产品可包括其上存储(和/或编码)有指令的计算机可读介质,这些指令能由一个或多个处理器执行以执行本文中所描述的操作。对于某些方面,该计算机程序产品可包括包装材料。
此外,应当领会,用于执行本文中所描述的方法和技术的模块和/或其他恰适装置可由用户终端和/或基站在适用的场合下载和/或以其他方式获得。例如,此类设备能被耦合到服务器以促成用于执行本文中所描述的方法的装置的转移。替换地,本文中所描述的各种方法能经由存储装置(例如,RAM、ROM、诸如压缩碟(CD)或软盘之类的物理存储介质等)来提供,以使得一旦将该存储装置耦合到或提供给用户终端和/或基站,该设备就能获得各种方法。此外,可利用适于向设备提供本文中所描述的方法和技术的任何其他合适的技术。
将理解,权利要求并不被限于以上所解说的精确配置和组件。可在上面所描述的方法和装置的布局、操作和细节上作出各种改动、更换和变形而不会脱离权利要求的范围。

Claims (28)

1.一种系统的操作方法,所述方法包括:
存储与至少一个IoT设备相关联的注册信息,所述注册信息包括与所述至少一个IoT设备相关联的第一标识符并且包括所述至少一个IoT设备的第一属性集;
获得输入;
基于与所述至少一个IoT设备相关联的所述注册信息来确定所述输入是否对应于所述至少一个IoT设备;以及
在所述输入对应于所述至少一个IoT设备时控制所述至少一个IoT设备的操作。
2.如权利要求1所述的方法,其中所述第一属性集进一步包括以下各项中的至少一者:与所述至少一个IoT设备相关联的分类、与所述至少一个IoT设备相关联的视觉属性、或与所述至少一个IoT设备相关联的能力属性。
3.如权利要求1所述的方法,其中确定所述输入是否对应于所述至少一个IoT设备包括:
处理所述输入以确定输入属性集和输入指令;以及
基于所述输入属性集与所述第一属性集之间的对应关系来标识与所述至少一个IoT设备相关联的所述第一标识符,以及
其中控制所述至少一个IoT设备的所述操作基于所述输入指令。
4.如权利要求1所述的方法,其中所述输入包括自然语言输入。
5.如权利要求1所述的方法,进一步包括:
标识第一位置中所包括的对象集中的每个对象,其中所述对象集包括所述至少一个IoT设备和至少一个其他对象;以及
确定所述至少一个IoT设备的所述第一属性集,所述第一属性集指示所述至少一个IoT设备与所述至少一个其他对象之间的第一空间关系。
6.如权利要求5所述的方法,其中标识所述第一位置中所包括的所述对象集中的每个对象包括:
获得表示所述第一位置的第一图像数据;
改变所述至少一个IoT设备的状态;
在改变所述至少一个IoT设备的所述状态之后,获得表示所述第一位置的第二图像数据;以及
将所述第一图像数据与所述第二图像数据进行比较。
7.如权利要求5所述的方法,其中所述输入指示所述至少一个IoT设备与所述至少一个其他对象之间的输入空间关系,并且确定所述输入是否对应于所述至少一个IoT设备基于所述输入空间关系与所述第一空间关系之间的对应关系。
8.如权利要求5所述的方法,进一步包括:
确定要标识IoT设备集,
其中标识所述第一位置中所包括的所述对象集中的每个对象基于确定要标识所述IoT设备集。
9.如权利要求1所述的方法,进一步包括:
在网络上接收与所述至少一个IoT设备相关联的信息,所述信息至少包括与所述至少一个IoT设备相关联的所述第一标识符。
10.一种用于操作系统的装备,所述装备包括:
用于存储与至少一个IoT设备相关联的注册信息的装置,所述注册信息包括与所述至少一个IoT设备相关联的第一标识符并且包括所述至少一个IoT设备的第一属性集;
用于获得输入的装置;
用于基于与所述至少一个IoT设备相关联的所述注册信息来确定所述输入是否对应于所述至少一个IoT设备的装置;以及
用于在所述输入对应于所述至少一个IoT设备时控制所述至少一个IoT设备的操作的装置。
11.如权利要求10所述的装备,其中所述第一属性集进一步包括以下各项中的至少一者:与所述至少一个IoT设备相关联的分类、与所述至少一个IoT设备相关联的视觉属性、或与所述至少一个IoT设备相关联的能力属性。
12.如权利要求10所述的装备,其中用于确定所述输入是否对应于所述至少一个IoT设备的装置被配置成:
处理所述输入以确定输入属性集和输入指令;以及
基于所述输入属性集与所述第一属性集之间的对应关系来标识与所述至少一个IoT设备相关联的所述第一标识符,以及
其中控制所述至少一个IoT设备的所述操作基于所述输入指令。
13.如权利要求10所述的装备,其中所述输入包括自然语言输入。
14.如权利要求10所述的装备,进一步包括:
用于标识第一位置中所包括的对象集中的每个对象的装置,其中所述对象集包括所述至少一个IoT设备和至少一个其他对象;以及
用于确定所述至少一个IoT设备的所述第一属性集的装置,所述第一属性集指示所述至少一个IoT设备与所述至少一个其他对象之间的第一空间关系。
15.如权利要求14所述的装备,其中用于标识所述第一位置中所包括的所述对象集中的每个对象的装置被配置成:
获得表示所述第一位置的第一图像数据;
改变所述至少一个IoT设备的状态;
在改变所述至少一个IoT设备的所述状态之后,获得表示所述第一位置的第二图像数据;以及
将所述第一图像数据与所述第二图像数据进行比较。
16.如权利要求14所述的装备,其中所述输入指示所述至少一个IoT设备与所述至少一个其他对象之间的输入空间关系,并且确定所述输入是否对应于所述至少一个IoT设备基于所述输入空间关系与所述第一空间关系之间的对应关系。
17.如权利要求14所述的装备,进一步包括:
用于确定要标识IoT设备集的装置,
其中标识所述第一位置中所包括的所述对象集中的每个对象基于确定要标识所述IoT设备集。
18.如权利要求10所述的装备,进一步包括:
用于在网络上接收与所述至少一个IoT设备相关联的信息的装置,所述信息至少包括与所述至少一个IoT设备相关联的所述第一标识符。
19.一种用于操作系统的装置,所述装置包括:
存储器;以及
至少一个处理器,所述至少一个处理器耦合到所述存储器并被配置成:
存储与至少一个IoT设备相关联的注册信息,所述注册信息包括与所述至少一个IoT设备相关联的第一标识符并且包括所述至少一个IoT设备的第一属性集;
获得输入;
基于与所述至少一个IoT设备相关联的所述注册信息来确定所述输入是否对应于所述至少一个IoT设备;以及
在所述输入对应于所述至少一个IoT设备时控制所述至少一个IoT设备的操作。
20.如权利要求19所述的装置,其中所述第一属性集进一步包括以下各项中的至少一者:与所述至少一个IoT设备相关联的分类、与所述至少一个IoT设备相关联的视觉属性、或与所述至少一个IoT设备相关联的能力属性。
21.如权利要求19所述的装置,其中确定所述输入是否对应于所述至少一个IoT设备包括:
处理所述输入以确定输入属性集和输入指令;以及
基于所述输入属性集与所述第一属性集之间的对应关系来标识与所述至少一个IoT设备相关联的所述第一标识符,以及
其中控制所述至少一个IoT设备的所述操作基于所述输入指令。
22.如权利要求19所述的装置,其中所述输入包括自然语言输入。
23.如权利要求19所述的装置,其中所述至少一个处理器被进一步配置成:
标识第一位置中所包括的对象集中的每个对象,其中所述对象集包括所述至少一个IoT设备和至少一个其他对象;以及
确定所述至少一个IoT设备的所述第一属性集,所述第一属性集指示所述至少一个IoT设备与所述至少一个其他对象之间的第一空间关系。
24.如权利要求23所述的装置,其中标识所述第一位置中所包括的所述对象集中的每个对象包括:
获得表示所述第一位置的第一图像数据;
改变所述至少一个IoT设备的状态;
在改变所述至少一个IoT设备的所述状态之后,获得表示所述第一位置的第二图像数据;以及
将所述第一图像数据与所述第二图像数据进行比较。
25.如权利要求23所述的装置,其中所述输入指示所述至少一个IoT设备与所述至少一个其他对象之间的输入空间关系,并且确定所述输入是否对应于所述至少一个IoT设备基于所述输入空间关系与所述第一空间关系之间的对应关系。
26.如权利要求23所述的装置,其中所述至少一个处理器被进一步配置成:
确定要标识IoT设备集,
其中标识所述第一位置中所包括的所述对象集中的每个对象基于确定要标识所述IoT设备集。
27.如权利要求19所述的装置,其中所述至少一个处理器被进一步配置成:
在网络上接收与所述至少一个IoT设备相关联的信息,所述信息至少包括与所述至少一个IoT设备相关联的所述第一标识符。
28.一种存储用于系统的操作的计算机可执行代码的计算机可读介质,包括用于以下操作的代码:
存储与至少一个IoT设备相关联的注册信息,所述注册信息包括与所述至少一个IoT设备相关联的第一标识符并且包括所述至少一个IoT设备的第一属性集;
获得输入;
基于与所述至少一个IoT设备相关联的所述注册信息来确定所述输入是否对应于所述至少一个IoT设备;以及
在所述输入对应于所述至少一个IoT设备时控制所述至少一个IoT设备的操作。
CN201980062023.6A 2018-09-28 2019-09-27 用于物联网设备的消歧的系统和方法 Pending CN112740640A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/147,319 US11784845B2 (en) 2018-09-28 2018-09-28 System and method for disambiguation of Internet-of-Things devices
US16/147,319 2018-09-28
PCT/US2019/053326 WO2020069240A1 (en) 2018-09-28 2019-09-27 System and method for disambiguation of internet-of-things devices

Publications (1)

Publication Number Publication Date
CN112740640A true CN112740640A (zh) 2021-04-30

Family

ID=68165895

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980062023.6A Pending CN112740640A (zh) 2018-09-28 2019-09-27 用于物联网设备的消歧的系统和方法

Country Status (4)

Country Link
US (1) US11784845B2 (zh)
EP (1) EP3857860B1 (zh)
CN (1) CN112740640A (zh)
WO (1) WO2020069240A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11363017B2 (en) * 2018-12-07 2022-06-14 Verizon Patent And Licensing Inc. Smart home network security through blockchain
US11164587B2 (en) * 2019-01-15 2021-11-02 International Business Machines Corporation Trial and error based learning for IoT personal assistant device
CN111508483B (zh) * 2019-01-31 2023-04-18 北京小米智能科技有限公司 设备控制方法及装置
CN113711538A (zh) * 2019-05-21 2021-11-26 西门子股份公司 配置参数的方法、装置、系统、计算设备、介质以及产品
TWI778442B (zh) * 2020-11-03 2022-09-21 財團法人資訊工業策進會 偵測文章目的之裝置及方法
EP4320948A1 (en) * 2021-04-05 2024-02-14 Qualcomm Incorporated Storing ue positioning capabilities in the network
US11630181B2 (en) 2021-04-05 2023-04-18 Qualcomm Incorporated Systems and methods for storage of UE positioning capabilities in a network
US20230377186A1 (en) * 2022-05-19 2023-11-23 Afero, Inc. System and method for machine learning (ml)-based iot device provisioning

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140108943A1 (en) * 2012-10-16 2014-04-17 Korea Electronics Technology Institute Method for browsing internet of things and apparatus using the same
US20150006696A1 (en) * 2013-06-26 2015-01-01 Qualcomm Incorporated Semantic mappings from human readable messages to programmatic interfaces
CN105074684A (zh) * 2013-02-25 2015-11-18 高通股份有限公司 异构物联网(iot)设备之间的上下文知悉式动作
US20150347114A1 (en) * 2014-05-28 2015-12-03 Samsung Electronics Co., Ltd. Apparatus and method for controlling internet of things devices
US20180034913A1 (en) * 2016-07-28 2018-02-01 Citrix Systems, Inc. System and method for controlling internet of things devices using namespaces

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8818274B2 (en) 2009-07-17 2014-08-26 Qualcomm Incorporated Automatic interfacing between a master device and object device
US9600571B2 (en) 2013-07-11 2017-03-21 Neura, Inc. Interoperability mechanisms for internet of things integration platform
US10274911B2 (en) 2015-06-25 2019-04-30 Intel Corporation Conversational interface for matching text of spoken input based on context model
US10541958B2 (en) 2015-08-05 2020-01-21 Facebook, Inc. Controlling a device cloud
US10884503B2 (en) 2015-12-07 2021-01-05 Sri International VPA with integrated object recognition and facial expression recognition
US9866927B2 (en) 2016-04-22 2018-01-09 Microsoft Technology Licensing, Llc Identifying entities based on sensor data
CN106878422A (zh) 2017-02-21 2017-06-20 上海量明科技发展有限公司 共享车辆的管理方法、系统及客户端
EP3493484A1 (en) 2017-12-04 2019-06-05 Thomson Licensing Devices, systems and methods for communication in an iot environment
GB2572175B (en) * 2018-03-21 2022-10-12 Emotech Ltd Processing a command
US10834200B2 (en) * 2018-09-24 2020-11-10 Mcafee, Llc Methods, systems, and media for indicating a security status of an internet of things device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140108943A1 (en) * 2012-10-16 2014-04-17 Korea Electronics Technology Institute Method for browsing internet of things and apparatus using the same
CN105074684A (zh) * 2013-02-25 2015-11-18 高通股份有限公司 异构物联网(iot)设备之间的上下文知悉式动作
US20150006696A1 (en) * 2013-06-26 2015-01-01 Qualcomm Incorporated Semantic mappings from human readable messages to programmatic interfaces
US20150347114A1 (en) * 2014-05-28 2015-12-03 Samsung Electronics Co., Ltd. Apparatus and method for controlling internet of things devices
US20180034913A1 (en) * 2016-07-28 2018-02-01 Citrix Systems, Inc. System and method for controlling internet of things devices using namespaces

Also Published As

Publication number Publication date
EP3857860C0 (en) 2023-10-18
EP3857860A1 (en) 2021-08-04
WO2020069240A1 (en) 2020-04-02
US20200106632A1 (en) 2020-04-02
US11784845B2 (en) 2023-10-10
TW202025800A (zh) 2020-07-01
EP3857860B1 (en) 2023-10-18

Similar Documents

Publication Publication Date Title
EP3857860B1 (en) System and method for disambiguation of internet-of-things devices
US20210288832A1 (en) Automatically learning and controlling connected devices
US10073681B2 (en) Home device application programming interface
CN110800273B (zh) 虚拟传感器系统
US9860077B2 (en) Home animation apparatus and methods
US20190391541A1 (en) Technologies for conversational interfaces for system control
US9821470B2 (en) Apparatus and methods for context determination using real time sensor data
CN112051743A (zh) 设备控制方法、冲突处理方法、相应的装置及电子设备
JP7003480B2 (ja) 自動学習ユニバーサルゲートウェイ
CN109474658A (zh) 用外部设备支持任务运行的电子设备、服务器和记录介质
CN112154383A (zh) 处理命令
TWI837187B (zh) 用於物聯網設備消歧的系統和方法
US20220164667A1 (en) Transfer learning for sound event classification
CN114450689A (zh) 基于行为的自动化控制电子设备的系统和方法
Vu et al. Hybrid On-Device Cloud Scheme for Re-Identification of Persons Based on Shared Embedding Gallery
Ajayi et al. Design and Implementation of a WiFi-Enabled Home Automation System.
Rodriguez Location Finding of Wireless Beacons
Tait Smart Rubbish Bins
Chang Pervasive Biometric Authentication in the Smart Home Based on Integrated Light Fingerprint Pads
Von Dehsen Camera Lens with Display Mode
Ross Augmented Reality Interface for Visualizing and Interacting with IoT Devices
Tait Infrared Patterns for Device Control
Benassi Systems and Methods for Adjusting Lighting to Improve Image Quality
Wilson Radically Connected Home for Power Control and Device Discovery and Synergy
Tait Smart Floor for In Room Detection

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