掌桥专利:专业的专利平台
掌桥专利
首页

一种服务机器人的语音交互方法和装置

文献发布时间:2023-06-19 10:24:22


一种服务机器人的语音交互方法和装置

技术领域

本申请涉及语音交互技术领域,具体涉及一种服务机器人的语音交互方法和装置。

背景技术

按照国际机器人联盟的分类,机器人一般分为工业机器人和服务机器人,工业机器人一般用于制造业生产环境,而服机器人一般用于生活等非制造业环境。作为全球机器人行业重要的细分领域,服务机器人技术近年来取得了长足的进步和发展,在家庭、教育、公共服务、医疗等领域实现了一系列突破性应用。

随着物联网、云计算、移动互联网为代表的新一代信息技术的发展,智慧城市、智慧社区等概念逐渐变为现实,社会的发展也在向更加智能化、数字化的方向稳步迈进。在这样的时代背景下,智能服务机器人与智慧城市、智慧社区等概念非常契合,逐渐应用于更广泛的场景。

相关技术中,在社区、商场等公共场所也出现了一些基于语音交互的智能服务机器人,公共场所的一个特点是具有开放性,服务机器人的周围通常会有很多人,因而容易接收到不同来源的语音信号。当一个用户正在与服务机器人进行语音交互时,服务机器人很有可能接收到附近的路人的讲话声音,从而打乱用户的交互操作,影响语音交互的服务体验,给用户带来困扰。

发明内容

为至少在一定程度上克服相关技术中存在的问题,本申请提供一种服务机器人的语音交互方法和装置。

根据本申请实施例的第一方面,提供一种服务机器人的语音交互方法,包括:

对获取的语音信号进行预处理;

如果在获取的语音信号中识别出唤醒词,则提取该语音信号的声纹特征,并将当前声纹特征锁定为该语音信号的声纹特征;

在锁定的持续期间内,对获取的语音信号进行特征比对,保留与当前声纹特征一致的语音信号,丢弃与当前声纹特征不一致的语音信号;

根据保留的语音信号进行相应的语音交互。

进一步地,所述持续期间为预设值;所述方法还包括:

在锁定的持续期间内,如果接收到与当前声纹特征一致的语音信号,则将持续期间重置;

持续期间结束时,解除当前声纹特征的锁定。

进一步地,所述对获取的语音信号进行预处理,包括:

将获取的语音信号进行增强处理;

对增强后的语音信号进行语义识别。

进一步地,所述将获取的语音信号进行增强处理,包括:

滤除语音信号的工频干扰,并增强语音信号的高频部分,得到第一阶段信号;

对第一阶段信号进行端点检测,根据检测结果估计噪声谱;

将第一阶段信号减去估计噪声谱,得到增强后的语音信号。

进一步地,所述对第一阶段信号进行端点检测,包括:

将第一阶段信号进行分帧加窗,得到多帧第二阶段信号;

计算每一帧第二阶段信号的平均能量和过零率,所述平均能量是根据信号的功率谱密度计算得到的;

根据平均能量和过零率分离出噪音,根据分离的噪音估计噪声谱。

进一步地,所述提取该语音信号的声纹特征,包括:

计算语音信号的Mel频率倒谱系数、一阶差分Mel倒谱系数;

根据Mel频率倒谱系数和一阶差分Mel倒谱系数生成一个特征向量,将该特征向量作为语音信号的声纹特征。

进一步地,所述根据Mel频率倒谱系数和一阶差分Mel倒谱系数生成一个特征向量,包括:

采用主元分析算法从Mel频率倒谱系数和一阶差分Mel倒谱系数中抽取一部分特征参数;

将抽取的特征参数与预设的权重函数相乘,得到加权特征参数;

将加权特征参数组成一个多维向量。

进一步地,所述对获取的语音信号进行特征比对,包括:

提取语音信号的声纹特征,得到待比对特征向量;

计算待比对特征向量与当前声纹特征的特征向量之间的失真度;

如果失真度小于预设阈值,则语音信号与当前声纹特征一致;否则不一致。

根据本申请实施例的第二方面,提供一种服务机器人的语音交互装置,包括:

预处理模块,用于对获取的语音信号进行预处理;

特征提取模块,用于如果在获取的语音信号中识别出唤醒词,则提取该语音信号的声纹特征,并将当前声纹特征锁定为该语音信号的声纹特征;

