TW202025800A - 用於物聯網設備消歧的系統和方法 - Google Patents

用於物聯網設備消歧的系統和方法 Download PDF

Info

Publication number
TW202025800A
TW202025800A TW108135194A TW108135194A TW202025800A TW 202025800 A TW202025800 A TW 202025800A TW 108135194 A TW108135194 A TW 108135194A TW 108135194 A TW108135194 A TW 108135194A TW 202025800 A TW202025800 A TW 202025800A
Authority
TW
Taiwan
Prior art keywords
iot device
input
agent
iot
image data
Prior art date
Application number
TW108135194A
Other languages
English (en)
Other versions
TWI837187B (zh
Inventor
M安東尼 路易斯
阿瑪倫杜 伊耶
馬努 拉斯妥濟
Original Assignee
美商高通公司
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 美商高通公司 filed Critical 美商高通公司
Publication of TW202025800A publication Critical patent/TW202025800A/zh
Application granted granted Critical
Publication of TWI837187B publication Critical patent/TWI837187B/zh

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)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

一種裝置可以標識第一位置中包括的物件的集合之每一者物件,其中該物件的集合包括至少一個IoT設備和至少一個其他物件。該裝置可以決定至少一個IoT設備的第一屬性集合。該裝置可以儲存與至少一個IoT設備相關聯的註冊資訊,該註冊資訊包括與至少一個IoT設備相關聯的第一辨識符並且包括至少一個IoT設備的第一屬性集合。該裝置可以獲得輸入。該裝置可以基於與至少一個IoT設備相關聯的註冊資訊來決定輸入是否對應於至少一個IoT設備。當輸入對應於至少一個IoT設備時,該裝置可以控制至少一個IoT設備。

Description

