基于自然文本的人机智能交互控制平台的制作方法

文档序号:15561070发布日期:2018-09-29 02:15阅读:441来源:国知局

本发明涉及语言处理和人工智能交叉技术领域,尤其涉及基于自然文本的人机智能交互控制平台。



背景技术:

随着人工智能的快速发展,智能聊天机器人将成为我们日常生活的一部分。智能聊天机器人的出现,能够大大改善原有的人机交互带给用户的单调刻板的体验,并能充当人们生活中的“倾听者”缓解快节奏的城市生活压力。然而各大互联网公司推出的人工智能机器人大多是以2d模型作为虚拟形象,比如阿里的小蜜,微软的小冰,他们在与人交流时使用文本进行对话,虽然它们能流露感情但并没有一个良好的载体展示他们的“喜怒哀乐”,这都将降低用户体验。

传统的虚拟引擎提供给用户的交互方式很多,例如pc端的鼠标、键盘控制,智能手机的触屏控制,还有目前发展火热的vr(虚拟现实)技术中的手势控制,这些交互方式都是实时的,只要用户输入控制命令,人物角色就会立即做出相应动作,比如跑步、挥拳或者是视角的切换。但人工智能机器人的肢体动作及感情流露并不由用户的控制。因此基于自然文本控制人机交互方式亟待解决。

目前对于交互脚本的研究设计大多运用于web运用中,如上海交通大学的盛焕烨教授提出的脚本语言q,研究它在语义web中基于代理的信息搜索和面向电子商务的代理协商领域的应用。对于控制人机智能交互的脚本还没有很成熟的研究。

人机智能交互主要方面就是对话。那么在人与人对话时,嘴是重要的表达器官,虚拟人物口型的不匹配将严重影响人机交互的体验。如今,虚拟形象的制作中,人物的口型动画和面部表情往往都是根据特定的语句及动画场景逐帧制作而成,这种方法制作出来的口型动画生动,字与字之间的过渡流畅,配上语音后与真人形象几乎没有差别。但这种方法最大的问题就是动画师的工作量巨大,制作出的动画复用性低。目前,能够实现口型动画匹配的软件很少,比较著名的有口型大师mimic、口型插件voice-o-matic等但这些都是针对英语语言。由于汉语在发音方面比英文发音更复杂,因此国内对汉语口型自动生成的研究还比较靠后。

北京工业大学尹宝才教授提出了一种基于韵律文本的三维口型动画合成方法。该方法首先将驱动动画所用的普通文本通过一种韵律标记语言转换成富含韵律信息的文本;分析从视频中提取出来的一般人发音特征曲线,得到曲线函数,然后通过该函数将单帧的静态视位扩展为多帧的动态视位;最后将韵律标记的属性值映射为曲线函数的参数值,在动画中增加了韵律效果。

西南交通大学侯进教授针对汉语的发音习惯以及语音可视化技术中对口型动画自然、连续的要求,提出了一种基于肌肉模型与协同发音模型的与语音保持同步的口型动画的方法。

首先,根据汉语发音时的口型视位特征将声、韵母音素归类,并用数据映射的方式合成与之对应的口型关键帧。通过分析输入的文本信息,合成与语音保持同步的三维人脸口型动画。为了解决汉语发音习惯的问题,设计了一种基于微分几何学描述的协同发音建模的方法,该方法通过分析相邻音子间视素的影响权重,可以产生符合汉语发音习惯的口型动画。

以上方法要求进行大量数据分析,生成动画过程复杂耗时,且只能生成口型动画并不能根据自然文本分析出文本的情感,人物模型不会有情感表露更不会有肢体动画的展示,因此使用上述方法这并不能满足人机交互的趣味性和人性化。



技术实现要素:

本鉴于此,本发明提供了基于自然文本的人机智能交互控制平台,包括混合控制语言脚本,其特征在于,人物动画不是直接与用户进行交互的,而是根据所述混合控制语言脚本进行控制,针对文本中不同字符类别转换为具有统一格式的混合控制语言脚本,并通过不同的解析方法得到不同的控制类别进行对应控制类别的效果展示,所述混合控制语言脚本采用的技术方案步骤如下:

