语音相关

语音信号也还蛮有意思的。

声音最直接的表示方式是波形,英文叫waveform,就是你贴的左边那张图。另外两种表示方式(频谱和语谱图)下文再说。波形的横轴是时间(所以波形也叫声音的时域表示),纵轴的含义并不重要,可以理解成位移(声带或者耳机膜的位置)或者压强。

当横轴的分辨率不高的时候,语音的波形看起来就是像你贴的图中一样,呈现一个个的三角形。这些三角形的轮廓叫作波形的包络envelope)。包络的大小代表了声音的响度。一般来说,每一个音节会对应着一个三角形,因为一般地每个音节含有一个元音,而元音比辅音听起来响亮。但例外也是有的,比如:1) 像/s/这样的音,持续时间比较长,也会形成一个三角形;2) 爆破音(尤其是送气爆破音,如/p/)可能会在瞬时聚集大量能量,在波形的包络上就体现为一个脉冲。

下面这张图中上方的子图,是我自己读单词pass /pæs/的录音。它的横坐标已经被我拉开了一些,但其实这个波形是由两个“三角形”组成的。0.05秒处那个小突起是爆破音/p/,0.05秒到0.3秒是元音/æ/,0.3到0.58秒是辅音/s/。

如果你把横轴的分辨率调高,比如只观察0.02s秒甚至更短时间内的波形,你就可以看到波形的精细结构fine structure),像上图的下面两个子图。波形的精细结构可能呈现两种情况:一种是有周期性的,比如左边那段波形(图中显示了两个周期多一点),这种波形一般是元音或者辅音中的鼻音、浊擦音以及/l/、/r/等;另一种是乱的,比如右边那段波形,这种波形一般是辅音中的清擦音。辅音中的爆破音,则往往表现为一小段静音加一个脉冲(如pass开头的/p/)。

看完了声音的时域表示,我们再来看它的频域表示——频谱spectrum)。它是由一小段波形做傅里叶变换(Fourier transform)之后取模得到的。注意,必须是一小段波形,太长了弄出来的东西(比如你贴的右边的图)就没意义了!这样的一小段波形(通常在0.02~0.05s这样的数量级)称为一frame)。下面是我读的pass的波形中,以0.17s和0.4s为中心截取0.04s波形经傅里叶变换得到的频谱。频谱的横轴是频率;我录音的采样率用的是16000 Hz,频谱的频率范围也是0 ~ 16000 Hz。但由于0 ~ 8000 Hz和8000 ~ 16000 Hz的频谱是对称的,所以一般只画0 ~ 8000 Hz的部分。

第一个频谱是元音/æ/的频谱,可以看到它的精细结构是有周期性的,每隔108 Hz出现一个峰。从这儿也可以看出来,语音不是一个单独的频率,而是由许多频率的简谐振动叠加而成的。第一个峰叫基音,其余的峰叫泛音。第一个峰的频率(也是相邻峰的间隔)叫作基频fundamental frequency),也叫音高pitch),常记作。有时说“一个音的频率”,就是特指基频。基频的倒数叫基音周期。你再看看上面元音/æ/的波形的周期,大约是0.009 s,跟基频108 Hz吻合。频谱上每个峰的高度是不一样的,这些峰的高度之比决定了音色timbre)。不过对于语音来说,一般没有必要精确地描写每个峰的高度,而是用“共振峰”(formant)来描述音色。共振峰指的是包络的峰。在我这个图中,忽略精细结构,可以看到0~1000 Hz形成一个比较宽的峰,1800 Hz附近形成一个比较窄的峰。共振峰的频率一般用等等来表示。上图中,是多少很难精确地读出来,但。当然,在2800 Hz、3800 Hz、5000 Hz处还有第三、四、五共振峰,但它们与第一、二共振峰相比就弱了许多。除了元音以外,辅音中的鼻音、浊擦音以及/l/、/r/等也具有这种频谱,可以讨论基频和共振峰频率(不过浊擦音一般不讨论共振峰频率)。

第二个频谱是辅音/s/的频谱。可以看出它的精细结构是没有周期性的,所以就无所谓基频。一般也不提这种频谱的共振峰。清擦音的频谱一般都是这样。

