机器人控制设备的制作方法

文档序号:1564493阅读:205来源:国知局
专利名称:机器人控制设备的制作方法
技术领域
本发明涉及机器人控制设备,具体涉及例如一种适合用于根据从语音识别器获得的语音识别效果来动作的机器人的机器人控制设备。
背景技术
近来,例如,已经作为玩具等制造了用于从用户产生的语音执行语音识别和用于根据语音识别效果执行特殊的动作或输出合成的声音的机器人(包括本说明书中的玩具熊和洋娃娃)。
甚至在获得语音识别结果的时候,机器人也可能不执行任何动作。在这种情况下,用户对于是否机器人识别了语音或机器人坏了变得焦虑。

发明内容
考虑到上述的情况,本发明的一个目的是使得用户能够知道机器人识别了用于的语音,因此消除了用户的焦虑。
按照本发明的一种机器人控制设备包括分析装置,用于分析经过语音识别的用户语音的韵律信息;产生装置,用于根据韵律信息产生韵律控制语音数据,该韵律受控语音数据是其中韵律受到控制的语音数据;和输出控制装置,用于控制韵律受控语音数据的输出。
按照本发明的一种机器人控制方法包括分析步骤,分析经过语音识别的用户语音的韵律信息;产生步骤,根据韵律信息产生韵律受控语音数据,该韵律受控语音数据是其中韵律受到控制的语音数据;和输出控制步骤,控制韵律受控语音数据的输出。
按照本发明的一种记录介质记录了一种程序,该程序包括分析步骤,分析经过语音识别的用户语音的韵律信息;产生步骤,根据韵律信息产生韵律受控语音数据,该韵律受控语音数据是其中韵律受到控制的语音数据;和输出控制步骤,控制韵律受控语音数据的输出。
按照本发明的一种程序,包括分析步骤,分析经过语音识别的用户语音的韵律信息;产生步骤,根据韵律信息产生韵律受控语音数据,该韵律受控语音数据是其中韵律受到控制的语音数据;和输出控制步骤,控制韵律受控语音数据的输出。
按照本发明,经过语音识别的用户语音的韵律信息被分析。根据韵律信息,产生和输出韵律受控语音数据,该韵律受控语音数据是其中韵律受到控制的语音数据。