步骤一,根据汉语的发音规律及发音时口型的相似性将声母及韵母按口型分类编码;

步骤二,制定动画词典、特殊符号词典和面部表情词典;

步骤三,对自然文本进行情感分析并生成对应的面部表情脚本;

步骤四,利用分词工具将自然文本进行分词;

步骤五,判断分词后的词语能否转换为对应的拼音文本;

步骤六,若词语能翻译拼音,则根据关键字匹配动画词典判断分词后的各词语中有无触发肢体动画的词语,若有则在已生成的拼音脚本中插入肢体动画触发编码,然后将该词语翻译为拼音并插入到拼音脚本,否则直接将该词语翻译为拼音并插入到拼音脚本;

步骤七,将不能翻译为拼音的词语匹配特殊符号词典,若匹配成功则在拼音文本中插入对应的编码,否则插入默认编码;

步骤八,将拼音脚本中的拼音翻译为对应的口型编码,形成口型脚本。

步骤九,将生成的口型脚本和面部表情脚本进行组合生成最终的混合控制语言脚本;

步骤十,将最终生成的混合控制语言脚本发送到人机智能交互控制平台,控制虚拟人物模型的口型动画、面部表情、肢体动画的播放。

进一步的,所述步骤二中的对于一些特殊符号,如“+”、“%”等,在发音时有对应的音节,不能直接转换为拼音,因此需要制定特殊符号转换规则来解决特殊符号的脚本问题,对于数字的处理根据正则表达式匹配分词后词语类型并按照相应转换规则将数字转换为拼音。

进一步的,混合控制语言脚本格式分为口型动画、面部表情、肢体动画三类种型。

进一步的,所述步骤十人机智能交互控制平台实时检测是否有混合控制语言脚本的输入,如果没有,系统中的人物循环播放“平常”动画,如果有混合控制语言脚本输入,就将新输入的脚本内容存入到一个队列里,人物模型实时访问这个队列并播放对应的口型动画、面部表情、肢体动画。

进一步的,所述步骤二将声母及韵母按口型分类编码中,音节是汉语发音的基本单位,它由声母、韵母和声调三部分组成,其中声调主要控制的是高音的变化,在声母和韵母相同的情况下,声调对口型几乎没有影响,所以在设计汉语口型时,需要考虑的就是音节的声母和韵母部分。

采用上述技术方案,具有如下有益效果:

(1)混合控制语言脚本生成方法简单,内容易懂,可以跨语言实现且具有拓展性。

(2)混合控制语言脚本还具有复用性,一份脚本可以重复多次使用,且生成的动画内容相同。

(3)由混合控制语言脚本控制播放的3d人物模型动画不仅具有口型动画还具有面部表情和肢体动画,

能增强人机智能交互的趣味性,留住现有用户,吸引更多的潜在用户。

(4)本发明提出“基于汉语发音规律的口型分类”方法生成对应的口型动画更加便捷,且能满足大部分中文发音对应口型的需求。

(5)本发明通过文本驱动虚拟人物动画改变用户操作虚拟人物动作的习惯,解放用户双手。

附图说明

图1为数字转为拼音的流程图;

图2为混合控制语言脚本生成流程图;

图3为混合控制语言脚本控制动画播放流程图;

图4为声部口型表;

图5为韵部口型表;

图6为特殊符号规则表;

图7为数字转换规则表;

图8为口型分类表;

图9面部表情编码表;

图10为肢体动画编码说明表;

图11为特殊符号、动画与面部表情词典表;

图12为虚拟人物模型展示效果图。

具体实施方式

下面结合附图对本发明做进一步说明。

本发明以自然文本为输入,针对文本中不同字符类别转换为具有统一格式的混合控制语言脚本,并通过不同的解析方法得到不同的控制类别进行对应控制类别的效果展示。