共振峰频率跟基频是独立的。共振峰频率是频谱包络的峰值频率,但频谱在此处可能是个谷。

对于声学模型来说,F0是我们希望排除的干扰因素啊,强烈依赖于F0的特征应该是不行的……

当然,实际使用的MFCC也并不是直接取几个共振峰的频率作为特征,毕竟想准确测量共振峰频率也不容易。MFCC是描写的是频谱包络的整体形状。

每个人读的元音频谱细节都不一样的,共同点是共振峰的位置,你可以自己录音然后观察。

2.5 在回答你的第三个问题之前,我们先来看一下声音的第三种表示方式——语谱图spectrogram)。上面说过,频谱只能表示一小段声音。那么,如果我想观察一整段语音信号的频域特性,要怎么办呢?我们可以把一整段语音信号截成许多帧,把它们各自的频谱“竖”起来(即用纵轴表示频率),用颜色的深浅来代替频谱强度,再把所有帧的频谱横向并排起来(即用横轴表示时间),就得到了语谱图,它可以称为声音的时频域表示。下面我就偷懒,不用Matlab自己画语谱图,而用Cool Edit绘制上面“pass”的语谱图,如下:
注意横轴是时间,纵轴是频率,颜色越亮代表强度越大。可以观察一下0.17s和0.4s处,是不是跟我上面画的频谱相似?然后再试着从这张语谱图上读出元音/?/的第二共振峰频率。注意横轴是时间,纵轴是频率,颜色越亮代表强度越大。可以观察一下0.17s和0.4s处,是不是跟我上面画的频谱相似?然后再试着从这张语谱图上读出元音/æ/的第二共振峰频率。

语谱图的好处是可以直观地看出共振峰频率的变化。我上面读的“pass”中只有一个单元音,如果有双元音就会非常明显了。比如下面这张我读的“eye” /a?/,可以非常明显地看出在元音从/a/向/?/过渡的阶段(0.2 ~ 0.25s),在降低,而在升高。

3. 元音与共振峰的关系已经研究得比较透彻了,简单地说:
1) 开口度越大,越高;
2) 舌位越靠前,越高;
3) 不圆唇元音的比圆唇元音高。
例如,/ɑ/是开、后、不圆唇元音,所以高,低,高;/y/(即汉语拼音的ü)是闭、前、圆唇元音,所以低,高,低。
也许题主见过下图那样的元音图(vowel chart),我把的变化方向标了上去。

最明显的体现其实是在英语的辅音/r/中,例如下面我读的erase /?‘re?z/的语谱图,可以看到辅音/r/处(0.19s左右)明显低,把也压下去了。

清擦音可以根据能量集中的频段来分辨。下面是我读的/f/, /θ/, /s/, /?/的语谱图。浊擦音会在清擦音的基础上有周期性的精细结构。

爆破音的爆破时间很短,在语谱图上一般较难分辨。

作者:王赟 Maigo
链接:http://www.zhihu.com/question/27126800/answer/35376174
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

时间: 2024-10-10 06:46:37

语音相关的相关文章

发送语音+讯飞翻译 项目案例

