【语音】笔记

1 傅里叶变换

复制代码
单帧信号x1 -> 基信号1(频率f1) -> 映射到同频率正余弦函数 -> 得到复数向量a[1] + b[1]j -> 计算绝对值得到|X[1]|
             基信号2(频率f2) -> 映射到同频率正余弦函数 -> 得到复数向量a[2] + b[2]j -> 计算绝对值得到|X[2]|
             ...
             基信号i(频率fi) -> 映射到同频率正余弦函数 -> 得到复数向量a[i] + b[i]j -> 计算绝对值得到|X[i]|

单帧信号x2 -> 基信号(频率f1) -> 映射到同频率正余弦函数
             基信号(频率f2) -> 映射到同频率正余弦函数
             ...
             基信号(频率fi) -> 映射到同频率正余弦函数

...

其中,复数的实部ai表示对于该基信号分量在余弦波上的投影强度,虚部bi对应于在正弦波上的投影强度。对复数计算绝对值得到该基信号的幅度|X *i* | = 根号下 a *i*² + b *i*²。**

这些|X *i* |结合起来形成幅度谱|X|,可以表示各个基信号分量占单帧信号的幅值强度。

1 离散傅里叶变换(DFT)

1.1 是什么

将离散的数字信号(比如录音采样后的数字序列)从"时间领域"转换到"频率领域"。

  • 输入:一串随时间变化的数字(比如每秒采样44100次的音频数据)。
  • 输出:一串代表不同频率强度的数字(比如低音有多少、中音有多少、高音有多少)。

1.2 怎么工作

用各种不同频率的"正弦波"去匹配你的信号。

  • 它尝试用低频正弦波去拟合,看匹配程度;
  • 再试中频、高频......
  • 最后告诉你:"你的信号里,低频成分占30%,中频占50%,高频占20%。"

2 快速傅里叶变换(FFT)

2.1 是什么

计算结果与DFT一样,但效率高。

2.2 怎么工作

假设你要计算 8 个点的 DFT:

  • DFT 做法:老老实实算 8×8 = 64 次运算。
  • FFT 做法 :
    1. 把 8 个点分成两组:偶数位置的点 和 奇数位置的点。
    2. 分别计算这两组 4 个点的 DFT。
    3. 再把结果巧妙合并。
    4. 继续递归拆分......直到变成最简单的 2 点 DFT。

这样,计算量从 N² 降到了 N log₂N。

相关推荐
echome8888 小时前
Python 异常处理:try、else、finally 的正确搭配
开发语言·前端·python·异常处理·编程技巧
时间的情敌8 小时前
OpenLayers 实战|Vue3 + OpenLayers 完整工程案例(加载天地图、要素、弹窗、绘制、WFS)
前端·openlayers
陈随易8 小时前
下载神器!Motrix 停更三年后重写回归
前端·后端·程序员
前端的日常9 小时前
一个人+AI做情侣食谱小程序,0 费用的服务器
前端·后端
计算机魔术师9 小时前
谷歌搜索广告踩刹车,AI广告成为救命稻草
前端
总要学点什么10 小时前
第81篇:数据可视化-PM2.5分布——让圆点的胖瘦替每座城市报出浓度
前端·信息可视化·echarts·cesium·空间分析
IT_陈寒10 小时前
Vue的v-for里用了个临时变量,页面直接挂了
前端·人工智能·后端
WBluuue10 小时前
数据结构与算法:分块(一):块状数组、块状链表
数据结构·c++·算法·链表
hunter_07610 小时前
一次 iOS 真机签名 409 的完整排查:证书、设备、描述文件为什么总是"对不上"
前端
枣把儿10 小时前
开源!公众号排版+一键发布工具懒人版
前端