本发明的混合控制语言脚本生成方法简单易懂,跨语言,且能控制虚拟人物模型自动播放口型动画,面部表情和肢体动画,增加虚拟人物模型的生动性,增强了人机交互的趣味性。本发明的混合控制语言脚本还具有复用性,同一份脚本运用在不同的虚拟人物模型上,能自动播放对应的动画内容,这能大大减少了动画师逐帧制作的工作量。本发明的人机智能交互控制平台的人物动画不是直接与用户进行交互的,而是根据本发明的混合控制语言脚本进行控制。

本发明的混合控制语言脚本采用的技术方案步骤如下。

步骤一,根据汉语的发音规律及发音时口型的相似性将声母及韵母按口型分类;

步骤二,制定动画词典、特殊符号词典和面部表情词典;

步骤三,对自然文本进行情感分析并生成对应的面部表情脚本;

步骤四,利用分词工具将自然文本进行分词;

步骤五,判断分词后的词语能否转换为对应的拼音文本;

步骤六,若词语能翻译拼音,则根据关键字匹配动画词典判断分词后的各词语中有无触发肢体动画的词语,若有则在已生成的拼音脚本中插入肢体动画触发编码,然后将该词语翻译为拼音并插入到拼音脚本,否则直接将该词语翻译为拼音并插入到拼音脚本;

步骤七,将不能翻译为拼音的词语匹配特殊符号词典,若匹配成功则在拼音文本中插入对应的编码,否则插入默认编码;

步骤八,将拼音脚本中的拼音翻译为对应的口型编码,形成口型脚本。

步骤九,将生成的口型脚本和面部表情脚本进行组合生成最终的混合控制语言脚本;

步骤十,将最终生成的混合控制语言脚本发送到人机智能交互控制平台,控制虚拟人物模型的口型动画、面部表情、肢体动画的播放。

接下来是对各步骤用到的关键性技术进行详细阐述。

(1)基于汉语发音规律的口型分类。

音节是汉语发音的基本单位,它由声母、韵母和声调三部分组成,其中声调主要控制的是高音的变化,在声母和韵母相同的情况下,声调对口型几乎没有影响,所以在设计汉语口型时,需要考虑的就是音节的声母和韵母部分。在汉语中,一共有21个声母,包括‘b’、‘p’、‘m’、‘p’等,36个韵母,包括‘a’、‘o’、‘e’等,在发音的过程中,口型一般都是从声母部分过渡到韵母部分,例如,对于“吧”这个字,它的拼音是“ba”,其中声母是‘b’,韵母是‘a’,那么它的口型就是从‘b’口型过渡到‘a’口型。由于不同声母和韵母之间的口型会有一定的相似性,可以对声母和韵母按照口型进行重新分类,分类结果如图4、图5所示。

声母分为两类声部口型,韵母分为四类韵部口型,各自的口型特点如下:

s_b口型:嘴唇半开,下嘴唇向外撮;

s_j口型:嘴唇微开;

y_a口型:嘴唇开度较大,呈半圆形;

y_o口型:嘴唇呈圆形,嘴部微微向前撮;

y_e口型:嘴唇半张,呈椭圆形;

y_i口型:嘴唇微微张开,嘴角向两边微微伸展。

“w”和“y”虽是声母,却被分类到了韵部口型中,这是由于在汉语音节中,存在一类特殊的音节——整体认读音节,它们在发音时,声母部分和韵母部分的口型几乎是一样的,例如“wu”和“ying”这两个音节。按照上表,“wu”对应的口型类型是“y_oy_o”,“ying”对应的口型编码是“y_iy_i”,声部和韵部的口型相同,所以在发音时,口型会保持一致。

对于一条完整的中文语句,生成口型的基础就是将音节根据对应的口型分类赋予相应的口型编码。转换过程基于声部口型表和韵部口型表。

