CN115461811A - 用于多方交互的多模态波束成形和注意力过滤 - Google Patents

用于多方交互的多模态波束成形和注意力过滤 Download PDF

Info

Publication number
CN115461811A
CN115461811A CN202180031587.0A CN202180031587A CN115461811A CN 115461811 A CN115461811 A CN 115461811A CN 202180031587 A CN202180031587 A CN 202180031587A CN 115461811 A CN115461811 A CN 115461811A
Authority
CN
China
Prior art keywords
computing device
user
users
implementations
module
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
CN202180031587.0A
Other languages
English (en)
Inventor
保罗·皮尔詹尼
马里奥·E·米尼希
斯蒂芬·谢勒
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.)
Representational Ltd
Original Assignee
Representational Ltd
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 Representational Ltd filed Critical Representational Ltd
Publication of CN115461811A publication Critical patent/CN115461811A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/01Customer relationship services
    • G06Q30/015Providing customer assistance, e.g. assisting a customer within a business location or via helpdesk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition
    • G06V40/176Dynamic expression
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/24Speech recognition using non-acoustical features
    • G10L15/25Speech recognition using non-acoustical features using position of the lips, movement of the lips or face analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/06Decision making techniques; Pattern matching strategies
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L2021/02087Noise filtering the noise being separate speech, e.g. cocktail party
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • G10L2021/02161Number of inputs available containing the signal or the noise to be suppressed
    • G10L2021/02166Microphone arrays; Beamforming
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Strategic Management (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Computational Linguistics (AREA)
  • Social Psychology (AREA)
  • Quality & Reliability (AREA)
  • Game Theory and Decision Science (AREA)
  • Psychiatry (AREA)
  • Tourism & Hospitality (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Signal Processing (AREA)
  • Operations Research (AREA)
  • Data Mining & Analysis (AREA)
  • Ophthalmology & Optometry (AREA)
  • Computing Systems (AREA)
  • Primary Health Care (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • User Interface Of Digital Computer (AREA)
  • Manipulator (AREA)

Abstract

披露了用于创建环境视图的系统和方法。示例性实施方式可以:从位于计算设备中的一个或多个麦克风、一个或多个成像设备、雷达传感器、激光雷达传感器、和/或一个或多个红外成像设备中的至少两个接收参数和测量值;分析从该多模态输入接收的这些参数和测量值;生成该计算设备周围的环境的世界地图;以及定期地重复从这些输入设备接收参数和测量值以及分析的步骤,以维护该环境的持久世界地图。

Description

用于多方交互的多模态波束成形和注意力过滤
相关申请
本申请要求2020年2月29日提交的名称为“Multimodal Beamforming andAttention Filtering for Multiparty Interactions[用于多方交互的多模态波束成形和注意力过滤]”的美国临时专利申请序列号62/983,595和2021年2月27日提交的名称为“Multimodal Beamforming and Attention Filtering for Multiparty Interactions[用于多方交互的多模态波束成形和注意力过滤]”的美国临时专利申请序列号63/154,727的优先权,这两个申请的披露内容通过引用并入本文。
技术领域
本披露涉及用于使用元信息和其他信息来确定用户在与机器人计算设备的会话交互中的优先级以及还有用于使用降噪技术的系统和方法。
背景技术
会话代理或系统的生态上有效的环境可能嘈杂、人满为患且导航复杂。当前系统无法滤除来自其他源的不必要输入。另外,对于当前的会话代理或系统,如果用户说出唤醒词或以其他方式意外地称呼会话代理(例如,像Alexa),则会话代理无法忽略输入,并将对其作出错误反应或响应它。进一步地,在当前的会话代理中,所有用户都是一样的,并且未使用元信息来利用主要目标用户。
当前会话代理的另一个限制是,当前代理只有一种模式,其接收来自每个用户的输入,并且还给予每个用户相同的优先级和关注。当前会话代理的进一步限制是,当前会话代理利用声音的到达方向来改善嘈杂环境中的音频输入,但它们无法主动进一步优化该输入并降噪。因此,用于解决会话代理和/或系统的这些问题和限制的改进系统是必要的。
发明内容
在参考附图考虑以下描述和所附权利要求时,这些和其他特征和本发明技术的特性、以及相关结构元素的操作方法和功能、以及零件的组合与制造的经济性将变得更加显而易见,所有附图形成本说明书的一部分,在附图中,相同的附图标记表示各个附图中的对应部分。然而,将明确了解的是,附图仅出于说明和描述的目的,而不旨在作为对本发明的限制的限定。如在本说明书和权利要求中所使用的,除非上下文中另外明确指明,否则单数形式的“一个(a)”、“一个(an)”以及“该(the)”包括复数对象。
附图说明
图1A图示了根据一种或多种实施方式的用于与儿童和/或父母互动的社交机器人或数字伴侣的系统。
图1B图示了根据一种或多种实施方式的社交机器人或数字伴侣。
图1C图示了根据一种或多种实施方式的儿童与社交机器人或数字伴侣互动的系统中的模块或子系统。
图2图示了根据一些实施方式的示例性机器人计算设备的系统架构。
图3A图示了根据一些实施方式的多模态波束成形和注意力过滤系统中的模块;
图3B图示了根据一种或多种实施方式的被配置用于创建环境视图的系统;
图4A图示了根据一种或多种实施方式的确定交流互动的方法;
图4B图示了根据一种或多种实施方式的在机器人计算设备与(多个)用户之间的交流交互期间过滤声音的方法;
图4C图示了根据一些实施方式的在会话交互中指派互动水平的方法;
图4D图示了根据一些实施方式的使用多模态波束成形和注意力过滤系统来增强交流交互和互动的多种方法;以及
图5A图示了根据一些实施例的包括多个用户、一个或多个物体、移动生物体和/或机器人计算设备的环境。
具体实施方式
以下详细描述根据本文披露的实施例提供了对在本披露中描述的发明的特征和优点的更好了解。尽管详细描述包括许多具体实施例,但这些仅作为示例提供并且不应被解释为限制本文所披露的发明的范围。
在一些实施方式中,多模态波束成形系统和/或注意力过滤系统是会话代理、会话引擎或会话系统的一部分,和/或被包括在其中。在一些实施方式中,会话代理、会话引擎或会话系统可以位于或驻留在计算设备内。在一些实施方式中,计算设备可以是机器人计算设备、数字伴侣、包括话音识别软件和/或声音识别软件的计算设备、和/或包括面部检测和识别软件和/或面部表情软件的计算设备。在说明书和权利要求中,术语“会话代理”、“会话引擎”和/或“会话系统”可以互换使用。在说明书和权利要求中,术语“机器人计算设备”、“数字伴侣”和/或“机器人”可以互换使用。
当前的会话代理只有一种模式,其接收来自每个用户的输入,每个用户具有相同的优先级和注意力。在一些实施方式中,本文描述和要求保护的会话代理和/或系统提供了优于当前系统的许多优点。如上文所讨论的,当前的会话代理或系统利用声音的到达方向来改进嘈杂环境中的音频输入,然而,本文描述和要求保护的会话代理和/或系统使用声音的到达方向来滤除不相关或无用的语音,并且一次只刻意关注一个目标用户。另外,本文描述的会话代理能够跟踪和理解包括会话代理的计算设备所在的环境,并且可以使用一个或多个传感器来辅助完成该任务并维护会话代理周围的世界的模型(例如,世界地图)。通过拥有世界地图并了解哪些用户参与了互动,这将允许会话代理或系统忽略突然来自与互动用户所在位置不同方向的输入。
虽然一些当前会话代理具有相机(例如,Facebook Portal、Echo Show),但当两个用户出现在画面中时这些会话代理无法评定谁在说话,并且无法清楚地将语音归属于确切的说话者。本文描述和要求保护的会话代理可以评定谁在说话,以及要清楚地将哪些语音归属于确切的说话者。另外,可以利用用户的声纹或其他特性来随时间跟踪说话者的活动模式和身份。本文描述的会话代理或系统的另一个优点是会话代理能够区分更高优先级的输入和/或还能够在变化的交互类型(单人与多人)期间改变其模式。
在一些实施方式中,会话代理或系统利用视频输入来改进嘈杂环境中的自动语音识别(ASR)结果。在一些实施方式中,会话代理或系统可以使用面部表情分析来识别嘴巴是否在移动(就像在讲话期间那样),并且还可以使用唇读来理解用户可能在说什么。在一些实施方式中,如果噪声水平太高,当前的会话代理或系统会失败,在噪声太大的环境中工作时无法识别问题,甚至可能忽略这个问题。
本文描述和要求保护的会话代理和/或系统包括用于针对与用户的二元和多方交互进行多模态信号波束成形和滤波的算法和系统。在一些实施方式中,本文描述和要求保护的会话代理和/或系统使交互式机器能够在广泛的社交情境中自然且高效地进行交流。
在一些实施方式中,会话代理或系统可以安装在机器人计算设备、数字伴侣、包括语音识别软件的计算设备、包括面部和手势识别软件的计算设备、和/或通过话音和/或成像与人类用户交互的计算设备中,或与其驻留在一起。在一些实施方式中,会话代理和/或系统可以利用多模态输入来跟踪会话代理或系统所在的环境并维护会话代理周围的环境或世界的持久视图。在一些实施方式中,多模态输入设备可以包括麦克风阵列或一个或多个麦克风、相机或一个或多个成像设备、雷达传感器或一个或多个雷达传感器、激光雷达传感器或一个或多个激光雷达传感器、以及红外相机或一个或多个红外或热成像设备,以捕获环境的图像、跟踪环境中的用户和/或物体并维护会话代理周围世界的持久视图。在一些实施方式中,包括会话代理或系统的计算设备可以具有移动性(例如,在空间中移动到另一个物理位置),并且这种移动性可以允许计算设备将其自身定位在更好的地方以跟踪和/或识别环境中的用户和/或物体。在一些实施方式中,这种移动性允许包括会话代理或系统的计算设备增强世界地图或模型。在一些实施方式中,会话代理或系统可以定期或连续地执行该操作。在一些实施方式中,一个或多个麦克风可以从会话代理四周(例如,360度覆盖)捕获声音文件或话音文件。在一些实施方式中,一个或多个成像设备和/或传感器可以捕获视频或图像文件或监视会话代理四周的区域(例如,360度覆盖)。
在一些实施方式中,会话代理或系统可以通过使用上述输入设备以及使用在名称为“Systems And Methods To Manage Communication Interactions Between A UserAnd A Robot Computing Device or Conversation Agent[用于管理用户与机器人计算设备或会话代理之间的交流交互的系统和方法]”的案卷号EMPAT01的相关申请中描述的方法和系统来跟踪用户的互动,该相关申请的披露内容通过引用并入本文。
在一些实施方式中,会话代理或系统可能能够辨别或确定,尽管用户看起来正在与会话代理或系统交谈,但用户可能未与会话代理或系统进行互动。在一些实施方式中,会话代理或系统然后可以不处理未互动用户的语音(例如,忽略未互动用户的语音)。在一些实施方式中,例如,用户可能看起来正在与会话交谈(例如,说出姓名“随意性会话中的Alexa”),但如果确定用户没有与会话代理互动,则会话代理可以能够忽略该语音。
在一些实施方式中,当会话代理或系统处于具有多个用户的环境中时(例如,多用户会话交互),会话代理或系统可以利用和/或使用诸如用户身份、历史、优先级状态(例如,用户是主用户吗?)等元信息在多用户会话交互中关注和定位许多可能用户中的用户。
在一些实施方式中,会话代理或系统可以使用一个或多个麦克风和/或一个或多个传感器来接收一个或多个声音文件和/或指示声音文件的到达方向的其他参数或测量值。在一些实施方式中,到达方向模块可以确定一个或多个声音文件的一个或多个到达方向测量值。在一些实施方式中,会话代理或系统可以利用声音或声音文件的到达方向测量值来过滤仅来自实际互动用户的输入(例如,允许输入)。在一些实施方式中,会话代理或系统可以滤除来自未被确定与会话代理互动的其他源(例如,路人、鸡尾酒派对效果(例如,大型背景噪声)、背景TV等)的语音(例如,不接受或不处理语音)。
在一些实施方式中,一个或多个成像设备或相机可以捕获视频和/或图像文件,并将视频或图像文件传送到会话代理或系统。在一些实施方式中,会话代理或系统可以分析、利用和/或使用视频输入来将话音输入指派给正在说话的用户。在一些实施方式中,一个或多个成像设备或相机可以是360度相机或成像设备。在一些实施方式中,会话代理或系统可以分析和/或识别面部、手势或身体中的交谈运动检测并且使用这种识别来将话音输入或文件指派给正在说话的用户。在一些实施方式中,它不将语音指派给不说话的其他用户,因为没有视频图像文件来支持其他用户正在说话(例如,不将输入指派给房间中沉默且安静的人)。
在一些实施方式中,会话代理可以接收声音或话音文件并且可以将声音或话音文件指派给用户或说话者。在一些实施方式中,会话代理或系统可以将指派的声音或话音文件存储在一个或多个存储器设备中,并且这些可以被称为用户的声纹。在一些情况下,会话代理或系统然后可以比较其他所接收的声音或话音文件,并将这些与已记录用户的存储声纹进行比较,以确定是否是相同的用户。在一些实施方式中,如果在说话者特性中找到相似性或匹配,则会话代理或系统可以将所接收的声音或话音文件指派给同一用户。在一些实施方式中,说话者特性可以包括频谱特性和/或韵律。
在一些实施方式中,会话代理或系统可以利用多模态融合来微调其对谁在什么时间说话的评定,以便更好地将语音指派给正确的源。多模态融合在描述了多模态融合的案卷号EMPAT01的专利申请“Systems And Methods To Manage CommunicationInteractions Between A User And A Robot Computing Device[用于管理用户与机器人计算设备之间的交流交互的系统和方法]”中讨论。该系统利用多模态融合来改进其对谁在什么时间说话的评定,以更好地将语音指派给正确的源。
在一些实施方式中,会话代理或系统可以具有第一模式,其中会话代理或系统需要单个用户单独地和/或锁定与计算设备或会话代理的互动。第一模式中的活动的示例是学习练习。在一些实施方式中,会话代理或系统可以具有允许来自多于一个用户的输入的第二模式(例如,参与例如派对游戏的多用户会话交互)。
在一些实施方式中,会话代理或系统连续地和/或定期监视用户的互动。在一些实施方式中,响应于该代理确定用户不再互动,会话代理或系统可以重新打开与环境中的(例如,已经在世界地图中识别的)其他用户的交流。在一些实施方式中,会话代理或系统可能不会滤除其他用户的声音文件或话音文件。
在一些实施方式中,会话代理或系统可以向世界地图(其标识该代理或系统周围的环境中的用户)中的用户指派互动水平。在一些实施方式中,会话代理或系统然后可以建立用于与用户交互的优先级队列,其中具有较高互动水平的用户将在与会话代理或系统交互时具有较高的优先级。在一些实施方式中,互动水平可以由会话代理或系统基于面部识别、话音识别、接近度、手势和/或面部表情来确定。
在一些实施方式中,会话代理或系统可以允许打开或关闭指定的全局命令和/或关键短语,或者修改或重定向对声音文件和/或语音文件的过滤。在一些实施方式中,会话代理或系统可以允许说出特定命令以推翻会话代理或系统做出的过滤决定。换句话说,全局命令和关键短语可以滤除分散注意力的输入。
在一些实施方式中,会话代理或系统可以接收来自所有用户的所有声音文件和/或话音文件,以便接收和/或存储。在一些实施方式中,会话代理或系统然后可以对从一些或所有用户接收的声音文件和/或话音文件进行后处理。在一些实施方式中,会话代理或系统可以对从用户接收的输入进行后处理,并根据系统的一般上下文(多方交互、单独交互等)来评定实际上是否应该处理被滤除的输入。
在一些实施方式中,会话代理或系统可以确定它应该与谁进行会话交互(并因此监听谁)。在一些实施方式中,会话代理或系统可以通过使用多重输出来定位要监听的用户。在一些实施方式中,多重输出可以包括但不限于机器人计算设备的面部、眼睛注视、手势、语音、LED灯(例如,像带有LED环的Alexa)、移动和/或空间运动。
在一些实施方式中,在嘈杂的环境中,会话代理可能难以弄清要监听哪个用户。在一些实施方式中,会话代理或系统可以使用一个或多个成像设备来捕获和/或跟踪(多个)用户的嘴形。在一些实施方式中,然后使用唇读来分析和/或解释所捕获的(多个)用户的嘴形,以便改进语音识别结果。
在一些实施方式中,如果会话代理和/或系统所在的环境太嘈杂,则其可以更靠近互动用户。在一些实施方式中,会话代理和/或系统可以确定互动用户所在的环境太嘈杂和/或大于可接受的噪声阈值。在一些实施方式中,如果环境太嘈杂,则会话代理或系统可以更靠近互动用户以便减少由一个或多个麦克风捕获的噪声量。在一些实施方式中,这可以包括使整个会话代理或系统更靠近用户。在一些实施方式中,这可以包括使会话代理或系统的头部和/或颈部或其他部分更靠近用户。在一些实施方式中,会话代理可以移动以直接面对用户以增强与用户的互动。
在一些实施方式中,会话代理和/或系统可以确定互动用户所在的环境太嘈杂和/或大于可接受的噪声阈值。在一些实施方式中,会话代理和/或系统可以使用输出设备之一(例如,扬声器)来请求用户更靠近会话代理和/或系统,和/或改变会话代理和/或系统所在的环境。这可以包括移动到环境中的不同部分或地方。在一些实施方式中,这可以包括移动到不同的环境(其可能是不同的房间)。在一些实施方式中,这可以减少环境中的噪声量(例如,使其更安静)并允许会话代理或系统更高效地交流。
在一些实施方式中,会话代理和/或系统可能能够使用全局话音命令来改变或修改其焦点、注意力、取向和/或位置。在一些实施方式中,用户可以使用全局命令(比如“看我/她/那个/他们等”、“听我/她/那个/他们等”或“关注我/她/那个/他们等”)来手动或口头改变会话代理或系统的焦点、注意力、取向和位置以注意其他输入源(包括物体、无线电等),并手动或口头控制注意力。
图1A图示了根据一种或多种实施方式的用于与儿童和/或父母互动的社交机器人或数字伴侣的系统。图1C图示了根据一种或多种实施方式的儿童与社交机器人或数字伴侣互动的系统中的模块或子系统。图1B图示了根据一种或多种实施方式的社交机器人或数字伴侣。在一些实施方式中,机器人计算设备105(或数字伴侣)可以与儿童互动并与儿童建立交流交互。在一些实施方式中,机器人计算设备105与儿童111之间将存在双向交流,目的是在交流交互中建立多轮会话(例如,双方轮流会话)。在一些实施方式中,机器人计算设备105可以经由口语(例如,音频动作)、视觉动作(显示屏上的眼睛或面部表情的移动)和/或身体动作(例如,机器人计算设备的颈部或头部或附肢的移动)与儿童交流。在一些实施方式中,机器人计算设备105可以使用成像设备来评估儿童的肢体语言、儿童的面部表情,并且可以使用语音识别软件来评估并分析儿童的语音。
在一些实施方式中,儿童还可以具有一个或多个电子设备110。在一些实施方式中,一个或多个电子设备110可以允许儿童登录到服务器计算设备上的网站,以便访问学习实验室和/或互动存放在网站上的交互式游戏。在一些实施方式中,儿童的一个或多个计算设备110可以与云计算设备115通信以访问网站120。在一些实施方式中,网站120可以位于服务器计算设备上。在一些实施方式中,网站120可以包括学习实验室(其可以被称为全球机器人实验室(GRL),儿童可以在其中与同机器人计算设备105相关联的数字角色或人物进行交互。在一些实施方式中,网站120可以包括交互式游戏,儿童可以在其中参与竞赛或目标设定练习。在一些实施方式中,其他用户能够与电子商务网站或程序进行接口连接,其中,其他用户(例如,父母或监护人)可以购买与机器人相关联的物品(例如,漫画书、玩具、徽章或其他附属物品)。
在一些实施方式中,机器人计算设备或数字伴侣105可以包括一个或多个成像设备、一个或多个麦克风、一个或多个触摸传感器、一个或多个IMU传感器、一个或多个马达和/或马达控制器、一个或多个显示设备或监视器、和/或一个或多个扬声器。在一些实施方式中,机器人计算设备可以包括一个或多个处理器、一个或多个存储器设备、和/或一个或多个无线通信收发器。在一些实施方式中,计算机可读指令可以存储在一个或多个存储器设备中,并且可以是可执行的以执行许多动作、特征和/或功能。在一些实施方式中,机器人计算设备可以对可以从上文列出的机器人计算设备的部件捕获和/或获得的数据、参数和/或测量值、音频文件和/或图像文件执行分析处理。
在一些实施方式中,一个或多个触摸传感器可以测量用户(儿童、父母或监护人)是否触摸了机器人计算设备,或者是否有另一个对象或个人与机器人计算设备接触。在一些实施方式中,一个或多个触摸传感器可以测量触摸的力和/或触摸的维度以确定例如是否是探索性触摸、推开、拥抱或另一类型的动作。在一些实施方式中,例如,触摸传感器可以位于或定位在机器人计算设备的附肢或手的前部和后部上、或机器人计算设备的腹部区域上。因此,软件和/或触摸传感器可以确定儿童是否在握手或抓住机器人计算设备的手,或者他们是否在揉搓机器人计算设备的胃。在一些实施方式中,其他触摸传感器可以确定儿童是否正在拥抱机器人计算设备。在一些实施方式中,触摸传感器可以与其他机器人计算设备软件结合使用,其中,机器人计算设备可以告诉儿童,如果他们想跟随故事的一条路径,就将他们的左手握在一起,如果他们想跟随故事的另一条路径,就握住左手。
在一些实施方式中,一个或多个成像设备可以捕获与机器人计算设备交互的儿童、父母或监护人的图像和/或视频。在一些实施方式中,一个或多个成像设备可以捕获儿童、父母或监护人周围区域的图像和/或视频。在一些实施方式中,一个或多个麦克风可以捕获儿童、父母或监护人说出的声音或口头命令。在一些实施方式中,可由处理器或音频处理设备执行的计算机可读指令可以将捕获的声音或话语转换成音频文件以进行处理。
在一些实施方式中,一个或多个IMU传感器可以测量机器人计算设备的不同部分的速度、加速度、取向和/或位置。在一些实施方式中,例如,IMU传感器可以确定附肢或颈部的移动速度。在一些实施方式中,例如,IMU传感器可以确定一部分或机器人计算设备(例如颈部、头部、身体或附肢)的取向,以确认手是在挥动还是处于静止定位。在一些实施方式中,IMU传感器的使用可以允许机器人计算设备对其不同部分进行定向,以便对用户显得更友好或更有吸引力。
在一些实施方式中,机器人计算设备可以具有一个或多个马达和/或马达控制器。在一些实施方式中,计算机可读指令可以由一个或多个处理器执行,并且命令或指令可以传送到一个或多个马达控制器以向马达发送信号或命令,从而使马达移动机器人计算设备的各部分。在一些实施方式中,这些部分可以包括机器人计算设备的附肢或手臂和/或机器人计算设备的颈部或头部。
在一些实施方式中,机器人计算设备可以包括显示器或监视器。在一些实施方式中,监视器可以允许机器人计算设备显示面部表情(例如,眼睛、鼻子、嘴的表情),以及向儿童、父母或监护人显示视频或消息。
在一些实施方式中,机器人计算设备可以包括一个或多个扬声器,其可以被称为输出模态。在一些实施方式中,一个或多个扬声器可以实现或允许机器人计算设备交流单词、短语和/或句子,从而参与与用户的会话。另外,当儿童、父母或监护人正在执行动作和/或与机器人计算设备互动时,一个或多个扬声器可以为他们发出音频声音或音乐。
在一些实施方式中,该系统可以包括父母计算设备125。在一些实施方式中,父母计算设备125可以包括一个或多个处理器和/或一个或多个存储器设备。在一些实施方式中,计算机可读指令可以由一个或多个处理器执行以使父母计算设备125执行多个特征和/或功能。在一些实施方式中,这些特征和功能可以包括为该系统生成和运行父母接口。在一些实施方式中,可由父母计算设备125执行的软件还可以更改用户(例如,儿童、父母或监护人)设置。在一些实施方式中,可由父母计算设备125执行的软件还可以允许父母或监护人在系统中管理他们自己的账户或他们孩子的账户。在一些实施方式中,可由父母计算设备125执行的软件可以允许父母或监护人发起或完成父母同意,以允许使用机器人计算设备的某些特征。在一些实施方式中,可由父母计算设备125执行的软件可以允许父母或监护人关于从机器人计算设备捕获的内容和由系统分析和/或利用的内容来设置目标或阈值或设置。在一些实施方式中,可由父母计算设备125的一个或多个处理器执行的软件可以允许父母或监护人查看由系统生成的不同分析,以便了解机器人计算设备是如何操作的、他们的孩子针对既定目标的进度如何、和/或儿童是如何与机器人计算设备交互的。
在一些实施方式中,系统可以包括云服务器计算设备115。在一些实施方式中,云服务器计算设备115可以包括一个或多个处理器和一个或多个存储器设备。在一些实施方式中,计算机可读指令可以从一个或多个存储器设备中检索并且可由一个或多个处理器执行以使云服务器计算设备115执行计算和/或附加功能。在一些实施方式中,该软件(例如,可由一个或多个处理器执行的计算机可读指令)可以管理所有用户(例如,儿童、父母和/或监护人)的账户。在一些实施方式中,该软件还可以管理个人可识别信息在云服务器计算设备115的一个或多个存储器设备中的存储。在一些实施方式中,该软件还可以对从儿童、父母或监护人捕获的声音文件执行音频处理(例如,语音识别和/或情境识别),以及生成可以由机器人计算设备115说出的语音和相关音频文件。在一些实施方式中,云服务器计算设备115中的软件可以执行和/或管理对从机器人计算设备接收到的图像的视频处理。
在一些实施方式中,云服务器计算设备115的软件可以分析从各种传感器和/或其他输入模态接收的输入,以及从其他软件应用程序收集关于儿童实现设定目标的进度的信息。在一些实施方式中,云服务器计算设备软件可以由一个或多个处理器执行以便执行分析处理。在一些实施方式中,分析处理可以是关于儿童相对于既定目标的表现如何的行为分析。
在一些实施方式中,云服务器计算设备的软件可以接收关于用户或儿童如何响应内容的输入,例如,儿童是否喜欢故事、增强内容和/或由机器人计算设备的一个或多个输出模态生成的输出。在一些实施方式中,云服务器计算设备可以接收关于儿童对内容的响应的输入,并且可以执行关于内容的效果如何以及内容的某些部分是否可能工作不正常(例如,被感知为无聊或潜在的故障或不工作)的分析。
在一些实施方式中,云服务器计算设备的软件可以从机器人计算设备的硬件部件(比如传感器、电池、马达、显示器和/或其他部件)接收诸如参数或测量值等输入。在一些实施方式中,云服务器计算设备的软件可以从硬件部件接收参数和/或测量值,并且可以对接收的参数、测量值或数据执行IOT分析处理以确定机器人计算设备是否发生故障和/或未以最佳方式运行。
在一些实施方式中,云服务器计算设备115可以包括一个或多个存储器设备。在一些实施方式中,一个或多个存储器设备的部分可以存储各种账户持有人的用户数据。在一些实施方式中,用户数据可以是用户地址、用户目标、用户详细信息和/或偏好。在一些实施方式中,用户数据可以被加密和/或存储可以是安全存储。
图1C图示了根据一些实施方式的包括机器人计算设备的系统的功能模块。在一些实施例中,本文描述的至少一种方法由系统300执行,该系统包括会话系统126、机器控制系统121、多模态输出系统122、多模态感知系统123以及评估系统215。在一些实施方式中,会话系统216、机器控制系统121、多模态输出系统122、多模态感知系统123以及评估系统215中的至少一个可以包括在机器人计算设备或机器中。在一些实施例中,该机器是机器人。在一些实施方式中,会话系统216可以通信地耦合到机器的控制系统121。在一些实施例中,会话系统可以通信地耦合到评估系统215。在一些实施方式中,会话系统216可以通信地耦合到会话内容储存库220。在一些实施方式中,会话系统216可以通信地耦合到会话测试系统。在一些实施方式中,会话系统216可以通信地耦合到会话创作系统360。在一些实施方式中,会话系统216可以通信地耦合到目标创作系统140。在一些实施方式中,会话系统216可以是由会话系统服务器提供的基于云的会话系统,其经由互联网通信地耦合到控制系统121。在一些实施方式中,会话系统可以是具体化的聊天操作系统。
在一些实施方式中,会话系统216可以是包括在机器人计算设备或实施方式中的嵌入式会话系统。在一些实施方式中,控制系统121可以被构造成控制多模态输出系统122和包括至少一个传感器的多模态感知系统123。在一些实施方式中,控制系统121可以被构造成与会话系统216交互。在一些实施方式中,机器或机器人计算设备可以包括多模态输出系统122。在一些实施方式中,多模态输出系统122可以包括音频输出子系统、视频显示子系统、机械机器人子系统、发光子系统、LED(发光二极管)环、和/或LED(发光二极管)阵列中的至少一个。在一些实施方式中,机器或机器人计算设备可以包括多模态感知系统123,其中,多模态感知系统123可以包括至少一个传感器。在一些实施方式中,多模态感知系统123包括以下各项中的至少一项:热检测子系统的传感器、视频捕获子系统的传感器、音频捕获子系统的传感器、触摸传感器、压电式压力传感器、电容式触摸传感器、电阻式触摸传感器、血压传感器、心率传感器和/或生物特征传感器。在一些实施方式中,评估系统215可以通信地耦合到控制系统121。在一些实施方式中,评估系统130可以通信地耦合到多模态输出系统122。在一些实施方式中,评估系统215可以通信地耦合到多模态感知系统123。在一些实施方式中,评估系统215可以通信地耦合到会话系统216。在一些实施方式中,评估系统215可以通信地耦合到客户端设备110(例如,父母或监护人的移动设备或计算设备)。在一些实施方式中,评估系统215可以通信地耦合到目标创作系统140。在一些实施方式中,评估系统215可以包括目标评估模块的计算机可读指令,这些指令在由评估系统执行时可以控制评估系统215处理从多模态感知系统123生成的信息以评估与由会话系统216处理的会话内容相关联的目标。在一些实施方式中,目标评估模块是基于由目标创作系统140提供的信息生成的。
在一些实施方式中,目标评估模块215可以基于由会话创作系统160提供的信息来生成。在一些实施例中,目标评估模块215可以由评估模块生成器142生成。在一些实施方式中,会话测试系统可以从测试操作员接收用户输入,并且可以(直接地或者经由会话系统216)向控制系统121提供多模态输出指令。在一些实施方式中,会话测试系统350可以(直接从控制系统121或经由会话系统216)接收指示由机器或机器人计算设备感测到的人类响应的事件信息。在一些实施方式中,会话创作系统141可以被构造成生成会话内容并将会话内容存储在内容储存库220和会话系统216之一中。在一些实施方式中,响应于会话系统216当前使用的内容的更新,会话系统可以被构造成将更新的内容存储在内容储存库220中。
在一些实施例中,目标创作系统140可以被构造成生成用于生成会话内容的目标定义信息。在一些实施方式中,目标创作系统140可以被构造成将生成的目标定义信息存储在目标储存库143中。在一些实施方式中,目标创作系统140可以被构造成将目标定义信息提供给会话创作系统141。在一些实施方式中,目标创作系统143可以向客户端设备提供目标定义用户界面,该用户界面包括用于接收用户提供的目标定义信息的字段。在一些实施例中,目标定义信息指定要用于评估目标的目标评估模块。在一些实施方式中,每个目标评估模块是评估系统215的子系统和多模态感知系统123的子系统中的至少一个。在一些实施例中,每个目标评估模块使用评估系统215的子系统和多模态感知系统123的子系统中的至少一个。在一些实施方式中,目标创作系统140可以被构造成通过与机器或机器人计算设备通信来确定可用的目标评估模块,并且更新目标定义用户界面以显示所确定的可用目标评估模块。
在一些实施方式中,目标定义信息定义目标的目标级别。在一些实施例中,目标创作系统140基于从客户端设备接收的信息(例如,经由目标定义用户界面提供的用户输入的数据)来定义目标级别。在一些实施例中,目标创作系统140基于模板自动定义目标级别。在一些实施例中,目标创作系统140基于由目标储存库143提供的信息自动定义目标级别,该目标储存库存储形成类似目标定义的目标级别的信息。在一些实施方式中,目标定义信息定义目标级别的参与者支持级别。在一些实施例中,目标创作系统140基于从客户端设备接收的信息(例如,经由目标定义用户界面提供的用户输入的数据)来定义参与者支持级别。在一些实施方式中,目标创作系统140可以基于模板自动定义参与者支持级别。在一些实施例中,目标创作系统140可以基于由目标储存库143提供的信息自动定义参与者支持级别,该目标储存库存储形成类似目标级别定义的参与者支持级别的信息。在一些实施方式中,会话内容包括指示应评估特定目标的目标信息,并且会话系统216可以(直接地或经由控制系统121)向评估系统215提供指令以启用评估系统215的相关目标评估模块。在目标评估模块被启用的情况下,评估系统215执行目标评估模块的指令以处理从多模态感知系统123生成的信息并生成评估信息。在一些实施方式中,评估系统215将所生成的评估信息(直接地或经由控制系统121)提供给会话系统215。在一些实施方式中,评估系统215可以基于评估信息(直接地或者经由控制系统121)更新会话系统216处的当前会话内容或可以选择会话系统100处的新会话内容。
图1B图示了根据一些实施方式的机器人计算设备。在一些实施方式中,机器人计算设备105可以是机器、数字伴侣、包括计算设备的机电设备。这些术语在说明书中可以互换使用。在一些实施方式中,如图1B所示,机器人计算设备105可以包括头部组件103d、显示设备106d、至少一个机械附肢105d(图1B中示出了两个)、身体组件104d、垂直轴旋转马达163和/或水平轴旋转马达162。在一些实施方式中,机器人计算设备可以包括多模态输出系统122和多模态感知系统123(图1B中未示出,但在下面的图2中示出)。在一些实施方式中,显示设备106d可以允许面部表情106b在生成之后被示出或展示。在一些实施方式中,面部表情106b可以通过两个或更多个数字眼睛、数字鼻子和/或数字嘴来示出。在一些实施方式中,可以使用其他图像或部分来示出面部表情。在一些实施方式中,水平轴旋转马达163可以允许头部组件103d左右移动,这允许头部组件103d模仿人的颈部移动,就像人左右摇头。在一些实施方式中,垂直轴旋转马达162可以允许头部组件103d在上下方向上移动,就像人上下点头。在一些实施方式中,可以使用附加马达将机器人计算设备(例如,整个机器人或计算设备)移动到房间或空间(或甚至另一个房间)中的新定位或地理位置。在这种实施方式中,附加马达可以连接到驱动系统,该驱动系统导致轮子、轮胎或胎面旋转并因此物理地移动机器人计算设备。
在一些实施方式中,身体组件104d可以包括一个或多个触摸传感器。在一些实施方式中,身体组件的(多个)触摸传感器可以允许机器人计算设备确定它是否被触摸或拥抱。在一些实施方式中,一个或多个附肢105d可以具有一个或多个触摸传感器。在一些实施方式中,一个或多个触摸传感器中的一些可以位于附肢105d的末端(其可以代表手)。在一些实施方式中,这允许机器人计算设备105确定用户或儿童是否正在触摸附肢的末端(这可以表示用户在握住用户的手)。
图2是描绘了根据各实施方式的机器人计算设备(例如,图1B的105)的系统架构的简图。在一些实施方式中,图2的机器人计算设备或系统可以被实施为单个硬件设备。在一些实施方式中,图2的机器人计算设备和系统可以被实施为多个硬件设备。在一些实施方式中,图2的机器人计算设备和系统可以实施为ASIC(专用集成电路)。在一些实施方式中,图2的机器人计算设备和系统可以实施为FPGA(现场可编程门阵列)。在一些实施方式中,图2的机器人计算设备和系统可以实施为SoC(片上系统)。在一些实施方式中,总线201可以与处理器226A-N、主存储器227(例如,随机存取存储器(RAM))、只读存储器(ROM)228、一个或多个处理器可读存储介质210、以及一个或多个网络设备211进行接口连接。在一些实施方式中,总线201与显示设备(例如102c)和用户输入设备中的至少一个进行接口连接。在一些实施方式中,总线101与多模态输出系统122进行接口连接。在一些实施方式中,多模态输出系统122可以包括音频输出控制器。在一些实施方式中,多模态输出系统122可以包括扬声器。在一些实施方式中,多模态输出系统122可以包括显示系统或监视器。在一些实施方式中,多模态输出系统122可以包括马达控制器。在一些实施方式中,马达控制器可以被构造成控制图1B的机器人系统的一个或多个附肢(例如105d)。在一些实施方式中,马达控制器可以被构造成控制图1B的机器人系统的附肢(例如105d)的马达。在一些实施方式中,马达控制器可以被构造成控制马达(例如,机动化的马达、机械机器人附肢)。
在一些实施方式中,总线201可以与多模态感知系统123(其可以被称为多模态输入系统或多模态输入模态)进行接口连接。在一些实施方式中,多模态感知系统123可以包括一个或多个音频输入处理器。在一些实施方式中,多模态感知系统123可以包括人类反应检测子系统。在一些实施方式中,多模态感知系统123可以包括一个或多个麦克风。在一些实施方式中,多模态感知系统123可以包括一个或多个相机或成像设备。
在一些实施方式中,一个或多个处理器226A-226N可以包括ARM处理器、X86处理器、GPU(图形处理单元)等中的一个或多个。在一些实施方式中,处理器中的至少一个可以包括支持SIMD(单指令多数据)系统的至少一个算术逻辑单元(ALU),该SIMD系统为乘法和累加运算提供本地支持。
在一些实施方式中,中央处理单元(处理器)、GPU和多处理器单元(MPU)中的至少一者可以被包括在内。在一些实施方式中,处理器和主存储器形成处理单元225。在一些实施方式中,处理单元225包括通信地耦合到RAM、ROM和计算机可读存储介质中的一个或多个的一个或多个处理器;处理单元中的一个或多个处理器经由总线接收由RAM、ROM和计算机可读存储介质中的一个或多个存储的指令;并且该一个或多个处理器执行接收到的指令。在一些实施方式中,处理单元是ASIC(专用集成电路)。
在一些实施方式中,处理单元可以是SoC(片上系统)。在一些实施方式中,处理单元可以包括支持SIMD(单指令多数据)系统的至少一个算术逻辑单元(ALU),该SIMD系统为乘法和累加运算提供本地支持。在一些实施方式中,处理单元是中央处理单元,比如IntelXeon(英特尔至强)处理器。在其他实施方式中,处理单元包括诸如NVIDIA Tesla(英伟达特斯拉)等图形处理单元。
在一些实施方式中,一个或多个网络适配器设备或网络接口设备205可以提供用于交换数据和命令的一个或多个有线或无线接口。这样的有线和无线接口包括例如,通用串行总线(USB)接口、蓝牙接口、Wi-Fi接口、以太网接口、近场通信(NFC)接口等。在一些实施方式中,一个或多个网络适配器设备或网络接口设备205可以是无线通信设备。在一些实施方式中,一个或多个网络适配器设备或网络接口设备205可以包括个域网(PAN)收发器、广域网通信收发器和/或蜂窝通信收发器。
在一些实施方式中,一个或多个网络设备205可以通信地耦合到另一机器人计算设备(例如,与图1B的机器人计算设备105类似的机器人计算设备)。在一些实施方式中,一个或多个网络设备205可以通信地耦合到评估系统模块(例如,215)。在一些实施方式中,一个或多个网络设备205可以通信地耦合到会话系统模块(例如,110)。在一些实施方式中,一个或多个网络设备205可以通信地耦合到测试系统。在一些实施方式中,一个或多个网络设备205可以通信地耦合到内容储存库(例如,220)。在一些实施方式中,一个或多个网络设备205可以通信地耦合到客户端计算设备(例如,110)。在一些实施方式中,一个或多个网络设备205可以通信地耦合到会话创作系统(例如,160)。在一些实施方式中,一个或多个网络设备205可以通信地耦合到评估模块生成器。在一些实施方式中,一个或多个网络设备可以通信地耦合到目标创作系统。在一些实施方式中,一个或多个网络设备205可以通信地耦合到目标储存库。在一些实施方式中,软件程序(比如操作系统211、应用程序212和设备驱动程序213)中的机器可执行或计算机可执行指令可以从处理器可读存储介质、ROM或任何其他存储位置加载到(处理单元的)一个或多个存储器设备中。在这些软件程序的执行期间,相应的机器可执行或计算机可执行指令可以被(处理单元的)处理器226A-226N中的至少一个经由总线201访问,并且然后可以被处理器中的至少一个执行。由软件程序使用的数据也可以存储在一个或多个存储器设备中,并且这种数据在软件程序的机器可执行或计算机可执行指令的执行期间被一个或多个处理器226A-226N中的至少一个访问。
在一些实施方式中,处理器可读存储介质210可以是硬盘驱动器、闪存驱动器、DVD、CD、光盘、软盘、闪存、固态驱动器、ROM、EEPROM、电子电路、半导体存储器设备等之一(或两个或更多个的组合)。在一些实施方式中,处理器可读存储介质210可以包括用于操作系统211、软件程序或应用软件212、设备驱动程序213的机器可执行或计算机可执行指令(和相关数据),以及用于图2的一个或多个处理器226A-226N的机器可执行或计算机可读指令。
在一些实施方式中,处理器可读存储介质210可以包括机器控制系统模块214,其包括用于控制机器人计算设备执行由机器控制系统执行的过程(比如使机器人计算设备的头部组件移动)的机器可执行或计算机可执行指令。
在一些实施方式中,处理器可读存储介质210可以包括评估系统模块215,其包括用于控制机器人计算设备执行由评估系统执行的过程的机器可执行或计算机可执行指令。在一些实施方式中,处理器可读存储介质210可以包括会话系统模块216,其可以包括用于控制机器人计算设备105执行由会话系统执行的过程的机器可执行或计算机可执行指令。在一些实施方式中,处理器可读存储介质210可以包括用于控制机器人计算设备105执行由测试系统执行的过程的机器可执行或计算机可执行指令。在一些实施方式中,处理器可读存储介质210,用于控制机器人计算设备105执行由会话创作系统执行的过程的机器可执行或计算机可执行指令。
在一些实施方式中,处理器可读存储介质210,用于控制机器人计算设备105执行由目标创作系统执行的过程的机器可执行或计算机可执行指令。在一些实施方式中,处理器可读存储介质210可以包括用于控制机器人计算设备105执行由评估模块生成器执行的过程的机器可执行或计算机可执行指令。
在一些实施方式中,处理器可读存储介质210可以包括内容储存库220。在一些实施方式中,处理器可读存储介质210可以包括目标储存库180。在一些实施方式中,处理器可读存储介质210可以包括用于情绪检测模块的机器可执行或计算机可执行指令。在一些实施方式中,情绪检测模块可以被构造成基于所捕获的图像数据(例如,由感知系统123、和/或成像设备之一捕获的图像数据)来检测情绪。在一些实施方式中,情绪检测模块可以被构造成基于所捕获的音频数据(例如,由感知系统123、和/或麦克风之一捕获的音频数据)来检测情绪。在一些实施方式中,情绪检测模块可以被构造成基于所捕获的图像数据和所捕获的音频数据来检测情绪。在一些实施方式中,可由情绪检测模块检测的情绪包括愤怒、轻蔑、厌恶、恐惧、快乐、中立、悲伤和惊讶。在一些实施方式中,可由情绪检测模块检测的情绪包括快乐、悲伤、愤怒、困惑、厌恶、惊讶、平静、未知。在一些实施方式中,情绪检测模块被构造成将检测到的情绪分类为积极、消极或中立。在一些实施方式中,机器人计算设备105可以在机器执行动作之后使用情绪检测模块来获得、计算或生成所确定的情绪分类(例如,积极、中立、消极),并与所执行的动作相关联地存储所确定的情绪分类(例如,存储在存储介质210中)。
在一些实施方式中,测试系统可以与机器人计算设备分离的硬件设备或计算设备,并且测试系统包括至少一个处理器、存储器、ROM、网络设备和存储介质(根据与本文针对机器120描述的系统架构类似的系统架构来构造),其中,存储介质存储用于控制测试系统150执行由测试系统执行的过程的机器可执行或计算机可执行指令,如本文所述。
在一些实施方式中,会话创作系统可以是与机器人计算设备105分离的硬件设备,并且会话创作系统可以包括至少一个处理器、存储器、ROM、网络设备和存储介质(根据与本文针对机器人计算设备105描述的系统架构类似的系统架构来构造),其中,存储介质存储用于控制会话创作系统执行由会话创作系统执行的过程的机器可执行或计算机可执行指令。
在一些实施方式中,评估模块生成器可以是与机器人计算设备105分离的硬件设备,并且评估模块生成器可以包括至少一个处理器、存储器、ROM、网络设备和存储介质(根据与本文针对机器人计算设备描述的系统架构类似的系统架构来构造),其中,存储介质存储用于控制评估模块生成器执行由评估模块生成器执行的过程的机器可执行或计算机可执行指令,如本文所述。
在一些实施方式中,目标创作系统可以是与机器人计算设备分离的硬件设备,并且目标创作系统可以包括至少一个处理器、存储器、ROM、网络设备和存储介质(根据与所描述的系统架构类似的系统架构来构造,用于控制目标创作系统执行由目标创作系统执行的过程的指令。在一些实施方式中,目标创作系统的存储介质可以包括本文描述的目标定义用户界面的数据、设置和/或参数。在一些实施方式中,目标创作系统的存储介质可以包括用于本文描述的目标定义用户界面(例如,用户界面)的机器可执行或计算机可执行指令。在一些实施方式中,目标创作系统的存储介质可以包括本文描述的目标定义信息(例如,目标定义信息)的数据。在一些实施方式中,目标创作系统的存储介质可以包括用于控制目标创作系统生成本文描述的目标定义信息(例如,目标定义信息)的机器可执行或计算机可执行指令。
图3A图示了根据一些实施方式的多模态波束成形和注意力过滤系统中的模块。在一些实施方式中,包括多模态波束成形和注意力过滤系统300的计算设备包括数据存储模块362、对话管理模块365、主动降噪模块370、马达移动模块375;音频输入模块310、视频输入模块315、到达方向模块320和/或传感器模块325、雷达传感器模块、红外和/或热成像设备模块、3D成像设备。在一些实施方式中,包括多模态波束成形和注意力过滤器系统300的计算设备包括多模态输出模块330、多模态输入模块335、多模态融合模块345、多模态波束成形模块340、世界跟踪模块355、互动模块360、和/或元信息数据库350。
在一些实施方式中,多模态波束成形和注意力过滤系统300的音频输入模块310可以从一个或多个麦克风或麦克风阵列接收音频文件或话音文件,并且可以将音频文件或话音文件传送到多模态输入模块335。在一些实施方式中,视频输入模块315可以从包括会话代理和/或多模态波束成形和注意力过滤系统的计算设备周围的环境中的一个或多个成像设备接收视频文件和/或图像文件。在一些实施方式中,视频输入模块315可以将所接收的视频文件和/或图像文件传送到多模态输入模块335。在一些实施方式中,到达方向模块320可以(从音频输入模块310)接收标识信号在麦克风阵列中的不同麦克风上到达的时间的测量值和/或参数。在一些实施方式中,到达方向模块320可以基于从不同麦克风接收的到达时间信号来计算到达方向测量值。在一些实施方式中,来自视频输入模块315和/或诸如LIDAR系统325等其他传感器的视频信息、参数可以用于进一步细化到达方向测量值的精度。
在一些实施方式中,传感器模块325可以接收一个或多个LIDAR传感器的LIDAR传感器测量值。在一些实施例中,测量值可以标识物体和/或用户在包括多模态波束成形和注意力过滤系统的计算设备周围的位置(例如,是位置测量值)。在一些实施例中,传感器模块325可以接收雷达传感器测量值和/或接近度测量值,其也标识物体和/或用户在包括多模态波束成形和注意力过滤系统的计算设备周围的位置。在一些实施方式中,传感器模块可以接收表示多模态波束成形和注意力过滤系统周围区域中的用户和/或物体的测量值和/或图像。在一些实施方式中,3D成像设备可以接收表示多模态波束成形和注意力过滤系统周围区域中的用户和/或物体的测量值和/或图像。这些测量值和/或图像标识了用户和/或物体可能位于环境中的位置。在一些实施方式中,可以使用接近度传感器而不是传感器或成像设备之一。在一些实施方式中,LIDAR传感器测量值、RADAR传感器测量值、接近度传感器测量值、热和/或红外测量值和/或图像、3D图像可以经由相应模块传送到多模态输入模块335。在一些实施方式中,多模态输入模块335可以处理和/或收集LIDAR传感器、雷达传感器、热成像或红外成像或3D成像设备的不同图像和/或测量值。在一些实施方式中,多模态输入模块335可以将不同的测量值和/或图像传送到多模态波束成形模块340和/或多模态融合模块345。
在一些实施方式中,多模态输出模块330可以与马达移动模块375、主动降噪模块370、对话管理模块365和/或数据存储模块362进行通信。在一些实施方式中,多模态输出模块330可以从多模态波束成形模块340接收指令、命令和/或文件。
在一些实施方式中,数据存储模块362可以是存储关于从多模态输出模块330传送的指令、命令、消息和/或文件的信息的数据库。在一些实施方式中,这意味着数据存储可以包括例如用户的声纹、用户的图像和/或命令字符串。
在一些实施方式中,对话管理模块365用于管理长期和短期的会话交互。对话管理模块365在名称为“Systems and Methods for Short-and Long-term Dialog ManagementBetween a Robot Computing Device/Digital Companion and a User[用于机器人计算设备/数字伴侣与用户之间的短期和长期对话管理的系统和方法]”的案卷号EMPAT-03的共同拥有的专利申请中进行了描述,该专利申请通过引用并入。
在一些实施方式中,主动降噪模块370可以生成指令和/或命令以传送到其他模块、系统或部件,以减少传入话音文件或声音文件中的噪声。在一些实施方式中,主动降噪模块370可以滤除话音文件和/或声音文件。
在一些实施方式中,马达移动模块370可以生成指令、消息或命令以传送到包括会话代理或系统的计算设备中的一个或多个马达控制器。在一些实施方式中,指令、消息或命令可以告诉计算设备更靠近或面对互动的用户。在一些实施方式中,指令、消息或命令可以告诉计算设备移动到房间的不同区域以增强与一个或多个用户的会话交互。
在一些实施方式中,多模态输入模块335可以将所接收的音频或声音文件、视频或图像文件、到达方向参数或测量值、激光雷达传感器参数或测量值、雷达传感器参数或测量值、接近度传感器参数或测量值、热或红外相机文件和/或测量值、3D图像传送到多模态融合模块345。在一些实施方式中,多模态融合模块345可以使用所接收的信息来管理会话交互。多模态融合模块的操作还在名称为“Systems and Methods for ManagingConversation Interactions with Between a User and A Robot Computing Device orConversation Agent[用于管理用户与机器人计算设备或会话代理之间的会话交互的系统和方法]”的案卷号EMPAT01的专利申请中进行了解释。在一些实施方式中,多模态融合模块345可以将交流交互参数、测量值和/或日志传送到元信息数据库350、互动模块360和/或世界跟踪模块355。
在一些实施方式中,元信息数据库350可以包括一个或多个用户的特性,以便辅助会话代理或系统聚焦于用户并与其互动。在一些信息中,元信息可以包括用户的身份、用户与会话代理交流的历史、当前优先级状态和/或过去优先级状态(例如,主用户)、与会话代理交互的平均时间、当前和/或过去的互动水平。
在一些实施方式中,互动模块360可以使用来自多模态融合模块345和/或世界跟踪模块355的信息、参数和/或测量值来识别哪些用户与包括会话代理或系统的计算设备进行互动。在一些实施方式中,互动模块360使用音频信息和/或视频图像信息并分析用户的面部(或面部表情)、眼睛注视、手势、语音、移动和空间运动。
在一些实施方式中,世界跟踪模块355从多模态融合模块345接收信息、参数和/或文件。在一些实施方式中,世界跟踪模块355生成世界地图,该世界地图标识包括会话代理或系统的计算设备周围的环境中的用户和/或物体。换句话说,它分析视频输入、到达声音的方向信息、传感器(激光雷达、雷达、接近度)输入、和/或成像设备文件或输入,以生成世界地图。在一些实施方式中,世界地图可以存储在数据存储362和/或元信息数据库350中。在一些实施方式中,世界跟踪模块355可以定期或连续地自动更新世界地图。在一些实施方式中,世界跟踪模块355可以将世界地图传送给多模态波束成形模块340。在一些实施方式中,这允许多模态波束成形模块知道所有用户或物体在环境中的位置。通过了解用户或物体的定位,这允许多模态波束成形模块340向多模态输出模块生成命令、指令或文件,以导致事件或动作发生(例如,声音的过滤、使某些用户参与会话交互、使计算设备或计算设备的一部分移动以改进与一个或多个用户的会话交互)。
图3B图示了根据一种或多种实施方式的被配置用于创建环境视图的系统300。在一些实施方式中,系统300可以包括一个或多个计算平台302。(多个)计算平台302可以被配置为根据客户端/服务器架构、对等架构和/或其他架构与一个或多个远程平台304通信。(多个)远程平台304可以被配置为经由(多个)计算平台302和/或根据客户端/服务器架构、对等架构和/或其他架构与其他远程平台通信。用户可以经由(多个)远程平台304来访问系统300。结合系统300描述的一个或多个部件可以与结合图1、图1A、图1B和图2描述的一个或多个部件相同或相似。例如,在一些实施方式中,(多个)计算平台302和/或(多个)远程平台304可以与机器人计算设备105、一个或多个电子设备110、云服务器计算设备115、父母计算设备125和/或其他部件中的一个或多个相同或相似。
(多个)计算平台302可以由计算机可读指令306配置。计算机可读指令306可以包括一个或多个指令模块。指令模块可以包括计算机程序模块。指令模块可以包括以下中的一个或多个:数据存储模块362、对话管理模块365、主动降噪模块370、马达移动模块375;音频模块310、视频输入模块315、到达方向模块320和/或传感器模块325、雷达传感器模块、红外和/或热成像设备模块、3D成像设备模型。在一些实施方式中,包括多模态波束成形和注意力过滤器系统300的计算设备包括多模态输出模块330、多模态输入模块335、多模态融合模块345、多模态波束成形模块340、世界跟踪模块355、互动模块360、和/或元信息数据库350、和/或其他指令模块。
在一些实施方式中,(多个)计算平台302、(多个)远程平台304和/或外部资源380可以经由一个或多个电子通信链路可操作地链接。例如,这样的电子通信链路可以至少部分地经由诸如互联网和/或其他网络等网络来建立。应当理解,这并非旨在进行限制,并且本披露的范围包括(多个)计算平台302、(多个)远程平台304和/或外部资源380可以经由一些其他通信介质可操作地链接的实施方式。
给定远程平台304可以包括被配置为执行计算机程序模块的一个或多个处理器。计算机程序模块可以被配置为使得与给定远程平台304相关联的专家或用户能够与系统300和/或外部资源380进行接口连接,和/或提供本文归属于(多个)远程平台304的其他功能。作为非限制性示例,给定远程平台304和/或给定计算平台302可以包括服务器、台式计算机、膝上型计算机、手持式计算机、平板计算平台、上网本、智能手机、游戏控制台和/或其他计算平台中的一个或多个。
外部资源380可以包括在系统300之外的信息源、参与系统300的外部实体、和/或其他资源。在一些实施方式中,本文归属于外部资源380的一些或全部功能可以由包括在系统300中的资源提供。
(多个)计算平台302可以包括电子存储装置372、一个或多个处理器374和/或其他部件。(多个)计算平台302可以包括用于实现与网络和/或其他计算平台的信息交换的通信线路或端口。图3B中的(多个)计算平台302的图示不旨在进行限制。(多个)计算平台302可以包括多个硬件、软件和/或固件部件,它们一起操作以提供本文归属于(多个)计算平台302的功能。例如,(多个)计算平台302可以由作为(多个)计算平台302一起操作的计算平台云来实施。
电子存储装置372可以包括以电子方式存储信息的非暂态存储介质。电子存储装置372的电子存储介质可以包括与(多个)计算平台302一体提供(即,基本上不可移除)的系统存储装置和/或经由例如端口(例如,USB端口、火线端口等)或驱动器(例如,磁盘驱动器等)可移除地连接到(多个)计算平台302的可移除存储装置中的一种或两种。例如,电子存储装置372可以包括光学可读存储介质(例如,光盘等)、磁性可读存储介质(例如,磁带、磁性硬盘驱动器、软盘驱动器等)、基于电荷的存储介质(例如,EEPROM、RAM等)、固态存储介质(例如,闪存驱动器等)、和/或其他电子可读存储介质中的一种或多种。电子存储装置372可以包括一个或多个虚拟存储资源(例如,云存储、虚拟专用网络和/或其他虚拟存储资源)。电子存储装置372可以存储软件算法、由(多个)处理器374确定的信息、从(多个)计算平台302接收的信息、从(多个)远程平台304接收的信息、和/或使(多个)计算平台302如本文所述发挥作用的其他信息。
(多个)处理器374可以被配置为在(多个)计算平台302中提供信息处理能力。同样地,(多个)处理器374可以包括数字处理器、模拟处理器、被设计用于处理信息的数字电路、被设计用于处理信息的模拟电路、状态机、和/或用于以电子方式处理信息的其他机制中的一个或多个。尽管(多个)处理器374在图3中示出为单一的实体,但这仅用于说明目的。在一些实施方式中,(多个)处理器374可以包括多个处理单元。这些处理单元可以物理地位于同一设备内,或者(多个)处理器374可以表示协同操作的多个设备的处理功能。(多个)处理器374可以被配置为执行模块310、315、320、325、330、335、340、345、350、355、360、362、365、370和/或375、和/或其他模块。(多个)处理器374可以被配置为通过软件、硬件、固件,软件、硬件和/或固件的某种组合,和/或用于在(多个)处理器374上配置处理能力的其他机制,来执行模块310、315、320、325、330、335、340、345、350、355、360、362、365、370和/或375和/或其他模块。如本文所用,术语“模块”可以指执行归属于模块的功能的任何部件或部件集。这可以包括在执行处理器可读指令期间的一个或多个物理处理器、处理器可读指令、电路系统、硬件、存储介质或任何其他部件。
应当理解,尽管模块310、315、320、325、330、335、340、345、350、355、360、362、365、370和/或375在图3B中被图示为在单个处理单元内实施,但在(多个)处理器374包括多个处理单元的实施方式中,模块310、315、320、325、330、335、340、345、350、355、360、362、365、370和/或375中的一个或多个可以远离其他模块实施。对由下文描述的不同模块310、315、320、325、330、335、340、345、350、355、360、362、365、370和/或375提供的功能的描述是出于说明性目的,并且不旨在是限制性的,因为任何模块310、315、320、325、330、335、340、345、350、355、360、362、365、370和/或375都可以提供比所描述的更多或更少的功能。例如,模块310、315、320、325、330、335、340、345、350、355、360、362、365、370和/或375中的一个或多个模块可以被去除,并且其一些或全部功能可以由模块310、315、320、325、330、335、340、345、350、355、360、362、365、370和/或375中的其他模块提供。作为另一示例,(多个)处理器374可以被配置为执行一个或多个附加模块,这些附加模块可以执行归属于以下模块310、315、320、325、330、335、340、345、350、355、360、362、365、370和/或375之一的一些或全部功能。
图4A、图4B、图4C和图4D图示了根据一种或多种实施方式的用于为多方交互创建多模态波束成形和注意力过滤的方法400。下文呈现的方法400的操作旨在是说明性的。在一些实施方式中,方法400可以用一个或多个未描述的附加操作来完成和/或不使用一个或多个所讨论的操作。另外,图4A、图4B、图4C和/或图4D中图示并在下文描述方法400的操作的顺序不旨在是限制性的。
在一些实施方式中,方法400可以在一个或多个处理设备(例如,数字处理器、模拟处理器、被设计用于处理信息的数字电路、被设计用于处理信息的模拟电路、状态机、和/或用于以电子方式处理信息的其他机制)中实施。一个或多个处理设备可以包括响应于以电子方式存储在电子存储介质上的指令而执行方法400的一些或全部操作的一个或多个设备。一个或多个处理设备可以包括通过硬件、固件和/或软件被配置为专门设计用于执行方法400的一个或多个操作的一个或多个设备。
图4A图示了根据一种或多种实施方式的确定交流互动的方法。
在一些实施方式中,操作402可以包括从位于包括会话代理或系统的计算设备中的一个或多个麦克风(或麦克风阵列)、一个或多个成像设备、雷达传感器、激光雷达传感器、一个或多个红外成像设备、和/或多个3D成像设备之一中的至少两个接收参数和测量值。在一些实施方式中,会话代理或系统可以使用多波束输入(例如,成像设备、传感器、麦克风)来收集关于环境的信息。根据一种或多种实施方式,操作402可以由通过包括与多模态输入模块325、音频输入310、视频输入315、到达方向模块320和/或传感器模块325相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作404可以包括分析从多模态输入模块接收的参数和测量值并将参数和测量值传送到多模态波束成形模块340。在一些实施方式中,根据一种或多种实施方式,操作404可以由通过包括与多模态输入模块325相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作406可以包括生成包括会话代理和/或系统的计算设备周围的环境的世界地图(或数字地图)。在一些实施方式中,世界地图(或数字地图)可以包括位于会话代理或系统周围的区域中的一个或多个用户和物体。因为可以使用如此多的输入(例如,成像设备、麦克风、激光雷达、雷达、到达方向测量值、热或红外成像设备、3D成像设备),所以操作406可以能够形成环境的准确地图。根据一种或多种实施方式,操作406可以由通过包括与世界跟踪模块355和多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作408可以包括定期地重复从输入设备接收参数和测量值以及分析的步骤,以维护环境的持久世界地图。在一些实施方式中,这可以是每分钟、每5分钟和/或每10分钟。在一些实施方式中,接收参数和测量值以及分析的步骤进行重复的时间范围可以取决于包括会话代理的计算设备当前所在的环境来修改。根据一种或多种实施方式,操作408可以由通过包括与世界跟踪模块314相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,用于多方交互的多模态波束成形和注意力过滤系统或方法然后可以分析哪个用户或哪些用户正在与计算设备中的会话代理或系统进行互动。在一些实施方式中,操作410可以包括识别世界地图中的一个或多个用户。在一些实施方式中,操作410可以包括从一个或多个多波束输入中识别哪些定位的物品是人类或用户和/或哪些定位的物品是物体。根据一种或多种实施方式,操作410可以由通过包括与世界跟踪模块355相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作412可以包括使用一个或多个多模态输入设备和从一个或多个多模态输入设备接收的输入来跟踪用户的互动,以确定与包括会话代理的计算设备互动的一个或多个用户。在一些实施方式中,这可以包括解释眼睛注视、手势、用户与会话代理或系统的接近度、用户的移动以确定互动。这也在2020年2月29日提交的名称为“Systems and Methods for Managing Conversation Interactions Between a Userand A Robot Computing Device or Conversation Agent[用于管理用户与机器人计算设备或会话代理之间的会话交互的系统和方法]”的案卷号EMPAT01的申请序列号62/983,590的共同拥有的美国临时专利申请中进行了描述。根据一种或多种实施方式,操作412可以由通过包括与互动模块360相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,用于多方交互的多模态波束成形和注意力过滤可以使用声音文件或话音文件来执行不同的动作。在一些实施方式中,操作414可以包括从一个或多个麦克风接收一个或多个话音文件。根据一种或多种实施方式,操作414可以由通过包括与音频输入模块310相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作416可以包括识别世界地图中传达一个或多个话音文件的用户。根据一种或多种实施方式,操作416可以由通过包括与音频输入模块310和/或多模态输入模块335相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,用于多方交互系统和方法的多模态波束成形和注意力过滤可以不和未与包括会话代理或系统的计算设备互动的用户交流。在一些实施方式中,操作418可以包括如果用户没有与会话代理或系统互动,则不与用户交流。在一些实施方式中,世界跟踪模块355可以向多模态波束成形模块340传达哪些用户参与了互动。在一些实施方式中,多模态波束成形模块可以与多模态输出模块330通信,经由对话管理模块365与哪些用户交流以及不与哪些用户交流。根据一种或多种实施方式,操作418可以由通过包括与多模态输出模块330、多模态波束成形模块340和/或对话管理模块365相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
图4B图示了根据一种或多种实施方式的在机器人计算设备与(多个)用户之间的交流交互期间过滤声音的方法。
在一些实施方式中,操作420可以包括从一个或多个存储器设备检索用户的特性。在一些实施方式中,用户的特性可以包括但不限于标识、历史、优先级状态和/或用户是否是主要用户。根据一种或多种实施方式,操作420可以由通过包括与多模态融合模块345和/或元信息数据库350相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作422可以包括将用户的特性与所生成的世界地图中标识的一个或多个用户的特性进行比较,以在一个或多个用户中识别目标用户。在一些实施方式中,这可以通过多模态融合模块345从元信息数据库350检索与用户特性相关联的信息并使用来自世界跟踪模块355的世界地图来进行。根据一种或多种实施方式,操作422可以由通过包括与多模态融合模块345、元信息数据库350和/或世界跟踪模块355相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作424可以包括从一个或多个用户接收声音到达方向测量值。这允许包括会话代理的计算设备识别声音来自哪个方向并因此知道用户位于何处。根据一种或多种实施方式,操作424可以由通过包括与到达方向模块320和音频输入模块310相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,会话代理或系统可以使用声音到达方向测量值来辅助确定用户是否参与了互动。在一些实施方式中,操作426可以包括滤除来自一个或多个用户中未与包括会话代理或系统的计算设备互动的任何用户的声音或声音文件。根据一种或多种实施方式,操作426可以由通过包括与多模态融合模块345和/或多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,情况会发生变化并且用户可能决定不再与会话代理或系统互动。在一些实施方式中,操作428可以包括在滤除脱离用户的声音或声音文件之后确定先前互动用户之一不再与包括会话代理或模块的计算设备互动。根据一种或多种实施方式,操作428可以由通过包括与互动模块360、多模态融合模块345和/或世界跟踪模块355相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作430可以包括停用对先前脱离用户的声音或声音文件的滤除以允许处理这些声音或声音文件。在一些实施方式中,这允许会话代理或系统重新评估用户是否已经与会话代理或系统互动。根据一种或多种实施方式,操作430可以由通过包括与多模态融合模块345和/或多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,不是评估用户的互动,而是会话代理或系统可以接收全局命令,该全局命令指示会话代理移除对从在所接收的全局命令中标识的用户的声音文件的声音的滤除。在一些实施方式中,操作432可以包括基于接收全局命令而停用对指定用户的声音或声音文件的滤除。根据一种或多种实施方式,操作432可以由通过包括与多模态输入模块335和/或多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,会话代理或系统可以存储来自所有潜在用户的声音或声音文件,即使用户未互动。在一些实施方式中,会话代理或系统然后可以重新分析这些文件以重新评估这些用户是否应该被监听并因此被处理。在一些实施方式中,操作434可以包括基于计算设备的一般上下文分析未互动用户的声音文件以重新评定是否应处理这些未互动用户的声音或声音文件。根据一种或多种实施方式,操作434可以由通过包括与多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
图4C图示了根据一些实施方式的在会话交互中指派互动水平的方法。在一些实施方式中,多模态波束成形和注意力过滤系统还可以包括将声音或声音文件指派给用户的功能。在一些实施方式中,会话代理或系统可以使用声音或音频文件和/或视频文件来完成评估。操作436可以包括从一个或多个麦克风接收一个或多个声音文件。根据一种或多种实施方式,操作436可以由通过包括与音频输入模块310和/或多模态输入模块335相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作438可以包括从一个或多个成像设备接收图像文件。根据一种或多种实施方式,操作438可以由通过包括与视频输入模块315和/或多模态输入模块335相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作440可以包括分析来自一个或多个成像设备的图像文件以识别正在说话的用户。根据一种或多种实施方式,操作440可以由通过包括与多模态输入模块335和/或多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作442可以包括将一个或多个声音文件指派给被识别为正在说话的用户的一个或多个用户。根据一种或多种实施方式,操作442可以由通过包括与多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
多模态波束成形和注意力过滤系统的另一个重要特征是其基于特定特性(例如互动水平)对用户进行优先级排序的能力。在一些实施方式中,操作444可以包括确定一个或多个用户对会话代理或模块的互动水平。根据一种或多种实施方式,操作444可以由通过包括与互动模块360相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作446可以包括基于在操作444中确定的互动水平为每个用户指派优先级值。在一些实施方式中,包括会话代理或系统的计算设备可以为用户生成优先级队列,并且会话代理或系统将根据优先级队列来响应或参与与用户的会话交互。在一些实施方式中,可以通过使用面部识别、话音识别、与计算设备的接近度、手势评估和/或面部表情评估来确定互动水平。根据一种或多种实施方式,操作446可以由通过包括与世界跟踪模块355和/或多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,会话代理或系统可以分析所接收的视频或图像文件以确定应该与哪些用户互动(或监听哪些用户)。在一些实施方式中,操作448可以包括识别世界地图中的一个或多个用户。根据一种或多种实施方式,操作448可以由通过包括与世界跟踪模块355相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作450可以包括基于对关于一个或多个用户捕获的图像或图像文件的分析来确定监听一个或多个用户中的哪些用户或处理来自一个或多个用户中的哪些用户的声音或声音文件。在一些实施方式中,对图像或视频文件的分析可以包括分析用户的面部、用户的眼睛注视、用户的手势、用户的语音、和/或用户周围的环境中的移动或运动。在一些实施方式中,根据一种或多种实施方式,操作450可以由通过包括与视频输入模块315、多模态输入模块335和/或多模态融合模块345相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,包括会话代理或模块的计算设备周围的环境可能非常嘈杂。在一些实施方式中,多模态波束成形和注意力过滤系统包括多个特征(包括图像文件的唇读)以辅助提高会话代理或系统的语音识别的准确性。在一些实施方式中,操作452可以包括识别世界地图中的一个或多个用户。根据一种或多种实施方式,操作452可以由通过包括与世界跟踪模块355和/或多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。尽管在步骤或操作446与448之间以及在450与452之间绘制了箭头,但这并不一定意味着这些操作以该顺序发生和/或顺序地发生。
在一些实施方式中,操作454可以包括分析一个或多个用户的所接收图像的嘴形和/或嘴唇移动,以提高语音识别的准确性。根据一种或多种实施方式,操作454可以由通过包括与世界跟踪模块355和/或多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
图4D图示了根据一些实施方式的使用多模态波束成形和注意力过滤系统来增强交流交互和互动的多种方法。
多模态波束成形和注意力过滤系统还可以包括其他特征,以尝试远离嘈杂环境或让用户远离嘈杂环境。在一些实施方式中,操作456可以包括基于从一个或多个用户和环境接收的声音和/或声音文件来确定环境的噪声水平。根据一种或多种实施方式,操作456可以由通过包括与多模态输出模块330相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作458可以包括生成移动性命令以使计算设备更靠近或面对正在向该计算设备说话的用户。根据一种或多种实施方式,操作458可以由通过包括与多模态波束成形模块340、多模态输出模块330和/或马达移动375相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作460可以包括生成移动性命令以使包括会话代理或系统的计算设备移动到不同的位置,以便改善会话代理对(多个)用户的视野、对用户语音的听力、和/或用户的整体体验。在一些实施方式中,这可能意味着指示包括会话代理的计算设备移动到房间的角落、房间或空间的不太拥挤的区域、和/或房间或空间中的空地。根据一种或多种实施方式,操作460可以由通过包括与多模态波束成形模块340、多模态输出模块330和/或马达移动375相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,会话代理或系统可以请求用户执行一些动作以改善用户体验。在一些实施方式中,操作462可以包括基于从一个或多个用户接收的声音和/或声音文件以及房间或开放空间的总体噪声水平来确定环境的噪声水平。根据一种或多种实施方式,操作462可以由通过包括与噪声水平确定模块354相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作464可以包括生成要由计算设备的一个或多个扬声器再现的请求用户移动到更安静的实施例的声音文件。根据一种或多种实施方式,操作464可以由通过包括与多模态输出模块330和/或主动降噪模块370相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,多模态波束成形和注意力过滤系统还可以响应全局命令,这些全局命令可以推翻会话代理或系统当前正在做出的任何决定。在一些实施方式中,操作466可以包括接收预定的全局命令。预定的全局命令可以指示位于计算设备中的会话代理将互动焦点改变到另一个用户。根据一种或多种实施方式,操作466可以由通过包括与多模态波束成形模块340、多模态输入模块335和/或音频输入模块310相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作468可以包括基于所接收的预定全局命令使另一用户参与会话互动。在一些实施方式中,根据一种或多种实施方式,操作468可以由通过包括与多模态波束成形模块340相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。尽管在步骤或操作468与470之间绘制了箭头,但这并不一定意味着这些操作以该顺序发生和/或顺序地发生。
在一些实施方式中,多模态波束成形和注意力过滤系统可以使用先前记录的用户话音来识别环境中谁在说话。在一些实施方式中,操作470可以包括为一个或多个用户生成声纹。根据一种或多种实施方式,操作470可以由通过包括与音频输入模块310、多模态输入模块335、多模态融合模块345和/或元信息数据库350相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
在一些实施方式中,操作472可以包括将声纹存储在一个或多个存储器设备中,以便稍后使用它们来基于说话者特性识别环境中的用户。说话者特性可以包括但不限于频谱特性和韵律。换言之,会话代理或系统可以接收新的话音文件,然后将所接收的话音文件与存储的声纹进行比较,以识别环境中的用户。如果一个家庭的多个儿童在一个房间里交谈,这可能会有所帮助。会话代理可以通过声纹识别通常与会话代理交互的家庭成员。根据一种或多种实施方式,操作472可以由通过包括与多模态融合模块和/或多模态波束成形模块相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
另外,其他输入可以用于识别环境中哪些用户正在说话。在一些实施方式中,操作474可以进一步包括使用从一个或多个成像设备、一个或多个雷达传感器、一个或多个激光雷达传感器接收的参数、文件和/或测量值来确定哪些用户正在说话并将声音或声音文件指派给正确的用户。根据一种或多种实施方式,操作474可以由通过包括与参数使用多模态输入模块335、多模态融合模块345和/或世界跟踪模块355相同或相似的模块的计算机可读指令配置的一个或多个硬件处理器执行。
图5A图示了根据一些实施例的包括多个用户、一个或多个物体、移动生物体和/或机器人计算设备的环境。在一些实施例中,机器人计算设备505可以具有多模态波束成形和注意力过滤系统来监视一个或多个用户510、511、512或513、桌子520、空调515和/或生物体(例如猫)525,和/或与它们通信。在一些实施例中,机器人计算设备505可以扫描和/或监视周围环境中的不同物品。在一些实施例中,音频输入模块310、视频或图像输入模块315、到达方向模块和/或传感器模块320可以监视环境。例如,在图5A所示的实施例中,位于音频输入模块中的一个或多个麦克风可以捕获由多个用户发出的声音(例如,用户510、512和513可能正在发出声音或说话)、由猫525发出的声音(例如,喵喵声或嘶嘶声)、和/或由空调515发出的声音。在该实施例中,所捕获的声音可以从音频输入模块310传送到多模态输入模块335。在一些实施例中,视频输入模块315可以包括一个或多个成像设备、一个或多个相机、一个或多个三维(3D)成像设备、一个或多个热成像设备和/或一个或多个红外成像设备。在图5A所示的实施例中,视频输入模块315的一个或多个成像设备可以捕获包括用户510、511、512和/或513的图像或视频、桌子520的视频或图像、空调515的至少一部分的视频或图像(空调的图像或视频的一部分可能被阻挡)、和/或猫525(其也可能正在移动)的图像或视频的一部分。在一些实施例中,图像可以是3D图像。在一些实施例中,视频输入模块315可以将所捕获的图像或视频传送到多模态输入模块335。在一些实施例中,传感器输入模块525可以包括一个或多个LIDAR传感器、一个或多个雷达传感器、一个或多个接近度传感器、一个或多个红外传感器、或用于捕获环境中物体的存在和/或位置的其他物体检测传感器。在图5A所示的实施例中,传感器输入模块525可以捕获用户510、511、512和513、桌子520、空调515和/或猫525的存在和/或位置参数。在一些实施例中,传感器输入模块525可以将存在和位置参数传送到多模态输入模块335。在一些实施例中,声音和/或话音文件、图像或视频文件、和/或存在和位置参数也可以传送到达方向模块320,该到达方向模块可以确定接收这些不同文件的方向。在该实施例中,到达方向模块320可以分析所接收的声音和话音文件,并且可以确定1)来自用户513的声音或话音来自右侧方向,2)来自猫525的声音文件是远离、靠近和/或从左到右;3)来自用户511的声音和话音文件来自机器人计算设备505的正前方;4)来自用户510的声音和话音文件来自左侧;并且5)来自空调515的声音文件来自左侧。在该实施例中,到达方向模块320可以将位置和/或方向参数或测量值传送到多模态输入模块335。在一些实施例中,到达方向模块320还可以使用来自视频输入模块315的视频或图像来辅助确定位置和/或方向参数或测量值。在一些实施例中,到达方向模块320还可以使用传感器模块325来辅助确定位置和/或方向参数或测量值。
在一些实施例中,多模态输入模块335可以将所接收的音频或声音文件、视频或图像文件、到达方向参数或测量值、激光雷达传感器参数或测量值、雷达传感器参数或测量值、接近度传感器参数或测量值、热或红外相机文件和/或测量值、3D图像传送到多模态融合模块345和/或世界跟踪模块355。在一些实施方式中,世界跟踪模块355可以生成世界地图,该世界地图标识包括多模态波束成形系统的计算设备周围的环境中的用户和/或物体。换言之,多模态波束成形模块340分析视频文件、到达声音的方向参数或测量值、传感器(激光雷达、雷达、接近度)参数和/或测量值、和/或声音或话音文件以生成世界地图。在上述示例中,世界跟踪模块355可以生成机器人计算设备505周围环境的世界地图。更具体地,如图5A所示,所生成或创建的世界地图可以包括1)正在说话的用户510,其距机器人计算设备505六英尺并且位于机器人计算设备505的左侧;2)不说话的非生物的桌子520,其位于机器人计算设备505略微偏向左侧大约4英尺远,3)不说话的用户511,其位于机器人计算设备505正前方大约6英尺处;4)空调设备515,其发出运行噪声并且位于机器人计算设备505的左侧大约8英尺远;5)发出噪声并移动的猫525,其最初位于机器人计算设备前方十英尺远,但正在靠近机器人计算设备并向右移动;6)正在说话的用户512,其位于离机器人计算设备略微偏向右侧8英尺远;以及7)正在说话的用户513,其距机器人计算设备1英尺并且位于右侧大约45度。如上文所讨论的,世界跟踪或地图模块355可以在机器人计算设备运行时连续地创建世界地图(例如,每5分钟、每分钟、每30分钟或每小时,但这些只是代表性示例),并且世界地图可以以任何定义的时间速率刷新。
在一些实施例中,机器人计算设备505可以确定哪些用户与机器人计算设备互动。在一些实施例中,互动模块360可以使用从多模态融合模块345接收的图像或视频文件、声音或噪声文件、用户的移动、和/或接近度或位置测量值和/或参数来确定用户的互动。使用图5A所示的示例,用户510可以盯着和/或指向机器人计算设备,并且互动模块360可以识别用户510与机器人计算设备互动。用户511可能没有盯着机器人计算设备并试图抚摸猫,并且互动模块可以分析这些图像和手势并确定用户511没有与机器人计算设备505互动。用户512可能正在看向机器人计算设备,可能在8英尺远并且可能在机器人计算设备的远处侧向移动。互动模块可以分析这些图像、接近度读数(例如,8英尺并移开)并确定用户511未与机器人计算设备互动(即使用户511正在看机器人计算设备)。用户513可能距机器人计算设备一英尺远,试图触摸机器人计算设备并直视机器人计算设备的眼睛。互动模块360可以分析触摸手势和/或传感器输入、用户非常接近以及用户具有非常强烈的眼睛注视,并且确定用户对机器人计算设备505非常投入。
在一些实施例中,机器人计算设备然后可以在音频输入模块310中的一个或多个麦克风处接收话音输入文件,并且到达方向模块320还可以提供话音文件来自的方向测量值或参数。在该实施例中,话音输入文件和到达方向测量参数然后可以被多模态波束成形模块340(和世界跟踪模块355)用来确定哪些用户正在说话,然后与那些用户进行交流。在一些实施例中,多模态波束成形模块340还可以识别不与哪些用户交流。多模态模态波束成形模块可以向多模态输出模块330和/或对话管理模块365传送将要与哪些用户进行交流以及不与哪些用户交流。在图5A所示的示例中,可以从用户510、512和513接收话音文件,并且多模态波束成形模块可以能够识别哪些话音文件在哪些用户之下。因为用户512被确定为未互动,所以多模态波束成形模块340可以与多模态输出模块330通信,对话管理模块365应该只与用户510和513交流(因为他们显示出互动的迹象)而不应该与用户512交流。在一些实施例中,多模态波束成形模块340和/或多模态融合模块345还可以使用到达方向测量值来滤除来自已被识别为未与机器人计算设备互动的用户的声音。在一些实施例中,主动降噪模块370可以使用来自多模态波束成形模块340的测量值和/或参数或文件来滤除专门设计的文件。在图5A所示的示例中,多模态波束成形模块340和/或多模态融合模块345可以滤除来自(未互动的)用户511和/或512的声音。在图5A所示的示例中,多模态波束成形模块340和/或主动降噪模块还可以基于知道声音来自哪里和/或声音的特性来滤除来自其他非人类(例如猫525)和/或空调515的噪声。在一些实施例中,主动降噪模块370和/或多模态波束成形模块340还可以通过降低或消除这些声音和/或这些声音和/或噪声的特性来滤除这些非人类噪声。
机器人计算设备的另一个独特特征或功能是能够继续监视用户的互动水平,并且如果互动模块360确定先前互动用户之一变得脱离,则互动模块360与多模态波束成形模块340和/或世界跟踪模块355进行通信,以识别哪个用户脱离。在该实施例中,多模态波束成形模块340与多模态输出模块330、对话管理模块365和/或主动降噪模块370进行通信以滤除被识别为来自新的脱离用户的语音。在图5A所示的示例中,互动模块360确定先前互动用户513现在正在移开视线并远离机器人计算设备505。基于用户513的眼睛注视和移动性,互动模块识别出用户513现在是脱离的。互动模块360将该信息传送给多模态波束成形模块340,多模态波束成形模块将该信息传送给多模态输出模块330以指示对话管理模块365滤除来自用户513的通信或话音文件。
另外,机器人计算设备和/或多模态波束成形模块340可以继续监视用户是否与机器人计算设备互动,以确定是否与这些用户重新互动并处理来自新的重新互动用户的声音和/或话音文件。在图5A所示的示例中,互动模块360可以基于所接收的视频或图像文件、声音输入或文件、和/或手势图像或文件继续监视先前未互动用户511和512的互动。在该实施例中,互动模块360可以识别用户511正在朝着机器人计算设备505移动并且以响亮而友好的话音说话,从而确定用户511正在与机器人计算设备505重新互动。在该实施例中,互动模块360可以传送这种重新互动信息,使得对话管理模块365开始处理与新的互动用户511相关联的声音文件。
另外,机器人计算设备可以响应指示会话代理和/或模块停止过滤来自特定用户的话音文件的全局命令。在一些实施例中,用户或操作员可以陈述“等一下Moxie,不过滤话音”或类似命令,并且多模态波束成形模块340和/或多模态输出模块330可以指示对话管理模块365(和/或潜在地主动降噪模块370)停止过滤来自任何人类用户的声音文件。在一些实施例中,多模态波束成形系统340还可以推翻其他指令并响应关注哪个用户的全局命令,而不管用户互动水平的任何确定。在一些实施例中,全局命令之一可以是“开始交谈”。例如,使用图5A所示的实施例,父母或监护人可以陈述“开始与用户513交谈”,尽管用户513可能未与机器人计算设备互动。这种灵活性允许使用多种不同的方法来确定与哪些用户互动。
在一些实施例中,机器人计算设备和/或多模态波束成形模块340还可以基于多个因素对用户进行优先级排序,尤其是与用户互动。在这些实施例中,机器人计算设备可以通过使用面部识别分析、使用到达方向估计和/或话音匹配的话音识别分析、关于计算设备的接近度测量值、和/或手势分析来确定每个用户的互动水平参数或值。在这些实施例中,多模态波束变换模块340、单词跟踪模块355和/或互动模块360可以工作以建立互动水平值或测量值。在确定互动水平参数或值之后,多模态波束变换模块340和/或多模态输出模块330可以将互动水平值或测量值传送到对话管理模块365以建立互动用户的优先级队列。在图5A所示的示例中,互动模块和/或多模态波束变换模块可能已经确定用户510和513参与了互动。用户510可能略微靠近机器人计算设备并且也更靠近机器人计算设备505的正前方。另外,用户510可以伸出他们的手臂并张开手掌,表明他们愿意与机器人交互,并且还可以睁大眼睛。在该示例中,互动模块360和/或多模态波束变换模块340可以将高互动水平参数或值指派给用户510和/或还指派高优先级。用户513可能位于离机器人更近的3英尺处,可能偶尔会瞥一眼机器人,可能是静止的并且可能皱眉。尽管用户513比用户510更接近机器人计算设备,但面部识别分析和接近度分析可能会导致计算用户513的互动水平测量值或值较低,因为用户513没有完全互动(他或她只是瞥了一眼机器人)并且似乎对当前的交互不满意)。至少部分地基于该分析,互动模块360和/或多模态波束变换模块340可以将中等互动水平或测量值指派给用户513和/或还指派中等优先级。用户513和510的优先级值或测量值可以传送到对话管理器模块365,并且对话管理模块355可以首先关注与用户510的交流交互,然后是与用户513的交流交互。
在一些实施例中,机器人计算设备和/或多模态波束成形模块340可以依靠图像分析来确定要与之交谈的用户。在该实施例中,可以从视频输入模块315和多模态输入模块335接收图像和/或视频。在该实施例中,多模态融合模块345和/或多模态波束成形模块340可以分析图像(例如,分析面部、用户的眼睛注视、用户的手势、用户的语音、用户的移动和/或手臂的移动)来确定机器人计算设备应该与哪个用户或哪些用户进行会话。在做出该确定之后,多模态波束成形模块340可以与多模态输出模块通信以指示对话管理器模块365与哪些用户进行交流。在图5A所示的示例中,用户511和512的图像和/或视频可以由相机和/或成像设备捕获,可以如上所述进行处理并且可以传送到多模态融合模块345和多模态波束成形模块340以进行成像分析。多模态融合模块345和/或多模态波束成形模块340可以分析用户511的视频或图像并确定用户的眼睛注视较弱(例如,他或她正在向下看)、正在以暗示他想要躲避的方式挥动他或她的手臂(例如,双臂交叉在他或她的脸前)并且后倾远离机器人计算设备。基于该分析,多模态融合模块345和/或多模态波束成形模块340可以确定当前时间不应与该用户交流。多模态融合模块345和/或多模态波束成形模块340可以分析用户512的图像并且看到用户512偶尔将视线从机器人计算设备上移开、正在拍他或她的手、微笑并且正朝机器人计算设备前倾。基于该分析,多模态融合模块345和多模态波束成形模块340可以确定应该与用户512交流。在这些实施例中,多模态波束成形模块340可以与多模态输出模块330通信以指示对话管理器模块365与用户512交流。
在一些实施例中,用户可能位于嘈杂的环境中,因此用户的语音可能听不清楚或根本听不到。在这些实施例中,机器人计算设备可以具有处理图像和/或分析用户的嘴形和移动和/或嘴唇移动以提高语音识别准确性的能力(也可以使用唇读分析)。因此,多模态波束成形模块340和/或多模态融合模块345可以分析与用户嘴唇移动和/或嘴巴移动相关的图像以增强语音识别分析。
机器人计算设备505和/或多模态波束成形模块340具有用于处理机器人计算设备周围环境中的噪声的附加新颖且独特的技术。在一些实施例中,音频输入模块310的一个或多个麦克风可以从环境中的用户、设备和物体接收声音或话音文件。在这些实施例中,这些话音和/或声音文件可以被传送到多模态波束成形模块340和/或多模态融合模块345,它们可以确定当前环境对于机器人计算设备来说太嘈杂而无法听到用户。在这些实施例中,多模态波束成形模块340可以将命令传送到多模态输出设备330和/或马达移动模块375,以使机器人计算设备更靠近正在说话的用户。作为响应,机器人计算设备可以更靠近正在说话的用户。在一些实施例中,多模态波束成形模块340还可以与主动降噪模块370通信以在处理话音和/或声音文件期间降低噪声。在图5A所示的示例中,用户510可能正在对机器人计算设备说话,但空调和/或猫可能会发出太多的噪声。在这些实施例中,多模态波束成形模块340可以与马达移动模块375通信以将机器人计算设备505向前和/或向左移动,从而使机器人计算设备更靠近用户510。这种移动提高了机器人计算设备与用户510之间的交流能力。在一些实施例中,传送到马达移动模块375的移动性命令可以使机器人计算设备移动到对用户有更好视野的位置,其中它们可以更好地听到用户和/或与用户进行更好的体验。
在一些实施例中,如果在用户周围存在嘈杂的实施例,则机器人计算设备和/或多模态波束成形模块340可以与用户交流以移动到不同的位置以减少环境中的噪声。在这些实施例中,关于环境的噪声信息和/或参数(来自声音文件和/或话音文件)可以被传送到多模态波束成形模块340和/或多模态融合模块345,它们可以确定当前环境对于机器人计算设备来说太嘈杂而无法听到用户。在这些实施例中,多模态波束成形模块340可以将命令传送到多模态输出设备330、和/或对话管理模块365、和/或机器人计算设备的扬声器,以使机器人计算设备请求用户更靠近机器人计算设备,以减少或消除噪声。在一些实施例中,多模态波束成形模块340还可以与主动降噪模块370通信以处理声音或话音文件以减少这些声音和/或话音文件的噪声元素。在图5A所示的示例中,用户510可能正在对机器人计算设备505说话,但空调和/或猫可能会发出太多的噪声。在这些实施例中,多模态波束成形模块340可以与对话管理模块365通信,应当将话音文件传送到一个或多个扬声器以请求用户向前移动(例如,更靠近机器人计算设备505和/或更偏向机器人计算设备正前方,以减少或消除噪声。在一些实施例中,话音文件还可以请求用户移动到更安静的环境,然后机器人计算设备也可以移动到更安静的环境以更好地与用户交互。在图5A所示的示例中,可以请求用户510移动到用户513所在的区域,因为在该示例中,用户513没有说话。另外,多模态波束成形模块340可以与马达移动模块375通信以使机器人计算设备将其头部和/或身体向右转动(这是用户510已经移动到的区域)。
在一些实施例中,机器人计算设备510和/或多模态波束成形模块340还可以使用用户的声纹来识别机器人计算设备的主要用户。在一些实施例中,家庭的每个成员可以在机器人计算设备的初始化期间或在与机器人计算设备交互时的任何时间记录声纹。在一些实施例中,每个用户可以:1)说出一个短语;2)音频输入模块310的一个或麦克风可以接收捕获的声纹音频文件;3)音频输入模块310可以将捕获的声纹音频文件传送到多模态输入模块335,多模态输入模块进而将捕获的声纹传送到多模态波束成形模块340。在一些实施例中,多模态波束成形模块340可以将捕获的声纹音频文件(其可以是主要用户的音频文件)存储在数据存储362和/或元信息数据库350中。在一些实施例中,如图5A所示,可以有多个用户510、511、512和513,并且他们中的每一个可能同时说话。在这些实施例中,音频输入模块可以捕获所有用户的声音或音频文件,因为他们正在说话,并且这些捕获的音频文件可以传送到多模态输入模块335,其中还可以接收到达方向测量值和/或参数。在一些实施例中,多模态输入模块335可以将捕获的话音和音频文件以及对应的到达方向测量值和/或参数传送给多模态波束成形模块340。如上文所讨论的,到达方向测量值和/或参数可以允许多模态波束成形模块340(和世界跟踪模块355)识别每个用户510、511、512和513的位置。在这些实施例中,为了确定哪些话音或音频文件对应于主要用户,多模态波束成形模块340可以将每个接收到的音频或话音文件与存储在元信息数据库350和/或数据存储362中的声纹进行比较,以确定捕获的音频或话音文件中的哪个对应于主要用户。一旦确定了这一点,多模态波束成形模块340就可以指示对话管理模块365仅与主要用户通信。在图5A所示的示例中,来自用户512的话音或音频文件可以匹配存储在数据存储362和/或元信息数据库350中的主要用户的声纹,因此机器人计算设备可以与用户512交流(尽管它是最远的)。
尽管流程图中未示出,但机器人计算设备可以具有两种模式。第一模式是其中单个用户单独与机器人计算设备进行会话交互的模式。第二模式是其中多个用户参与与机器人计算设备的会话代理、模块和/或引擎的会话交互的模式。
如上文详述的,本文描述和/或图示的计算设备和系统广义地表示能够执行计算机可读指令(比如包含在本文描述的模块中的那些)的任何类型或形式的计算设备或系统。在其最基本的配置中,这些计算设备可以各自包括至少一个存储器设备和至少一个物理处理器。
如本文所用,术语“存储器”或“存储器设备”通常表示能够存储数据和/或计算机可读指令的任何类型或形式的易失性或非易失性存储设备或介质。在一个示例中,存储器设备可以存储、加载和/或维护本文描述的一个或多个模块。存储器设备的示例包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器、硬盘驱动器(HDD)、固态驱动器(SSD)、光盘驱动器、高速缓存、前述一个或多个的变体或组合、或任何其他合适的存储存储器。
另外,如本文所用的术语“处理器”或“物理处理器”通常是指能够解释和/或执行计算机可读指令的任何类型或形式的硬件实施的处理单元。在一个示例中,物理处理器可以访问和/或修改存储在上述存储器设备中的一个或多个模块。物理处理器的示例包括但不限于微处理器、微控制器、中央处理单元(CPU)、实施软核处理器的现场可编程门阵列(FPGA)、专用集成电路(ASIC)、前述一个或多个的部分、前述一个或多个的变体或组合、或任何其他合适的物理处理器。
尽管被图示为单独的元素,但本文描述和/或图示的方法步骤可以表示单个应用程序的各部分。另外,在一些实施例中,这些步骤中的一个或多个可以表示或对应于一个或多个软件应用程序或程序,当由计算设备执行时,这些软件应用程序或程序可以使计算设备执行一个或多个任务,比如方法步骤。
另外,本文描述的一个或多个设备可以将数据、物理设备和/或物理设备的表示从一种形式变换为另一种形式。例如,本文所述的一个或多个设备可以接收要变换的样本的图像数据、变换图像数据、输出变换的结果以确定3D过程、使用变换的结果来执行3D过程、并存储变换结果以产生样本的输出图像。另外或可替代地,本文所述的一个或多个模块可以通过在计算设备上执行、在计算设备上存储数据和/或以其他方式与计算设备交互来将处理器、易失性存储器、非易失性存储器和/或物理计算设备的任何其他部分从一种形式的计算设备变换为另一种形式的计算设备。
如本文所用,术语“计算机可读介质”通常是指能够存储或承载计算机可读指令的任何形式的设备、载体或介质。计算机可读介质的示例包括但不限于传输型介质(比如载波)以及非暂态型介质,比如磁存储介质(例如,硬盘驱动器、磁带驱动器和软盘)、光学存储介质(例如,光盘(CD)、数字视频光盘(DVD)和BLU-RAY磁盘)、电子存储介质(例如,固态驱动器和闪存介质)以及其他分发系统。
本领域普通技术人员将认识到本文披露的任何过程或方法可以以多种方式进行修改。本文描述和/或图示的过程参数和步骤顺序仅作为示例给出并且可以根据需要而变化。例如,虽然本文图示和/或描述的步骤可以以特定顺序示出或讨论,但这些步骤不一定需要以所图示或讨论的顺序执行。
本文描述和/或图示的各种示例性方法还可以省略本文描述或图示的一个或多个步骤,或者包括除了所披露的那些步骤之外的附加步骤。进一步地,如本文所披露的任何方法的步骤可以与如本文所披露的任何其他方法的任何一个或多个步骤组合。
除非另有说明,否则如说明书和权利要求中使用的术语“连接到”和“耦合到”(及其派生词)应解释为允许直接连接和间接连接(即,经由其他元件或部件)两者。另外,如在说明书和权利要求中使用的术语“一个(a)”或“一个(an)”将被解释为意味着“至少一个”。最后,为了便于使用,如在说明书和权利要求中使用的术语“包括(including)”和“具有(having)”(及其派生词)可以与“包括(comprising)”一词互换并应具有相同的含义。
如本文所披露的处理器可以通过指令进行配置以执行如本文所披露的任何方法的任何一个或多个步骤。
如本文所用,术语“或”被包括性地使用,以指代替代物和组合中的项。如本文所用,诸如数字等字符指代相似的元素。
本披露的实施例已如本文所阐述的那样被示出和描述并且仅作为示例提供。在不脱离本披露的范围的情况下,本领域的普通技术人员将认识到许多适配、改变、变化和替换。在不脱离本披露和本文披露的发明的范围的情况下,可以使用本文披露的实施例的若干替代方案和组合。因此,本文披露的发明的范围应仅由所附权利要求及其等同物的范围来限定。
尽管出于说明的目的,已经基于目前被认为是最实用和最优选的实施方式对本发明技术进行了详细描述,但是应当理解,这种详细描述仅仅是出于说明目的,并且本技术不限于所披露的实施方式,相反,旨在涵盖在所附权利要求的精神和范围内的修改和等同布置。例如,应当理解,本发明技术设想在可能的范围内,任何实施方式的一个或多个特征都可以与任何其他实施方式的一个或多个特征进行组合。
尽管出于说明的目的,已经基于目前被认为是最实用和最优选的实施方式对本发明技术进行了详细描述,但是应当理解,这种详细描述仅仅是出于说明目的,并且本技术不限于所披露的实施方式,相反,旨在涵盖在所附权利要求的精神和范围内的修改和等同布置。例如,应当理解,本发明技术设想在可能的范围内,任何实施方式的一个或多个特征都可以与任何其他实施方式的一个或多个特征进行组合。

