聊天机器人回声消除方法及装置制造方法及图纸

技术编号:17305788 阅读:16 留言:0更新日期:2018-02-19 01:07
本发明专利技术提供一种聊天机器人回声消除方法及装置,其中,方法包括,包括,场景确定步骤,确定聊天场景;函数确定步骤,确定出与聊天场景对应的脉冲响应函数;回声估计步骤,根据脉冲响应函数确定机器人估计回声;回声消除步骤,根据机器人拾取到的总信号,以及根据机器人估计回声,进行回声消除以确定用户实际输入的语音信号。本发明专利技术提供的聊天机器人回声消除方法及装置,根据聊天场景的不同确定对应的脉冲响应函数,继而估计出机器人的回声,最后,将机器人拾取到的总信号减去估计出的机器人回声,便可实现回声消除,继而实现确定用户实际输入的语音信号。

Echo cancellation method and device for chatting robot

The present invention provides a method and a device for eliminating echo, chat robot which method includes determining steps including the scene, determine the chat scene; function to determine the steps, determine the impulse response function and the corresponding chat scene; echo estimation step, based on the impulse response estimation of robot echo function; echo cancellation procedures, according to the total signal for the robot to pick up, and according to the estimation of robot echo, echo cancellation to determine the actual user input speech signal. The invention provides a chat robot echo cancellation method and device, according to the different chat scene determine the impulse response function of the corresponding, then estimate the robot echo, finally, the echo signal minus the total robot robot picked up to estimate, can be realized to eliminate the sound, then realize the actual user input speech signal is determined.

