1. 采样(sampling):一个信号通过度量它在特定时刻的振幅来进行抽样。

  采样的目的是还原出声音的波形。在足够密集的采样频率下,人声的每个波形都能有多于两个的采样,这样的采样记录下说话人声音的频率和振幅(amplitude)。

  在高频声音波形下,每个波形可能只有2-3个采样;而在低频声音波形下,每个波形可能有5-6个采样,每个采样宽度范围设定好,如paInt16。这样就可以在采样率固定的情况下,体现出声音波形的高低频/音高、高低振幅/响度。

----拓展:

  • 波形图,即人说话的声波,横轴:时间;纵轴:振幅
  • 声谱图,横轴:频度,纵轴:振幅
  • 频谱图,横轴:时间,纵轴:频度

----拓展:声波特征:频度(frequency)和振幅(amplitude)

  • 频度(频率),又称为周(cycle):是1s之内完整波重复的次数,如:某段音频在0.11s之内有28个完整的波形,那波的频度是255hz或255周
  • 振幅,表示空气压力变化的大小。正轴表示该时刻空气压力比较高,0值表示空气压力正常,负值表示低于空气压力(我也不知道他们怎么测得)
  • 感知特性:音高(pitch)和响度(loudness)。音高与频度有关的感知特性;响度是与振幅有关的感知特性
    • ----[转]负分贝:声强小于2×10-5Pa的声音响度的都为负分贝数了。就像开尔文温标转化为摄氏温标一样,开尔文温标没有负数,摄氏温标就有负数了。例如,冬天哈尔滨室外温度-37℃,这个负数温度也是有温度的,只是温度低而已。有些人能够听到-10dB的声音呢!人耳就是天生的分贝转换器。潜水艇上的听音器可以听到水下100m外的一只虾吃食物的声音为-80dB,20英里外一个人的说话声为-30dB。所以,负分贝的声音是人耳听不到的,但是,它是客观存在的
  • 注意:实际音频中波形虽然完整连续,但他们不规则不均匀
  • 帧(frame):一般为10s-30ms,通常取20ms,在极短时间内,声音波形可以被认为是均匀的

----采样率(sampling rate):每秒提取的样本数目。常用的采样率有8000hz和16000hz

  • 根据奈奎斯特定理:采样频率不应低于声音信号最高频率的两倍,这样才能把以数字表达的声音还原成原来的声音。
  • 即:为了精确地测量声波,每周(每个声波)至少需要来嗯个采样:一个采样用于测来嗯声波的正侧部分,一个用于测量声波的负侧部分。如果每周的样本多于两个,将能够增加振幅的精确度,如果样本少于两个,声波就会遗漏部分频度
  • 即,可能测量到的最大频度的波九十那些频度等于采样率一般的波(因为每个波需要两个采样)
  • 如:人类语音的频度都低于10000hz,为了保证准确,必须有20000hz的抽样。注意:这里的10000hz是声波频度,而20000hz是采样次数频度,这两个虽然都是赫兹,但是别弄混了,一个是音频完整波形重复次数,一个是采样次数

2. 量化

量化就是用整形值存储采样测得的振幅值。在python~pyaudio中,有paInt8、16、32等采样位数,8比特bit采样能够给出的整形采样范围是-128~127,16位比特能够给出的整形范围是-32768~32767。

在pyaudio.stream录音采样过程中,

采样数sample_num=sample_rate * frame_duration_ms/1000   ;   采样字节大小/长度sample_size=sample_num * sample_width/8

采样宽度有8位、16位、32位,如果sample_width=paInt16,每个采样是两个字节,160个采样的sample_size是320,所以要注意frame_num和len(chunk),chunk = pyaudio.stream.read(frame_num)的长度。

参考:

  • Daniel Jurafsky, James H. Martin, 《speech and language processing》, 冯志伟, 译,《自然语言处理综论》,第七章--HMM与语音识别
  • https://blog.csdn.net/hh_1206/article/details/77540379