用於物聯網設備消歧的系統和方法
根據專利法請求優先權
本專利申請案請求享有於2018年9月28日提出申請的、題為「SYSTEM AND METHOD FOR DISAMIGUATION OF INTERNET-OF-THINGS DEVICES」的非臨時申請第16/147,319號的優先權,該非臨時申請轉讓給了本案的受讓人,並且在此經由引用的方式明確地合併於此。
本案的某些態樣大體係關於機器學習,並且更特定言之係關於改進標識並註冊一或多個物聯網設備的系統和方法。
人工神經網路(其可以包括互連的人工神經元組(例如,神經元模型))是一種計算設備或表示要由計算設備執行的方法。
迴旋神經網路是一種類型的前饋人工神經網路。迴旋神經網路可以包括神經元的集合,每個神經元皆具有感受野並且其共同地平鋪輸入空間。迴旋神經網路(CNN)有許多應用。特別地,CNN已經廣泛地用於模式辨識和分類領域。
可以訓練深度神經網路(DNN)來辨識特徵的層級,因此DNN已經越來越多地用於物件辨識應用中。其他模型亦可用於物件辨識。例如,支援向量機(SVM)是可以應用於分類的學習工具。儘管該等解決方案在許多分類基準上均取得了出色的結果,但其計算複雜度可能出奇地高。另外地,對模型的訓練可能是挑戰性的。
以下呈現了對一或多個態樣的簡化概要,以便提供對該等態樣的基本理解。本發明內容不是對所有預期態樣的詳盡概述,並且既不意欲標識所有態樣的關鍵或重要元素,亦不意欲限定任何或所有態樣的範圍。其唯一目的是以簡化形式呈現一或多個態樣的某些概念,作為稍後呈現的更詳細描述的序言。
熟習此項技術者應該認識到,本案可以容易地用作修改或設計用於執行本案的相同目的的其他結構的基礎。熟習此項技術者亦應該認識到,此種等效構造不脫離如所附申請專利範圍中闡述的本案的教導。當結合附圖考慮時,將從以下描述中更好地理解就其組織和操作方法兩者而言被認為是本案的特性的新穎特徵,以及其他目的和優點。然而,應該明確地理解,提供附圖中的每一個僅出於說明和描述的目的,並且不意欲作為對本案的限制的定義。
在本案的一態樣中,提供了用於操作計算網路的方法、電腦可讀取媒體和裝置。該裝置包括記憶體以及耦合到記憶體的至少一個處理器。該至少一個處理器可以被配置為標識第一位置中包括的物件的集合之每一者物件,並且該物件的集合可以包括至少一個IoT設備和至少一個其他物件。至少一個處理器可以被配置為決定至少一個IoT設備的第一屬性集合,並且該第一屬性集合可以指示至少一個IoT設備與至少一個其他物件之間的第一空間關係。至少一個處理器可以被配置為儲存與至少一個IoT設備相關聯的註冊資訊,並且該註冊資訊可以包括與至少一個IoT設備相關聯的第一辨識符,並且可以包括至少一個IoT設備的第一屬性集合。至少一個處理器可以被配置為獲得輸入。至少一個處理器可以被配置為基於與至少一個IoT設備相關聯的註冊資訊,來決定輸入是否對應於至少一個IoT設備。至少一個處理器可以被配置為當輸入對應於至少一個IoT設備時,控制至少一個IoT設備。
下文將描述本案的附加特徵和優點。熟習此項技術者應該認識到,本案可以容易地用作修改或設計用於執行本案的相同目的的其他結構的基礎。熟習此項技術者亦應該認識到,此種等效構造不脫離如所附申請專利範圍中闡述的本案的教導。當結合附圖考慮時,將從以下描述中更好地理解就其組織和操作方法兩者而言被認為是本案的特性的新穎特徵,以及其他目的和優點。然而,應該明確地理解,提供附圖中的每一個僅出於說明和描述的目的,並且不意欲作為對本案的限制的定義。
結合附圖,以下闡述的詳細描述意欲作為對各種配置的描述,並且不意欲表示其中可以實踐本文所描述的概念的唯一配置。詳細描述包括特定細節,以用於提供對各種概念的透徹理解的目的。然而,對於熟習此項技術者將顯而易見的是,可以在沒有該等具體細節的情況下實踐該等概念。在一些情況中,以方塊圖形式圖示公知的結構和元件,以便避免模糊該等概念。
基於該等教導,熟習此項技術者應該認識到,本案的範圍意欲覆蓋本案的任何態樣,無論是獨立於本案的任何其他態樣還是與其組合地實現。例如,可以使用所闡述的任何數量的態樣來實現裝置或實踐方法。另外,本案的範圍意欲覆蓋使用其他結構、功能或者除了本案闡述的各個態樣的之外的結構和功能或不同於本案闡述的各個態樣的結構和功能來實踐的此種裝置或方法。應該理解,所揭示的本案的任何態樣可以以請求項的一或多個元素來體現。
單詞「示例性」在本文中用於表示「用作示例、實例或說明」。本文中描述為「示例性」的任何態樣皆不一定被解釋為比其他態樣優選或有利。
儘管本文描述了特定態樣,但是該等態樣的許多變型和排列皆落入本案的範圍內。儘管提到了一些好處和優點,但是本案的範圍並不意欲限於特定的好處、用途或目的。相反,本案的態樣意欲廣泛地適用於不同的技術、系統配置、網路和協定,其中的一些經由示例的方式在附圖中以及在優選態樣的以下描述中示出。詳細描述和附圖對本案僅為說明性而非限制性的,本案的範圍由所附申請專利範圍及其均等物限定。
本文所描述的態樣可以至少部分地經由一或多個神經網路、機器學習模型、人工智慧系統、強化學習系統及/或其他類似的計算系統來實踐。此種系統在本案中可以被稱為「代理」或「智慧助手」。將認識到的是,該等術語並不意欲是限制性的,而是意欲是說明性的。例如,如本文所使用的「代理」可以代表本端系統及/或互連系統,例如,與遠端佈置到感測器(例如,雲端計算)的一或多個處理器耦合的一或多個本端感測器。
本案可以提供一種用於註冊並引用一或多個物聯網路(IoT)設備的方法。註冊IoT設備可以包括在代理中儲存與設備相關聯的資訊。例如,此種資訊可以包括與IoT設備相關聯的唯一辨識碼。另外,註冊IoT設備包括標識代理與IoT設備之間的通訊鏈路,例如使得代理可以與IoT設備通訊。例如,代理可以獲得第一位置(例如,房間)的一或多個圖像。代理可以標識該第一位置內的一或多個物件。代理可以標識作為代理可操作以控制的IoT設備的彼等物件中的一或多個物件。代理可以構建空間映射,該空間映射指示物件中的每一個例如相對於彼此的位置。在一個態樣中,空間映射可以根據參考系。
此後,代理可以被配置為從使用者接收輸入(例如,自然語言輸入)。代理可以從輸入中標識描述IoT設備中的一個的屬性集合以及指示將如何控制IoT設備的命令。代理可以基於輸入屬性集合來標識IoT設備,該輸入屬性集合指示IoT設備相對於第一位置中的其他物件中的一或多個的空間關係。例如,代理可以標識與第一位置中的一或多個物件具有空間關係的IoT設備,該空間關係與描述由使用者觀察到的IoT設備的空間關係的輸入相匹配。隨後,代理可以以與輸入命令一致的方式控制所標識的IoT設備。
圖1圖示根據本案的某些態樣的使用片上系統(SOC)100對IoT設備進行前述註冊和引用的示例實現方式,該片上系統100可以包括通用處理器(CPU)或多核心通用處理器(CPU)102。變數(例如,神經信號和突觸權重)、與計算設備(例如,具有權重的神經網路)相關聯的系統參數、延遲、頻段(frequency bin)資訊和任務資訊可以儲存在與至少一個神經處理單元(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設備的代碼。
深度學習架構可以經由學習表示每一層中的連續更高級別抽象處的輸入來執行物件辨識任務,由此建立輸入資料的有用特徵表示。以此種方式,深度學習解決了傳統機器學習的主要瓶頸。在深度學習出現之前,針對物件辨識問題的機器學習方法可能嚴重依賴於人工設計特徵,可能與淺層分類器組合。淺層分類器可以是例如兩類線性分類器,其中可以將特徵向量分量的加權和與閾值進行比較,以預測輸入屬於哪一類。人工設計特徵可以是由具有領域專業知識的工程師針對特定問題領域定制的範本或核心。相比之下,深度學習架構可以學習表示與人工設計師可能設計但經由訓練的特徵類似的特徵。此外,深度網路可以學習表示並辨識人類可能沒有考慮過的新類型的特徵。
深度學習架構可以學習特徵的層級。例如,若以可視資料呈現,則第一層可以學習辨識輸入流中的相對簡單的特徵,例如,邊緣。在另一實例中,若以聽覺資料呈現,則第一層可以學習辨識特定頻率中的頻譜功率。取第一層的輸出作為輸入的第二層可以學習辨識特徵的組合,例如,針對視覺資料的簡單形狀或針對聽覺資料的聲音組合。例如,較高的層可以學習表示視覺資料中的複雜形狀或聽覺資料中的單詞。更高的層可以學習辨識常見的視覺物件或口頭短語。
深度學習架構在應用於具有自然層級結構的問題時可能會表現得特別出色。例如,對機動載具的分類可以受益於用於辨識車輪、擋風玻璃和其他特徵的第一次學習。該等特徵可以經由不同方式在較高層進行組合,以辨識汽車、卡車和飛機。
神經網路可以被設計為具有各種連通性模式。在前饋網路中,資訊從較低層傳遞到較高層,其中在給定層之每一者神經元皆與較高層中的神經元進行通訊。如上面所描述的,可以在前饋網路的連續層中建立層級表示。神經網路亦可以具有遞迴或回饋(亦稱為自上而下)連接。在遞迴連接中,來自給定層中的神經元的輸出可以被傳送到同一層中的另一神經元。遞迴架構可以有助於辨識跨越輸入資料區塊中的多於一個輸入資料區塊的模式,該輸入資料區塊在序列中被遞送到神經網路。從給定層中的神經元到較低層中的神經元的連接被稱為回饋(或自上而下)連接。當對高級別概念的辨識可以幫助區分輸入的特定低級別特徵時,具有許多回饋連接的網路可能是有幫助的。
在各個位置(例如,家庭、工作場所等),IoT設備越來越普遍。在一些位置,各種IoT設備可以與允許與各種IoT設備進行互動的智慧助手或其他中心通訊地耦合。例如,使用者可以使用智慧助手控制使用者家中的IoT設備。
為了引用IoT設備,可以經由諸如IoT設備的名稱之類的辨識符(例如,名稱)來引用IoT設備。然而,例如在發出語音命令時記住IoT設備的辨識符可能很麻煩並且使使用者受挫。例如,IoT設備經常與專門的及/或非直觀的辨識符或名稱相關聯,這可能會使使用者體驗受挫。
鑒於前述內容,需要存在一種直觀的方式來引用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中,但是當位置300中不存在代理302時亦可以實踐本發明的態樣。例如,代理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。
基於用於探索IoT設備310a-e的決定420,代理可以執行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,該IoT設備資訊424可以指示與第一燈310c相關聯的辨識符。
代理302可以儲存IoT設備310a-e中的每一個的相應的辨識符。此外,若從IoT設備310a-e中的一或多個提供了其他資訊,則代理302可以將該其他資訊與對應的辨識符相關聯地儲存。例如,代理302可以儲存IoT設備的類型、IoT設備的能力及/或代理302可以獲得的任何其他資訊。在一些態樣中,當儲存針對IoT設備310a-e中的一或多個的相應的辨識符及/或對應資訊時,代理302可以執行附加處理。例如,代理302可以對IoT設備310a-e中的一或多個進行分類——例如,可以將IoT設備310c-e分類為「燈」。
在一態樣中,在執行422探索期間,代理302可以將一或多個相應的視覺屬性與IoT設備310a-e中的每一個進行關聯。例如,代理302可以獲得第一圖像資料426,該第一圖像資料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可以獲得第二圖像資料428(例如,靜止圖像或運動圖像),該第二圖像資料428表示包括IoT設備310a-e的位置300。例如,代理302可以獲得第一圖像資料426,並且在獲得第二圖像資料428之前等待一時間段(例如,預先決定的時間段)。在一態樣中,代理302可以基於IoT設備310a-e中的至少一個的狀態的改變來獲得第二圖像資料428。例如,代理302可以回應於來自第一燈310c的訊息而獲得第二圖像資料428,該訊息指示第一燈310c已經改變狀態(例如,從「關閉」狀態改變為「開啟」狀態,反之亦然)。在另一態樣中,代理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,該IoT設備以所標識的差異(例如,可以標識第一燈310c在第一圖像資料426中為斷電的但在第二圖像資料428中為通電的)表示。
基於所標識的差異,代理302可以決定偵測到的物件與IoT設備之間的對應性。例如,代理302可以從第一圖像資料426中標識第一燈310c。此後,代理302可以偵測第一燈310c的狀態改變(例如,通電)。代理302可以將第一圖像資料426與第二圖像資料428進行比較,以便偵測被標識為燈的物件經歷了狀態改變,並且因此該物件是第一燈310c。在一態樣中,代理302可以標識與第一燈310c相關聯的第一辨識符,並且代理302可以註冊或儲存資訊,該資訊指示在位置300中表示的第一燈310c與第一辨識符之間的對應性(例如,與第一燈310c相對應的第一辨識符可以用於與第一燈310c進行通訊(例如,控制第一燈310c))。
在一態樣中,代理302可以儲存將(例如,在第一圖像資料426及/或第二圖像資料428中的)第一燈310c的視覺表示與第一辨識符進行關聯的資訊,例如,視覺及/或空間屬性/關係集合(例如,第一燈310c在位置300中的位置、第一燈310c相對於一或多個其他IoT設備310a-b、310d-e及/或相對於一或多個物件312a-k的位置、第一燈310c的顏色、第一燈310c的相對大小等)。因此,代理302可以被配置為隨著時間探索IoT設備310a-e的集合之每一者IoT設備,因為IoT設備310a-e的集合之每一者IoT設備經歷相應的狀態改變。
在一態樣中,代理302可以經由IoT設備來獲得第一圖像資料426及/或第二圖像資料428,該IoT設備是與代理302通訊地耦合的相機。例如,代理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可以輸出提示以擷取第一資料圖像426及/或第二圖像資料428,例如,來自與代理302通訊地耦合的揚聲器(例如,IoT揚聲器、整合在代理302的殼體中的揚聲器)的音訊提示。
在一態樣中,代理302可以系統地引起代理302已經從其獲得資訊(例如,可以經由經由第一網路404a傳送的相應的訊息來獲得IoT設備310a-e中的每一個的相應的辨識符)的複數個IoT設備的狀態改變。例如,代理302可以反覆運算經由代理302已經從其獲得資訊的IoT設備中的每一個的清單(例如,代理302可以經由第一網路404a從IoT設備310a-e中的每一個接收相應的辨識符),從而在每次反覆運算之後獲得新圖像(例如,第二圖像資料428)。因此,代理302可以例如經由對與IoT設備310a-e中的每一個相關聯的相應的位置進行登記,來探索並登記代理302可以與其通訊的每個IoT設備。
當代理302探索IoT設備310a-e中的至少一個時,代理302可以監視針對IoT設備310a-e中的一個的命令。在一態樣中,代理302可以經由麥克風接收命令430。命令430可以是語音輸入,例如,自然語言輸入。在另一態樣中,命令430可以經由訊息而被寫入或獲得,例如,從使用者的個人設備獲得的、並且經由第一網路404a傳送到代理302的寫入命令或其他訊息。
代理302可以處理432命令430,以決定命令430引用了IoT設備310a-e中的哪個。代理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、310d-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及/或可以與其通訊地耦合。此外,代理302’可以包括麥克風508及/或可以與其通訊地耦合。在一態樣中,相機506及/或麥克風508可以位於使用者的個人設備(例如,智慧型電話)、智慧揚聲器及/或另一虛擬助手上。
在各個態樣中,代理302’可以被配置為獲得表示位置300的第一圖像資料520,該位置300包括IoT設備310a-e(310’)的集合和非IoT物件312a-k的集合。例如,代理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設備310’的相對大小等)。
在一態樣中,代理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’可以儲存將(例如,在第一圖像資料520及/或第二圖像資料526中的)第一IoT設備310’的視覺表示與第一辨識符進行關聯的資訊。因此,代理302’可以被配置為隨著時間自動探索IoT設備310a-e(310’)的集合之每一者IoT設備,因為IoT設備310a-e(310’)的集合之每一者IoT設備經歷相應的狀態改變。
在一態樣中,代理302’可以接收來自使用者的輸入,以便標識(例如,在第一圖像資料520及/或第二圖像資料526中表示的)第一IoT設備310’的視覺表示與第一辨識符(其與第一IoT設備310’相關聯)之間的對應性。例如,在第一IoT設備310’的狀態改變之後,代理302’可以接收與第一IoT設備310’相關聯的第一輸入。在一態樣中,代理302’可以向使用者提示第一輸入,以便在狀態改變之後標識第一IoT設備310’,使得代理302’可以標識第一圖像資料520及/或第二圖像資料526中的第一IoT設備310’。
在一態樣中,代理302’可以接收來自第一IoT設備310’的輸入,以便標識(例如,在第一圖像資料520及/或第二圖像資料526中表示的)第一IoT設備310’的視覺表示與第一辨識符(其與第一IoT設備310’相關聯)之間的對應性。例如,在第一IoT設備310’的狀態改變之後,代理302’可以接收與第一IoT設備310’相關聯的第一輸入525。例如,代理302’可以接收來自第一IoT設備310’的輸入525,從而指示第一IoT設備310’已經轉變為通電狀態,並且代理302’可以標識第一圖像資料520及/或第二圖像資料526中的第一IoT設備310’。
因此,代理302’可以基於接收到的第一輸入來標識第一IoT設備310’。在一態樣中,代理302’可以經由觸覺或視覺輸入來接收第一輸入。例如,代理302’可以(例如,基於經由相機506擷取到的圖像資料)偵測到使用者正在觸摸或指向第一IoT設備310’。在另一態樣中,代理302’可以接收作為語音輸入的第一輸入。例如,代理302’可以(例如,經由麥克風508及/或直接經由代理302’)接收對第一IoT設備310’的描述,例如,描述第一IoT設備310’的自然語言輸入。在另一態樣中,代理302’可以(例如,直接經由代理302’及/或經由使用者的智慧型電話或其他個人設備)接收作為文字輸入的第一輸入。
基於第一輸入,代理302’可以使由第一輸入指示的第一IoT設備310’與第一辨識符(其與第一IoT設備310’相關聯)相關。例如,代理302’可以儲存將(例如,在第一圖像資料520及/或第二圖像資料526中的)第一IoT設備310’的視覺表示與第一辨識符進行關聯的資訊。因此,代理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’可以決定528每個IoT設備310a-e(310’)的屬性集合。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’可以決定528 IoT設備310a-e(310’)的集合之每一者IoT設備的屬性集合。在一態樣中,代理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’是電視310a或燈310c時)第一IoT設備310’能夠通電或斷電。能力屬性的另一示例可以是(例如,當第一IoT設備310’是燈310c時)第一IoT設備310’能夠打開或關閉燈。能力屬性的另一示例可以是(例如,當第一IoT設備310’是烤箱時)第一IoT設備310’能夠將烘烤溫度設置為400度。能力屬性的另一示例可以是(例如,當第一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設備的操作。
例如,第一IoT設備310’可以是第一燈310c。代理302’可以獲得(例如,接收)IoT控制輸入532,該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’可以獲得IoT控制輸入532,該IoT控制輸入532指示燈310c將經由在燈310c後面的視窗312d與自然光平衡。代理302’可以(例如,從環境光感測器)獲得當前照明水平,並且代理302’可以決定燈310c要被調整到的水平,以便與當前照明水平一致。在另一實例中,代理302’可以接收IoT控制輸入532,該IoT控制輸入532指示「打開在左側靠近沙發的燈」。代理302’可以(例如,基於參考系)標識位置300右側的沙發312e,隨後代理302’可以標識在位置300右側靠近沙發312e的燈310c。
代理302’可以向第一IoT設備310’發出命令或指令534以執行所標識的操作或功能。例如,代理302’可以產生包括第一辨識符並且包括命令或指令的指令訊息534。
代理302’可以經由網路發送所產生的指令訊息534,以由第一IoT設備310’接收。第一IoT設備310’可以接收指令訊息534。作為回應地,第一IoT設備310’可以(例如,經由對第一IoT設備310’的辨識符與指令訊息534中指示的辨識符進行比較)決定指令訊息534意欲針對第一IoT設備310’。第一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可以決定420經由獲得諸如使用者輸入(例如,經由語音輸入、經由可以與代理302通訊的設備、直接經由代理等)之類的提示探索一或多個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,該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’可以決定528 IoT設備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,流程圖圖示作為操作606的一個態樣的一種方法700,其中代理可以標識第一位置中包括的物件的集合之每一者物件。在操作702處,代理可以獲得第一圖像資料,該第一圖像資料表示包括物件的集合的第一位置。在一態樣中,物件的集合可以包括至少一個IoT設備和至少一個其他物件(例如,靜止物件或另一IoT設備)。例如,代理可以從相機請求第一圖像資料,該第一圖像資料表示包括物件的集合的第一位置。基於該請求,代理可以接收表示第一位置的第一圖像資料。
在圖3-4的上下文中,代理302可以獲得第一圖像資料426,該第一圖像資料426表示包括物件310a-e、312a-k的集合的位置300。物件的集合可以包括IoT設備310a-e和非IoT物件312a-k的集合。在一態樣中,代理302可以經由網路404a(例如,經由與代理302通訊地耦合的相機)獲得第一圖像資料426。在圖5中示出的實例中,代理302’可以獲得第一圖像資料520,該第一圖像資料520表示包括物件310a-e(310’)、312a-k的集合的位置300。物件的集合可以包括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可以獲得第二圖像資料428,該第二圖像資料428表示包括物件310a-e、312a-k的集合的位置300。例如,代理302可以經由網路404b例如從與代理302通訊地耦合的設備獲得第二圖像資料428。在圖5中示出的實例中,代理302’可以獲得第二圖像資料526,該第二圖像資料526表示包括物件310a-e(310’)、312a-k的集合的位置300。在一態樣中,代理302/302’可以經由相機506獲得第二圖像資料。
在操作708處,代理可以將第一圖像資料與第二圖像資料進行比較,以便偵測一或多個差異。例如,代理可以基於(表示處於「關閉」狀態的至少一個IoT設備的)第一圖像資料與(表示處於「開啟」狀態的至少一個IoT設備的)第二圖像之間的差異,來決定至少一個IoT設備現在處於「開啟」狀態,並且代理可以決定至少一個IoT設備的辨識符(以及相關聯的所儲存的註冊資訊)與在第一圖像資料及/或第二圖像資料中的至少一個IoT設備的表示相對應。
在圖3-4的上下文中,代理302可以將第二圖像資料428與第一圖像資料426進行比較,以便標識第二圖像資料428與第一圖像資料426之間的差異,並且標識第一燈310c,該第一燈310c與以所標識的差異(例如,可以標識第一燈310c在第一圖像資料426中為斷電的但在第二圖像資料428中為通電的)表示的IoT設備相對應。因此,代理302可以儲存與在第一圖像資料426及/或第二圖像資料428中表示的第一燈310c相對應的視覺及/或空間屬性及/或關係。在圖5中示出實例中,代理302’可以基於將第一圖像資料520與第二圖像資料526進行比較來決定528 IoT設備310’的屬性。
參考圖8,流程圖圖示作為操作614的一態樣的一種方法800,其中代理可以基於與至少一個IoT設備相關聯的所儲存的註冊資訊來決定輸入是否對應於至少一個IoT設備。在操作802處,代理可以處理輸入以決定輸入屬性集合和指令。在各個態樣中,輸入可以是語音輸入、文字輸入及/或代理(例如,經由與代理通訊地耦合的設備)接收到的其他輸入。例如,代理可以(例如,經由麥克風)獲得描述至少一個IoT設備的語音輸入(例如,自然語言輸入)或(例如,經由相機)獲得圖示對至少一個IoT設備的(例如,由使用者進行的)選擇或標識的圖像資料。代理可以(例如,使用神經網路)處理或解析輸入以決定輸入屬性集合和輸入指令。在圖3-4的上下文中,代理302可以處理432經由網路404b接收到的命令430。例如,代理302可以處理432命令430以標識輸入屬性集合和輸入命令。在圖5中示出的實例中,代理302’可以(例如,經由相機506及/或麥克風508)獲得與第一IoT設備310’相關聯的IoT控制輸入532。
在操作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)或者諸如紅外線、無線電和微波之類的無線技術從網站、伺服器或其他遠端源發送的,則同軸電纜、光纖光纜、雙絞線、DSL或者諸如紅外線、無線電和微波之類的無線技術包括在媒體的定義中。如本文所使用的,磁碟(disk)和光碟(disc)包括壓縮光碟(CD)、雷射光碟、光碟、數位多功能光碟(DVD)、軟碟和藍光®光碟,其中磁碟通常磁性地再現資料,而光碟則利用雷射來光學地再現資料。因此,在一些態樣中,電腦可讀取媒體可以包括非暫時性電腦可讀取媒體(例如,有形媒體)。另外,對於其他態樣,電腦可讀取媒體可以包括暫時性電腦可讀取媒體(例如,信號)。上面的組合亦應該包括在電腦可讀取媒體的範圍之內。
因此,某些態樣可以包括用於執行本文呈現的操作的電腦程式產品。例如,此種電腦程式產品可以包括其上儲存(及/或編碼)有指令的電腦可讀取媒體,該指令可由一或多個處理器執行以完成本文所描述的操作。對於某些態樣,電腦程式產品可以包括包裝材料。
此外,應該認識到的是,用於執行本文所描述的方法和技術的模組及/或其他適當的構件可以由使用者終端及/或基地台在適當時下載及/或以其他方式獲得。例如,此種設備可以耦合到伺服器以促進傳送用於執行本文所描述的方法的構件。可替代地,可以經由儲存構件(例如,RAM、ROM、諸如壓縮光碟(CD)或軟碟的實體儲存媒體等)來提供本文所描述的各種方法,使得使用者終端及/或基地台可以在將儲存構件耦合到設備或提供給設備時獲得各種方法。此外,可以利用用於將本文所描述的方法和技術提供給設備的任何其他合適的技術。
應該理解,申請專利範圍不限於上面示出的精確配置和元件。在不脫離申請專利範圍的範圍的情況下,可以對上面描述的方法和裝置的佈置、操作和細節進行各種修改、改變和變化。
100:片上系統(SOC) 102:CPU 104:GPU 106:數位訊號處理器(DSP) 108:神經處理單元(NPU) 110:連通性塊 112:多媒體處理器 114:感測器處理器 118:記憶體塊 120:導航單元 200:視覺顯示器 300:位置 302:代理 302':代理 310:物件 310':物件 312a:物件 312b:物件 312c:物件 312d:物件 312e:物件 312f:物件 312g:物件 312h:物件 312i:物件 312j:物件 312k:物件 400:方法 404a:第一網路 404b:第二網路 420:決定 422:執行 424:IoT設備資訊 426:第一圖像資料 428:第二圖像資料 430:命令 432:處理 434:指令 500:方法 506:相機 508:麥克風 520:第一圖像資料 522:標識 524:偵測 525:第一輸入 526:第二圖像資料 528:決定 530:儲存 532:IoT控制輸入 534:指令訊息 600:方法 602:操作 604:操作 606:操作 608:操作 610:操作 612:操作 614:操作 616:操作 700:方法 702:操作 704:操作 706:操作 708:操作 800:方法 802:操作 804:操作
當結合附圖時,根據以下闡述的詳細描述,本案的特徵、性質和優點將變得更加顯而易見,在附圖中相同的元件符號始終對應地標識。
圖1圖示根據本案的某些態樣的使用包括通用處理器的片上系統(SOC)設計神經網路的示例實現方式。
圖2是示出根據本案的態樣的在與代理相關聯的視覺顯示器上引用的各種物聯網路(IoT)設備的方塊圖。
圖3是示出根據本案的態樣的位置的方塊圖,該位置包括在空間上與一個位置處存在的一或多個物件相關的一或多個IoT設備。
圖4是示出根據本案的態樣的用於探索並控制IoT設備的方法的調用流程圖。
圖5是示出根據本案的態樣的一種用於註冊並引用IoT設備的方法的示例的調用流程圖。
圖6是示出根據本案的態樣的用於探索並控制至少一個IoT設備的方法的流程圖。
圖7是示出根據本案的態樣的用於探索位置中的物件的方法的流程圖。
圖8是示出根據本案的態樣的用於決定輸入是否與至少一個IoT設備相對應的方法的流程圖。
國內寄存資訊 (請依寄存機構、日期、號碼順序註記) 無
國外寄存資訊 (請依寄存國家、機構、日期、號碼順序註記) 無
302:代理
310:物件
400:方法
404a:第一網路
404b:第二網路
420:決定
422:執行
424:IoT設備資訊
426:第一圖像資料
428:第二圖像資料
430:命令
432:處理
434:指令

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設備的操作。
TW108135194A 2018-09-28 2019-09-27 用於物聯網設備消歧的系統和方法 TWI837187B (zh)

