《语音增强的方法.pdf》由会员分享,可在线阅读,更多相关《语音增强的方法.pdf(9页完整版)》请在专利查询网上搜索。
一种语音增强的方法,其包括如下步骤:对带噪语音信号进行分帧,加窗变换到频域;将变换到频域后的带噪语音信号划分为若干子带,则相邻两子带间设有子带区间;找出每个子带区间的噪声能量;求出每个子带区间的倍乘因子;得到全频带增强后的语音信号;合成语音谱;输出信号。本发明语音增强的方法资源需求量小。 。
CN200810242102.9
2008.12.31
CN101477800A
2009.07.08
撤回
无权
发明专利申请公布后的视为撤回IPC(主分类):G10L 19/02公开日:20090708|||实质审查的生效|||公开
G10L19/02; G10L21/02
G10L19/02
瑞声声学科技(深圳)有限公司; 瑞声声学科技(常州)有限公司
黄松华; 王 尧
518057广东省深圳市南山区高新技术产业园北区新西路18号
一种语音增强的方法,其包括如下步骤:①对带噪语音信号进行分帧,加窗变换到频域;②将变换到频域后的带噪语音信号划分为若干子带,则相邻两子带间设有子带区间;③找出每个子带区间的噪声能量;④求出每个子带区间的倍乘因子;⑤得到全频带增强后的语音信号;⑥合成语音谱;⑦输出信号。本发明语音增强的方法资源需求量小。
1、 一种语音增强的方法,其特征在于:包括如下步骤:①将声音采集装置采集到的带噪语音信号用芯片进行分帧处理,再加窗变换到频域;②用子带分析滤波器将变换到频域后的带噪语音信号划分为若干子带,则相邻两子带间设有子带区间,再计算每个子区间的能量并进行平滑,得到经平滑后的每个子带区间的能量;③用最小值统计法找出每个子带区间的噪声能量;④用频谱减算法根据经平滑后的每个子带区间的能量和统计出的噪声能量求出每个子带区间的倍乘因子;⑤用计算的倍乘因子对每个子带区间的变换到频域后的带噪语音信号进行处理,得到全频带增强后的语音信号;⑥用子带综合滤波器把全频带增强后的语音信号合成为语音谱;⑦把语音谱变换到时间域得到变换到时域后的全频带增强后的语音信号,再把相邻的变换到时域后的全频带增强后的语音信号的重叠部分进行相加操作后得到最终输出信号。2. 根据权利要求1所述的语音增强的方法,其特征在于:所述分帧处理的信号中,相邻两帧间重叠部分在50%至75%之间。3、 根据权利要求2所述的语音增强的方法,其特征在于:所述任意帧的长度在10~35ms左右。4、 根据权利要求3所述的语音增强的方法,其特征在于:所述变换到频域后的带噪语音信号选取129个子带区间。5、 根据权利要求4所述的语音增强的方法,其特征在于:对所述每个子带区间过去1.5秒的时间内的计算每个子带区间的能量进行平滑比较,找到该子带区间的最小语音能量作为噪声能量。6、 根据权利要求5所述的语音增强的方法,其特征在于:求倍乘因子的模块应用了幅度频谱减算法的原理,并给要减去的噪声能量乘以一个大于1的因子进一步提高语音增强的效果。
语音增强的方法 【技术领域】 本发明涉及一种语音增强的方法。 【背景技术】 由于大量环境噪声的存在,麦克风采集到的语音信号普遍信噪比不够高,所以需要通过语音增强的方法来提升输入语音的信噪比。相关技术的语音增强的方法需要使用VAD(Voice Activity Detection,语音激活检测)来区分语音信号部分和噪声信号部分,所以需要的计算量和存储空间都偏大,对硬件的要求比较高,在制成专用芯片时需要的硅的面积也比较大,必将增加成本。 因此实有必要对相关技术的语音增强的方法进行改良。 【发明内容】 本发明的目的在于提供一种资源需求量小的语音增强的方法。 本发明的目的是这样实现的: 一种语音增强的方法,其包括如下步骤: ①将声音采集装置采集到的带噪语音信号用芯片进行分帧处理,再加窗变换到频域; ②用子带分析滤波器将变换到频域后的带噪语音信号划分为若干子带,则相邻两子带间设有子带区间,再计算每个子区间的能量并进行平滑,得到经平滑后的每个子带区间的能量; ③用最小值统计法找出每个子带区间的噪声能量; ④用频谱减算法根据经平滑后的每个子带区间的能量和统计出的噪声能量求出每个子带区间的倍乘因子; ⑤用计算的倍乘因子对每个子带区间的变换到频域后的带噪语音信号进行处理,得到全频带增强后的语音信号; ⑥用子带综合滤波器把全频带增强后的语音信号合成为语音谱; ⑦把语音谱变换到时间域得到变换到时域后的全频带增强后的语音信号,再把相邻的变换到时域后的全频带增强后的语音信号的重叠部分进行相加操作后得到最终输出信号。 与相关技术比较,本发明语音增强的方法避免了VAD的使用,其方法简单,资源需求量小。使用了很小的计算量,实现了一定的信噪比提升。 【附图说明】 图1为本发明的语音增强的方法的流程示意图。 【具体实施方式】 本发明语音增强的方法,其包括如下步骤: ①将声音采集装置采集到的带噪语音信号用芯片进行分帧处理,再加窗变换到频域; ②用子带分析滤波器将变换到频域后的带噪语音信号划分为若干子带,则相邻两子带间设有子带区间,再计算每个子区间的能量并进行平滑,得到经平滑后的每个子带区间的能量; ③用最小值统计法找出每个子带区间的噪声能量; ④用频谱减算法根据经平滑后的每个子带区间的能量和统计出的噪声能量求出每个子带区间的倍乘因子; ⑤用计算的倍乘因子对每个子带区间的变换到频域后的带噪语音信号进行处理,得到全频带增强后的语音信号; ⑥用子带综合滤波器把全频带增强后的语音信号合成为语音谱; ⑦把语音谱变换到时间域得到变换到时域后的全频带增强后的语音信号,再把相邻的变换到时域后的全频带增强后的语音信号的重叠部分进行相加操作后得到最终输出信号。 本发明选取带噪语音信号的频率为8KHZ。 对在时域中的带噪语音信号进行分帧,是将带噪语音信号以帧为单位等分成若干带噪信号单元。所述带噪信号单元由采样点组成,本发明中选取了8KHz的采样频率,根据短时谱分析的需要,帧长一般设定成10~35ms之间,本实施方式以32ms分帧,即一帧带噪信号单元设有256个采样点,自然地,任意一帧带噪信号单元具有一定的帧长,本发明中任意帧的帧长为256。为了防止相邻两帧的带噪信号单元间的块效应,在分帧时要使相邻两帧的带噪信号单元之间有一定的混叠部分,即,本帧数据中有D个数据为前一帧数据的部分数据,其中混叠部分描述如下: s(n)=d(m,D+n) 0≤n<L 其中s表示输入带噪语音信号 d(m,n)=d(m-1,L+n) 0≤n<D 其中,d表示当前帧的256点采样信号,因为任意一帧的长度为256,重叠率为75%,所以重叠部分的采样点个数D=192。相邻帧的带噪信号单元的第一个采样点相隔的距离L=256-192=64。 本发明相邻两帧的带噪信号单元之间可以具有50%~75%的重叠率。本实施方式选取相邻两帧的带噪信号单元之间具有75%的重叠率,即以从前向后的顺序,本帧75%的带噪信号单元和前一帧,以从后向前的顺序,75%的带噪语音信号单元一致。 加窗操作中所定义的窗函数是一个长度等于帧长256点的汉明窗,定义如下: win(n)={ 0.54—0.46cos(2*π*n/M) 0≤n≤M-1 0 其余n } 其中,M为任意一帧的长度,即256; 加窗后的信号为 g(n)=win(n)*d(m,n) 0≤n≤M-1 频域的变换用通用的离散傅利叶变换算法来实现,所述离散傅利叶变换英文名称为Discrete Fourier Transform,简称DFT。 G ( k ) = 2 M * Σ n = 0 M - 1 g ( n ) e - j 2 πnk / M ]]> 0≤k≤M-1 其中,M=256,为离散傅利叶变换的计算长度。 这样就将带噪语音信号s从时域变换到了频域。 变换到频域后的带噪语音信号包括语音信号和噪声信号,该信号以帧为单位划分为若干子带,则相邻子带设有子带区间。 本发明采用子带分析滤波器划分子带。划分子带操作很容易实现,因为DFT操作已经相当于把本发明的8KHz的带宽等份成256等分。根据采样定理约束,本发明选取256个子带中有效的、频率较低的129个子带进行处理。 本发明,用如下公式计算每个子区间的能量并进行平滑: E(k)=|G(k)|2 0≤k≤N-1 Pxn(m,k)=αPxn(m-1,k)+(1-α)E(k) 0≤k≤N-1 其中,Pxn表示经平滑后的每个子带区间的能量,m表示当前帧的序号,k表示当前的子带的序号,α=0.81056表示平滑因子。N为选取的子带总数,即129。 经平滑后的每个子带区间的能量包括语音能量和噪声能量。 本发明,每个子带区间的噪声能量的寻找采用了R.Martin提出的最小值统计方法找出每个子带区间的噪声能量。该方法通过假设噪声能量是平稳和连续的,而语音能量是有间断的。所以可以对过去一段时间内每个子区间平滑后的能量进行搜索,找到能量的最小值作为噪声能量。 Pn(m,k)=min(Pxn(m,k),Pxn(m-1,k),...) 0≤k≤N-1 其中,m表示当前帧的序号,k表示当前的子带的序号,N=129,搜索的时间大约为1.5秒钟。 该搜索的时间1.5秒钟大致等于188帧信号对应的时间长度。得到该数据的具体方法为:考虑到75%的重叠,188帧对应的时间长度188*0.032*(1-75%)=1.504。即本发明是对过去188帧经平滑后的每个子带区间的能量进行比较,其中的最小值作为该子带当前时刻的噪声能量。 求倍乘因子模块应用了幅度谱减法的原理,给要减去的噪声能量乘以一个大于1的因子进一步提高语音增强的效果。本发明利用经平滑后的每个子带区间的能量和统计出的噪声能量求出每个子带区间的倍乘因子,计算公式为: q ( k ) = 1 - σ ( k ) P n ( m , k ) P xn ( m , k ) ]]> 0≤k≤N-1 其中,q为倍乘因子,m表示当前帧的序号,k表示当前的子带的序号,N=129子带总数,σ表示一个大于1的因子,对于频率为400Hz以下的子带,它的值随频率的增大而减小,对于400Hz以上的子带就稳定在1.3。由于统计出来的噪声往往比平均值要小,所以σ的作用是使系统减去比原来更加多的噪声,达到更好的去噪效果。 将子带分析滤波器输出的每个子带区间变换到频域后的带噪语音信号G乘以倍乘因子后,得到的就是该子带区间增强后的语音信号,129个子带区间的增强后语音信号构成了全频带增强后的语音信号。 H(k)=q(k)*G(k) 0≤k≤N-1 其中,N=129子带总数,H(k)为第k个子带区间的语音增强后的信号。 子带综合滤波器把全频带增强后的语音信号合成为语音谱。本发明把129个子带的增强后的语音信号通过共轭变换求出256点完整的语音谱。 H(k)={H(k) 0≤k≤N-1 H(M-k) N≤k≤M-1 } 其中,N=129子带总数,M=256,即帧长。 最后的时域变换及输出部分进行的操作有: 第一步:逆DFT变换,把语音谱变换到时间域得到变换到时域后的全频带增强后的语音信号。 第二步:将相邻的变换到时域后的全频带增强后的语音信号的重叠部分进行相加操作。 时域的变换用通用的逆DFT(逆离散傅利叶变换)实现。 h ( m , n ) = 1 2 * Σ n = 0 M - 1 H ( k ) e j 2 πnk / M ]]> 0≤k≤M-1 其中,M=256,为帧长。h为变换到时域后的全频带增强后的语音信号。 相邻的变换到时域后的全频带增强后的语音信号的重叠部分相加可 以用如下的方法来表示。 h′(n)={h(m,n)+h(m-1,n+L); 0≤n<M-L h(m,n); M-L≤k<L } L=64为相邻的帧信号开始处的距离,M=256,为帧长。h’代表完成相加操作后的最终输出信号。 与相关技术相比较,本发明语音增强的方法有效地利用了频谱减算法计算量小的特点,避免了VAD的使用,其方法简单,资源需求量小。使用了很小的计算量,实现了一定的信噪比提升。 以上所述仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。
下载文档到电脑,查找使用更方便
30 金币 0人已下载
还可以输入200字符
暂无评论,赶快抢占沙发吧。
copyright@ 2017-2018 zhuanlichaxun.net网站版权所有经营许可证编号:粤ICP备2021068784号-1