语音识别(一):特征抽取~1.1 抽样(sampling)和量化(quantization)相关推荐

  1. 高光谱图像压缩方法综述

    论文来源:"Hyperspectral image compression approaches: opportunities, challenges, and future directi ...

  2. 图像入门——1. 图像与数字图像介绍

    写在开始 由于最近的学习需要对图像处理进行一系列的学习,从最基础的图像的基本知识到后面的图像处理的一些内容,再到最后衔接深度学习中的卷积神经网络进行一系列的博客攒写. 这系列主要是从自己的想法出发,自 ...

  3. 用计算机对音频信息进行处理 要将模拟信号,[电脑基础知识]大学计算机第五章.ppt...

    [电脑基础知识]大学计算机第五章.ppt 多媒体基础 本章内容提要 一.多媒体技术的基本概念 二.多媒体信息的数字化 三.多媒体技术的应用 多媒体技术 多媒体技术指利用计算机技术把多种媒体信息综合一体 ...

  4. 音频基础--PCM音频

    1.PCM定义   PCM 全称 Pulse-Code Modulation,就是脉冲调制编码,是用于将波形表示的模拟音频信号转换为数字1和0表示的数字音频信号,而不压缩也不丢失信息的处理技术.简单来 ...

  5. 音乐音频 | 语音识别与音乐流派分类

    文章目录 语音识别步骤 一.用SVM做音乐分类应用实例 1.数据集:EchoNest. 2.代码: ①数据归一化.沿着最大方差轴旋转数据,确定数据的每个特征 对 类之间方差的相对贡献.特征的均值=0, ...

  6. 提升用户体验的必杀器——A/B实验统计方法解密

    导读:A/B 实验是很多技术团队非常关注的内容,本文内容由滴滴出行效能平台部倾情呈现,介绍 A/B 实验所涉及的重要统计学知识. 前言 持续快速有效的A/B实验是实现业务从十到百增长.获得更好的用户体 ...

  7. fopen_s不接受两个参数_如何利用SPC来管理制造过程,不懂SPC还敢混“质”场?

    请点击上面 免费关注本账号! 必读 →  2019年4-5月开课计划(IASC-CN俱乐部) PC是汽车行业品质管理的重要工具之一,AIAG为此写了一整本书.这篇文章略去SPC一些基础知识的介绍,直接 ...

  8. Hadoop 系列之 Hive

    Hadoop 系列之 Hive Hive 的官网:http://hive.apache.org/ Hive versions 1.2 onward require Java 1.7 or newer. ...

  9. 语音信号处理基础(二)

    语音信号处理基础(二) 1.2.2 语音编码 语音编码的目的 保证在一定语音质量的前提下,尽可能降低编码比特率,以节省频率资源. 语音编码技术的鼻祖:研究开始于1939年军事保密通信的需要,贝尔电话实 ...

最新文章

  1. php sendmail方法,PHP实现在windows下配置sendmail并通过mail()函数发送邮件的方法
  2. NR 5G 零基础看5G
  3. 在UWP的按钮中使用Segoe MDL2 Assets图标
  4. XAML Namespace http://schemas.microsoft.com/expression/blend/2008 is not resolved
  5. 这文字的起始位置_ae制作文字动画?ae文字动画教程
  6. 汇顶科技2021秋招笔试
  7. axis2 默认端口_使用axis2创建webservice
  8. php 中 date转换为字符串,PHP 时间与字符串的相互转化
  9. linux c获取网卡ip,linux c获取IP地址
  10. 爱情不是等你有空才珍惜的
  11. Android 巧用 flexboxLayout 布局
  12. mac上通过自动操作达到右键通过vscode打开文件、文件夹
  13. 【板绘手绘线稿素材资料】从素描到板绘,超全的人物嘴巴画法!
  14. ios-唯一标识符及Keychain共享
  15. 边缘计算系列之MEC介绍
  16. 上来微软这条贼船有阵年头了
  17. flink-cdc-connectors-release-2.3.0自己编译
  18. 新建 Microsoft Office Word 文档(C语言)
  19. 基于统计检验的空间计量经济模型选择方法
  20. 标定数据分析-DCM(.DCM)

热门文章

  1. 在大数据圈你不知道的15个新技术
  2. 实现mysql按月统计的教程
  3. java多线程中的异常处理
  4. 转发高人文章:以前写的一些有关代码签名/时间戳数字证书的东东
  5. TCP/IP 校验和算法简介
  6. android资源之res/raw和assets的异同
  7. python_wifi
  8. PAT甲级1056 Mice and Rice:[C++题解]模拟、排名
  9. vector嵌套vector嵌套pair
  10. 为什么分数是循环小数