(2)自然文本转拼音文本。由第一部分所讲,口型编码是根据汉语的发音规律进行分类的,因此将自然语言文本转为拼音文本是生成混合控制语言脚本的重要一步。将分词后的各词语利用汉语转拼音的工具将其转为拼音文本。但是对于一些特殊符号,如“+”、“%”等,在发音时有对应的音节,但是却不能直接转换为拼音,因此需要制定特殊符号转换规则来解决特殊符号的脚本问题。而对于数字也不能由工具直接转换为拼音文本,且数字对应多种发音,比如“2017”可以读作“liangqianlingyishiqi”也可以读作“erlingyiqi”。

因此为了将自然文本完全转为拼音文本,需要对特殊符号和数字进行处理,并统一转换规则。

特殊符号词典规则制定。根据特殊符号的发音规律分为如下四类,如图6。

数字规则制定。统一数字发音,转换规则如图7。对于数字的处理根据正则表达式匹配分词后词语类型并按照相应转换规则将数字转换为拼音。

(3)混合控制语言脚本格式设计。

脚本格式分为口型动画、面部表情、肢体动画三类种型。口型编码如第一部分所讲,面部表情编码和肢体动画编码设计规则:以“@@”为前缀的为面部表情编码,以“##”为前缀的为肢体动画编码,以“**”开头的编码不能进行组合播放。若要新增面部表情和肢体动画其对应编码只需要遵守前缀约定即可。合并三种类型的脚本编码序列即为混合控制语言脚本。

(4)词典设计。

根据第二部分制定的特殊符号转换规则设计特殊符号词典,根据第三部分制定的面部表情编码及肢体动作编码设计面部表情词典和动画词典。以上三个词典的设计格式为“关键词=编码”,以txt格式进行存储。若要拓展词典内容,只需按照词典设计格式进行添加内容即可。

(5)混合控制语言脚本生成流程。

根据第二部分制定的数字转拼音的规则及第四部分设计的特殊符号词典和动画词典和面部表情词典生成混合控制语言脚本。生成流程图如图2所示。

首先将自然文本进行并行处理,运用中文分词工具将自然文本进行分词和对自然文本进行情感分析。将自然文本进行分词后得到词语列表,循环词语列表,将获得的词语进行关键词匹配,首先判断该词语能否被转换为拼音,若能转换为拼音则将该词语根据关键字判断,若能匹配动画词典,则在脚本文件中插入肢体动画编码,然后将该词语转为拼音,若不能匹配动画词典则直接将该词语转换为拼音;若该词语不能转换为拼音,则匹配特殊符号词典,若该词语匹配特殊符号词典成功则在脚本文件中插入对应的格式编码,若匹配失败则在脚本文件中插入默认的格式编码。然后将生成的拼音脚本中的拼音翻译为对应的口型编码生成混合控制语言脚本。自然文本进行情感分析后可获得文本情感得分,根据最高得分匹配面部表情词典里的编码并在脚本文件头部插入编码,获取最终的混合控制语言脚本。

(6)交互控制平台构建。

以游戏引擎作为人机智能交互控制平台,创建人物场景,导入创建的人物模型及相应的人物模型的面部表情动画及肢体动画模型。根据混合控制语言脚本格式使用代码实现脚本到动画场景的转化。流程图见如图3。

首先交互平台实时检测是否有混合控制语言脚本的输入,如果没有,系统中的人物循环播放“平常”动画,如果有混合控制语言脚本输入,就将新输入的脚本内容存入到一个队列里,人物模型实时访问这个队列并播放对应的口型动画、面部表情、肢体动画。

首先根据发明内容第一部分所讲的声部口型表和韵部口型表为每一种口型类别进行口型编码,如图8,

根据第三部分混合控制语言脚本格式设计所讲,创建四个面部表情“喜怒哀乐”及其对应的面部表情编码,如图9,根据人机智能交互的基本场景设计了9组肢体动画,这9组肢体动画编码,动画描述,触发条件如图10。

然后根据规则制定的各编码创建相应的词典,分别是动画词典,特殊符号词典,面部表情词典,以“关键词=编码”的形式存储为txt格式。

