具体实施方式
语音增强技术的主要目的是:从带噪语音信号中提取尽可能纯净的原始语 音。然而,由于干扰通常都是随机的,从带噪语音中提取完全纯净的语音几乎 是不可能。在此情况下,语音增强的主要目的是:通过对带噪语音进行处理, 以消除背景噪声,改善语音质量,提高语音的清晰度、可懂度和舒适度。下面 将结合本发明中的附图,对本发明中的技术方案进行清晰、完整的描述。显 然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本 发明中的实施例,本领域普通技术人员在没有创造性劳动的前提下所获得的所 有其它实施例,都属于本发明保护的范围。
实施例1
图1是本发明实施例之波束形成的自适应语音处理方法的步骤流程图。可 以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。下面以 移动终端为执行主体进行示例性描述。具体如下。
步骤S100,获取N路语音信号。
所述N路语音信号分别通过N个语音采集单元获取。这些语音采集单元两 两之间具有一定间距。在一优选实施例中,这些语音采集单元可以一定规律分 布,比如被均匀分布在同一圆周上。在本实施例中,这些语音采集单元可以是 麦克风,或其它语音接收元件。
步骤S102,根据所述N路语音信号两两组合得到
个语音信号组合,对所 述
个语音信号组合执行波束形成操作以对应得到
路波束。
所述波束形成操作包括延时相减。假设两个语音采集单元之间的间距 为d,且远场声源与这两个语音采集单元之间的夹角为θ,将其中一个语音采集 单元接收到的语音信号减去另一个语音采集单元接收到的并且延时τ的语音信 号,变换到频域处理之后,可以得到如图2所示的一个心形波束。在一优选实 施例中,所述波束形成操作包括低频段延时相加和高频段延时相减。该优选实 施例可以提升低频段的波束效果,进一步提高波束精度。所谓高频段和低频段 可以由用户设定,比如以550Hz为高频段和低频段的分界线。
在步骤S102中得到
路波束,以这
路波束为基础通过虚拟波束拓展, 定义
路虚拟波束。后文将通过三路波束定义三路虚拟波束为例进行说明,在 此不赘述。
步骤S106,获取所述
路波束和
路虚拟波束中每路波束对应的信噪比(SIGNAL-NOISE RATIO,SNR)。
步骤S108,根据所述每路波束对应的信噪比,确定目标语音的方向。
示例性的,当所述
路波束和
路虚拟波束中的第M路波束所对应的信 噪比最高时,则确定该第M路波束的指向为所述目标语音的方向,即目标音源 的方位所在。
上述实施例所提供的波束形成的自适应语音处理方法,即使目标音源(说 话人)在移动状态中,也可以对该说话人方位实施快速精确锁定和追踪。可以 理解,在精确锁定和追踪之后,可以进一步实施语音增强操作以输出目标语音 信号。
需要说明的是,为得到
路波束,做为步骤S102~S104的替换步骤,还 可以通过以下步骤:根据所述N路语音信号两两组合得到
个语音信号组合, 对所述
个语音信号组合执行波束形成操作以对应得到
路波束,其中,
个语音信号组合中的每个语音信号组合均可以通过延时相减形成2路波束。可 以理解,相较通过步骤S102~S104得到
路波束(即
路波束和
路虚拟波 束),步骤“对所述
个语音信号组合执行延时相减操作以对应得到
路波 束”需要更多的计算量。
实施例2
如图3所示,为了使得本发明更加清晰明白,本实施例介绍当移动终端包 括或连接有三个语音采集单元时,如何利用这三个语音采集单元获取的三路语 音信号来确定目标音源的方位。
步骤S200,获取第一语音信号、第二语音信号和第三语音信号。
通过第一语音采集单元采集第一语音信号,通过第二语音采集单元采集第 二语音信号,通过第三语音采集单元采集第三语音信号。第一语音采集单元、 第二语音采集单元和第三语音采集单元之间呈等边三角形排布。当然,也可以 是其它排布方式。
步骤S202,根据所述第一语音信号和第二语音信号进行波束形成操作以得 到第一波束A1,根据所述第二语音信号和第三语音信号进行波束形成操作以得 到第二波束A2,及根据所述第三语音信号和第一语音信号进行波束形成操作以 得到第三波束A3。所述波束形成操作包括延时相减,或者低频段延时相加和高 频段延时相减。
如图4所示,这三路波束A1~A3实现了平面360°的全覆盖。其中,第一波束 指向60°方向,第二波束指向180°方向,第三波束指向300°方向。
步骤S204,根据所述第一波束、所述第二波束和所述第三波束定义三路虚 拟波束,所述三路虚拟波束包括第四波束、第五波束和第六波束。所示三路虚 拟波束可以通过如下组合得到:
其中,B1代表第四波束,B2代表第五波束,B3代表第六波束。如图5所 示,第四波束B1指向120°方向,第五波束B2指向240°方向,第六波束B3指向0° 方向。可以理解,由三路波束扩展到六路波束,有效地提高了对目标音源方位 和噪音源方位的锁定和追踪精度。
步骤S206,获取所述第一波束至所述第六波束(A1~A3和B1~B3)中每路 波束对应的信噪比。
在一实施例中,如图6所示,步骤S206包括步骤S206A~S206D。步 骤S206A,根据预先划分的多个频率子带,将每路波束捕获到的语音信号分别 分解成对应的多个频率子带信号。步骤S206B,计算所述每路波束中对应的多 个频率子带信号之信号能量(如,声压级)。步骤S206C,根据所述每路波束 中对应的多个频率子带信号之信号能量,计算所述每路波束中对应的多个频率 子带的多个子带信噪比。步骤S206D,根据所述每路波束中对应的多个频率子 带的多个子带信噪比,计算所述每路波束对应的信噪比。
以获取第一波束A1对应的信噪比为例:可以预先划分128个频率子带,将 第一波束A1捕获到的语音信号分解为与所述128个频率子带对应的128个频率子 带信号;然后计算这128个频率子带信号的信号能量;根据这128个频率子带信 号的信号能量,计算这128个频率子带内的子带信噪比;最后,根据这128个频 率子带内的子带信噪比,综合计算得到第一波束A1对应的信噪比。可以理解, 其它波束可以上述操作得到各自对应的信噪比。
步骤S208,根据所述每路波束对应的信噪比,确定目标语音的方向。
具体的,可以将最大信噪比所对应的第一目标波束的指向确定为所述目标 语音的方向,将确定最小信噪比所对应的第二目标波束的指向确定为噪音的方 向。可以理解,根据这两个指向,可以通过波束赋形和波束零陷,增强目标语 音和抑制噪音。
上述实施例所提供的语音处理方法,即使目标音源(说话人)在移动状态 中,也可以对该说话人方位实施快速精确锁定和追踪。可以理解,在对精确锁 定和追踪之后,可以进一步实施语音增强操作以输出目标语音信号。
实施例3
如图7所示,本实施例3在实施例2的步骤S208之后,还进一步包括语音增 强步骤。具体如下。
步骤S210,根据每路波束(A1、A2、A3、B1、B2、B3)对应的信噪比确 定每路波束所对应的权重。其中,每路波束所对应的权重通过以下公式得到:
a1=SNR1/(SNR1+SNR2+SNR3+SNR4+SNR5+SNR6);
a2=SNR2/(SNR1+SNR2+SNR3+SNR4+SNR5+SNR6);
a3=SNR3/(SNR1+SNR2+SNR3+SNR4+SNR5+SNR6);
a4=SNR4/(SNR1+SNR2+SNR3+SNR4+SNR5+SNR6);
a5=SNR5/(SNR1+SNR2+SNR3+SNR4+SNR5+SNR6);
a6=SNR6/(SNR1+SNR2+SNR3+SNR4+SNR5+SNR6);
其中,当SNR1~SNR6中的某个值为负数时,则用零替换这个负数,以用 于上述权重的计算公式中;
其中,a1代表第一波束A1的权重,a2代表第二波束A2的权重,a3代表第三 波束A3的权重,a4代表第四波束B1的权重,a5代表第五波束B2的权重,a6代表 第六波束B3的权重,SNR1代表第一波束A1捕获的语音信号的信噪比(简称, 第一波束A1对应的信噪比),SNR2代表第二波束A2对应的信噪比,SNR3代表 第三波束A3对应的信噪比,SNR4代表第四波束B1对应的信噪比,SNR5代表第 五波束B2对应的信噪比,SNR6代表第六波束B3对应的信噪比。
步骤S212,根据每路波束对应的权重(a1~a6),对所述第一波束A1捕获 到的语音信号、所述第二波束A2捕获到的语音信号、所述第三波束A3捕获到 的语音信号、所述第四波束B1捕获到的语音信号、所述第五波束B2捕获到的语 音信号和所述第六波束B3捕获到的语音信号进行加权叠加操作,以输出目标语 音信号。
上述实施例所提供的语音处理方法,可以有效增强目标语音和抑制噪音, 同时由于采用基于信噪比的动态加权方式,使得增强目标语音方位的变化能够 比较平缓,整体上给人带来相对更为愉悦的听觉体验。
一方面,在现有技术中,当说话人的方向出现变化的时候,会从当前波束 跳跃到下一个波束以采集目标语音,这样波束切换容易导致出现杂音现象。而 本实施例,采用加权方式,能够快速地跟踪说话人的声音方位变化的同时,通 过调整各个波束的权重,对各个波束捕获的语音信号进行叠加以输出目标语音 信号,在保证增强目标语音信号的同时,避免了现有技术中由于波束切换而出 现的杂音现象,整体上给人带来相对更为愉悦的听觉体验。而且不需要像常规 的波束形成算法一样,需要加入一个声源锁定模块,因而更加稳定,波束切换 的渐变性也更加平滑。
另一方面,本实施例可以同时获取不同方向上的多人讲话(对每个人所在 方位施以较高权重),不会因为增强某一人的讲话而失去另一人的讲话。
实施例4
当采用语音采集单元组合形成波束时,各个语音采集单元的灵敏度存在差 异,为了形成指向性比较稳定的波束,有必要对语音采集单元进行自适应校 准。
因此,如图8所示,在执行波束形成操作之前,或在预设时间点,对语音 采集单元进行自适应校准。以实施例2或实施例3中的三个语音采集单元为例。
步骤S302,获取所述三个语音采集单元中每个语音采集单元在各个频段内 的能量,并监测所述每个语音采集单元在预设时段内的波束指向稳定性;
步骤S304,将所述每个语音采集单元在各个频段内的能量进行逐频段比 较。
步骤S306,根据比较结果执行增益补偿操作,以使得所述每个语音采集单 元的频率响应特征一致。
例如,第一语音采集单元在A频段的能量是E1,第二语音采集单元在A频 段的能量是E2,如果E1小于E2,则对第一语音采集单元A频段进行增益补偿, 使得第一语音采集单元A频段的能量上升至E2。
请参阅图9,为本发明实施例之移动终端2的运行环境示意图。在本实施例 中,该移动终端2内置或连接有个至少三个语音采集单元(未图示)。
请参阅图10,为本发明实施例之移动终端2的程序模块图。该移动终端2可 以是电话、会议终端等。该移动终端2可以被分割成一个或多个模块,所述一 个或者多个模块均被存储于存储器10中,并由一个或多个处理器(本实施例中 为一个处理器20)所执行,以完成本发明。
所述存储器10至少包括一种类型的可读存储介质,所述可读存储介质包括 闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问 存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电 可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性 存储器、磁盘、光盘等。所述处理器20可以是中央处理器(CentralProcessing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片等。
所称处理器20可以是中央处理单元(Central Processing Unit,CPU),还可以 是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集 成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体 管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可 以是任何常规的处理器等,所述处理器是所述移动终端的控制中心,利用各种 接口和线路连接整个移动终端的各个部分。
在本实施例中,移动终端2的多个模块可以包括语音获取模块30、波束形 成模块40、虚拟波束形成模块50、信噪比获取模块60、目标语音方位判断模 块70和目标语音输出模块80。所述模块30-80被配置成有一个或多个处理器(本 实施例为处理器20)执行,以完成本发明实施例。本发明实施例所称的模块是 完成一特定功能的计算机程序段。存储器10用于存储上述计算机程序段的程序 代码等资料。
语音获取模块30,用于通过语音采集单元4获取N路语音信号。
波束形成模块40,用于根据所述N路语音信号两两组合得到
个语音信号 组合,对所述
个语音信号组合执行波束形成操作以对应得到
路波束。
当N=3,且N路语音信号包括第一语音信号、第二语音信号和第三语音信号 时,通过所述第一语音信号和第二语音信号进行波束形成操作以得到第一波 束,波束形成模块40可以通过所述第二语音信号和第三语音信号进行波束形成 操作以得到第二波束,及通过所述第三语音信号和第一语音信号进行波束形成 操作以得到第三波束。其中,所述波束形成操作包括:延时相减,或者低频段 延时相加和高频段延时相减。
虚拟波束形成模块50,用于根据所述
路波束定义
路虚拟波。继续 以N=3为例,虚拟波束形成模块50可以根据所述第一波束、所述第二波束和所 述第三波束定义三路虚拟波束,所述三路虚拟波束包括第四波束、第五波束和 第六波束。
所述三路虚拟波束通过如下组合得到:
其中,A1代表第一波束,A2代表第二波束,A3代表第三波束,B1代表第 四波束,B2代表第五波束,B3代表第六波束。
信噪比获取模块60,用于获取所述
路波束和
路虚拟波束中每路波束 对应的信噪比。继续以N=3时得到的第一波束至第六波束为例,信噪比获取模 块60可以获取所述第一波束至所述第六波束中每路波束对应的信噪比。
具体的,信噪比获取模块60需要执行以下步骤:根据预先划分的多个频率 子带,将所述每路波束捕获的语音信号分别分解成对应的多个频率子带信号; 计算所述每路波束中对应的多个频率子带信号之信号能量;根据所述每路波束 中对应的多个频率子带信号之信号能量,计算所述每路波束中对应的多个频率 子带的多个子带信噪比;根据所述每路波束中对应的多个频率子带的多个子带 信噪比,计算所述每路波束对应的信噪比。
目标语音方位判断70,用于根据所述每路波束对应的信噪比,确定目标语 音的方向。具体的,确定最大信噪比所对应的第一目标波束的指向为所述目标 语音的方向,和/或,确定最小信噪比所对应的第二目标波束的指向为噪音的方 向。
目标语音输出模块80,用于输出目标语音信号。具体的,根据所述每路波 束对应的信噪比确定所述每路波束所对应的权重;根据所述每路波束对应的权 重,对所述第一波束捕获的语音信号至所述第六波束捕获的语音信号进行加权 叠加操作,以输出目标语音信号。每路波束的权重可以参照上文。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体 意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者 装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括 为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下, 由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、 物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述 各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述 功能分配由不同的功能单元或模块完成,即将存储装置的内部结构划分成不同 的功能单元或模块,以完成以上描述的全部或者部分功能。实施方式中的各功 能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬 件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模 块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
所述移动终端设备集成的模块/单元如果以软件功能单元的形式实现并作为 独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这 样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算 机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存 储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步 骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为 源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读 介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介 质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read- OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、电载波 信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包 含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如 在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号 和电信信号。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利 用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运 用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。