Claims (21)

1.一种创建环境视图的方法,该方法包括:
访问来自一个或多个存储器设备的计算机可读指令以供该计算设备的一个或多个处理器执行;
由该计算设备的一个或多个处理器执行从该一个或多个存储器设备访问的计算机可读指令;并且
其中,执行这些计算机可读指令进一步包括:
在该计算设备的渲染器模块处接收话音文件、视觉效果文件、面部表情文件和/或移动性文件;
从位于计算设备中的一个或多个麦克风、一个或多个成像设备、雷达传感器、激光雷达传感器、和/或一个或多个红外成像设备中的至少两个接收参数和测量值;
分析从该多模态输入接收的这些参数和测量值;
生成该计算设备周围的环境的世界地图,该世界地图包括一个或多个用户和物体;
定期地重复从这些输入设备接收参数和测量值以及分析的步骤,以维护该环境的持久世界地图;以及
使用所接收的参数和测量值来跟踪该一个或多个用户的互动,以确定与该计算设备互动的一个或多个用户。
2.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
从该一个或多个麦克风接收一个或多个话音文件;以及
识别该世界地图中传达该一个或多个话音文件的用户;以及
如果确定该用户未与该计算设备互动,则不与该用户交流。
3.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
从该一个或多个存储器设备中检索用户的特性;
将该用户的特性与该持久世界地图中的一个或多个用户的特性进行比较,以在该一个或多个用户中识别目标用户。
4.如权利要求3所述的方法,其中,该用户的特性包括用户的姓名或身份、用户的历史、用户的身体特性、或用户的优先级状态。
5.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
从该一个或多个用户接收声音到达方向测量值;以及
滤除来自该一个或多个用户中未与该计算设备互动的任何用户的声音或声音文件。
6.如权利要求5所述的方法,其中,执行这些计算机可读指令进一步包括:
在滤除声音或声音文件之后,确定先前互动用户之一不再与该计算设备互动;以及
关闭对声音或声音文件的滤除以允许处理这些声音或声音文件。
7.如权利要求5所述的方法,其中,响应于接收到一个或多个全局命令,可以停止对声音或声音文件的滤除。
8.如权利要求5所述的方法,其中,一个或多个全局命令的接收可以允许该计算设备滤除来自这些互动用户之一的声音文件。
9.如权利要求5所述的方法,其中,执行这些计算机可读指令进一步包括:
停用对未互动用户的声音或声音文件的滤除;以及
基于该计算设备的一般上下文分析这些未互动用户的声音文件以重新评定是否应处理这些未互动用户的声音或声音文件。
10.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
从该一个或多个麦克风接收一个或多个声音文件;
从该一个或多个成像设备接收图像文件;
分析来自该一个或多个成像设备的图像文件以识别该一个或多个用户中正在说话的用户;以及
将该一个或多个声音文件指派给被识别为正在说话的用户的一个或多个用户。
11.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
确定该一个或多个用户的互动水平;以及
基于该互动水平为该计算设备指派优先级队列以响应或参与这些用户的会话交互。
12.如权利要求11所述的方法,其中,该互动水平是基于面部识别、话音识别、与计算设备的接近度、手势和/或面部表情来确定的。
13.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
识别该世界地图中的一个或多个用户;以及
至少部分地基于对关于该一个或多个用户捕获的图像或图像文件的分析来确定监听该一个或多个用户中的哪些用户或处理来自该一个或多个用户中的哪些用户的声音或声音文件。
14.如权利要求13所述的方法,其中,对这些文件的分析包括分析用户的面部、用户的眼睛注视、用户的手势、用户的语音、LED灯、和/或该用户周围的环境中的移动或运动。
15.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
识别该世界地图中的一个或多个用户;以及
分析该一个或多个用户的所接收图像的嘴形和/或嘴唇移动,以提高语音识别的准确性。
16.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
基于从该一个或多个用户和该环境接收的声音和/或声音文件来确定该环境的噪声水平;以及
生成移动性命令以使该计算设备更靠近正在向该计算设备说话的用户。
17.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
基于从该一个或多个用户接收的声音和/或声音文件来确定该环境的噪声水平;
生成要由该计算设备的一个或多个扬声器再现的请求该用户移动到更安静的实施例的声音文件。
18.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
接收预定全局命令,这些预定全局命令指示该计算设备将互动焦点改变为另一用户;以及
基于所接收的预定全局命令使该另一用户参与会话互动。
19.如权利要求1所述的方法,其中,执行这些计算机可读指令进一步包括:
为该一个或多个用户生成声纹;以及
将这些声纹存储在一个或多个存储器设备中,以便基于说话者特性来识别该环境中的用户,这些说话者特性包括但不限于频谱特性和韵律。
20.如权利要求19所述的方法,其中,执行这些计算机可读指令进一步包括:使用从该一个或多个成像设备、该雷达传感器、该激光雷达传感器、和/或该一个或多个成像设备接收的参数、文件和/或测量值来确定哪些用户正在说话并将这些声音或声音文件指派给正确的用户。
21.一种在第一模式和第二模式下与机器人计算设备交流的方法,该方法包括:
访问来自一个或多个存储器设备的计算机可读指令以供该计算设备的一个或多个处理器执行;
由该计算设备的一个或多个处理器执行从该一个或多个存储器设备访问的计算机可读指令;并且
其中,执行这些计算机可读指令进一步包括:
从一个或多个麦克风接收一个或多个用户的声音或声音文件;
从位于机器人计算设备中的一个或多个成像设备、雷达传感器、激光雷达传感器、和/或一个或多个红外成像设备接收参数、文件和/或测量值;
分析从该多模态输入接收的这些参数和测量值;以及
生成该机器人计算设备周围的环境的世界地图,该世界地图包括一个或多个用户和物体,其中,
该机器人计算设备包括:第一模式,其中单个用户单独与该机器人计算设备进行会话交互;以及
第二模式,其中多个用户参与与该机器人计算设备的会话交互。
CN202180031587.0A 2020-02-29 2021-02-28 用于多方交互的多模态波束成形和注意力过滤 Pending CN115461811A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202062983595P 2020-02-29 2020-02-29
US62/983,595 2020-02-29
US202163154727P 2021-02-27 2021-02-27
US63/154,727 2021-02-27
PCT/US2021/020148 WO2021174162A1 (en) 2020-02-29 2021-02-28 Multimodal beamforming and attention filtering for multiparty interactions

