STRAIGHT特征提取算法学习
来源:互联网 发布:看广告赚钱软件 编辑:程序博客网 时间:2024/06/05 15:11
最近看STRAIGHT特征提取算法,整理相关文档,也写些自己的理解。先整体,细节有时间再补充。
1.F0提取
STRAIGHT F0的提取主要分为:F0粗定位->F0轨迹平滑->F0精定位。
F0粗定位是指对语音信号进行小波变换,得到小波系数。再将小波系数转换为瞬时频率作为各帧的一组候选F0值。在进行小波变换前,要经过高通滤波器去除信号的直流分量;然后对信号降采样。
F0轨迹平滑指根据计算得到的高频能量比、最小噪声能量、判决门限、跳跃度(帧级别的基音频率与参考频率的误差),在一组候选F0值中寻找最可能的F0平滑曲线。
F0精定位和F0粗定位相似,也会用到瞬时频率。但F0粗定位是用小波变换得到瞬时频率,而F0精定位则是用FFT得到瞬时频率,再根据当前帧的噪声能量和语音能量对瞬时频率进行微调。
2.自适应谱提取
自适应加权谱的提取,其核心算法在于对提取出的功率谱进行一系列的平滑和补偿过程。对输入的语音信号进行:语音信号预处理 -> 功率谱提取 -> 低频噪声补偿 -> 过平滑补偿 -> 无音帧谱的处理,最后得到自适应功率谱。
其中,语音信号预处理包括让语音信号x(n)经过三个六阶butterworth高通滤波器:截止频率分别为70Hz,300Hz,3kHz。滤波得到x1(n),x2(n),x3(n)。算法通过x1(n)求取功率谱,通过x2(n),x3(n)产生无音帧功率谱的加权系数。
在提取当前帧的功率谱时,首先要设计截取帧的数据窗函数,窗函数w1(n)和频率有关,因此由于各帧基音频率F0不同,窗长是变化的。当语音信号x1(n)被截取后,作FFT得到功率谱。为使功率谱更平滑,算法基于w1(n)设计了一个补偿滤波器w2(n).w2(n)在频域上对w1(n)的幅度谱进行了搬移,在相位谱上则较w2(n)偏移了pi/2.
低频噪声补偿的原因:若当前帧为有音帧,基音频率为F0.功率谱E(k)在F0的倍频处具有较强的能量,而在其他频率各处能量较低.考虑到STAIGHT算法在语音合成部分,E(k)需要按输入的基音频率为间隔进行抽样,因此需要保证E(k)在F0以下的低频处比较平滑.因此需要对F0以下的频带进行低频噪声补偿.将 F0/2 ~ F0 Hz频带上的功率谱E(k)翻折复制到0~F0/2的频带上.
经过低频噪声补偿的功率谱为E1(k).对E1(k)进行一次平滑w1(n),以获取E1(k)的大致变化趋势E'1(k).过平滑补偿则首先构造出平滑滤波器的逆滤波器g1(n),使得: g1(n)*w1(n) = 冲激函数.对经过低频噪声补偿的功率谱E1(k)在时域进行过平滑补偿,再转换为频域的功率谱E2(k);最后,利用变化趋势E'1(k)和E2(k)进行加权,得到过平滑补偿后的功率谱E3(k).
无音帧功率谱修正,首先获得300Hz以上语音x2(n)的各帧能量P1(nframe),根据有/无音的程度,将P1(nframe)和本帧功率谱E3(k)所得能量P(nframe)加权,得到P'1(nframe).最后,当语音帧为无音帧时,功率谱作如下修正:
E3(k,nframe) = P'1(nframe)E3(k,nframe)/∑∑E3(k,nframe).
(当语音帧为有音帧时,相邻帧能量较为接近,高频能量也较为相似;而无音帧相邻帧的高频能量变化剧烈,因此采用此性质来判断有/无音程度)
3.语音非周期成分(噪声)提取
语音非周期成分的提取,主要是分析信号的功率谱,提取功率谱的上包络与下包络(ERB域提取谱包络),利用上下谱包络的比例t(f,n)=EL/EH,判决语音信号在该频率点处的非周期成分的大小。t(f,n)在频率f处越大,非周期成分也越大,则合成时衰减频率f处的可能性也越大,从而提升合成音质。
对非周期成分划分组得到bap。
- STRAIGHT特征提取算法学习
- 常用特征提取算法
- sift特征提取算法
- 特征提取算法--Sift
- 特征提取算法--Surf
- 特征提取算法--ORB
- 特征提取算法比较
- BRISK特征提取算法
- SIFT特征提取算法
- BRISK特征提取算法 .
- 图像特征提取算法
- BRISK特征提取算法
- Cuboid特征提取算法
- 特征提取算法
- SIFT特征提取算法
- SIFT特征提取算法
- 特征提取算法--ORB
- 特征提取+机器学习
- CentOS 6.5安装Mysql5.7
- JavaEE——CSS3选择器
- bzoj 3702: 二叉树 线段树合并
- 抽奖
- 移动端开发时所需加入的3个meta标签和网页的各种宽高
- STRAIGHT特征提取算法学习
- C#使用Socket与HTTP连接服务器传输数据包
- 记录一个问题
- 【广告算法工程师入门 20】机制设计-从GSP机制到VCG机制
- shiro在SSM以及与Springboot+Mybatis中的实践
- Sass进阶-(数据类型,变量运算,mixin)
- PowerShell获取系统环境变量的方法
- 关于BottomNavigationBar的用法
- iOS电视台直播、AR相关、B2B平台、动画效果等源码