python np fft_理解语音识别系统中的语音数据,傅里叶转换,FFT和声谱特征

本文通过Python的numpy库深入探讨语音识别系统中的声音数据处理,包括使用librosa加载和可视化语音、傅里叶变换(FT)、快速傅里叶变换(FFT)以及声谱图的创建和应用,阐述了如何将语音信号从时域转换到频域,以及声谱图在语音识别中的关键作用。
摘要由CSDN通过智能技术生成

7cc2123598e64d25afd2db7413883cf2.png

本篇文章介绍如何使用python进行声音数据分析(语音分析)。

总述

每天都会产生大量的语音数据。如果他们能够很容易的被数据科学家所获得来开发AI引擎和进行AI分析,也许会产生不一样的洞见。那些早已意识到语音数据信息重要性的机构正在利用AI转录对话,去加强员工培训,客户服务以及提供用户体验。

然而,也有一些机构不能够很好的利用这些数据,因为一下原因— 1.他们并没有进行采集。2.数据质量差。这些障碍阻止他们进一步去推行机器学习解决方案。所以收集质量良好的数据是很重要的。

这篇文章手把手的教你如何进行语音数据处理。


文章主要从以下几个方面展开:

  • 读取声音文件
  • 傅里叶变换(FT)
  • 快速傅里叶变换(FFT)
  • 声谱图
  • 使用声谱图进行语音识别
  • 总结

1. 读取声音文件

LIBROSA

LibROSA是一个python库,里面包含了几乎所有你想要处理声音的工具。让我们快速的看一下它的特点:

  1. 加载展示一个声音文件的特性
  2. 声谱表示
  3. 特征提取和操作
  4. 时间——频率转换
  5. 语音切割
  6. 序列模型...等
你可以通过下面的命令快速安装这个库——
pypi  : pip install librosa
conda : conda install -c conda-forge librosa

使用python加载语音

Librosa支持大量的语音编码形式。虽然在进行数据分析的时候,大部分都会使用.wav(无损)格式。一旦你成功的安装并且在jupyter notebook中导入libROSA之后,你可以通过在 librosa.load()函数中设置file_path 参数去指定想要读取的语音文件。

librosa.load()—> 返回两个内容— 1. 振幅矩阵。2. 采样率。采样率指的是记录声音文件时的采样频率。如果保持参数sr = None, 将会以原始的采样频率去加载你的文件。(注意:你可以根据需要去指定采样频率,libROSA会为你进行上采样或下采样)。看下图:

66a51efc7de73e70fdb48456e025b8f3.png

sampling_rate = 16k 说明这个语言以16K的采样频率被记录。也就是说,在记录这段语音的时候,我们一秒钟记录了16000个时间点的振幅。因此,如果我们想知道语音时长,可以通过采样的个数除以采样率得出:

e0fea20ac05c101710ac9663c2218ce0.png
IPython 提供了一些小工具帮助我们在notebook从播放音频
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值