特征比对模块,用于在锁定的持续期间内,对获取的语音信号进行特征比对,保留与当前声纹特征一致的语音信号,丢弃与当前声纹特征不一致的语音信号;

交互模块,用于根据保留的语音信号进行相应的语音交互。

根据本申请实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上任意一种实施例所述方法的操作步骤。

本申请的实施例提供的技术方案具备以下有益效果:

本方案在接收到唤醒词之后,根据保护唤醒词的语音信号的声纹特征,设定一个持续期间将声纹特征进行锁定;在持续期间内,只有同一个人的语音指令才会被保留并进行交互,避免其他人插队的情况出现,能够较好地适用于多人同时在场的应用场景。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1是根据一示例性实施例示出的一种服务机器人的语音交互方法的流程图。

图2是根据一示例性实施例示出的一种服务机器人的语音交互装置的电路框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的方法和装置的例子。

图1是根据一示例性实施例示出的一种服务机器人的语音交互方法的流程图。该方法可以包括以下步骤:

步骤S1:对获取的语音信号进行预处理;

步骤S2:如果在获取的语音信号中识别出唤醒词,则提取该语音信号的声纹特征,并将当前声纹特征锁定为该语音信号的声纹特征;

步骤S3:在锁定的持续期间内,对获取的语音信号进行特征比对,保留与当前声纹特征一致的语音信号,丢弃与当前声纹特征不一致的语音信号;

步骤S4:根据保留的语音信号进行相应的语音交互。

本方案在接收到唤醒词之后,根据保护唤醒词的语音信号的声纹特征,设定一个持续期间将声纹特征进行锁定;在持续期间内,只有同一个人的语音指令才会被保留并进行交互,避免其他人插队的情况出现,能够较好地适用于多人同时在场的应用场景。

因而,本申请的方案能够很好地适应社区、商场等公共场所,避免附近的路人讲话声音影响到正在进行语音交互体验的用户。采用本方案的语音交互服务机器人,能够更好地应用于智慧城市、智慧社区的建设中。

一些实施例中,所述持续期间为预设值;比如,持续期间可以是10秒、15秒、30秒等,可以设定为其它合理的数值。相应地,所述方法还包括:

在锁定的持续期间内,如果接收到与当前声纹特征一致的语音信号,则将持续期间重置;

持续期间结束时,解除当前声纹特征的锁定。

本方案的持续期间可以刷新,只要在持续期间内有下一次语音输入,则持续期间重新开始计算,这样就使一个用户能够连续进行交互。只有当前一个用户长时间(超过持续期间即可)未输入语音信号,才能使下一个用户进行语音交互。

一些实施例中,所述对获取的语音信号进行预处理,包括:

将获取的语音信号进行增强处理;

对增强后的语音信号进行语义识别。

在步骤S1的预处理过程中,无需对语音进行声纹识别,仅进行常规的语义识别即可。只有识别到唤醒词之后,才需要做进一步的声纹特征提取。

一些实施例中,所述将获取的语音信号进行增强处理,包括:

滤除语音信号的工频干扰,并增强语音信号的高频部分,得到第一阶段信号;

对第一阶段信号进行端点检测,根据检测结果估计噪声谱;

将第一阶段信号减去估计噪声谱,得到增强后的语音信号。

由于在人数多的场景下,或者比较随意公共场所中,其他人的语音、各种其它噪声都会被机器人所接收,因而预处理时需要先进行增强处理,使后续的处理更准确。

首先要滤除低频干扰,特别是50HZ或者60HZ的工频干扰;同时对语音信号的高频部分加以提升,因为语音的有用信息都分布在高频部分。然后还需要进一步滤除其它噪声,比如周围的脚步声、笑声等环境噪声。

语音信号端点检测的主要目的就在于,从一段给定的信号中精准地确定语音信号的起始点和终末点,方便后续找出语音信号中的噪声。

一些实施例中,所述对第一阶段信号进行端点检测,包括:

将第一阶段信号进行分帧加窗,得到多帧第二阶段信号;

计算每一帧第二阶段信号的平均能量和过零率,所述平均能量是根据信号的功率谱密度计算得到的;

根据平均能量和过零率分离出噪音,根据分离的噪音估计噪声谱。

语音信号是一种具有时变特征的非平稳信号,但是通常在一个较短的时间范围内(10ms-30ms),可以将其当作是一个基本特性保持不变的准稳态过程来分析。当对语音信号进行分帧操作时,一般每秒取的帧数在33-100这个范围内,但是具体取值可以视情况而定。分帧可以使用连续分段方法,但是为使得帧之间平滑过渡以及保持连续性,一般都用交叠分段的方法,也就是前一帧和后一帧有一部分是交叠的。