【技术实现步骤摘要】
聊天机器人回声消除方法及装置
本专利技术涉及计算机
,尤其涉及一种聊天机器人回声消除方法及装置。
技术介绍
人机对话交互应用(例如,聊天机器人)已经逐渐实现了商业化,越来越接近人们的日常工作和生活。目前,常用的人机对话交互技术往往会在机器人讲话(机器人通过语音输出对用户输入的回复)时关闭机器人拾音的功能,即机器人不会对此时用户输入的语音产生反应,即将机器人的麦克风与机器人其它部分的数据或命令传输设置为关闭状态。这样做的好处是防止机器人在自身说话的时候,既拾取到用户发音又同时拾取到了自身发出的声音。本质上来说,这种被误拾取的由机器人自身发出的声音可以称为“自噪声”,习惯上我们也称其为回声。但是,在实际使用过程中,用户在机器人说话时,通过语音打断机器人的讲话,是用户的客观需求之一。因此,需要设计一种拾音方案,保证机器人在自身讲话时,仍然可以准确地拾取用户的语音输入。
技术实现思路
本专利技术要解决的技术问题是提供一种聊天机器人回声消除方法及装置,以克服现有技术中,聊天机器人为了不误拾取到自身说话的声音,而强制性设定机器人说话时不拾取外界声音,导致机器人在说话时,用户不能通过语音打断机器人讲话的问题。为解决上述技术问题,本专利技术提供的技术方案为:一方面,本专利技术提供一种聊天机器人回声消除方法,包括,场景确定步骤,确定聊天场景;函数确定步骤,确定出与聊天场景对应的脉冲响应函数;回声估计步骤,根据脉冲响应函数确定机器人估计回声;回声消除步骤,根据机器人拾取到的总信号,以及根据机器人估计回声,进行回声消除以确定用户实际输入的语音信号。进一步地,确定出与聊天场景对应的脉冲响应函数,具体包括,从预先构建的映射器中确定出与聊天场景对应的超参数组的值;播放预置语音信号,以获取聊天场景下的机器人实际回声;根据预置语音信号和机器人实际回声,并结合超参数组的值,确定出与聊天场景对应的脉冲响应函数。进一步地,采用K-means方法或SVM方法构建映射器。进一步地,超参数组为{h(0),α,δ,M},其中,h(0)为零阶脉冲响应函数,α为步长,δ为补偿权值,M为脉冲响应函数的阶数。进一步地,根据预置语音信号和机器人实际回声,并结合超参数组的值,确定出与聊天场景对应的脉冲响应函数,具体包括,将预置语音信号,机器人实际回声,超参数组的值代入预先构建的迭代方程,且在迭代方程满足收敛条件时,获取聊天场景对应的脉冲响应函数。进一步地,确定出与聊天场景对应的脉冲响应函数,具体还包括,直接调用预存的与聊天场景对应的脉冲响应函数。进一步地,还包括,将当前场景信息和预存的场景图谱进行比对,以验证脉冲函数的有效性。进一步地,当前场景信息包括,场景位置,场景面积;场景图谱包括,场景名称,场景对应的脉冲响应函数,场景位置,场景面积,场景图。进一步地,确定聊天场景,具体包括,根据询问用户并捕获用户回复语音中的场景相关信息,分析摄像装置获取的场景图像,接收用户直接设定的场景模式中的一种或多种方式的组合确定聊天场景。另一方面,本专利技术还提供一种聊天机器人回声消除装置,包括,场景确定单元,用于确定聊天场景;函数确定单元,用于确定出与聊天场景对应的脉冲响应函数;回声估计单元,用于根据脉冲响应函数确定机器人估计回声;回声消除单元,用于根据机器人拾取到的总信号,以及根据机器人估计回声,进行回声消除以确定用户实际输入的语音信号。本专利技术提供的聊天机器人回声消除方法及装置,根据聊天场景的不同确定对应的脉冲响应函数,继而估计出机器人的回声,最后,将机器人拾取到的总信号减去估计出的机器人回声,便可实现回声消除,继而实现确定用户实际输入的语音信号,可以克服现有技术中,聊天机器人为了不误拾取到自身说话的声音,而强制性设定机器人说话时不拾取外界声音,导致机器人在说话时,用户不能通过语音打断机器人讲话的问题。附图说明图1是本专利技术实施例提供的聊天机器人回声消除方法的流程图;图2是本专利技术实施例提供的聊天机器人回声消除装置的框图。具体实施方式下面通过具体的实施例进一步说明本专利技术,但是,应当理解为,这些实施例仅仅是用于更详细具体地说明之用,而不应理解为用于以任何形式限制本专利技术。实施例一结合图1,本实施例提供的聊天机器人回声消除方法,包括,场景确定步骤S1,确定聊天场景;函数确定步骤S2,确定出与聊天场景对应的脉冲响应函数;回声估计步骤S3,根据脉冲响应函数确定机器人估计回声;回声消除步骤S4,根据机器人拾取到的总信号,以及根据机器人估计回声,进行回声消除以确定用户实际输入的语音信号。本专利技术实施例提供的聊天机器人回声消除方法,根据聊天场景的不同确定对应的脉冲响应函数,继而估计出机器人的回声,最后,将机器人拾取到的总信号减去估计出的机器人回声,便可实现回声消除,继而实现确定用户实际输入的语音信号,可以克服现有技术中,聊天机器人为了不误拾取到自身说话的声音,而强制性设定机器人说话时不拾取外界声音,导致机器人在说话时,用户不能通过语音打断机器人讲话的问题。优选地,确定出与聊天场景对应的脉冲响应函数,具体包括,从预先构建的映射器中确定出与聊天场景对应的超参数组的值;播放预置语音信号,以获取聊天场景下的机器人实际回声;根据预置语音信号和机器人实际回声,并结合超参数组的值,确定出与聊天场景对应的脉冲响应函数。具体地,本实施例中,将预置语音信号,机器人实际回声,超参数组的值代入预先构建的迭代方程,且在迭代方程满足收敛条件时,获取聊天场景对应的脉冲响应函数。本实施例中,超参数组为{h(0),α,δ,M},其中,h(0)为零阶脉冲响应函数,α为步长,δ为补偿权值,M为脉冲响应函数的阶数。更加具体地,迭代方程为且收敛条件为其中,h(n+1)为n+1阶脉冲响应函数,h(n)为n阶脉冲响应函数,x(n)为机器人自身输出信号,y(n)为机器人实际回声,h(m)为m阶脉冲响应函数,e为机器人实际回声与机器人估计回声的误差,r为相似度系数,y′(n)为机器人估计回声,TH1和TH2为接近于零的正实数。需要说明的是,脉冲响应函数h(n):实际上是一组数字(h0,h1,...,hn),表示的是当前环境对信号的反射作用。且对于信号x(n),其作用于当前环境后的反射信号y(n)可表示为y(n)=h0x(n)+h1x(n-1)+...+hNx(n-N),其中,N是脉冲响应函数的阶数。本实施例中,对于机器人自身输出信号x(n),若要获得其回声,则要进行回声估计,且所估计出的回声为y′(n)=h0x(n)+h1x(n-1)+...+hNx(n-N),也就是说,想要估计回声y′(n),就需要知道脉冲响应函数h(n)。具体地,对于估计回声y′(n)和实际回声y(n),其误差可以表示为:e(n)=y(n)-y′(n)。当将h(0)作为已知参数初始化,本专利技术设计根据h(0)估计脉冲响应函数h(n+1)的方法为:其中,h(0)、α、δ、M为超参数,α代表步长可以控制脉冲响应函数收敛的速度和脉冲响应函数的稳定性,δ用于补偿权值(防止由于||x(n)||2过小导致的权值过大),M表示脉冲响应函数的阶数。进一步具体地,本实施例中的迭代方程,用于计算估计回声y′(n),因此,当估计回声y′(n)和实际回声y(n)误差足够小,且估计回声y′(n)和实际回声本文档来自技高网...
聊天机器人回声消除方法及装置