图1是示出按照本发明的实施例的机器人的外部结构的透视图。
图2是示出机器人的内部结构示例的方框图。
图3是示出控制器10的功能结构的示例的方框图。
图4是示出语音识别器50A的结构示例的方框图。
图5是示出语音合成器55的结构示例的方框图。
图6是说明由输出控制器57执行的处理的流程图。
图7是示出回声单元56结构示例的方框图。
图8是说明由回声单元56执行的回声(echo back)处理的流程图。
图9是说明由回声单元56执行的再回声(re-echo back)处理的流程图。
图10是示出控制器10的功能结构的另一个示例的方框图。
具体实施例方式
图1示出了按照本发明实施例的机器人的外观图。图2示出了机器人的电子配置。
在本实施例中,机器人具有象狗一样的四条腿动物的外形。腿单元3A、3B、3C和3D与身体单元2相连,并且头单元4和尾单元5与身体单元2的前端和后端分别相连。
尾单元5从在身体单元2的顶部的基部单元5B延伸,尾单元5延伸以便以两个自由度弯曲或摇摆。
身体单元2包含一控制器10,用于控制整个机器人;一电池11,作为机器人的电源;和一内部传感器部分14,包括电池传感器12和热传感器13。
头单元4包括在各个预定位置的一对应于“耳朵”的麦克风15、一对应于“眼睛”的CCD(电荷耦合器件)照相机16、一对应于触摸接收器的触摸传感器17,一对应于“嘴”的扬声器18。而且,头单元4包括对应于嘴的下颌并可以以一个自由度活动的下颌4A。下颌4A的动作打开/关闭机器人的嘴。
如图2所示,腿单元3A到3D的接合处、腿单元3A到3D和身体单元2之间的接合处、头单元4和身体单元2之间的接合处、头单元4和下颌4A之间的接合处、和尾单元5和身体单元2之间的接合处分别含有传动器3AA1到3AAK、3BA1到3BAK、3CA1到3CAK、3DA1到3DAK、4A1到4AL、5A1、和5A2。
头单元4的麦克风15接收周围的语音(声音)——包括用户的语音——并向控制器10发送所产生的语音信号。CCD照相机16获取周围环境的图象并将所产生的图象信号发送到控制器10。
触摸传感器17被提供在例如头单元4的顶部。触摸传感器17检测通过直接接触,如用户的“轻拍”或“打击”而施加的压力,并将检测的结果作为压力检测信号发送到控制器10。
身体单元2的电池传感器12检测电池11中剩余的电量并将检测结果作为电池剩余电量检测信号发送到控制器10。热传感器13检测机器人中的热量并将检测结果作为热量检测信号发送到控制器10。
控制器10包括一CPU(中央处理单元)10A、一存储器10B等。CPU 10A执行存储在存储器10B中的控制程序以执行各种处理。
具体而言,控制器10根据分别来自麦克风15、CCD照相机16、触摸传感器17、电池传感器12和热量传感器13的语音信号、图象信号、压力检测信号、电池剩余电量检测信号和热量检测信号而确定环境的特点、是否用户发出了命令、或是否用户已经靠近。
根据确定的结果,控制器10确定要采取的后续行动。根据行动确定结果,控制器10启动在传动器传动器3AA1到3AAK、3BA1到3BAK、3CA1到3CAK、3DA1到3DAK、4A1到4AL、5A1、和5A2中的必要单元。这使得头单元4垂直和水平摆动、下颌开闭。而且这使得尾单元5活动并驱动腿单元3A到3D来使得机器人行走。
按照环境的需要,控制器10产生合成的声音或下述的回声语音,并将所产生的声音提供到扬声器18,以输出声音。另外,控制器10使得在机器人的“眼睛”位置的一个LED(发光二极管)(未示出)接通、关闭或闪烁。
于是,机器人被配置成按照周围状态等自主地作出行为。
图3示出了图2所示的控制器10的功能结构的示例。图3所示的功能结构通过CPU 10A执行存储在存储器10B中的控制程序而实现。
控制器10包括一传感器输入处理器50,用于识别具体的外部状态;一模型存储单元51,用于累积通过传感器输入处理器50获得的识别结果和表达情绪、本能和成长状态;一行为确定单元52,用于根据从传感器输入处理器50获得确认结果来确定后续的行为;一姿势转换单元53,用于使得机器人根据从行为确定单元52获得的确定结果来实际地执行动作;一控制单元54,用于驱动和控制传动器3AA1到5A1和5A2;一语音合成器55,用于产生合成的声音;一回声单元56,用于输出回声语音;和一输出控制器57,用于控制语音数据的输出。
传感器输入处理器50识别具体的外部状态、用户做出的具体步骤和用户根据从麦克风15、CCD照相机16、触摸传感器17等提供的语音信号、图象信号、压力检测信号等给出的命令,并将指示识别结果的状态识别信息通告给模型存储单元51和行为确定单元52。
更具体而言,传感器输入处理器50包括一语音识别器50A。该语音识别器50A执行对于从麦克风15提供的语音信号的语音识别。语音识别器50A作为一个命令向模型存储单元51和行为确定单元52报告语音识别的结果来作为状态识别信息,如“走”、“卧下”、“追赶球”等。
传感器输入处理器50包括一图象识别器50B。该图象识别器50B利用从CCD照相机16提供的图象信号来执行图象识别处理。当图象识别器50B结果检测到例如“一红色的圆物体”或“一预定高度或更大的垂直于地面的平面”的时候,图象识别器50B向模型存储单元51和行为确定单元52报告“有一个球”或“有一堵墙”的图象识别结果作为状态识别信息。
此外,传感器输入处理器50包括一压力处理器50C。该压力处理器50C处理从触摸传感器17提供的压力检测信号。当压力处理器50C结果检测到短时间施加的超过预定阈值的压力的时候,压力处理器50C识别该机器人已经“被打(处罚)”。当压力处理器50C检测到长时间施加的低于预定阈值的压力的时候,压力处理器50C识别该机器人已经“被轻拍(奖赏)”。压力处理器50C向模型存储单元51和行为确定单元52报告该识别结果作为状态识别信息。
模型存储单元51存储和管理情绪模型、本能模型和成长模型来分别表达情绪、本能和成长状态。
情绪模型利用预定范围内的数值表示情绪状态(程度),如“喜悦”、“悲伤”、“愤怒”和“享受”。该数值根据来自传感器输入处理器50的状态识别信息、过去的时间等而变化。本能模型利用预定范围内的数值表示诸如“饥饿”、“睡眠”、“运动”等的愿望状态(程度)。该数值根据来自传感器输入处理器50的状态识别信息、过去的时间等而变化。成长模型利用预定范围内的数值表示诸如“童年”、“青春期”、“成年”、“老年”等的愿望状态(程度)。该数值根据来自传感器输入处理器50的状态识别信息、过去的时间等而变化。
以这种方式,模型存储单元51向行为确定单元52输出分别由情绪模型、本能模型和成长模型的数值表示的情绪、本能和成长状态作为状态信息。
状态识别信息从传感器输入处理器50向模型存储单元51提供。而且,从行为确定单元52向模型存储单元51提供指示机器人现在或过去采取的行动的内容的行动信息,如“走了很长时间”。即使提供了相同的状态识别信息,模型存储单元51按照由行动信息指示的机器人的行动来产生不同的状态信息。
更具体而言,例如,如果机器人向用户说你好并且机器人被用户轻拍头部,则向模型存储单元51提供指示机器人向用户说你好的行为信息和指示机器人被用户轻拍头部的状态识别信息。在此情况下,在模型存储单元51中,表示“喜悦”的情绪模型的数值提高。
相反,如果机器人在执行特殊任务的时候被轻拍头部,则向模型存储单元51提供指示机器人正在执行任务的行为信息和指示机器人被轻拍头部的状态识别信息。在此情况下,在模型存储单元51中,表示“喜悦”的情绪模型的数值不变。
模型存储单元51通过引用状态识别信息和指示机器人过去或现在采取的行为信息来设置情绪模型的数值。于是,当用户在机器人执行特殊任务时轻拍机器人头部以逗弄机器人的时候,禁止诸如表示“喜悦”的情绪模型的数值的升高的情绪的不自然变化。
象情绪模型中一样,模型存储单元51根据状态识别信息和行为信息提高或降低本能模型和成长模型的数值。而且,模型存储单元51根据其他模型的数值提高或降低情绪模型、本能模型和成长模型的数值。
行为确定单元52根据从传感器输入处理器50提供的状态识别信息、从模型存储单元51提供的状态信息、过去的时间等而确定后续的行为,并向姿势转换单元53发送所确定的行为的内容作为行为命令信息。
具体而言,行为确定单元52管理有限的状态自动装置,其中机器人可能采取的行为与作为用于限定机器人的行为的行为模型的状态相关。作为行为模型的在有限的状态自动装置中的状态根据来自传感器输入处理器50的状态识别信息、在模型存储单元51中的情绪模型、本能模型和成长模型的数值、过去的时间等而转变。行为确定单元52随后确定对应于在转变后的状态的一个行为作为后续行为。
如果行为确定单元52检测到一个预定的触发,则行为确定单元52使得状态转变。换而言之,当对应于当前状态的行为已经执行了预定时间长度时、当接收到预定的状态识别信息时、或当从模型存储单元51提供的状态信息指示的情绪、本能或成长状态变得低于或等于预定阈值或者变得高于或等于预定阈值的时候,行为确定单元52使得状态转变。
如上所述,行为确定单元52不仅根据来自传感器输入处理器50的状态识别信息,而且根据在模型存储单元51中的情绪模型、本能模型和成长模型的数值等而使得行为模型中的状态转变。即使输入了相同的状态识别信息,下一个状态也根据情绪模型、本能模型和成长模型的数值(状态信息)而不同。
作为结果,例如,当状态信息指示机器人“不生气”和“不饿”的时候、和当状态识别信息指示“一只手伸到机器人前面”的时候,行为确定单元52产生行为命令信息,它响应于用户的手伸到机器人前面的事实而指令机器人“摇动下颌”。行为确定单元52向姿势转换单元53发送所产生的行为命令信息。
当状态信息指示机器人“不生气”和“不饿”的时候、和当状态识别信息指示“一只手伸到机器人前面”的时候,行为确定单元52产生行为命令信息,它响应于用户的手伸到机器人前面的事实而指令机器人“舔手”。行为确定单元52向姿势转换单元53发送所产生的行为命令信息。
例如,当状态信息指示机器人在“生气”时、和当状态识别信息指示“一只手伸到机器人前面”的时候,行为确定单元52产生行为命令信息,它指令机器人“将机器人的头扭开”而不管机器人是“饿”还是“不饿”。行为确定单元52向姿势转换单元53发送所产生的行为命令信息。
行为确定单元52可以根据从模型存储单元51提供的状态信息指示的情绪、本能和成长状态来确定行走速度、腿移动的速度和幅度等,这些是对应于下一个状态的行为的参数。在这种情况下,包括这些参数的行为命令信息被发送到姿势转换单元53。
如上所述,行为确定单元52不仅产生指令机器人移动头部和腿部的行为命令信息,而且产生指令机器人说话的行为命令信息。指令机器人说话的行为命令信息被提供到语音合成器55。提供到语音合成器55的行为命令信息包括对应于要由语音合成器55产生的合成的声音的文本。响应于来自行为确定单元52的行为命令信息,语音合成器55根据包含在行为命令信息中的文本而产生一合成的声音。该合成的声音被通过输出控制器57提供到扬声器18并从扬声器18输出。因此,扬声器18输出机器人的语音、诸如“我饿了”的对用户的各种要求、响应于用户的话语的诸如“什么?”的响应、和其他语音。
姿势转换单元53根据从行为确定单元52提供的行为命令信息而产生姿势转换信息,用于使得机器人从当前的姿势移向下一个姿势,并向控制单元54发送姿势转换信息。
当前状态可以改变到的下一个状态的确定是根据身体和腿的形状、重量、诸如各部分之间的连接状态的机器人的身体形状、和诸如弯曲方向和接合角度的传动器3AA1到5A1和5A2的结构方式。
下一个状态包括当前状态可以直接改变到的状态和当前状态不能直接改变到的状态。例如,虽然四腿的机器人可以直接从机器人四肢伸开的躺卧状态改变到卧下状态,但是机器人不能直接改变到站立状态。机器人被要求执行一个两步的行为。首先,机器人躺在地上向身体拉四肢,然后机器人站起。而且,有一些机器人不能可靠地承担的姿势。例如,如果当前处于站立位置的四腿机器人试图举起它的两个前爪,则机器人容易倒下。
姿势转换单元53预先存储机器人可以直接改变到的多种姿势。如果从行为确定单元52提供的行为命令信息指示机器人可以直接改变到的一个姿势,则姿势转换单元53向控制单元54发送该行为命令信息作为姿势转换信息。相反,如果行为命令信息指示机器人不能直接改变到的一个姿势,则姿势转换单元53产生姿势转换信息并将其发送到控制单元54,其中姿势转换信息使得机器人首先作出一个机器人可以直接改变到的姿势,然后作出目标姿势。于是,机器人被防止强迫它自己作出不可能的姿势或防止摔倒。
控制单元54产生控制信号,并用于根据从姿势转换单元53提供的姿势转换信息来驱动传动器3AA1到5A1和5A2,并向传动器3AA1到5A1和5A2发送控制信号。因此,传动器3AA1到5A1和5A2被按照控制信号驱动,于是机器人自主作出行为。
回声单元56监控从麦克风15提供的、经过语音识别器50A的语音识别的一个语音信号,并产生和输出返回该语音信号的语音(以下称为回声语音)。该回声语音被通过输出控制器57提供到扬声器18并被从扬声器18输出。
来自语音合成器55的合成声音的数字数据和来自回声单元56的回声语音的数字数据被提供到输出控制器57。这些数字数据经过D/A变换为模拟语音信号,该模拟语音信号被提供到扬声器18并从扬声器18输出。如果来自语音合成器55的合成的声音和来自回声单元56的回声语音被输出到扬声器18以便彼此竞争,则该竞争被调节。具体而言,来自回声单元56的回声语音的输出被配置成其执行与在行为确定单元52控制下由语音合成器55作出的合成声音的输出无关。因此,回声语音和输出和合成声音的输出可以彼此竞争。在这种情况下,输出控制单元57调节该竞争。
图4示出了图3所示的语音识别器50A的结构的一个示例。
来自麦克风15的语音信号被提供到一个AD(模数)转换器21。该AD转换器21对作为从麦克风15提供的模拟信号的语音信号采样,并将采样语音信号量化,因此将该信号转换为语音数据,这是一个数字信号。该语音数据被提供特性提取单元22和语音部分检测器27。
特性提取单元22以帧为单位执行例如对于输入到那里的该语音数据的MFCC(麦尔(Mel)频率对数倒频谱系数,Mel Frequency CepstrumCoefficient)分析,并向匹配单元23输出获得的作为分析结果的MFCC来作为特性参数(特性向量)。而且,特性提取单元22可以提取特性参数,如线性预测系数、对数倒频谱系数、线谱对(Line Spectrum Pairs)和在每个预定频带中的功率(滤波器组的输出)。
根据从特性提取单元22提供的特性参数,匹配单元23根据例如一个连续分布HMM(隐藏马尔可夫模型(Hidden Harkov Model))方法通过引用声音模型存储单元24、词典存储单元25和语法存储单元26——如果必要的话——执行输入到麦克风15的语音(输入语音)的语音识别。
具体而言,声音模型存储单元24存储指示在经过语音识别的语音的语言中的每个音素或每个音节的声音特性的声音模型。语音识别根据连续分布HMM方法而执行。HMM(隐藏马尔可夫模型)被用做声音模型。词典存储单元25存储包含关于要识别的每个单词的发音的信息(音素信息)的一个词典。语法存储单元26存储语法规则,该规则描述在词典存储单元25的词典中记录的单词如何连接和联系。例如,上下文无关的语法(CFG)或基于统计单词连接概率(N个字符列(N-gram))的规则可以被用做语法规则。
匹配单元23引用词典存储单元25的词典以连接存储在声音模型存储单元24中的声音模型,因此形成对一个单词的声音模型(单词模型)。匹配单元23也引用存储在语法存储单元26中的语法规则,以连接单词模型,并使用所连接的单词模型,以通过使用连续分布HMM方法、根据特性参数识别通过麦克风15的语音输入。换而言之,匹配单元23检测特性提取单元22输出的、用被观察的时间系列特性参数的最高分数(score)(可能性)的一系列单词模型。匹配单元23输出对应于所述单词模型序列的单词串的音素信息(发音)作为语音识别结果。
更具体而言,匹配单元23累加关于对应于所连接的单词模型的单词串而发生的每个特性参数的概率,并将所累加的数值作为分数。匹配单元23输出关于具有最高分数的单词串的音素信息作为语音识别结果。
如上所述输出的、被输入到麦克风15的语音的识别结果作为状态识别信息被输出到模型存储单元51和行为确定单元52。
对于来自AD转换器21的语音数据,语音部分检测器27象在由特性提取单元22执行的MFCC分析中那样计算每个帧中的功率。而且,语音部分检测器27将每个帧中的功率与预定阈值比较,并检测由功率大于或等于预定阈值的一个帧形成的部分作为输入用户语音的语音部分。语音部分检测器27向特性提取单元22和匹配单元23提供所检测的语音部分。特性提取单元22和匹配单元23仅仅执行语音部分的处理。
图5示出了图3所示的语音合成器55的结构的示例。
包括从行为确定单元52输出的、经过语音合成的文本的行为命令信息被提供到文本产生器31。文本产生器31引用词典存储单元34和生成语法存储单元35并分析包括在行为命令信息中的文本。
具体而言,词典存储单元34存储包括每个单词的语音信息、发音信息和重音信息部分的词典。生成语法存储单元35存储生成语法规则,如对于关于包括在词典存储单元34的词典中每个单词的单词连接的限制。基于该词典和生成语法规则,文本产生器31执行输入文本的词法分析和语法分析。文本产生器31提取对于在后续阶段由基于规则的合成器32执行的基于规则的语音合成必要的信息。对于基于规则的语音合成需要的信息包括例如,用于控制暂停位置、重音和音调的信息、其他韵律信息和诸如每个单词的发音的音素信息。
由文本产生器31获得的信息被提供给基于规则的合成器32。基于规则的合成器32引用音素存储单元36和产生对应于向文本产生器31输入的文本的合成声音的语音数据(数字数据)。
具体而言,音素存储单元36以CV(辅音、元音)、VCV、CVC等的形式存储音素数据。根据来自文本产生器31的信息,基于规则的合成器32连接必要的音素数据和通过控制音素数据的波形来适当地增加暂停、重音和音调,于是产生对应于向文本产生器31输入的文本的合成声音的语音数据。
上述所产生的语音数据被通过输出控制器57(图3)提供给扬声器18。于是,扬声器18输出对应于向文本产生器31输入的文本的合成声音。
如上所述,图3所示的行为确定单元52根据行为模型确定后续的行为。被输出的作为合成声音的文本的内容可以与机器人采取的行为有关。
具体而言,例如,当机器人执行从坐的状态变为站的状态的行为的时候,文本“alley-oop”可以与该行为相关。在这种情况下,当机器人从坐状态变为站状态的时候,合成的声音“alley-oop”可以与姿势的变化同步地输出。
参见图6的流程图,现在说明图3所示的输出控制器57执行的处理(输出控制处理)。
响应于来自语音合成器55的合成声音,只要输出控制器57没有收到来自回声单元56的任何回声语音,输出控制器57向扬声器18提供来自语音合成器55的合成声音,因此输出来自扬声器18的合成声音。
响应于来自回声单元56的回声语音,输出控制器57按照图6的流程图执行输出控制处理。
具体而言,响应于来自回声单元56的回声语音,输出控制器57首先在步骤S1确定是否从语音合成器55输出合成声音。如果确定没有输出合成声音,输出控制器57进行到步骤S2并向扬声器18提供从回声单元56接收的回声语音,因此从扬声器18输出合成声音。随后,处理结束。
相反,在步骤S1,如果确定从语音合成器55输出合成声音,即如果来自语音合成器55的合成声音的输出与从回声单元56的回声语音的输出竞争,则输出控制器57进行到步骤S3并限制回声语音的输出。输出控制器57从语音合成器55向扬声器18提供合成声音,因此从扬声器18输出了合成声音。随后,处理结束。
如果输出控制器57在输出回声语音的同时从语音合成器55接收了合成的声音,则回声语音的输出停止。输出控制器57向来自语音合成器55的合成声音的输出提供了优先级。
如上所述,当来自语音合成器55的合成声音的输出与来自回声单元56的回声语音的输出竞争的时候,输出控制器57向来自语音合成器55的合成声音的输出提供了优先级。这是因为来自语音合成器55的合成声音的输出基于来自行为确定单元52的行为命令信息,并因此是机器人要采取的一个行动。相反,回声语音的输出仅仅重复用户的语音。对于用户,来自语音合成器55的合成声音比回声语音具有更高的优先级。
作为替换方式,输出控制器57可以向回声语音的输出提供高于来自语音合成器55的合成声音的输出的优先级。作为替换方式,输出控制器57可以向回声语音或来自语音合成器55的合成语音提供优先级,这依赖于哪个先被收到。
图7示出了图3所示的回声单元56的结构示例。
来自麦克风15的语音信号被提供到一AD转换器41。该AD转换器41对作为从麦克风15提供的模拟信号的语音信号采样,并量化采样的语音信号,因此A/D将该信号转换为语音数据,这是一个数字信号。语音数据被提供到韵律分析器42和语音部分检测器46。
韵律分析器42以帧为单位执行输入的语音数据的声音分析,并提取韵律信息,如音调频率、和语音数据的功率。韵律信息被提供到声音发生器43。
具体而言,韵律分析器42假定一帧是高于正常人的音调周期的一个周期,如32毫秒,并以帧为单位从AD转换器41获得语音数据的音调频率和功率。
更具体而言,韵律分析器42按照下列方程计算第i帧的功率P(j)P(i)=∑xi2.......(1)在方程(1)中,xi表示从第j帧的开头的第i个语音数据的采样值,∑表示在第j帧中的语音数据的所有采样值的和。
韵律分析器42计算在第j帧中的语音数据的采样的自相关值,计算最大化自相关值和非零的数量(时间)τ,并利用下面的方程计算在第j帧中的音调频率f(j)f(j)=1/τ......(2)声音发生器43根据来自韵律分析器42的韵律信息产生韵律受控的回声语音。
具体而言,声音发生器43通过叠加正弦波产生与来自韵律分析器42的韵律信息具有相同韵律的、没有任何音素的语音(以下如果必要的话称为无音素语音),并向输出单元4提供所产生的语音作为回声语音。
关于根据包括例如音调频率和功率的韵律信息而产生语音数据的方法,在下列中有示例说明“Suzuki、Ishii和Takeuchi的利用非分段声音和它们的心理效果通过回声语音的模拟(Imitation by echoing speech using non-segmental sounds and their psychological effects)”,2000年5月第41卷第5部分第1328-1337页(vol 41,No.5,PP.1328-1337,May 2000)”;日本未审查专利申请公布第2000-181896号(Japanese Unexamined Patent ApplicationPublication No.2000-181896)等。
输出单元44在存储器45中存储来自声音发生器43的回声语音数据并向输出控制器57(图3)输出数据。
语音部分检测器46与图4所示的语音部分检测器27中类似地执行来自AD转换器41的语音数据的处理,因此检测语音部分。语音部分检测器46向韵律分析器42和声音发生器43提供语音部分。因此,韵律分析器42和声音发生器43仅仅执行语音部分的处理。
图7所示的AD转换器41或语音部分检测器46可以分别与图4所示的AD转换器21或语音部分检测器27相结合。
如上所述安排的回声单元56按照图8所示的流程图执行,例如,回声处理。
具体而言,在步骤S1,语音部分检测器46确定是否AD转换器41的输出数据包括语音部分。如果确定该数据包括非语音部分,则处理结束,并且回声处理在步骤S11恢复。
如果在步骤S11确定该数据包括一个语音部分,即如果用户的语音输入到麦克风15,则在步骤S12,韵律分析器42执行AD转换器41的输出数据——即输入到麦克风15的用户语音——的声音分析,并获得韵律信息。该韵律信息被提供到声音发生器43。
在步骤S13,声音发生器43产生与来自韵律分析器42的韵律信息具有相同韵律的无音素(no-phoneme)语音,并将所产生的无音素语音作为回声语音提供到输出单元44。
在步骤S14,输出单元44将来自声音发生器43的回声语音数据存储在存储器45中。在步骤S15,输出单元44向输出控制器57(图3)输出回声语音,处理结束。
因此,回声语音被通过输出控制器57提供给扬声器18,因此从扬声器18输出回声语音。
在此情况下,韵律被从用户的语音去除,并且所产生的声音被作为从扬声器18输出的回声语音。
回声语音重复经过语音识别器50A执行的语音识别的用户的语音。作为输出回声语音的结果,用户可以听见回声语音并识别用户的语音已经被机器人接受。如果机器人未响应于用户的语音而行动(包括用户的语音被语音识别器50A正确识别的情况和用户的语音被语音识别器50A错误识别的情况),防止用户错误理解机器人已经坏了。
由于回声语音不是精确的用户语音而是去除了音素的语音,它对用户听起来好象机器人明白了用户并以它自己的语音重复用户所说的。由于回声语音与用户的语音具有相同的韵律,回声语音表达了由韵律表示的情绪。作为结果,它对用户听起来好象机器人明白了用户的情绪。因此,有可能给用户这样的印象,即用户的语音不是简单地记录和回放,而是实际上机器人明白了用户的语音。
回声语音由声音发生器43通过叠加正弦波而产生。作为替换方式,例如,回声语音可以通过准备代表机器人的语音的复杂波形和连接该波形而产生。作为替换方式,回声语音可以通过识别构成用户的语音的音素和产生具有包含音素序列的语音单元的语音而产生。作为替换方式,回声语音可以通过获得用户语音的对数倒频谱系数和由使用对数倒频谱系数作为轻拍系数的数字滤波器产生语音而产生。
如果回声语音与用户的语音太相似,则用户可以得到无趣味的印象,即用户的语音被机器人简单地记录和重放。因此期望回声语音不应当紧密地模仿用户语音。
在上述情况下,语音产生器43产生与用户的语音具有相同韵律的回声语音。作为替换方式,声音发生器43可以产生带有通过略微控制用户语音的韵律而获得的韵律的回声语音。
具体而言,例如,如上所述,当韵律分析器42获得在第j个帧中的功率P(j)和音调频率f(j)的时候,声音发生器43使用该功率P(j)和音调频率f(j)来按照,例如,下面的方程产生回声语音y(t)y(t)=log(P(j))sin(2πNf(j)t)……(3)在方程(3)中N是正整数。
按照方程(3),回声语音y(t)通过以对数来非线性化第j帧语音的功率P(j)和将音调频率f(j)乘以N而产生回声语音y(t)。
经验上,当N被设置为,例如,六的时候,可以产生可听的、听起来象机器人的声音的回声语音。
在前述的情况下,输出与用户的语音的语音部分具有相同的持续时间的回声语音。作为替换方式,可以使得回声语音的持续时间不同于用户语音的语音部分。
具体而言,当回声语音按照方程(3)而产生的时候,功率P(j)和音调频率f(j)可以被插入或抽取,因此产生了具有长于或短于用户语音的语音部分的持续时间的回声语音。
经验上,当通过将用户语音的语音部分的持续时间乘以3/2等而提高回声语音的持续时间的时候,回声语音对用户听起来自然。
在图7所示的回声单元56中,回声语音被存储在存储器45中,输出单元44通过读取和输出存储在存储器45中的回声语音——如果必要的话——而执行再回声处理。
具体而言,再回声处理示于图9的流程图。在步骤S21,输出单元44确定是否已经发生了一个预定事件。如果输出单元44确定没有发生预定的事件,则输出单元44返回步骤S21。
如果在步骤S21确定已经发生了预定事件,则在步骤S22,输出单元44读取存储在存储器45中的预定回声语音数据,并将该数据通过输出控制器57提供到扬声器18。输出单元44返回步骤S21。
在再回声处理中,如果发生了预定的事件,则存储在存储器45中的预定回声语音被从扬声器18输出。
下面的情况可以被当作预定的事件。例如,预先设置了一个特殊值,产生了一个随机数值。如果该随机数值于预先设置的数值相符,则确定已经发生了预定的事件。作为替换方式,如果没有外部数据输入的一个状态持续了预定的时间,则确定发生了预定事件。在这样的情况下,对于用户好象机器人突然开始说话,虽然没有对机器人给任何刺激。作为结果,机器人变得更有娱乐性。
回声语音数据被与由行为确定单元52输出的预定行为命令信息相关地存储在存储器45中。当行为确定单元52输出行为命令信息的时候,可以从存储器45中读取与输出的行为命令信息相关的回声语音。在这种情况下,与行为命令信息相关的回声语音被与对应于由行为确定单元52输出的行为命令信息的行动同步地输出。
图10示出了控制器10的另一个示例。在该图中,相同的参考数字被提供给与图3的类似的部件,共同部分的详细描述被省略。换而言之,图10的控制器10具有与图3相同的结构,除了回声单元56可以引用存储在模型存储单元51中的模型。
如果控制器10如图10所示安排,如图7中的虚线所示,则在回声单元56中的声音发生器43引用存储在模型存储单元51中的情绪模型、本能模型和成长模型。
声音发生器43产生韵律受控的回声语音,该回声语音通过根据由情绪模型、本能模型和成长模型表达的情绪、本能和成长状态控制从用户语音提取的韵律而获得。
具体而言,例如,当机器人的喜悦和悲伤的程度大的时候,声音发生器43按照该程度产生高音调频率或低音调频率的回声语音。如果机器人的愤怒程度大,则声音发生器43按照该程度产生说话持续时间短的回声语音。如果机器人的成长程度大,则声音发生器43在回声语音的尾部提高回声语音的音调频率,好象机器人在问问题。在这种情况下,用户被提示说些什么。
在图9所示的在再回声处理中,存储在存储器45中的预定的回声语音响应于诸如随机数字或外部输入的预定事件而被播放。象在图10所示的示例中那样,当回声单元56的声音发生器43引用存储在模型存储单元51中的情绪模型、本能模型和成长模型的时候,由声音发生器43所产生的回声语音被与产生回声语音时的情绪模型的数值相关地存储在存储器45中。当存储在模型存储单元51中的情绪模型的数值于存储在存储器45中的情绪模型相符的时候,一个预定事件发生。与相符的情绪模型的数值相关的回声语音被播放和从存储器45输出。
在这种情况下,按照再回声处理,当情绪模型的数值与以前回声语音被播放时的情绪模型的数值相符的时候,存储在存储器45中的回声语音被播放。如果机器人进入一个特殊状态,其中机器人具有一个特殊情绪,则机器人输出相同的回声语音。作为结果,用户听见该回声语音和明白该机器人的状态或情绪。用户和机器人可以分享情绪等。
行为确定单元52和输出控制器57可以被配置成相互通信。在这种情况下,行为确定单元52可以产生行为命令信息,用于当语音数据从输出控制器57向扬声器18输出的时候启动活动下颌4A(图1)的传动器。在这种情况下,下颌4A与从扬声器18输出的语音同步地活动。因此有可能给用户留下机器人确实在说话的印象。
而且,行为确定单元52可以根据诸如功率等的关于从输出控制器57向扬声器18输出的数据的韵律信息而控制下颌4A的活动。具体而言,例如,如果语音数据的功率大,则下颌4A大幅度活动,因此增加了机器人的嘴张开程度。相反,如果语音数据的功率小,则下颌4A稍微活动,因此减小了机器人的嘴张开程度。在这种情况下,机器人的嘴的张开按照从扬声器18输出的声音的大小而改变。作为结果,机器人的说话方式变得更真实。
虽然这里描述了本发明被应用到娱乐机器人(作为假宠物的机器人)的情况,本发明不局限于这些情况。例如,本发明被广泛地应用到包括工业机器人的各种机器人上。本发明不仅应用到真实世界的机器人,而且应用到在诸如液晶显示器的显示器上显示的虚拟机器人,虽然在本实施例中已经说明了一系列上述的处理通过CPU执行程序而进行,但该系列处理可以通过专用的硬件执行。
所述程序可以被预先存储在存储器10B(图2)中。作为替代方式,该程序可以暂时或永远地存储(记录)在可移动的记录介质中,如软盘、CD-ROM(光盘只读存储器)、MO(磁光)盘、DVD(数字多用途光盘)、磁盘或半导体存储器。该可移动的介质可以作为所谓的封装软件而提供,该软件可以被安装在机器人中(存储器10B)。
作为替代方式,该程序可以从下载网站通过数字广播卫星无线发送,或者该程序可以利用线路通过诸如LAN(局域网)或因特网的网络发送。所发送的程序可以安装在存储器10B中。
在这种情况下,当程序的版本被升级的时候,所升级的程序可以被容易地安装在存储器10B中。
在本说明书中,用于写使得CPU 10A执行各种处理的程序的处理步骤不要求按照在流程图中说明的顺序以时间序列来被处理。相互并行执行的步骤或单独执行的步骤(例如并行处理或通过一个对象的处理)也被包括。
所述程序可以通过单独的CPU处理。作为替代方式,该程序可以再分散的环境中由多个CPU来处理。
产业上的应用按照本发明,经过语音识别的用户语音的韵律信息被分析。基于该韵律信息,作为其中韵律被控制的语音数据的韵律受控的语音数据被产生和输出。由于用户可以听见韵律受控的语音数据,用户可以识别用户语音已经被机器人接受。
权利要求
1.一种机器人控制设备,用于控制至少根据语音识别结果而行动的机器人,包括分析装置,用于分析经过语音识别的用户语音的韵律信息;产生装置,用于根据韵律信息产生韵律受控语音数据,该韵律受控语音数据是其中韵律受到控制的语音数据;和输出控制装置,用于控制韵律受控语音数据的输出。
2.按照权利要求1的机器人控制设备,其中产生装置产生没有任何音素的韵律受控语音数据。
3.按照权利要求1的机器人控制设备,还包括模型存储装置,用于存储表示机器人的情绪、本能和成长状态的模型,其中产生装置还基于机器人的情绪、本能和成长状态产生韵律受控的语音数据,所述状态由模型存储装置中存储的模型表示。
4.按照权利要求1的机器人控制设备,还包括数据存储装置,用于存储韵律受控的语音数据,其中当预定事件发生的时候,输出控制装置输出存储在数据存储装置中的韵律受控语音数据。
5.按照权利要求1的机器人控制设备,还包括行为控制装置,用于控制机器人的行为,其中当语音在行为控制装置的控制下输出的时候,输出控制装置限制韵律受控语音数据的输出。
6.按照权利要求1的机器人控制设备,还包括行为控制装置,用于使得机器人与韵律受控语音数据的输出同步地活动它的嘴。
7.按照权利要求6的机器人控制设备,其中所述行为控制装置根据韵律受控语音数据而控制机器人嘴的活动。
8.一种机器人控制方法,用于控制至少根据语音识别结果而行动的机器人,包括分析步骤,分析经过语音识别的用户语音的韵律信息;产生步骤,根据韵律信息产生韵律受控语音数据,该韵律受控语音数据是其中韵律受到控制的语音数据;和输出控制步骤,控制韵律受控语音数据的输出。
9.一种记录介质,记录了用于使得计算机执行机器人控制处理的程序,该机器人控制处理用于控制至少根据语音识别结果而行动的机器人,该程序包括分析步骤,分析经过语音识别的用户语音的韵律信息;产生步骤,根据韵律信息产生韵律受控语音数据,该韵律受控语音数据是其中韵律受到控制的语音数据;和输出控制步骤,控制韵律受控语音数据的输出。
10.用于使得计算机执行机器人控制处理的一种程序,该机器人控制处理用于控制至少根据语音识别结果而行动的机器人,该程序包括分析步骤,分析经过语音识别的用户语音的韵律信息;产生步骤,根据韵律信息产生韵律受控语音数据,该韵律受控语音数据是其中韵律受控的语音数据;和输出控制步骤,控制韵律受控语音数据的输出。
全文摘要
一种机器人控制设备,允许用户识别他/她的语音已经被接受。经麦克风(15)输入的用户语音被语音识别单元(50A)进行语音识别。根据语音识别结果,行动决定单元(52)决定下一个机器人行为。同时,回声单元(56)分析经麦克风(15)输入的用户语音的韵律信息,并根据经分析的韵律信息产生其韵律受到控制的语音,即回声语音。此回声语音通过输出控制器(57)提供给扬声器(18),并被从扬声器(18)输出。
文档编号A63H3/33GK1393010SQ01803100
公开日2003年1月22日 申请日期2001年10月10日 优先权日2000年10月11日
发明者石井和夫, 广井顺, 小野木渡, 丰田崇 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1