本方案根据给定语音信号的短时能量以及过零率进行清音和噪音的区分判别。平均能量是一帧信号的平均能量密度,通过功率谱密度计算得到。过零率是一个估计正弦频率的适当方法,过零率就是一帧信号当中波形穿越零电平的次数。

本方案给平均能量和过零率分别设置一个筛选范围,这个筛选范围可以通过具体实验进行确定。分离噪音时,一帧信号的平均能量和过零率必须都处于设定的筛选范围内,才不认为是噪声;只要平均能量和过零率中有一个指标超出设定的筛选范围,即认为这一帧信号是噪声。

一些实施例中,所述提取该语音信号的声纹特征,包括:

计算语音信号的Mel频率倒谱系数、一阶差分Mel倒谱系数;

根据Mel频率倒谱系数和一阶差分Mel倒谱系数生成一个特征向量,将该特征向量作为语音信号的声纹特征。

Mel频率倒谱系数可以反映出每一帧语音信号的特征,但其只能反映语音特征参数的静态特性,但却无描述帧之间的变化情况。一阶差分Mel倒谱系数能够描述语音信号帧间瞬时变化的动态特征。本方案将二者结合,得到更好的识别效果。

一些实施例中,所述根据Mel频率倒谱系数和一阶差分Mel倒谱系数生成一个特征向量,包括:

采用主元分析算法从Mel频率倒谱系数和一阶差分Mel倒谱系数中抽取一部分特征参数;

将抽取的特征参数与预设的权重函数相乘,得到加权特征参数;

将加权特征参数组成一个多维向量。

Mel频率倒谱系数和一阶差分Mel倒谱系数中的数据很多,如果直接组成一个向量,该向量的维数过高。维数过高不仅不会提高识别率,还会造成维数灾难。为了有效地对数据进行分析,提高识别系统性能,同时减少计算时间,本方案采用主元分析算法抽取一部分数据,以降低特征向量的维数。

Mel频率倒谱系数和一阶差分Mel倒谱系数中,不同分量对声纹特征的表征能力是不同的,为使所得特征参数更具更具区分性,可以在特征分量内部采用加权。其中,权重函数是预先通过对实际语音数据的分析进行总结而获得的。

一些实施例中,所述对获取的语音信号进行特征比对,包括:

提取语音信号的声纹特征,得到待比对特征向量;

计算待比对特征向量与当前声纹特征的特征向量之间的失真度;

如果失真度小于预设阈值,则语音信号与当前声纹特征一致;否则不一致。

更具体地,失真度可以是通过VQ(Vector Quantization,矢量量化)聚类方法计算得到的。其它的实施例中,也可以是其它能够衡量两个向量之间相似度的指标。

应当理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

图2是根据一示例性实施例示出的一种服务机器人的语音交互装置的电路框图。参照图2,该装置包括:预处理模块201、特征提取模块202、特征比对模块203、交互模块204。

预处理模块201用于对获取的语音信号进行预处理。

特征提取模块202用于如果在获取的语音信号中识别出唤醒词,则提取该语音信号的声纹特征,并将当前声纹特征锁定为该语音信号的声纹特征。

特征比对模块203用于在锁定的持续期间内,对获取的语音信号进行特征比对,保留与当前声纹特征一致的语音信号,丢弃与当前声纹特征不一致的语音信号。

交互模块204用于根据保留的语音信号进行相应的语音交互。

关于上述实施例中的装置,其中各个模块执行操作的具体步骤已经在有关该方法的实施例中进行了详细描述,此处不再详细阐述说明。上述语音交互装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

本申请的实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现一种服务机器人的语音交互方法:对获取的语音信号进行预处理;如果在获取的语音信号中识别出唤醒词,则提取该语音信号的声纹特征,并将当前声纹特征锁定为该语音信号的声纹特征;在锁定的持续期间内,对获取的语音信号进行特征比对,保留与当前声纹特征一致的语音信号,丢弃与当前声纹特征不一致的语音信号;根据保留的语音信号进行相应的语音交互。

可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。

需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

相关技术
  • 一种服务机器人的语音交互方法和装置
  • 一种基于ROS的服务机器人及其语音交互导航方法
技术分类

06120112530140