搞定音频技术
冯建元
声网 Agora 音频算法专家
5340 人已学习
新⼈⾸单¥59
登录后,你可以任选3讲全文学习
课程目录
已完结/共 19 讲
搞定音频技术
15
15
1.0x
00:00/00:00
登录|注册

02|如何量化分析语音信号?

你好,我是建元。
上一讲我们了解了音频信号的一些基础知识。因为语音和音乐是最常见的音频信号类型,所以接下来两节课我会分别从这两种类型入手,带你看看如何科学、量化地对音频信号进行分析,从而读懂音频信号所承载的内容和信息,以及了解音频现象产生的原因是什么。这些知识对音频工程师、开发者甚至是调音师、录音师、音乐制作者而言都是很重要的基础,所谓“听其然,更知其所以然”。
好的,那我们这节课就先从语音信号的分析开始说起吧。

语音的基本特征

语音按照发音原理可以分为清音和浊音,语音的音调、能量分布等信息可以用基频、谐波、共振峰等特征来分析。为了更好地分析语音,我们先来看看语音是如何产生的?

浊音和清音

我们可以结合图 1 的人体发音器官结构示意图来看一下我们的语音是如何产生的。
图1 人体发音器官结构示意图
新闻传播学大辞典:中国大百科全书出版社
我们知道,声道就是声音传播所通过的地方。发音的声道主要是指我们的三个腔体,即咽腔、口腔和鼻腔。而语音是由声源和声道共同作用产生的。按照声源的不同我们把语音分成以下两类:
第一类是声带振动作为声源产生的声音,我们把它们叫做浊音。比如拼音中的 “a,o,e” 等。
第二类是由气体在经过唇齿等狭小区域由于空气与腔体摩擦而产生的声音,我们把它们叫做清音。比如拼音中的 “shi、chi、xi” 等。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文深入介绍了语音信号分析的基本原理和方法,包括语音的产生原理、窗函数的作用、时域分析中的短时能量和短时平均过零率的计算方法、频域分析中的短时傅里叶变换和梅尔谱的原理及应用。文章通过深入浅出的方式,介绍了语音信号分析的基本原理和方法,对于对音频信号感兴趣的读者具有很高的参考价值。同时,文章还提供了一个常用的Python音频处理工具,让读者可以快速地画出频谱图和梅尔谱,从而更好地理解清、浊音在两个频谱上的不同。文章内容丰富,涵盖了语音信号分析的多个方面,对读者进行了全面而深入的介绍。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《搞定音频技术》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(24)

  • 最新
  • 精选
  • newzai
    老师,建议可以把参考资料,书籍罗列一下,作为深入扩展到了解。

    作者回复: 其实文献就在文章里哦,比如《语音学:标音、产生、声学和感知》这本书就很推荐

    2021-11-24
    15
  • Geek_6a3a96
    老师,可以大概和我讲讲市面上k歌评分软件的道理么,我的理解是拿到一句唱句,然后做FFT获取到频谱,然后拿原唱做同样的事情,两者对比。但是我不清楚里面的更细节点。

    作者回复: K歌软件打分主要是用的基频对比,既你和原唱的音调在同一时间点上是否一致。然后有的还会结合你唱歌的短时能量,比如你唱的声音是否时强时弱等来综合评断。一般不会直接用频谱,因为每个人的音色是不一样的,直接用频谱打分过于严苛了。

    2021-11-29
    3
  • 杨景胜
    老师: 在做音频分析的时候需要对音频信号进行截断,而这会导致频谱泄漏. 这句不太理解是如何导致频谱泄漏的, 能解释下么?

    作者回复: 要想理解频谱泄漏不妨试一试直接截取一段做画一下频谱和加窗后再画频谱看看有什么区别。剧透一下你会发现直接截取频谱中出现了很多本来没有的频率分量这就是频谱泄漏

    2021-12-24
    2
  • 刘浩
    关于谐波有一些问题,老师能帮忙解答一下吗? 1、谐波一定是基波的倍数吗?为什么? 2、谐波频率变高的原因?

    作者回复: 可以这么理解谐波实际上是由于声道这个非线性系统导致的,一个单频信号经过非线性变换后会产生多个倍数于它本声频率的波形。这也就是谐波激励模型的由来。换句话说如果是个线性系统比如你敲一下音叉,那么由于只有空气传播(线性)你听到的就只有单频音。

    2021-12-09
    1
  • 哈珀朋友
    音视频应该特别适合电子和通信的人做,信号处理都是专业基础课啊

    作者回复: 确实有不少是这个专业的人,毕竟通信的本身就包含了一部分的音频。但有些方面比如美声音效、空间音频可能就比较跨专业了。

    2021-12-03
    2
    1
  • 晓龙
    我用的是Python 3.9.7 老师的代码有一丢丢错误,改写后如下: #绘制STFT import numpy as np import librosa import librosa.display import matplotlib.pyplot as plt y,sr=librosa.load('/Users/xlongcheng/Downloads/Voodoo.mp3',sr=44100) n_fft=1024 ft = np.abs(librosa.stft(y[:n_fft], hop_length = n_fft+1)) plt.plot(ft) plt.title('Spectrum') plt.xlabel('Frequency Bin') plt.ylabel('Amplitude') #绘制梅尔频谱 mel_spect = librosa.feature.melspectrogram(y=y, sr=sr, n_fft=2048, hop_length=1024) mel_spect = librosa.power_to_db(mel_spect, ref=np.max) librosa.display.specshow(mel_spect, y_axis='mel', fmax=8000, x_axis='time'); plt.title('Mel Spectrogram'); plt.colorbar(format='%+2.0f dB'); 运行中会遇到一些错误,例如: ImportError: Numba needs NumPy 1.20 or less 解决方案: pip3 install numba==0.53

    作者回复: 多谢分享,不同的库版本可能有不同的依赖。

    2021-11-24
    3
    1
  • 扁担
    这里短时傅里叶变化中的一个帧是指一个声音采样点吗?感觉应该不是音频里的采样点中的帧概念呢

    作者回复: 一帧是固定长度个采样点

    2022-01-08
    2
  • 不负
    一、关于图7 看不太懂,横轴为频率,纵轴为声压级别,红线代表人耳感知的响度和实际声压的对应关系 1)搜索过“听感和声压级是正相关的”,那是声压级越高,人耳越敏感吗? 但是文中提到 “由图 7 可以看到,人类在 4kHz 的频率对声音的响度比较敏感”,4kHz 时红线处于当前声压级最低点,那是声压级越低,表示人耳越敏感? 后半句 “而在两端的高频和低频则需要更强的声压,人类才能感知。”,好像又都不是上面的意思,比较懵。 2)图7 是要表示与实际声压的关系,那纵轴频率是用来表示实际声压吗 二、关于思考题,使用文稿代码成功绘制出了两个图,其中STFT 的频谱图有点问题,发现无论使用什么音频,都是幅度为0.0的一条直线。

    作者回复: 1、其实敏感的意思是即使声压级很小你也觉得很响,这里4kHz只需要很小的声压就感觉和其它频率很高的声压响度一样。 2、可以把你的代码的贴一下或者把中间结果打印一下看看是不是哪里有问题

    2021-12-06
    4
  • ZP.ZHU
    老师,咨询下,采用这些滤波器组处理,会不会引入很大时延?

    作者回复: 在降噪中主要是一些常见的陷波滤波器,FFT滤波器等。引入的延迟并不大

    2021-11-28
  • ForwardsHao
    老师,“在背景噪声较小的情况下,短时能量比较准确;但当背景噪声比较大时,短时平均过零率有较好的效果。”这是因为背景噪声多是浊音的缘故吗?

    作者回复: 背景噪声只有浊音可能短时平均过零率也不好用,背景噪声一般为混合噪声过零率会大于人声中的浊音(这个假设成立的概率较大)。

    2021-11-24
收起评论
显示
设置
留言
24
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部