位置: IT常识 - 正文

MFCC特征提取(mfcc特征提取过程)

编辑:rootadmin
MFCC特征提取

推荐整理分享MFCC特征提取(mfcc特征提取过程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mfcc特征提取后的特征图,mfcc特征提取代码,mfcc特征提取的物理意义,mfcc特征提取原理,mfcc特征提取 的matlab代码,mfcc特征提取的物理意义,mfcc特征提取 的matlab代码,mfcc特征提取过程,内容如对您有帮助,希望把文章链接给更多的朋友!

         在语音识别方面,最常用到的语音特征就是梅尔倒谱系数(Mel-scaleFrequency Cepstral Coefficients,简称MFCC)。

        MFCC的提取过程包括预处理、快速傅里叶变换、Mei滤波器组、对数运算、离散余弦变换、动态特征提取等步骤。

1.预处理

        对原始音频数据进行数字化、预滤波、预加重、端点检测、分帧、加窗等操作,使其信号特征更加明显,去除冗余数据。

2.快速傅里叶变换

        快速傅里叶变换即利用计算机计算离散傅里叶变换(DFT)的高效、快速计算方法的统称,简称FFT。

        将音频从时域转换为频域。

3.Mel滤波器组

        研究表明,人类对频率的感知并不是线性的,并且对低频信号的感知要比高频信号敏感。对1kHz以下,与频率成线性关系,对1kHz以上,与频率成对数关系。频率越高,感知能力就越差。

        为了模拟人耳的听觉机制。从而研制出来了Mel滤波器组。

        所以,Mel滤波器组的在低频密集,高频稀疏。

梅尔刻度定义:

        它是Hz的非线性变换,对于以mel scale为单位的信号,可以做到人们对于相同频率差别的信号的感知能力几乎相同。

        HZ 与 mel scale 的相互转换关系如下:

        

        

        如果对数以 e  为底,则系数的取值为 1125。

 梅尔滤波器组的设计步骤:

        1)确定最低频率(0HZ)、最高频率(fs / 2)、Mel滤波器个数M(一般为24)

        2)在Mel频率下,这些滤波器的中心频率是等间距的,则:

        

        3)每个滤波器的中心频率

                其中: ,N为DFT的频率长度,fs 为频率采样频率。

        4)每个滤波器的函数如下:

         综上4个步骤既可以生成如下等高梅尔滤波器:

         这与开篇的梅尔滤波器略有不同,此处为各个滤波器等高,而开篇的滤波器不等高,这有什么影响吗?

        如开篇所示的不等高滤波器形式叫等面积梅尔滤波器。其在低频处密集高耸,高频处稀疏低矮。恰好对应了频率越高人耳越迟钝这一规律,在人声等领域有广泛应用。但是如果在非人声领域就会丢掉很多高频信息,此时常用等高梅尔滤波器。

        三角带通滤波器有两个主要目的:

        1)对频谱进行平滑化,并消除谐波的作用,突显原先语音的共振峰。频谱有包络和精细结构,分别对应音色与音高。对于语音识别来讲,音色是主要的有用信息,音高一般没有用。在每个三角形内积分,就可以消除精细结构,只保留音色的信息。

        2)傅里叶变换得到的序列很长(一般为几百到几千个点),把它变换成每个三角形下的能量,可以减少数据量。

生成Mel语谱图:

        能量谱,也称为能量谱密度。是指用密度的概念表示信号能量在各频率点的分布情况。也即是说,对能量谱在频域上积分就可以得到信号的能量。能量谱是信号幅度谱的模的平方,其量纲是焦/赫。

MFCC特征提取(mfcc特征提取过程)

        (补充:能量信号和功率信号的分别 - 知乎)

        将能量谱通过一组Mel尺度的三角形滤波器组,其公式为:

        

        得到梅尔语谱图:

        其中横轴为时间,纵轴为频率,颜色深浅为能量。 

4.对数运算

        对数运算包括取模和log运算。

        将原始语音信号经过傅里叶变换得到频谱:

        

        取模是仅使用幅度值,忽略相位的影响,因为相位信息在语音识别中作用不大。

        

        log 运算是为了分别包络和细节,包络代表音色,细节代表音高。显然语音识别是为了识别音色。另外,人的感知与频域的对数成成本,正好使用log运算对上述梅尔语谱图的纵轴进行对数缩放,可以放大低频率处的能量差异。

        

5.离散余弦变换(DCT)

        在上一步中,我们通过对数运算成功地把基音信息与声道信息变成了加性的。那么如何分离呢?它们有如下性质:  

频谱图中(注意是一帧原始语音信号FFT变换内)

        (1)基音信息在频域是快速变化的。

        (2)声道信息在频域是缓慢变化的。