之后进行文本转换工作。以“你好,我是小俑,今天很高兴认识你,今年西安电子科技大学已经86岁了!”为自然文本,进行分词后得到的文本是:“你好/l,,/w,我/r,是/v,小/a,俑/ng,,/w,今天/t,很/d,高兴/a,认识/v,你/r,,/w,今年/t,西安电子科技大学/nt,已经/d,86/m,岁/q,了/ul,!/w”然后根据关键词匹配动画词典,发现“你好”这个词语匹配了“##hello”这个动画编码,将其插入脚本文件,并将你好翻译为拼音,目前脚本文件为“##hellonihao”,之后取到“,”逗号在动画词典没有对应编码,并且不能转换为拼音,匹配特殊词典关键词寻找到有“,”逗号对应的格式编码,因此在脚本文件中插入“**”,此时脚本文件内容为“##hellonihao**”同理,将之后的词语和特殊符号进行转换。在遇到“86”这个词语时,首先匹配动画词典,没有对应的动画编码,因此进行拼音转换,根据正则表达式判断“86”是数字且是整数类型,因此更加数字的转换规则将“86”翻译为“bashiliu”并插入脚本文件。最终形成的拼音脚本为“##hellonihao**woshixiaoyong**jintianhengaoxingrenshini**jinnianxiandianzikejidaxueyijingbashiliusuile******end”。然后将获得的拼音脚本按照声母韵母的口型分类转换为对应的口型编码。最后,根据自然文本的情感分析结果得到该文本的情感为“乐”,匹配面部表情词典并将“@@laugh”编码插入脚本的头部,生成最终的混合控制语言脚本。最终混合控制语言脚本内容为“@@laugh##hellomouth_1mouth_6mouth_1mouth_3**mouth_4mouth_2mouth_6mouth_2mouth_3mouth_6mouth_4**mouth_2mouth_6mouth_1mouth_3mouth_1mouth_5mouth_1mouth_3mouth_2mouth_6mouth_2mouth_5mouth_2mouth_6mouth_1mouth_6**mouth_2mouth_6mouth_1mouth_3mouth_2mouth_6mouth_3mouth_1mouth_3mouth_2mouth_6mouth_1mouth_5mouth_2mouth_6mouth_1mouth_3mouth_2mouth_6mouth_2mouth_6mouth_1mouth_3mouth_2mouth_6mouth_1mouth_4mouth_2mouth_4mouth_1mouth_5******end”。

最后将生成的控制语言脚本加载到引擎上对虚拟人物模型进行控制,图12表示的是以“大家好,我是小俑……”自然文本前半段控制的虚拟人物模型展示效果。

图1首先获取到分词后的词语,然后根据正则表达式判断该数字的类型,根据数字转换规则转换为对应的拼音。

图2首先将自然文本进行并行处理,运用中文分词工具将自然文本进行分词和对自然文本进行情感分析。将自然文本进行分词后得到词语列表,循环词语列表,将获得的词语进行关键词匹配,首先判断该词语能否被转换为拼音,若能转换为拼音则将该词语根据关键字判断,若能匹配动画词典,则在脚本文件中插入肢体动画编码,然后将该词语转为拼音,若不能匹配动画词典则直接将该词语转换为拼音;若该词语不能转换为拼音,则匹配特殊符号词典,若该词语匹配特殊符号词典成功则在脚本文件中插入对应的格式编码,若匹配失败则在脚本文件中插入默认的格式编码。然后将生成的拼音脚本中的拼音翻译为对应的口型编码生成混合控制语言脚本。自然文本进行情感分析后可获得文本情感得分,根据最高得分匹配面部表情词典里的编码并在脚本文件头部插入编码,获取最终的混合控制语言脚本。

图3首先交互平台实时检测是否有混合控制语言脚本的输入,如果没有,系统中的人物循环播放“平常”动画,如果有混合控制语言脚本输入,就将新输入的脚本内容存入到一个队列里,人物模型实时访问这个队列并播放对应的口型动画、面部表情、肢体动画。

上描述了本发明的基本原理和主要特征,本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内,发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1