Publications (1)

Publication Number Publication Date
CN115461811A true CN115461811A (zh) 2022-12-09

Family

ID=77491638

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180031587.0A Pending CN115461811A (zh) 2020-02-29 2021-02-28 用于多方交互的多模态波束成形和注意力过滤

Country Status (3)

Country Link
EP (1) EP4111446A4 (zh)
CN (1) CN115461811A (zh)
WO (1) WO2021174162A1 (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150314454A1 (en) * 2013-03-15 2015-11-05 JIBO, Inc. Apparatus and methods for providing a persistent companion device
US11250844B2 (en) * 2017-04-12 2022-02-15 Soundhound, Inc. Managing agent engagement in a man-machine dialog
US11775891B2 (en) * 2017-08-03 2023-10-03 Telepathy Labs, Inc. Omnichannel, intelligent, proactive virtual agent
CN112204564A (zh) * 2018-02-15 2021-01-08 得麦股份有限公司 经由基于集成音频和视觉的语音识别进行语音理解的系统和方法

Also Published As

Publication number Publication date
US20220180887A1 (en) 2022-06-09
EP4111446A4 (en) 2024-04-17
WO2021174162A1 (en) 2021-09-02
EP4111446A1 (en) 2023-01-04

Similar Documents

Publication Publication Date Title
US20220012470A1 (en) Multi-user intelligent assistance
US11010601B2 (en) Intelligent assistant device communicating non-verbal cues
KR102334942B1 (ko) 돌봄 로봇을 위한 데이터 처리 방법 및 장치
JP2021057057A (ja) 精神障害の療法のためのモバイルおよびウェアラブルビデオ捕捉およびフィードバックプラットフォーム
US11407106B2 (en) Electronic device capable of moving and operating method thereof
US20220241985A1 (en) Systems and methods to manage conversation interactions between a user and a robot computing device or conversation agent
US20240152705A1 (en) Systems And Methods For Short- and Long- Term Dialog Management Between A Robot Computing Device/Digital Companion And A User
US20220207426A1 (en) Method of semi-supervised data collection and machine learning leveraging distributed computing devices
US12136431B2 (en) Multimodal beamforming and attention filtering for multiparty interactions
US20230274743A1 (en) Methods and systems enabling natural language processing, understanding, and generation
US20220180887A1 (en) Multimodal beamforming and attention filtering for multiparty interactions
CN111919250B (zh) 传达非语言提示的智能助理设备
WO2024190616A1 (ja) 行動制御システム及びプログラム
Saxena et al. Virtual Assistant with Facial Expession Recognition
JP2024155809A (ja) 行動制御システム

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