倒谱的概念:

        定义:倒谱定义为信号短时振幅谱(功率谱)的对数傅里叶反变换

        特点:具有可近似地分离并能提取出频谱包络信息和细微结构信息的特点。

        可见我们只需要求出梅尔频谱的对数傅里叶反变换即可分离基音信息和声道信息。

        

        在对数频谱上面做IFFT就相当于在一个伪频率(pseudo-frequency)坐标轴上面描述信号。所以虽然是时域序列,但它们所处的离散时域显然不同,此时称为倒谱频域。

        x[k]实际上就是倒谱Cepstrum。(这个是一个新造出来的词,把频谱的单词spectrum的前面四个字母顺序倒过来就是倒谱的单词了)。而我们所关心的h[k]就是倒谱的低频部分。h[k]描述了频谱的包络,它在语音识别中被广泛用于描述特征。

        在Mel频谱上面获得的倒谱系数h[k]就称为Mel频率倒谱系数,简称MFCC。

但是:MFCC特征使用的是DCT,而不是IDFT

        由于许多要处理的信号都是实信号,在使用DFT时由于傅里叶变换时由于实信号傅立叶变换的共轭对称性导致DFT后在频域中有一半的负数部分,但这里复数系数并不太需要。DCT可以看作是IDFT的简化版,DCT得到的是实值系数。

        mel滤波器组有很多重叠部分,DCT可以在不同的mel频带上去相关性,因为在机器学习中,希望输入的特征之间的相关性越小越好。而且DCT相当于是对log mel谱的降维。

需要选择多少个系数 h[k]?

        因为一般只关注声道信息,即谱包络成分(低频),因为声道信息包涵了我们感兴趣的成分,如音素信息、共振峰等,所有一般选前12-13个系数。

        由此得到的12维的MFCC特征如下: 

6.动态特征提取

        标准的倒谱参数MFCC只反映了语音参数的静态特性,语音的动态特性可以用这些静态特征的差分谱来描述。实验证明:把动、静态特征结合起来才能有效提高系统的识别性能。差分参数的计算可以采用下面的公式:

         其中,dt 表示第 t 个一阶差分,Ct 表示第 t 个倒谱系数,Q表示倒谱系数的阶数,K表示一阶导数的时间差,可取1或2。将上式的结果再代入就可以得到二阶差分的参数。

        因此,MFCC的全部组成其实是由: N维MFCC参数(N/3个MFCC系数+ N/3个一阶差分参数+ N/3个二阶差分参数)+帧能量(此项可根据需求替换)。这里的帧能量是指一帧的音量(即能量),也是语音的重要特征。

        最终得到36维MFCC图(3*12):

         (注:图为39(3*13)维MFCC图)

本文链接地址:https://www.jiuchutong.com/zhishi/299864.html 转载请保留说明!

上一篇:SpringBoot【基础篇】---- 基于SpringBoot实现SSMP整合(springboot基本结构)

