一种可以保持语音数字信号的有效动态范围并防止削峰的自动增益控制限幅方法与流程

文档序号:14796303发布日期:2018-06-29 05:58阅读:684来源:国知局

本发明涉及语音信号处理领域,更准确地说涉及自动增益控制处理,提升语音信号质量的解决方案。

技术背景

语音信号在空气中传播的时候,其声波是球型发散的,而且声波能量随着传播距离的增加而呈指数衰减。当使用麦克风来进行拾音时,声源距离增加时,麦克风所采集到的信号幅度(或能量)会衰减的非常严重。因此通常会在麦克风采集信号之后,使用自动增益控制(AGC,Automatic Gain Control)处理来对弱信号进行增强。

自动增益控制处理通常可以使用硬件电路处理的方式或者是软件处理的方式。硬件电路处理针对的是模拟信号,软件处理针对的是数字信号。本发明所关注的是针对语音数字信号的AGC处理。

假如将自动增益控制预期功率设置的较高时,也就是应用于信号放大处理时,可能会将信号放大到超过采样值上限。假如数字信号采用定点数表示,自动增益控制方法会在将数据放大到数值溢出之前进行限幅处理,否则的话数字信号采样就会出现符号反转而造成信号错误。假如数字信号采用浮点数,自动增益控制方法也会在将数据放大后再进行限幅处理。而传统的限幅处理通常采用固定值门限的“硬切”方式,会造成数字信号削峰,引起信号失真,影响语音音质。通常削峰过多过强就会造成语音信号有“爆音”的不佳效果,这是传统自动增益控制限幅方法在控制信号溢出时的缺陷。



技术实现要素:

本发明的目的在于本发明提出一种新型的在对语音信号进行自动增益控制处理之后能够有效控制溢出的限幅方法。

具体地,本发明提供的一种可以保持语音数字信号的有效动态范围并防止削峰的自动增益控制限幅方法,包括:

a.将信号幅值划分为k个子区间,分别为区间0,1,2,…,k-1,每个子区间设置下门限(ωj)和控制系数(αj);

b.待处理数据(I(n))依次经过幅值门限由低到高的各子区间的处理,如果前一个区间的处理结果大于后一个区间的幅值下门限,那么就继续进行后续子区间的处理直到不满足区间条件为止;

c.将经过步骤b处理的数据作为输出数据(P(n,j))。

其中,所述步骤a中子区间的数量k大于等于1。

优选地,所述步骤b中的每个子区间的处理都是基于前一个子区间的处理结果的。

优选地,所述步骤b中当前区间的处理结果低于下一区间门限的信号不需要进行处理。

根据本发明提供的保持语音数字信号的有效动态范围并防止削峰的自动增益控制限幅方法,在趋近上门限阈值的位置,对处理后信号分子区间处理,使得其幅值减缓趋近上限,且控制其不超过上限。既保证了信号的有效动态范围又避免了使用限幅器造成信号削峰,减少了信号频谱失真。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1是传统的自动增益控制限幅方法的处理流程图;

图2是本发明的自动增益控制限幅方法的处理流程图;

图3是本发明实施例提供的使用传统方法和本发明的方法分别进行处理之后的信号时域波形图;

图4是本发明实施例提供的使用传统方法和本发明的方法分别进行处理之后的信号频域波形图;

图5是本发明实施例提供的使用传统方法和本发明的方法分别进行处理的输入、输出信号对应关系曲线图。

附图中相同或相似的附图标记代表相同或相似的部件。

具体实施方式

为使本发明的目的、内容和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

假设采用16bit采样位宽,那么语音数字信号的幅值绝对值最大为32767。设PCM的幅值上限阈值为UPPER_LIMIT(UPPER_LIMIT<=32767),也就是说认为幅值绝对值在UPPER_LIMIT以上的信号,属于溢出信号,必须把信号幅值控制在UPPER_LIMIT以内。使用传统的自动增益控制方法将会在放大之后使用限幅器的方式,将所有超出上门限的信号幅值硬切到门限值。图1即为此种处理方式对所有输入信号的处理流程。

