• ch4-3 音频信号的频域特征


    不同信号的分析方式

    在这里插入图片描述

    1. 短时傅里叶变换

    在短时分析中,
    由于在分帧和加窗之后,每一帧中的采样点可以看做有限长度的离散序列;
    从而使用DFT

    假设一帧内的采样点共有 N N N 个,每个采样点使用  x [ n ] x[n] x[n] 表示;
      x [ n ] , w h e r e 0 ≤ n ≤ N − 1 x[n], where 0 ≤ n ≤ N − 1 x[n],where0nN1

    1.1 DFT 运算

    经过DFT 之后,每个点表示为 x ^ [ k ] \hat x[k] x^[k]:

    x ^ [ k ] = ∑ n = 0 N − 1   e x p ( − i 2 π N n k ) ∙ x [ n ] \hat x[k] = \sum^{N-1}_{n=0} exp(−i \frac{2\pi}{N} nk) ∙ x[n] x^[k]=n=0N1 exp(iN2πnk)x[n]

    1.2 DFT 特点

    1. 每个点 x ^ [ k ] \hat x[k] x^[k]是一个复数信号,

    2. ∣ x ^ [ k ] ∣ | \hat x[k] | x^[k]: 取复数的实部,便是该复数信号的幅度值,从而得到N个特征;

    3. 相位:取复数的虚数部分;

    由于每一个 x ^ [ k ] \hat x[k] x^[k] 是由N个 x [ n ] x[n] x[n]点作为输入,

    总共输出N个 x ^ [ k ] \hat x[k] x^[k],所以计算复杂度是  O ( N 2 ) O(N^2) O(N2)

    2. FFT

    为了降低DFT 的计算复杂度 O ( N 2 ) O(N^2) O(N2)

    采用了分而治之的思想,复杂度降低为了 O ( N ∗ l o g N ) O(N *logN) O(NlogN)

    2.1 使用条件

    FFT中必须满足输入是N =  2 k 2^k 2k
    ,即输入点数的个数必须是2 的整数次幂;

    3. 短时傅里叶变换

    STFT 并不是一个新的运算,是将上述步骤合并起来;

    • 分帧
    • 加窗
    • FFT

    这三个步骤合并起来, 共同称之为短时傅里叶变换:

    通过STFT 得到,便是称为 spectrogram;
    这便是语谱图;

    4. 倒谱 cepstrum()

    倒谱产生:是为了方便信号之间解耦; 
    列如声源与声通道之间的解耦;

    因为信号在时域中的卷积运算,在倒谱域中变为加法运算;

    4.1  信号的频谱 spectrum

    x 轴是频率, y 轴是幅度值;

    对数频谱:

    将频谱中的幅度值取对数,得到的便是对数频谱。

    4.2 信号的倒谱 cepstrum

    信号 -> FT -> 幅度值 ->  幅度值取对数 -> 傅里叶变换(或者逆傅里叶变换)

    此时,频谱的幅度取对数之后作为输入信号, 
    对该对数信号进行逆傅里叶变换,得到的频谱称为倒谱。

    对数谱在做FFT 变换,得到的是倒谱;

    倒谱此时横坐标是时间,纵坐标是什么?

    在这里插入图片描述

  • 相关阅读:
    Qt + FFmpeg 搭建 Windows 开发环境
    postgresql源码学习(41)—— 崩溃恢复③ - 日志来源
    从裸机开始安装操作系统
    Python 数据分析入门教程:Numpy、Pandas、Matplotlib和Scikit-Learn详解
    Mysql面试必知的知识点-干货分享
    单片机——通过对P3口地址的操作流水点亮8位LED
    查漏补缺,这些热门开源项目你都知道么?「GitHub 热点速览」
    阿里巴巴面试题- - -Java体系最新面试题(6)
    Python环境找不到vlc —— 要先安装VLC Media Player
    JavaSE---类和对象
  • 原文地址:https://blog.csdn.net/chumingqian/article/details/126517546