【技术保护点】
一种聊天机器人回声消除方法,其特征在于,包括,场景确定步骤,确定聊天场景;函数确定步骤,确定出与所述聊天场景对应的脉冲响应函数;回声估计步骤,根据所述脉冲响应函数确定机器人估计回声;回声消除步骤,根据机器人拾取到的总信号,以及根据所述机器人估计回声,进行回声消除以确定用户实际输入的语音信号。

【技术特征摘要】
1.一种聊天机器人回声消除方法,其特征在于,包括,场景确定步骤,确定聊天场景;函数确定步骤,确定出与所述聊天场景对应的脉冲响应函数;回声估计步骤,根据所述脉冲响应函数确定机器人估计回声;回声消除步骤,根据机器人拾取到的总信号,以及根据所述机器人估计回声,进行回声消除以确定用户实际输入的语音信号。2.根据权利要求1的聊天机器人回声消除方法,其特征在于,所述确定出与所述聊天场景对应的脉冲响应函数,具体包括,从预先构建的映射器中确定出与所述聊天场景对应的超参数组的值;播放预置语音信号,以获取所述聊天场景下的机器人实际回声;根据所述预置语音信号和所述机器人实际回声,并结合所述超参数组的值,确定出与所述聊天场景对应的脉冲响应函数。3.根据权利要求2的聊天机器人回声消除方法,其特征在于,采用K-means方法或SVM方法构建映射器。4.根据权利要求2的聊天机器人回声消除方法,其特征在于,所述超参数组为{h(0),α,δ,M},其中,h(0)为零阶脉冲响应函数,α为步长,δ为补偿权值,M为脉冲响应函数的阶数。5.根据权利要求2的聊天机器人回声消除方法,其特征在于,所述根据所述预置语音信号和所述机器人实际回声,并结合所述超参数组的值,确定出与所述聊天场景对应的脉冲响应函数,具体包括,将所述预置语音信号,所述机器人实际...

【专利技术属性】
技术研发人员:宋亚楠程谦邱楠刘海峡邹创华
申请(专利权)人:深圳狗尾草智能科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1