本发明的处理方法是对趋近于溢出、甚至在浮点信号域已经超出溢出范围的信号进行分段处理。设共将信号幅值划分为k个子区间,分别为区间0,1,2,…,k-1。每个子区间的下门限为ωj,控制系数为αj。数据依次经过幅值门限由低到高的各子区间的处理,如果前一个区间的处理结果大于后一个区间的幅值下门限,那么就继续进行后续子区间的处理直到不满足区间条件为止。设原始输入PCM信号为I(n),设各子区间的输出PCM信号为P(n,j),(j取值为0到k-1)。详细计算过程由下述公式描述。

由上式可以看出,每个子区间的处理都是基于前一个子区间的处理结果的,也就是最终处理结果是各个子区间的处理效果叠加。这样处理的优势在于可以使得处理结果变化更加平滑,这一点会在后文的案例中更加详细的说明。

图2显示了此种处理方式对输入信号的处理流程,和以上描述操作过程是一致的。

以实际语音信号的处理来举例进行分析对比。使用同样一段原始语音信号,原始信号的波形如图3中的301所示。例如设置UPPER_LIMIT=20000,先使用同样的自动增益控制放大方法来对原始信号进行放大,然后使用传统的限幅方法进行保护溢出处理,信号如图3中的302所示。使用本发明的限幅方法来进行处理,设置需控制处理的数据分为3个子区间(k=3),区间0的信号幅值下门限为10000,区间1的信号幅值下门限为14000,区间2的信号幅值下门限为18000。设α0、α1、α2的值分别为0.7,0.6和0.4。而低于区间0下门限(10000)的信号不需处理。处理之后的信号如图3中的303所示。

由图3中的信号对比可以看出,302的信号波形在圆框标出的位置有大量的削峰,此类信号听觉感受会有明显的爆音失真,影响了音质。而303信号则是比较保真的。而针对三组信号进行信号分析和能量统计,如表1所示,可以看出,302和303信号的放大幅度基本相当,峰值功率是一致的,平均功率和总功率仅相差1.5dB左右,达到了AGC进行信号放大的预定目标。但303有效的将数据幅值控制在了UPPER_LIMIT之内且保持了强弱信号的相对关系,效果更佳。

在图4中,401是信号302的频谱图,402是信号303的频谱图。可以由图中圆框标识出的位置对比看出,使用传统AGC限幅方法处理的401信号,有非常明显的频谱损失。

如图5所示,描绘了两种AGC限幅方法处理前后的输入、输出信号对应关系。传统AGC限幅方法501曲线对应的是信号302的案例,本发明的AGC限幅方法502曲线对应的是信号303的案例。由图中可以看出,本发明的AGC限幅方法处理之后信号幅值变化曲线更加平滑,有利于保持信号的有效动态范围并防止削峰。

此处描述说明本发明方法所选取的参数k、以及αj的取值策略。理论上k的取值越高,那么如图5中的502曲线就会越平滑,但是k值越高则运算量复杂度越高。的值必然是小于UPPER_LIMIT的,且αj的取值是小于1.0的小数。k的取值和具体各子区间的和αj的取值则需要综合考虑实际应用需求和限制,使得处理后的数据曲线较为平滑,并结合处理后的实际语音听感效果来选取。k参数则选取一个最适合的较低的值即可。

本发明可以使用在任何音频采样率的系统中。任何语音信号的处理都是本发明的应用范围。

本发明可以使用硬件,软件或它们的组合来实现,也可以用一个计算机系统或其它处理器系统来实现。计算机和其它处理器系统有多种形式,包括无线移动手机,平板电脑,笔记本电脑,台式电脑,智能音箱、智能监控设备、可视对讲设备、机器人或其它任何形式的智能硬件电子设备。

虽然关于示例实施例及其优点已经详细说明,应当理解在不脱离本发明的精神和所附权利要求限定的保护范围的情况下,可以对这些实施例进行各种变化、替换和修改。对于其他例子,本领域的普通技术人员应当容易理解在保持本发明保护范围内的同时,测量方法的次序可以变化。

此外,本发明的应用范围不局限于说明书中描述的特定实施例的工艺、机构、制造、物质组成、手段、方法及步骤。从本发明的公开内容,作为本领域的普通技术人员将容易地理解,对于目前已存在或者以后即将开发出的工艺、机构、制造、物质组成、手段、方法或步骤,其中它们执行与本发明描述的对应实施例大体相同的功能或者获得大体相同的结果,依照本发明可以对它们进行应用。因此,本发明所附权利要求旨在将这些工艺、机构、制造、物质组成、手段、方法或步骤包含在其保护范围内。

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