CN110125932B - 一种机器人的对话交互方法、机器人及可读存储介质 - Google Patents

一种机器人的对话交互方法、机器人及可读存储介质 Download PDF

Info

Publication number
CN110125932B
CN110125932B CN201910372380.4A CN201910372380A CN110125932B CN 110125932 B CN110125932 B CN 110125932B CN 201910372380 A CN201910372380 A CN 201910372380A CN 110125932 B CN110125932 B CN 110125932B
Authority
CN
China
Prior art keywords
key point
dialogue
data
robot
action
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.)
Active
Application number
CN201910372380.4A
Other languages
English (en)
Other versions
CN110125932A (zh
Inventor
华敏杰
石芙源
南一冰
王恺
陈浩
廉士国
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cloudminds Beijing Technologies Co Ltd
Original Assignee
Cloudminds Beijing Technologies Co 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 Cloudminds Beijing Technologies Co Ltd filed Critical Cloudminds Beijing Technologies Co Ltd
Priority to CN201910372380.4A priority Critical patent/CN110125932B/zh
Publication of CN110125932A publication Critical patent/CN110125932A/zh
Application granted granted Critical
Publication of CN110125932B publication Critical patent/CN110125932B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/0005Manipulators having means for high-level communication with users, e.g. speech generator, face recognition means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1605Simulation of manipulator lay-out, design, modelling of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

本发明实施例涉及人工智能领域,公开了一种机器人的对话交互方法、机器人及可读存储介质。本发明中机器人的对话交互方法,应用于机器人,包括:在对话交互期间,获取对话信息,第一对话消息至少包括对话内容的特征数据;根据对话信息以及预设的动作反馈模型,获取待执行的反馈动作,其中,动作反馈模型根据样本训练库中的各对话信息,以及与各对话信息对应的反馈动作训练获得;执行待执行的反馈动作,以使机器人响应对话信息。本发明实施方式,使得机器人在与人进行对话交互的过程中,可以与人沟通更加自然,顺畅,提高人与机器人进行对话交互的体验。

Description

一种机器人的对话交互方法、机器人及可读存储介质
技术领域
本发明实施例涉及人工智能领域,特别涉及一种机器人的对话交互方法、机器人及可读存储介质。
背景技术
随着科学的不断进步,计算机技术以及人工智能技术的引入,机器人已经逐渐走出了工业,并逐渐应用在各服务领域,如:家教、银行、医疗等。机器人通常接收用户的问话,并对该问话进行分析,进而确定回复用户问话的内容。
发明人发现相关技术中至少存在如下问题:目前随着深度学习的应用,机器人已经可以智能的根据用户的问话进行回答,但是,机器人在回答问话的过程中,仅仅是播放需要回复的语音内容,与用户没有更多的交互,导致机器人在回复问话时显得非常不自然,给用户带来了不好的体验。
发明内容
本发明实施方式的目的在于提供一种机器人的对话交互方法、机器人及可读存储介质,使得机器人在与人进行对话交互的过程中,可以与人沟通更加自然,顺畅,提高人与机器人进行对话交互的体验。
为解决上述技术问题,本发明的实施方式提供了一种机器人的对话交互方法,应用于机器人,包括:在对话交互期间,获取对话信息,第一对话消息至少包括对话内容的特征数据;根据对话信息以及预设的动作反馈模型,获取待执行的反馈动作,其中,动作反馈模型根据样本训练库中的各对话信息,以及与各对话信息对应的反馈动作训练获得;执行待执行的反馈动作,以使机器人响应对话信息。
本发明的实施方式还提供了一种机器人,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述机器人的对话交互方法。
本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述机器人的对话交互方法。
本发明实施方式相对于现有技术而言,通过获取的对话信息以及预设的动作反馈模型,确定出当前机器人待执行的反馈动作,该机器人执行该待执行的反馈动作,从而实现机器人与人对话过程中,可以通过肢体动作与交互对象进行互动,例如,机器人在聆听时配合肢体动作,或者,机器人在说话过程中配合肢体动作;由于增加了肢体动作,可以丰富机器人在对话中的响应方式,从而使得该机器人可以与人沟通更加自然,顺畅,提高人与机器人进行对话交互的体验。
另外,获取对话信息,具体包括:获取原始文本数据,原始文本数据为对话内容所对应的文本数据;从原始文本数据中提取文本特征数据;将文本特征数据,作为对话内容的特征数据。从原始文本数据中提取文本特征数据,可以较为准确地确定出对话信息,从而使得确定的待执行的反馈动作更加准确。
另外,原始文本数据由机器人或交互对象产生。原始文本数据可以是由机器人产生也可以是由交互对象产生,由于原始文本数据的产生对象灵活,使得该机器人的交互方法的应用范围广。
另外,原始文本数据为机器人产生的对话内容所对应的文本数据;获取原始文本数据,具体包括:获取机器人待播放的文本数据;并将待播放的文本数据作为原始文本数据。当原始文本数据为机器人产生,则可以直接获取该机器人待播放的文本数据,无需获取机器人发出的音频数据,简化获取原始文本数据的步骤。
另外,对话信息还包括:与对话内容对应的动作姿态的特征数据;获取对话信息,具体包括:确定对话内容的特征数据,以及确定与对话内容对应的动作姿态的特征数据;并将对话内容的特征数据和动作姿态的特征数据进行融合;其中,确定与对话内容对应的动作姿态的特征数据,具体包括:采集交互对象的第一图像数据,其中,第一图像数据中包括至少一张交互对象的图像;根据第一图像数据,确定交互对象的动作姿态的特征数据,并将交互对象的动作姿态的特征数据,作为与对话内容对应的动作姿态的特征数据。由于在对话过程中,交互对象会有对应的肢体动作,因而对话信息中还包括与对话内容对应的动作姿态的特征数据,丰富了该对话信息,进而使得根据该对话信息所确定的待执行的反馈动作更加准确,使机器人的动作更加自然。
另外,根据第一图像数据,确定与对话内容对应的动作姿态的特征数据,具体包括:对第一图像数据中的每个图像进行处理的过程为:提取图像中属于交互对象所对应的肢体关键点矩阵,其中,肢体关键点矩阵用于指示交互对象在各自所属图像中的动作姿态;在对第一图像数据中的每个图像处理之后,根据每个肢体关键点矩阵,确定交互对象的肢体关键点序列;从肢体关键点序列中提取动作姿态的特征数据。通过肢体关键点矩阵表征交互对象在图像中的动作姿态,从而数据化了交互对象产生的动作姿态,便于后续进行处理,同时由于动作姿态的连续性,将肢体关键点矩阵转换为肢体关键点序列,通过序列准确地表征出动作姿态的连续性,从而提高确定的动作姿态的特征数据的准确性。
另外,根据每个所述肢体关键点矩阵,确定所述交互对象的肢体关键点序列,具体包括:对每个肢体关键点矩阵进行预处理;将预处理后的每个肢体关键点矩阵,转换为交互对象的肢体关键点序列。由于相机在采集交互图像的角度不同,会导致从图像中确定每个肢体关键点矩阵有噪声,影响确定的肢体关键点序列的准确性。
另外,对每个肢体关键点矩阵进行预处理,具体包括:按照预设的坐标轴旋转每个肢体关键点矩阵,以使每个所属交互对象的肢体关键点矩阵都朝向相同的方向。由于采集的图像中交互对象并不是都面向同一个方向,故统一每个肢体关键点矩阵都朝向的方向,降低每个肢体关键点矩阵的噪声。
另外,对每个肢体关键点矩阵进行预处理,具体包括:按照预设的坐标轴旋转每个肢体关键点矩阵,以使每个所属交互对象的肢体关键点矩阵都朝向相同的方向;对旋转后的每个肢体关键点矩阵进行归一化处理。对每个肢体关键点矩阵在旋转后进行归一化处理,可以消除不同图像中交互对象的尺寸对后续准确确定肢体关键点序列造成的影响。
另外,对旋转后的每个肢体关键点矩阵进行归一化处理,具体包括:将旋转后的肢体关键点矩阵中的关键点按照预设规则构建关键点向量;根据单位长度对所述肢体关键点矩阵中每个关键点向量进行归一化处理。根据单位长度对关键点向量进行归一化,可以消除了交互对象在图像中不同尺寸,导致归一化后肢体关键点之间变化不准确的问题,提高了确定肢体关键点序列的准确性。
另外,对旋转后的每个肢体关键点矩阵进行归一化处理,具体包括:从旋转后的所有肢体关键点矩阵中选取关键点最大值和关键点最小值;对旋转后的每个肢体关键点矩阵进行以下处理:根据关键点最大值和关键点最小值,对肢体关键点矩阵中每个关键点进行归一化处理。对每个关键点进行归一化,方法简单,快速。
对旋转后的每个所述肢体关键点矩阵进行归一化处理,具体包括:获取肢体关键点矩阵中的关键点最大值和关键点最小值;根据关键点最大值和关键点最小值,对肢体关键点矩阵中的每个关键点进行归一化。可以在归一化后当同一交互对象在变换动作时,避免出现实际未变化的关键点发生变动的问题,提高后续确定肢体关键点序列的准确性。
另外,从原始文本数据中提取文本特征数据,具体包括:将原始文本数据输入预设的文本提取模型,获得文本特征数据,文本提取模型是根据训练库中存储的各原始文本数据,以及与各原始文本数据对应的文本特征数据训练获得。通过预设的文本提取模型可以快速且准确地确定出文本特征数据。
另外,从肢体关键点序列中提取动作姿态的特征数据,具体包括:将肢体关键点序列输入预设的动作姿态特征提取模型,获得动作姿态的特征数据,动作姿态特征提取模型是根据训练库中存储的各肢体关键点序列,以及与各肢体关键点序列对应的动作姿态特征数据训练获得。通过预设的动作姿态提取模型可以快速且准确地确定出动作姿态的特征数据。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是根据本发明第一实施方式提供的一种机器人的对话交互方法的具体流程示意图;
图2是根据本发明第二实施方式提供的一种机器人的对话交互方法的具体流程示意图;
图3是根据本发明第二实施方式中确定与对话内容对应的动作姿态的特征数据具体流程示意图;
图4是根据本发明第三实施方式中对每个肢体关键点矩阵进行预处理具体流程示意图;
图5是根据本发明第三实施方式中局部归一化的效果示意图;
图6是根据本发明第三实施方式中全局归一化的一种效果示意图;
图7是根据本发明第三实施方式中全局归一化的另一种效果示意图;
图8是根据本发明第三实施方式中向量归一化的效果示意图;
图9是根据本发明第四实施方式提供的一种机器人的具体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
本发明的第一实施方式涉及一种机器人的对话交互方法。该机器人的对话交互方法应用于机器人,该机器人与交互对象对话期间,根据交互对象的对话内容,可以确定语言反馈内容,例如,交互对象发出“您好”,机器人确定的语言反馈内容可以是“您好”。其中,交互对象可以是人,也可以是其他机器人。该机器人的对话交互方法的具体流程如图1所示,包括:
步骤101:在对话交互期间,获取对话信息,对话信息至少包括对话内容的特征数据。
一个具体的实现中,由于对话信息包括对话内容的特征数据,则获取对话信息的过程即为确定对话内容的特征数据的过程:获取原始文本数据,原始文本数据为对话内容所对应的文本数据;从该原始文本数据中提取文本特征数据;将文本特征数据,作为对话内容的特征数据。
具体的说,通常机器人与交互对象进行对话交互的过程为:机器人说一段话,交互对象回复该段话;或者,交互对象说一段话,而机器人对交互对象的话进行回复;还可以是交互对象和机器人可能同时说出第一段话。因而该原始文本数据可以为该机器人产生,也可以是交互对象产生,还可以同时包括机器人和交互对象同时产生。本实施方式中,按照上述三种情况,分别介绍确定获取原始文本数据的过程:
情境一:当原始文本数据为机器人产生的对话内容所对应的文本数据。
获取原始文本数据,具体包括:获取机器人待播放的文本数据;并将待播放的文本数据作为原始文本数据。
情境二:当原始文本数据为交互对象产生的对话内容所对应的文本数据。
获取原始文本数据,具体包括:采集交互对象说话时发出的音频数据;对该音频数据进行语音识别,并将该语音识别结果作为原始文本数据。
情境三:当原始文本数据包括机器人产生的对话内容所对应的文本数据,以及交互对象产生的对话内容的文本数据。
可以按照情境一中的方式获取机器人待播放的文本数据,并按照情境二中的方式获取交互对象产生的对话内容的文本数据,将该待播放的文本数据和交互对象产生的对话内容的文本数据共同作为该原始原本数据,其中,情境一中和情境二中具体的获取过程此处将不再赘述。
一个具体的实现中,从原始文本数据中提取文本特征数据,具体包括:将原始文本数据输入预设的文本提取模型,获得文本特征数据,文本提取模型是根据训练库中存储的各原始文本数据,以及与各原始文本数据对应的文本特征数据训练获得。
具体的说,将训练库中存储的各原始文本数据作为该文本提取模型的输入数据,将与各原始文本数据对应的文本特征数据作为输出数据,可以采用循环神经网络(Recurrent Neural Network,简称“RNN”)的模型结构,对输入数据和输出数据进行训练,即可确定出该文本提取模型,典型的循环神经网络如:长短期记忆网络(Long Short-TermMemory,简称“LSTM”)模型架构。
构建完该文本提取模型后,将原始文本数据输入该文本提取模型,即可得到该文本特征数据。该文本特征数据的数据类型可以根据实际需要进行设置,例如,本实施方式中文本特征数据的数据类型为向量。
步骤102:根据对话信息以及预设的动作反馈模型,获取待执行的反馈动作,其中,动作反馈模型根据样本训练库中的各对话信息,以及与各对话信息对应的反馈动作训练获得。
具体的说,该动作反馈模型是在获取对话信息之前,预先根据样本训练库中的各对话信息,以及与各对话信息对应的反馈动作训练获得。由于在进行对话交互过程中,通常对话交互的一方产生的对话内容会影响交互对象另一方在聆听过程中的反馈动作,或者,交互对象的一方自身发出的对话内容对自身的反馈动作也会产生影响,故该动作反馈模型可以包括两个子模型,即第一动作反馈子模型和第二动作反馈子模型,第一动作反馈子模型用于指示包括交互对象一方对话内容的对话信息与交互对象另一方的反馈动作之间的第一对应关系;同理,第二动作反馈子模型用于指示包括交互对象一方对话内容的对话信息与自身的反馈动作之间的第二对应关系。第一动作反馈子模型和第二动作反馈子模型的训练过程类似,区别仅在于,第一动作反馈子模型在训练过程中的输入数据为交互对象一方的对话内容的对话信息,而第二动作反馈子模型在训练过程中的输入数据为自身对话内容的对话信息。
其中,样本训练库中的各对话信息,以及与各对话信息对应的反馈动作可以采用如下方式获取:
采集大量的视频文件数据,如:采集4000个视频文件。为了保证样本训练库中的各对话信息的准确性,可以采集包含有对话场景的视频文件,例如,脱口秀节目的视频文件,脱口秀节目通常仅有两个人进行对话,该情境类似于机器人与交互对象之间的对话情境,因此,将该脱口秀的视频文件作为训练数据,可以准确训练出动作反馈模型。
由于每个视频文件中均包含两个交互对象,每个视频文件包含完整的对话场景,对每个视频文件的处理过程为:可以通过语音识别的方式分别采集属于交互对象A的音频数据,以及属于交互对象B的音频数据,并将交互对象A的音频数据转换为文本数据,交互对象B的音频数据转为文本数据。并同时通过图像分析,采集交互对象A的反馈动作A,以及属于交互对象B的反馈动作。可以理解的是,交互对象A和交互对象B仅用于区别一个视频文件中的两个交互对象,且每个视频文件中的交互对象A(或交互对象B)可以是不同两个个体。
下面以一个具体的例子说明该第一动作反馈子模型和第二动作反馈子模型的训练过程:
将包括该交互对象A的对话信息作为第一动作反馈子模型的输入数据,将每个视频文件中的交互对象B对应的反馈动作作为第一动作反馈子模型的输出数据,并采用深度学习的方式训练确定该第一动作反馈子模型。
将交互对象A的对话信息作为第二动作反馈子模型的输入数据,将该交互对象A的反馈动作作为第二动作反馈子模型的输出数据,采用深度学习的方式训练确定该第二动作反馈子模型。
还可以是将交互对象B的对话信息作为第二动作反馈子模型的输入数据,将该交互对象B的反馈动作作为第二动作反馈子模型的输出数据,采用深度学习的方式训练确定该第二动作反馈子模型。
步骤103:执行待执行的反馈动作,以使机器人响应对话信息。
具体的说,机器人可以配合语言反馈,执行待执行的反馈动作,例如,若机器人产生的原始文本数据是“你真棒”,那么配合该原始文本数据,该机器人的对应的反馈动作是竖起大拇指。
本发明实施方式相对于现有技术而言,通过获取的对话信息以及预设的动作反馈模型,确定出当前机器人待执行的反馈动作,该机器人执行该待执行的反馈动作,从而实现机器人与人对话过程中,可以通过肢体动作与交互对象进行互动,例如,机器人在聆听时配合肢体动作,或者,机器人在说话过程中配合肢体动作;由于增加了肢体动作,可以丰富机器人在对话中的响应方式,从而使得该机器人可以与人沟通更加自然,顺畅,提高人与机器人进行对话交互的体验。
本发明的第二实施方式涉及一种机器人的对话交互方法。第二实施方式是第一实施方式进一步改进,主要改进之处在于:在本发明第二实施方式中,对话信息还包括:与对话内容对应的动作姿态的特征数据。该机器人的对话交互方法的具体流程如图2所示。
步骤201:确定对话内容的特征数据。
该步骤与第一实施方式中确定对话内容的特征数据大致相同,此处将不再赘述。
步骤202:确定与对话内容对应的动作姿态的特征数据。
具体的说,为了提高后续根据对话信息,确定的反馈动作的准确性,对话信息中还包括了与对话内容对应的动作姿态的特征数据。确定与对话内容对应的动作姿态的特征数据,具体包括以下子步骤,具体流程如图3所示:
子步骤2021:采集交互对象的第一图像数据,其中,第一图像数据中包括至少一张交互对象的图像。
具体的说,采集该交互对象在对话过程中的第一图像数据,第一图像数据中至少要包括一张该交互对象的图像,可以理解的是,为了保证确定的该交互对象的动作姿态的特征数据的准确性,该第一图像数据包括该交互对象在进行一段对话过程中所有含有该交互对象的图像。
子步骤2022:根据第一图像数据,确定交互对象的动作姿态的特征数据,并将交互对象的动作姿态的特征数据,作为与对话内容对应的动作姿态的特征数据。
一个具体实现中,对第一图像数据中的每个图像进行处理的过程为:提取图像中属于交互对象所对应的肢体关键点矩阵,其中,肢体关键点矩阵用于指示交互对象在各自所属图像中的动作姿态;在对第一图像数据中的每个图像处理之后,根据每个肢体关键点矩阵,确定交互对象的肢体关键点序列;从肢体关键点序列中提取动作姿态的特征数据。
具体的说,由于每张图像中包括该交互对象的一种动作姿态,且由于人体的动作与人体的关节点具有关联性,而机器人的肢体运动也是通过机器人的各个关节点进行运动。因此,可以通过提取图像中的交互对象各个关节点作为该交互对象的关键点。而人体全身有17个关节点,而发明人发现在对话过程中,人体的下肢通常不移动,而过多的关键点会增加计算时间,因此,本实施方式中,在不影响确定与对话内容对应的动作姿态的特征数据的情况下,关键点选取人体上半身的关节点,例如:选取12个关键点,分别为:人体的腹部、胸部、颈部、头部顶部、左肩、左边肘部、左手腕部、左髋、右肩、右边肘部、右边腕部、右髋。
需要说明的是,每个关键点对应一个三维坐标,每个关键点的三维坐标可以通过图像的RGB帧与人体姿态估计***提取的2D坐标一起输入到三维坐标提取模型中,该三维坐标提取模型与现有的三维坐标提取模型大致相同,此处将不再赘述。
由于交互对象的动作姿态是连续的动作,因此,本实施方式中通过肢体关键点序列来表征交互对象的连续动作之间的关联。
一个具体的实现中,根据每个肢体关键点矩阵,确定交互对象的肢体关键点序列,具体包括:对每个肢体关键点矩阵进行预处理,预处理用于消除每个肢体关键点矩阵的噪声;将预处理后的每个肢体关键点矩阵,转换为交互对象的肢体关键点序列。其中,对每个肢体关键点矩阵进行预处理,可以是按照预设的坐标轴旋转每个肢体关键点矩阵,以使每个所属交互对象的肢体关键点矩阵都朝向相同的方向。
具体的说,由于视频文件中,拍摄交互对象的相机的角度不同,导致交互对象的姿态朝向并不一定相同,而为了消除每个肢体关键点矩阵的噪声,可以对每个肢体关键点矩阵进行旋转。下面以一个肢体关键点矩阵K0的例子说明旋转的方式:
由于人体的左肩与右肩的高度相同,因此,同一个人的左肩和右肩在Z轴方向上的坐标相同,即,kl=(xl,yl,zl)和kr=(xr,yr,zr)中,zl≈zr,预设的旋转轴为Z轴,为了使旋转后的关键点矩阵满足yl=yr且xl>xr,将该肢体关键点矩阵内每个关键点按Z轴逆时针方向旋转θ。θ的计算方法如下:首先计算出kl与kr的差向量kdiff=kl-kr,然后计算出X轴与kdiff在XOY平面上投影的夹角,该夹角即为θ。一旦确定了θ,即可计算出旋转后的肢体关键点矩阵如公式(1):
其中,RZ(θ)为基于Z轴的基本旋转矩阵,该基本旋转矩阵的计算如公式(2)所示;
值得一提的是,从肢体关键点序列中提取动作姿态的特征数据,具体包括:将肢体关键点序列输入预设的动作姿态特征提取模型,获得动作姿态的特征数据,动作姿态特征提取模型是根据训练库中存储的各肢体关键点序列,以及与各肢体关键点序列对应的动作姿态特征数据训练获得。
其中,该动作姿态特征提取模型的构建方式与第一实施方式中文本提取模型的构建方式类似,训练过程此处将不再赘述,但需要注意的是,训练库中存储的各肢体关键点序列确定过程为:对从采集的视频文件数据中提取属于交互对象所对应的肢体关键点矩阵,对每个肢体关键点矩阵进行预处理,将预处理后的每个肢体关键点矩阵,转换为交互对象的肢体关键点序列,其中,预处理的过程与矩阵K0的处理过程大致相同,此处不再赘述。
值得一提的是,将预处理后的每个肢体关键点矩阵,转换为交互对象的肢体关键点序列的方式与现有技术中矩阵转换为序列的方式类似,此处不再赘述。
步骤203:并将对话内容的特征数据和动作姿态的特征数据进行融合。
具体的说,由于对话内容的特征数据的维度与动作姿态的特征数据的维度相同,且为了便于融合,对话内容的特征数据为向量数据,同理该动作姿态的特征数据为向量数据,融合即将对话内容的特征数据和动作姿态的特征数据相加。
步骤204:根据对话信息以及预设的动作反馈模型,获取待执行的反馈动作,其中,动作反馈模型根据样本训练库中的各对话信息,以及与各对话信息对应的反馈动作训练获得。
具体的说,由于该在进行对话交互过程中,通常对话交互的一方产生的对话内容以及动作姿态会影响交互对象另一方在聆听过程中的反馈动作,或者,交互对象一方的对话内容对自身的反馈动作也会产生影响,故本实施方式中该动作反馈模型包括两个子模型,即第一动作反馈子模型和第二动作反馈子模型,第一动作反馈子模型用于指示包括交互对象一方对话内容以及动作姿态的特征数据与交互对象另一方的反馈动作之间的第一对应关系;同理,第二动作反馈子模型与第一实施方式中的第二动作反馈子模型类似,用于指示包括交互对象一方自身对话内容的对话信息与自身的反馈动作之间的第二对应关系。
由于第二动作反馈子模型与第一实施方式中的第二动作反馈子模型类似,本实施方式中的第一动作反馈子模型与第一实施方式中的第一动作反馈子模型类似,此处将不再赘述该第一动作模型和第二动作反馈子模型的训练过程。其中,需要说明的是,样本训练库中每个对话信息,是将该对话内容的特征数据和动作姿态的特征数据融合后得到,且每个动作姿态的特征数据的确定方式与上述介绍的方式类似,此处将不再赘述。
步骤205:执行待执行的反馈动作,以使机器人响应对话信息。
本实施方式提供的机器人的对话交互方法,由于在对话过程中,交互对象会有对应的肢体动作,因而对话信息中还包括与对话内容对应的动作姿态的特征数据,使得该对话信息更加丰富,进而使得根据该对话信息所确定的待执行的反馈动作更加准确,使机器人的动作更加自然。
需要说明的是,本实施方式中还可以先执行步骤202,再执行步骤201。
本发明的第三实施方式涉及一种机器人的对话交互方法。第三实施方式与第二实施方式的大致相同,主要区别之处在于:在本发明第三实施方式中,对每个肢体关键点矩阵进行预处具体包括:按照预设的坐标轴旋转每个肢体关键点矩阵;在对旋转后的每个肢体关键点矩阵进行归一化处理。本实施方式中对每个肢体关键点矩阵进行预处理,具体流程如图4所示。
步骤301:按照预设的坐标轴旋转每个肢体关键点矩阵,以使每个所属交互对象的肢体关键点矩阵都朝向相同的方向。
该步骤与第二实施方式中按照预设的坐标轴旋转每个肢体关键点矩阵的步骤类似,此处将不再赘述。
步骤302:对旋转后的每个肢体关键点矩阵进行归一化处理。
具体的说,归一化处理有多种方式,本实施方式中列举了三种归一化的处理方式,下面分别介绍对旋转后的每个肢体关键点矩阵进行归一化处理的方式:
方式一:局部归一化方式。
获取当前肢体关键点矩阵中的关键点最大值和关键点最小值;根据关键点最大值和关键点最小值,对当前肢体关键点矩阵中的每个关键点进行归一化。
具体的说,对每个肢体关键点矩阵进行归一化,以旋转后的关键点矩阵K0=[k1,k2,k3,......,k12]为例,其中,ki=(xi,yi,zi)T定义x0,max和x0,min为K0的12个xi中的最大值和最小值,类似定义适用于y0,max,y0,min,z0,max,z0,min。其中,下标i用于指示关键点编号。
其中,K0,min由12列(x0,min,y0,min,z0,min)T组成,K0,scale由12列组成,⊙为表示两个矩阵的逐元素乘法的符号。
该归一化虽然可以将该肢体关键点矩阵量化到0~1范围内,以便后续可以快速处理该肢体关键点矩阵,但是该局部归一化的方式在处理图5中的动作姿态问题时,会出现局限性。如图5所示,当关键点A发生如图5箭头所化的运动时,按照箭头从虚线位置运动到实线所在位置之后,该关键点A依然处于边界1的位置,这将导致除A点的其他关键点被压缩,不符合实际人体的运动。其中,下标scale用于指示归一化过程中的缩放比例。
因此,本实施方式还提供了方式二的归一化方法。
方式二:全局归一化。
从旋转后的所有肢体关键点矩阵中选取关键点最大值和关键点最小值;对旋转后的每个肢体关键点矩阵进行以下处理:根据关键点最大值和关键点最小值,对肢体关键点矩阵中每个关键点进行归一化处理。
具体的说,从所有旋转后的肢体关键点矩阵中选取出一个关键点最大值和一个关键点最小值,然后对分别对旋转后的每个肢体关键点矩阵进行以下处理:按照选取的关键点最大值和关键点最小值,对每个该肢体关键点矩阵中每个关键点进行归一化。该归一化的效果如图6和7所示,图6和7分别表示身体尺寸小和大的交互对象的动作姿态。
方式三:向量归一化。
将旋转后的肢体关键点矩阵中的关键点按照预设规则构建关键点向量;根据单位长度对肢体关键点矩阵中每个关键点向量进行归一化处理。
具体的说,预设规则可以是相邻的肢体关键点构建一个关键点向量,如图8所示,将腹部关键点设置为身体的中心,表示为O(0,0,0),将胸部和臀部与腹部相连,颈部分别与肩部、胸部相连,头部顶部与颈部相连,同侧的肘部与肩部连接,手腕以同样的方式连接到同侧的肘部。因此,该旋转后的肢体关键点矩阵中每个关键点都将由向量来表示,而不是坐标。将每个关键点向量逐一归一化为单位长度,即可完成该旋转后的肢体关键点矩阵的向量归一化。
本实施方式提供的机器人的对话交互方法,提供了另一种对每个肢体关键点矩阵进行预处理的方式,在旋转后的肢体关键点矩阵后进行归一化处理,可以简化数据处理难度,从而提升处理速度。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明第四实施方式涉及一种机器人,该机器人40具体结构如图9所示,包括:至少一个处理器401;以及,与至少一个处理器401通信连接的存储器402;其中,存储器402存储有可被至少一个处理器401执行的指令,指令被至少一个处理器401执行,以使至少一个处理器401能够执行第一实施方式至第三实施方式中任一机器人的对话交互方法。
其中,存储器402和处理器401采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器401和存储器402的各种电路链接在一起。总线还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器401处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器401。
处理器401负责管理总线和通常的处理,还可以提供各种功能,包括定时,***接口,电压调节、电源管理以及其他控制功能。而存储器402可以被用于存储处理器在执行操作时所使用的数据。
本发明第五实施方式涉及一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现第一实施方式至第三实施方式中机器人的对话交互方法。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (16)

1.一种机器人的对话交互方法,其特征在于,应用于机器人,包括:
在对话交互期间,获取对话信息,所述对话信息至少包括对话内容的特征数据;
根据所述对话信息以及预设的动作反馈模型,获取待执行的反馈动作,其中,所述动作反馈模型根据样本训练库中的各对话信息,以及与各对话信息对应的反馈动作训练获得;其中,所述动作反馈模型中的样本训练库的数据为采集的视频文件数据,通过语音识别的方式采集属于交互对象的音频数据,并通过图像分析采集交互对象的反馈动作;
执行所述待执行的反馈动作,以使所述机器人响应所述对话信息;
其中,所述对话信息还包括:与所述对话内容对应的动作姿态的特征数据;
所述获取对话信息,具体包括:确定所述对话内容的特征数据,以及确定与所述对话内容对应的动作姿态的特征数据;并将所述对话内容的特征数据和所述动作姿态的特征数据进行融合;
所述动作反馈模型包括第一动作反馈子模型和第二动作反馈子模型,所述第一动作反馈子模型用于指示包括交互对象一方对话内容以及动作姿态的特征数据与交互对象另一方的反馈动作之间的第一对应关系;所述第二动作反馈子模型用于指示包括交互对象一方自身对话内容与自身的反馈动作之间的第二对应关系,其中,第一动作反馈子模型在训练过程中的输入数据为交互对象一方的对话内容的对话信息,而第二动作反馈子模型在训练过程中的输入数据为自身对话内容的对话信息。
2.根据权利要求1所述的机器人的对话交互方法,其特征在于,所述获取对话信息,具体包括:
获取原始文本数据,所述原始文本数据为所述对话内容所对应的文本数据;
从所述原始文本数据中提取文本特征数据;
将所述文本特征数据,作为所述对话内容的特征数据。
3.根据权利要求2所述的机器人的对话交互方法,其特征在于,所述原始文本数据由所述机器人或交互对象产生。
4.根据权利要求3所述的机器人的对话交互方法,其特征在于,所述原始文本数据为所述机器人产生的对话内容所对应的文本数据;
获取原始文本数据,具体包括:
获取所述机器人待播放的文本数据;
并将所述待播放的文本数据作为所述原始文本数据。
5.根据权利要求1所述的机器人的对话交互方法,其特征在于,所述确定与所述对话内容对应的动作姿态的特征数据,具体包括:
采集交互对象的第一图像数据,其中,所述第一图像数据中包括至少一张所述交互对象的图像;
根据所述第一图像数据,确定所述交互对象的动作姿态的特征数据,并将所述交互对象的动作姿态的特征数据,作为与所述对话内容对应的动作姿态的特征数据。
6.根据权利要求5所述的机器人的对话交互方法,其特征在于,根据所述第一图像数据,确定与所述对话内容对应的动作姿态的特征数据,具体包括:
对所述第一图像数据中的每个图像进行处理的过程为:提取所述图像中属于交互对象所对应的肢体关键点矩阵,其中,所述肢体关键点矩阵用于指示所述交互对象在各自所属图像中的动作姿态;
在对所述第一图像数据中的每个图像处理之后,根据每个所述肢体关键点矩阵,确定所述交互对象的肢体关键点序列;
从所述肢体关键点序列中提取动作姿态的特征数据。
7.根据权利要求6所述的机器人的对话交互方法,其特征在于,所述根据每个所述肢体关键点矩阵,确定所述交互对象的肢体关键点序列,具体包括:
对每个所述肢体关键点矩阵进行预处理,所述预处理用于消除每个所述肢体关键点矩阵的噪声;
将预处理后的每个所述肢体关键点矩阵,转换为所述交互对象的肢体关键点序列。
8.根据权利要求7所述的机器人的对话交互方法,其特征在于,所述对每个所述肢体关键点矩阵进行预处理,具体包括:
按照预设的坐标轴旋转每个肢体关键点矩阵,以使每个所属所述交互对象的肢体关键点矩阵都朝向相同的方向。
9.根据权利要求7所述的机器人的对话交互方法,其特征在于,所述对每个所述肢体关键点矩阵进行预处理,具体包括:
按照预设的坐标轴旋转每个肢体关键点矩阵,以使每个所属所述交互对象的肢体关键点矩阵都朝向相同的方向;
对旋转后的每个所述肢体关键点矩阵进行归一化处理。
10.根据权利要求9所述的机器人的对话交互方法,其特征在于,对旋转后的每个所述肢体关键点矩阵进行归一化处理,具体包括:
将旋转后的所述肢体关键点矩阵中的关键点按照预设规则构建关键点向量;
根据单位长度对所述肢体关键点矩阵中每个关键点向量进行归一化处理。
11.根据权利要求9所述的机器人的对话交互方法,其特征在于,对旋转后的每个所述肢体关键点矩阵进行归一化处理,具体包括:
从旋转后的所有肢体关键点矩阵中选取关键点最大值和关键点最小值;
对旋转后的每个所述肢体关键点矩阵进行以下处理:
根据所述关键点最大值和所述关键点最小值,对所述肢体关键点矩阵中每个关键点进行归一化处理。
12.根据权利要求9所述的机器人的对话交互方法,其特征在于,对旋转后的每个所述肢体关键点矩阵进行归一化处理,具体包括:
获取所述肢体关键点矩阵中的关键点最大值和关键点最小值;
根据所述关键点最大值和所述关键点最小值,对所述肢体关键点矩阵中的每个关键点进行归一化。
13.根据权利要求2所述的机器人的对话交互方法,其特征在于,从所述原始文本数据中提取文本特征数据,具体包括:
将所述原始文本数据输入预设的文本提取模型,获得所述文本特征数据,所述文本提取模型是根据训练库中存储的各原始文本数据,以及与各原始文本数据对应的文本特征数据训练获得。
14.根据权利要求6至12中任一项所述的机器人的对话交互方法,其特征在于,所述从所述肢体关键点序列中提取动作姿态的特征数据,具体包括:
将所述肢体关键点序列输入预设的动作姿态特征提取模型,获得所述动作姿态的特征数据,所述动作姿态特征提取模型是根据所述训练库中存储的各肢体关键点序列,以及与各肢体关键点序列对应的动作姿态特征数据训练获得。
15.一种机器人,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至14任一所述的机器人的对话交互方法。
16.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至14中任一项所述的机器人的对话交互方法。
CN201910372380.4A 2019-05-06 2019-05-06 一种机器人的对话交互方法、机器人及可读存储介质 Active CN110125932B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910372380.4A CN110125932B (zh) 2019-05-06 2019-05-06 一种机器人的对话交互方法、机器人及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910372380.4A CN110125932B (zh) 2019-05-06 2019-05-06 一种机器人的对话交互方法、机器人及可读存储介质

Publications (2)

Publication Number Publication Date
CN110125932A CN110125932A (zh) 2019-08-16
CN110125932B true CN110125932B (zh) 2024-03-19

Family

ID=67576291

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910372380.4A Active CN110125932B (zh) 2019-05-06 2019-05-06 一种机器人的对话交互方法、机器人及可读存储介质

Country Status (1)

Country Link
CN (1) CN110125932B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111369687B (zh) 2020-03-04 2021-03-30 腾讯科技(深圳)有限公司 合成虚拟对象的动作序列的方法及设备
CN111443854B (zh) * 2020-03-25 2022-01-18 北京百度网讯科技有限公司 基于数字人的动作处理方法、装置、设备及存储介质
CN111488090A (zh) * 2020-04-13 2020-08-04 北京市商汤科技开发有限公司 交互方法、装置、交互***、电子设备及存储介质
CN112025692B (zh) * 2020-09-01 2021-09-03 广东工业大学 一种自学习机器人的控制方法、装置和电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123007A (zh) * 2014-07-29 2014-10-29 电子科技大学 一种多维加权的3d动态手势识别方法
CN104985599A (zh) * 2015-07-20 2015-10-21 百度在线网络技术(北京)有限公司 基于人工智能的智能机器人控制方法、***及智能机器人
CN106799733A (zh) * 2016-12-27 2017-06-06 深圳前海勇艺达机器人有限公司 机器人动作方法与***
CN107292289A (zh) * 2017-07-17 2017-10-24 东北大学 基于视频时间序列的人脸表情识别方法
CN108363706A (zh) * 2017-01-25 2018-08-03 北京搜狗科技发展有限公司 人机对话交互的方法和装置、用于人机对话交互的装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180133900A1 (en) * 2016-11-15 2018-05-17 JIBO, Inc. Embodied dialog and embodied speech authoring tools for use with an expressive social robot

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123007A (zh) * 2014-07-29 2014-10-29 电子科技大学 一种多维加权的3d动态手势识别方法
CN104985599A (zh) * 2015-07-20 2015-10-21 百度在线网络技术(北京)有限公司 基于人工智能的智能机器人控制方法、***及智能机器人
CN106799733A (zh) * 2016-12-27 2017-06-06 深圳前海勇艺达机器人有限公司 机器人动作方法与***
CN108363706A (zh) * 2017-01-25 2018-08-03 北京搜狗科技发展有限公司 人机对话交互的方法和装置、用于人机对话交互的装置
CN107292289A (zh) * 2017-07-17 2017-10-24 东北大学 基于视频时间序列的人脸表情识别方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Kinect三维骨骼节点的动作识别方法;朱大勇等;《计算机工程与应用》;20181015;第152-158页 *

Also Published As

Publication number Publication date
CN110125932A (zh) 2019-08-16

Similar Documents

Publication Publication Date Title
CN110125932B (zh) 一种机器人的对话交互方法、机器人及可读存储介质
KR102081854B1 (ko) 3d edm을 이용한 수어 또는 제스처 인식 방법 및 장치
CN111897933B (zh) 情感对话生成方法、装置及情感对话模型训练方法、装置
WO2021196643A1 (zh) 交互对象的驱动方法、装置、设备以及存储介质
CN111966800B (zh) 情感对话生成方法、装置及情感对话模型训练方法、装置
CN110298319B (zh) 图像合成方法和装置
WO2021196646A1 (zh) 交互对象的驱动方法、装置、设备以及存储介质
CN115631267A (zh) 生成动画的方法及装置
CN113035198A (zh) 三维人脸的唇动控制方法、设备和介质
CN113516990A (zh) 一种语音增强方法、训练神经网络的方法以及相关设备
KR102373608B1 (ko) 디지털 휴먼 영상 형성을 위한 전자 장치 및 방법과, 그를 수행하도록 컴퓨터 판독 가능한 기록 매체에 저장된 프로그램
CN116561533B (zh) 一种教育元宇宙中虚拟化身的情感演化方法及终端
WO2024103637A1 (zh) 舞蹈动作生成方法、计算机设备及存储介质
WO2024103637A9 (zh) 舞蹈动作生成方法、计算机设备及存储介质
CN108960191B (zh) 一种面向机器人的多模态融合情感计算方法及***
CN116312613A (zh) 数字人表情口型驱动方法、***、电子设备和存储介质
US11830292B2 (en) System and method of image processing based emotion recognition
CN116977506A (zh) 模型动作重定向的方法、装置、电子设备及存储介质
Tan et al. A proposed set of communicative gestures for human robot interaction and an RGB image-based gesture recognizer implemented in ROS
CN113420783B (zh) 一种基于图文匹配的智能人机交互方法及装置
CN116563450A (zh) 表情迁移方法、模型训练方法和装置
CN114092712A (zh) 图像生成方法、装置、可读介质和电子设备
Pham et al. Learning continuous facial actions from speech for real-time animation
Somashekarappa et al. Neural network implementation of gaze-target prediction for human-robot interaction
Mishra et al. Environment descriptor for the visually impaired

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
GR01 Patent grant
GR01 Patent grant