下一篇:常用激活函数activation function(Softmax、Sigmoid、Tanh、ReLU和Leaky ReLU) 附激活函数图像绘制python代码(常用激活函数及其导数)

  • 美团优选怎么买东西(美团优选怎么买东西便宜)

    美团优选怎么买东西(美团优选怎么买东西便宜)

  • wps只要拼音不要汉字怎么办

    wps只要拼音不要汉字怎么办

  • 微信语音通话自动拨给好友(微信语音通话自动挂断原因)

    微信语音通话自动拨给好友(微信语音通话自动挂断原因)

  • k歌签约有什么坏处(k歌签约有什么好处)

    k歌签约有什么坏处(k歌签约有什么好处)

  • 原彩显示的好处和弊端(原彩显示好还是不好)

    原彩显示的好处和弊端(原彩显示好还是不好)

  • 收到货显示没发货可以退款吗(收到货显示没发货怎么退)

    收到货显示没发货可以退款吗(收到货显示没发货怎么退)

  • 6类网线支持多少兆(6类网线支持多少宽带)

    6类网线支持多少兆(6类网线支持多少宽带)

  • 网可以连上但不能用为什么(网可以连上但是不能用怎么回事)

    网可以连上但不能用为什么(网可以连上但是不能用怎么回事)

  • 天际通可以卸载吗(天际通卸载了有啥影响)

    天际通可以卸载吗(天际通卸载了有啥影响)

  • 电脑加了内存条和没加的区别(电脑加了内存条需要设置吗)

    电脑加了内存条和没加的区别(电脑加了内存条需要设置吗)

  • 探探能搜索用户吗(探探搜索用户名对方知道吗)

    探探能搜索用户吗(探探搜索用户名对方知道吗)

  • 华为路由器怎么隐藏wifi不让别人蹭网络(华为路由器怎么连接)

    华为路由器怎么隐藏wifi不让别人蹭网络(华为路由器怎么连接)

  • 微信钱包突然让上传身份证(微信钱包突然让充值)

    微信钱包突然让上传身份证(微信钱包突然让充值)

  • 相册里的照片怎么删除不掉(相册里的照片怎么转移到另一个手机)

    相册里的照片怎么删除不掉(相册里的照片怎么转移到另一个手机)

  • 集线器工作在osi哪一层(集线器工作在osi七层中的哪一层)

    集线器工作在osi哪一层(集线器工作在osi七层中的哪一层)

  • trt-al00是华为什么型号(华为trt_al00a什么型号)

    trt-al00是华为什么型号(华为trt_al00a什么型号)

  • 抖音怎样改变推荐内容(抖音如何改变推荐内容)

    抖音怎样改变推荐内容(抖音如何改变推荐内容)

  • 快手订单怎么修改地址(快手订单怎么修改备注)

    快手订单怎么修改地址(快手订单怎么修改备注)

  • 淘宝怎么提醒卖家补货(淘宝怎么设置提醒预售)

    淘宝怎么提醒卖家补货(淘宝怎么设置提醒预售)

  • 手机如何设置紧急联系人(手机如何设置紧急报警电话)

    手机如何设置紧急联系人(手机如何设置紧急报警电话)

  • 小米手环4有哪些功能(小米手环4有哪些表盘)

    小米手环4有哪些功能(小米手环4有哪些表盘)

  • 苹果x充电头是多少w(苹果x充电头原装是几安)

    苹果x充电头是多少w(苹果x充电头原装是几安)

  • 如何删除收藏的内容(如何删除收藏的作品)

    如何删除收藏的内容(如何删除收藏的作品)

  • 云闪付如何赚钱(云闪付怎么赚佣金)

    云闪付如何赚钱(云闪付怎么赚佣金)

  • 幻灯片的百叶窗怎么设置(幻灯片百叶窗动画效果)

    幻灯片的百叶窗怎么设置(幻灯片百叶窗动画效果)

  • 360浏览器如何清除缓存(360浏览器如何清除账号密码)

    360浏览器如何清除缓存(360浏览器如何清除账号密码)

  • 手机怎么设置wifi(手机怎么设置wifi网速最快)

    手机怎么设置wifi(手机怎么设置wifi网速最快)

  • 进项税额怎么计算例题
  • 出售交易性金融资产发生的净损失应计入营业外支出
  • 初级职称需要进行继续教育吗
  • 收到补助款怎么入账
  • 退税发票认证流程
  • 分公司独立核算企业所得税缴纳
  • 哪些邮政业务可以寄快递
  • 固定资产账实不符的审计定性
  • 计提贷款损失准备金遵循以下原则
  • 应交税费未交增值税借方余额表示什么
  • 委托销售怎么做分录
  • 存款取款业务记入那个日记账?
  • 固定资产转到别人账户
  • 固定资产所取得的成本
  • 如何开境外帐户
  • 2021虚开发票案例
  • 汽车维修单位提成比例
  • 土地增值税的纳税人是在我国境内
  • 怎么区分进和近
  • 公共租赁住房的供应对象不包括
  • 如何开启windows10云服务
  • 中小企业的界定标准是什么
  • 金融企业贷款损失准备金税务管理
  • adb是什么程序
  • windows10什么时候上市
  • 外币债券汇兑损益怎么算
  • php sql 教程
  • 未按规定开具发票怎么处罚
  • thinkphp框架安装
  • vue的路由实现
  • php用img显示图片
  • php中include_once
  • php ucwords() 函数将字符串中每个单词的首字符转换为大写(实现代码)
  • 商业企业促销费包括哪些
  • node-js
  • 基于stm32的飞行器
  • 科大讯飞语音识别主要产品
  • checksum命令
  • 营业外收入的会计科目编码
  • 营业收入为什么不包括营业外收入
  • 工资费用核算
  • mysql查询的结果缓存里怎么清除
  • Apache RocketMQ 5.0 笔记
  • 水灾期间未生产怎么处理
  • 个人如何办理营业执照年检
  • 税务登记是需要原件还是复印件
  • 单位出租不动产,按照5%的征收率计算应纳税额
  • 公司收到加盟费会计分录
  • 利得和损失计入所有者权益的情况
  • 员工宿舍的物业费可以抵扣进项税吗
  • 退回上年度企业所得税
  • 利息专用发票可以抵扣吗
  • mysql性能分析语句
  • sql server 2012 数据库bak脚本还原
  • sql server减法
  • Mysql中几种插入效率的实例对比
  • 如何在mysql显示当前用户
  • centos7挂载cdrom
  • mac电脑自带软件介绍
  • wincomm.exe - wincomm是什么进程
  • ccxprocess是什么程序
  • linux中安装软件可使用哪些方式
  • fragment懒加载原理
  • cocos2d安装教程
  • 提高网页的效率的方法有
  • unity协程执行顺序
  • python贪吃蛇游戏代码怎么运行
  • 怎样用python
  • python,字符串
  • js中的substring
  • javascript运用
  • asynctask优缺点
  • 动态页面设计
  • 怎么用git上传项目
  • js命名函数
  • 纳税人逾期未申报的原因有哪些
  • 专利转让个人所得税率
  • 河北省电子税务局app下载
  • 广西残疾人保障金比例
  • 税额差怎么计算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设