数据结构 public LongSparseArray<RecordBean> recordList=new LongSparseArray<>(); 封装所有相关数据的Bean public class RecordBean { public static final String VOICE_PATH = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "vo

语音播报

相关: http://blog.sina.com.cn/s/blog_45c379c001016d7u.html DLL     : 备注:          1.运行TTSrepair.exe,修护系统语音功能.(确保系统语音相关组件能正常使用)          2.添加 Interop.SpeechLib.dll 和 SpeechLib.dll        3.如无语音库,请安装“girl_xialkun.exe”(为一种语音库)下载地址:http://download.iciba.co

4G LTE 网只能提供数据服务,不能承载语音通话,该怎么理解?

转:http://www.qbiao.com/16776.html 这个问题要从移动核心网的角度来理解.我们平时说的WCDMA.TD-SCDMA.TD-LTE其实通常指空口技术,即从手机到基站的通信技术.而移动通信的核心控制部分,则由核心网完成--如何在两个基站间建立起语音连接?何时给拨号方返回嘟嘟的线音?何时给接收方发出振铃?如何判断一个用户是否开通了呼叫转移业务,如何实现?如何建立从手机到因特网服务器的数据连接?如何判断用户是3G用户还是LTE用户? 这些都是由移动核心网完成的. 下面来说移

基于讯飞语音API应用开发之——离线词典构建

最近实习在做一个跟语音相关的项目,就在度娘上搜索了很多关于语音的API,顺藤摸瓜找到了科大讯飞,虽然度娘自家也有语音识别.语义理解这块,但感觉应该不是很好用,毕竟之前用过百度地图的API,有问题也找不到人帮忙解决(地图开发者群里都是潜水的)...不得不说,科大讯飞在语音这块尤其是中文识别方面做的真心不错,而且Android还支持离线识别. 讯飞官方给的文档内容很详细,在这我就不赘述了.在开发中,由于一些原因需要用到离线识别这块,就学习了一下.讯飞离线识别只支持Android系统,使用时需要安装讯

破局人工智能:构建AI,与腾讯云一起探索语音应用场景

本文来自腾讯云技术沙龙,本次沙龙主题为AI平台及智能语音应用解析 近年来,人工智能技术快速发展,与其他行业的结合也成为业界不断探索的方向.在人工智能基础和工具方面,AI平台已成为降低人工智能门槛的关键因素:而在人工智能应用方面,作为最成熟的应用方向之一,智能语音已在智能家居.智能车载等领域有了迅猛发展.以腾讯为代表的巨头企业,凭借强大的技术积累和在社交聊天.游戏娱乐等垂直领域定制化服务的丰富经验,在AI平台和智能语音两方面都推出了丰富的解决方案. 依照现状,AI平台如何降低人工智能门槛,帮助企业

HTML5中的audio在react中的使用----语音播放进度条、倍速播放、下载等

最近做了一个将通话记录,语音转文字并可以在聊天记录里标注动机和摘要的需求,上图只是一个小小的模块,第一次接到使用到语音相关的需求,记录一下 上图是一个客服聊天记录的模块,语音转文字,将录音展示出来,可以音频播放,可以滑动进度条,倍速播放等等,以前自己心血来潮,使用原生js写过一个类似于网易音乐,播放音乐的播放器,包括进度条,音量调节啥的.当然做项目吗,还是使用HTML自带的更好,省时省力高高效我们的service后台前端工程使用的是react + ant-design + node作为中间层后端

team talk 主要框架

Android TeamTalk的原型是Android-IM, 注:本文假设你已经有Android开发环境,且对Android开发的基本常识有所了解 本文以eclipse为例启动Eclipse,导入Android客户端项目,请确保你当前的Android SDK是最新版. 如果编译出错,请修改项目根目录下的 project.properties 文件. 一.程序所依赖项目信息 1.mgimlibs git地址:http://gitlab.mogujie.org/androidop-team/mgi

初探科大讯飞-讯飞开放平台之语音合成

1:讯飞开放平台提供了很多服务,有语音相关的:离线,在线语音合成及识别:人机交互:有模式识别相关的:人脸识别,声纹识别:还要云存储等等,如有兴趣,自行百度. 2:看了下官方SDK,试着体验下.导入两个jar包到lib目录,以及两个dll和so文件放到工程根目录. 本次先体验下语音合成模块. 语音合成主要涉及一个类,如下,完成语音的合成 import com.iflytek.cloud.speech.SpeechConstant; import com.iflytek.cloud.speech.S

CCIE Collaboration (400-051) 协作笔试 ,稳稳的 PASS 。

协作.交流,一直都是人与人之间最基本的交集和最基本的需求, 无论是日常生活,还是在工作中,不可缺少的, 也代表着未来的工作和生活中,"协作IE"的巨大的市场需求. 目前国内的 协作 CCIE 的数量不多,俨然是一片蓝海, 为未来投资,从现在做起! 无论是想学习协作.语音相关知识的,还是想进行 IE 重认证的,都可以毫不犹豫的选择 Collaboration CCIE, 数量之少,前所未有,仅仅98题目. 想了解的朋友可以加我的QQ:418838267 .