Applications Claiming Priority (2)

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

Publications (2)

Publication Number Publication Date
TW202025800A true TW202025800A (zh) 2020-07-01
TWI837187B TWI837187B (zh) 2024-04-01

Family

ID=

Also Published As

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

Similar Documents

Publication Publication Date Title
EP3857860B1 (en) System and method for disambiguation of internet-of-things devices
US20210326103A1 (en) Grouping Devices for Voice Control
US20190391541A1 (en) Technologies for conversational interfaces for system control
CN112051743A (zh) 设备控制方法、冲突处理方法、相应的装置及电子设备
US11126140B2 (en) Electronic device, external device capable of being combined with the electronic device, and a display method thereof
US11966317B2 (en) Electronic device and method for controlling same
KR20200044173A (ko) 전자 장치 및 그의 제어 방법
KR20240049534A (ko) 사용자 설정가능 인터랙티브 영역 모니터링 장치 및 방법
TWI837187B (zh) 用於物聯網設備消歧的系統和方法
US20200410317A1 (en) System and method for adjusting presentation features of a social robot
Ajayi et al. Design and Implementation of a WiFi-Enabled Home Automation System.
Daniels et al. Interactive Device that Performs Output Based On Human Movement and/or Human Emotion Detected via Machine Learning
Von Dehsen Camera Lens with Display Mode
Ross Augmented Reality Interface for Visualizing and Interacting with IoT Devices
Vu et al. Hybrid On-Device Cloud Scheme for Re-Identification of Persons Based on Shared Embedding Gallery
Von Dehsen Providing a Camera Stream on an Ancillary Display
Daniels et al. Interactive Surface-Mounted Internet of Things Device
Dhillon et al. Health Analyzing Smart Mirror
Tait Smart Rubbish Bins
Rodriguez Location Finding of Wireless Beacons
Brune An IoT System that Combines Externally Sourced and Public Sensor Data with Internal Enterprise Sensor Data for Action Determination
Tait Smart Floor for In Room Detection
Diniz de Faria Smart Thermally Controlled Bedding
Coyne Internet of Things Three-Dimensional Printer System
Dhillon et al. Enhancing Privacy of Smart Speakers Using Image Recognition and Motion Sensors