假设你是一位演唱会音响师,全程录下了整场演出。散场后,你把录音交给一位只会写“总结报告”的师傅——他仔细听完,递给你一张清单:这场演唱会有贝斯、有高音、有鼓点,旋律大致是什么走向。清单很全面,但你越看越气:哪首歌在什么时候唱、某段副歌的高潮在哪一秒炸开、那个刺耳的啸叫发生在第几分钟——清单上一个字都没写。这位师傅的工作方式,就是傅里叶变换:它能把信号拆成“有哪些频率成分”,却把“这些成分出现在什么时间”丢得一干二净。 现在,换一位举着可变焦镜头的摄影师来。他既能把镜头推远,俯瞰整首歌曲的旋律轮廓;又能瞬间拉近,抓住某个鼓点、某个高音的转瞬即逝。他拍出的,不是一张歌单,而是一本带时间轴的节目单——每一首歌、每一段高潮、每一次尖峰,都在时间线上清清楚楚。 这本节目单,就是小波变换(Wavelet Transform)。它让工程师和科学家第一次能做到“时频一起看”:既能看出信号里有什么频率,又能知道这些频率在什么时刻出现。脑电中突然冒出的癫痫棘波、地震波里深层的反射信号、轴承磨损初期的“吱嘎”异响——这些藏在时间里的突发特征,过去常常被傅里叶的歌单埋没,如今在小波的变焦镜头下无所遁形。

岗位关联

对 AI 从业者而言,小波变换是处理脑电、振动、地震等非平稳信号的核心工具,也是时频特征工程与深度学习预处理中不可替代的“显微镜”。学会它,你就能从一段看似混沌的信号里,同时读出“什么”与“何时”。

目录
  1. 可视化演示
  2. 傅里叶的局限
  3. 短时傅里叶的困境
  4. 小波核心思想
  5. 连续小波变换
  6. 母小波的选择
  7. 多分辨率分析
  8. 与短时傅里叶对比
  9. 实际应用场景
  10. AI 应用场景
  11. Python 演示
  12. 常见误区
  13. 面试题

可视化演示

展示小波变换如何同时捕获信号的时间和频率信息,对比不同母小波的波形特征。

本节配有交互动效(进入视口后自动加载,约 3KB)。

小波变换时频分析 chirp信号:频率随时间变化的非平稳信号 时频图:同时显示时间和频率,颜色表示能量 多尺度:不同scale捕获不同频率成分 W(a,b) = (1/√a)∫x(t)ψ*((t-b)/a)dt 小波变换同时给出时间和频率信息

傅里叶的局限

演唱会散场后,音响师把全景录音交给那位爱写总结的师傅。师傅听完,交出一张“音色清单”:全场有低频贝斯、有高频泛音、有稳定的节拍——每样都写得明明白白。可当你追问“贝斯的高潮在几分几秒?那声刺耳啸叫又出现在哪首歌里?”师傅摊手:我记录下来的是全场平均,时间早就被摊平了。这就是傅里叶变换给分析者的第一课:它擅长回答“有什么”,却对“在何时”无能为力。

傅里叶变换的基本操作,是把一段信号分解成无数个不同频率的正弦波之和,再用一个系数告诉你每个频率“存在得多强烈”。它的公式对全部时间做积分,时间轴因此被彻底抹平。对于转速恒定、频率长期稳定的平稳信号,这么做没什么损失;可现实世界里的脑电、振动、地震波,频率总在随时变化,属于非平稳信号。傅里叶的“歌单”里,突发尖峰的能量会被摊薄到整个频谱上,几乎看不见。

傅里叶变换的数学形式如下:

这份“歌单”并非无用——对于稳定的电流、匀速转动的齿轮,它仍是最高效的总结。但如果你想抓的是“哪首歌的高潮在哪一秒炸开”,傅里叶就露馅了。这正是我们需要换一台“可调焦镜头”的起点。

X(f)=∫−∞∞x(t)e−j2πft dtX(f) = \int_{-\infty}^{\infty} x(t) e^{-j 2\pi f t} \, dt
  1. x(t) 待分析信号把一段随时间变化的信号(比如录音波形)当作输入。
    x(t)x(t)
  2. 对全部时间做积分从负无穷到正无穷求和,相当于把时间轴上每个瞬间都“叠加”进一个数字里。
    ∫−∞∞⋯ dt\int_{-\infty}^{\infty} \cdots \, dt
  3. 与复正弦相乘用频率 f 的复正弦去“比照”信号,看二者相似到什么程度。
    e−j2πfte^{-j 2\pi f t}
  4. X(f) 频率强度输出的 X(f) 表示整个时间段内频率 f 的总强度,时间位置已经丢失。
    X(f)X(f)

短时傅里叶的困境

音响师被“歌单没有时间”怼得哑口无言,于是换了打法:她扛起摄像机,每两秒“咔”一张照片,把演唱会切成一小段一小段,每段单独做傅里叶。这下时间总算有了粗糙的分段。可新问题立刻冒出来——快门调短,每一张都拍不满一个完整乐句,旋律糊成一团;快门调长,时间分段变得粗钝,想定位“那一秒的尖叫”又力不从心。固定快门的摄像机,永远在“清晰”与“及时”之间左右为难。

短时傅里叶变换(STFT)的思路正是如此:给信号加一个滑动的窗函数,窗内做傅里叶,窗外忽略。窗口宽度一旦选定就全局固定:窗越窄,时间定位越准,但能框住的波形周期越少,频率越模糊;窗越宽,频率越清晰,但时间分辨率跟着变差。这个矛盾背后是一条铁律——海森堡测不准原理:时间和频率分辨率不能同时无限提高,窗函数就像一只固定大小的盘子,装得下时间就装不下频率,装得下频率就装不下时间。

STFT 的公式如下:

固定快门的方格相册,总是顾此失彼。想看清“哪首歌在哪一秒开了高音”,音响师需要的不再是“更聪明的快门”,而是一只会自动变焦的镜头——这正是小波登场的理由。

STFT(t,f)=∫−∞∞x(τ)w(τ−t)e−j2πfτ dτ\mathrm{STFT}(t, f) = \int_{-\infty}^{\infty} x(\tau) w(\tau - t) e^{-j 2\pi f \tau} \, d\tau
  1. 窗函数 ww 是一小段只在某区间取值的平滑函数,像镜头快门一样截出局部信号。
    w(τ−t)w(\tau - t)
  2. 以 t 为中心平移窗函数滑到时刻 t 处,才把 t 附近的信号框出来,其余部分压成零。
    w(τ−t)w(\tau - t)
  3. 框内做傅里叶对被框住的一小段信号执行与傅里叶相同的复正弦比照。
    x(τ)w(τ−t)e−j2πfτ dτx(\tau) w(\tau - t) e^{-j 2\pi f \tau} \, d\tau
  4. 输出随 t、f 变化结果同时依赖时间 t 与频率 f,时间信息终于回来了,却受制于窗口宽度。
    STFT(t,f)\mathrm{STFT}(t, f)

小波核心思想

音响师扔掉固定快门,换上一只可变焦镜头。推远时,镜头囊括整首歌的旋律轮廓,所有音符融成一条高低起伏的曲线;拉近时,某个鼓点、某声尖叫的细节纤毫毕现。她既能在时间轴上自由平移机位——这对应“找到某个时刻”,又能随意缩放焦距——这对应“选中某段频率范围”。变焦与平移组合起来,时间与频率终于可以同时收入取景框。

这只镜头的本体,叫小波(wavelet):一族“有限长度、会振荡、会衰减”的波形。它不像正弦波那样无限延伸,而是像一小朵在有限范围内起伏、随后迅速回落的“浪花”——这就是“小波”名字的由来。对母小波 $\psi(t)$ 做两种操作:伸缩(尺度 $a$)和平移(位置 $b$),就得到全家小波基函数。尺度大,小波被拉宽,对应低频;尺度小,小波被压扁,对应高频。扫描信号时,每个位置、每个尺度都问一句:“这里有没有和我相似的成分?”

小波族的通用形式:

从“全景歌单”到“可变焦镜头”,小波把摄影师的自由度还给了时频分析。接下来要做的,就是正式举起镜头,拍下那本“时频影集”。

ψa,b(t)=1aψ(t−ba)\psi_{a,b}(t) = \frac{1}{\sqrt{a}} \psi\left(\frac{t-b}{a}\right)
  1. 母小波 ψ(t)一个固定形态的、均值为零、有限长度的波形,是“镜头的原始素质”。
    ψ(t)\psi(t)
  2. 尺度参数 aa 控制小波的拉伸程度。a 越大,小波越宽、频率越低;a 越小,小波越窄、频率越高。
    ψ(ta)\psi\left(\frac{t}{a}\right)
  3. 平移参数 bb 决定小波在时间轴上放的位置,对应“镜头对准哪一个时刻”。
    ψ(t−ba)\psi\left(\frac{t-b}{a}\right)
  4. 归一化系数 1/√a保证拉伸或压缩后的波形能量不变,让不同尺度的比较公平。
    1a\frac{1}{\sqrt{a}}

连续小波变换

音响师选定镜头,开始工作。她每换一个“机位+焦距”组合就按一次快门——机位是时间位置 $b$,焦距是尺度 $a$。每张照片记录一个数字:这个位置、这个尺度下,信号与小波有多像。把所有照片按“位置 × 尺度”铺满一面墙,就得到一本巨型时频影集——翻开它,哪一秒出现什么特征,一目了然。

这本影集的拍摄方式,就是连续小波变换(CWT,Continuous Wavelet Transform):让信号 $x(t)$ 与每一个伸缩平移后的小波 $\psi_{a,b}(t)$ 做内积(一种测量“相似度”的运算)。得到的系数 $C(a,b)$ 越大,说明信号在这个时刻、这个频率附近越“像”这朵小波;系数越小,则说明此处几乎不含该特征。把所有系数按 (b, a) 排列,就得到一张时频图:横轴时间,纵轴尺度(反比于频率)。

连续小波变换的公式:

影集虽然庞大——每个 a、b 组合都要算一次——但换来的是“时频一起看”的完整图景。这本影集正是脑电、振动、地震分析里,工程师们苦苦寻找的那本“真相相册”。

C(a,b)=1a∫−∞∞x(t)ψ∗(t−ba)dtC(a, b) = \frac{1}{\sqrt{a}} \int_{-\infty}^{\infty} x(t) \psi^{*}\left(\frac{t-b}{a}\right) dt
  1. 信号 x(t)等待分析的原始波形,比如一段脑电或振动信号。
    x(t)x(t)
  2. 共轭小波函数对伸缩平移后的小波取共轭,再与信号逐点相乘、求和——这就是内积运算。
    ψ∗(t−ba)\psi^{*}\left(\frac{t-b}{a}\right)
  3. 对全部时间求和积分把每个时刻的乘积叠加起来,得到“整体相似程度”这一个数字。
    ∫−∞∞⋯ dt\int_{-\infty}^{\infty} \cdots \, dt
  4. 系数 C(a,b)一个同时携带“时间 b”和“尺度 a”信息的数值,共同构成时频图上的一个像素。
    C(a,b)C(a, b)

母小波的选择

镜头素质决定照片质量,音响师深知这一点。她给自己备了三只镜头:Haar 小波像最基础的定焦镜头,形状是一方一正的台阶,结构简单、计算最快,但拍出的画面“毛糙”;Morlet 小波像柔光人像镜头,外形是高斯包络裹着的正弦波,平滑圆润,最擅长刻画舒缓的旋律调性;墨西哥帽(Mexican Hat)则像微距镜头,中间隆起、两侧下凹,对突然冒出的“尖刺”极其敏感——哪里有棘波、哪里有脉冲,它一眼就能揪出来。

工程里选择母小波的核心原则就一个字:像。母小波的形态与你要找的目标特征越接近,小波系数就越大,定位就越准。脑电里抓癫痫棘波,选用墨西哥帽;旋转机械振动里找早期磨损冲击,常选 Daubechies(db 族)——它们的台阶状波形天然匹配故障冲击;分析平稳的生理节律,Morlet 是稳妥之选。此外还要看计算量:Haar 和 db 族可以做快速离散分解,Morlet 适合做连续精细扫描。

一个合格的母小波必须满足一个基本条件:

换镜头如换小波:选对了,时频图上那根“尖刺”亮得刺眼;选错了,它就淹没在噪点里,和背景毫无区别。镜头盒里装哪几支,是每个时频分析工程师上岗前必须做的功课。

∫−∞∞ψ(t) dt=0\int_{-\infty}^{\infty} \psi(t) \, dt = 0
  1. 对母小波求积分在全部时间上把波形累加,检验它的“平均身高”。
    ∫−∞∞ψ(t) dt\int_{-\infty}^{\infty} \psi(t) \, dt
  2. 结果必须等于 0母小波必须上下对称、均值为零,才能既振荡又衰减,而不是像正弦那样永不消失。
    =0= 0

多分辨率分析

音响师不再满足于手动变焦,她搬来一架无人机。无人机先盘旋在体育场上空,拍下整场演唱会的全景——这是最大尺度,只看到“哪些区域人多、灯光如何”,对应低频的粗略轮廓。接着无人机下降一层,看清看台上的人群分区;再降一层,看清每个人手里的荧光棒。每降一档,上一档被忽略的细节就浮现出来。由远及近,轮廓与细节逐级补全,这就是多分辨率分析——小波世界里最实用的工程思想。

多分辨率分析的数学实现,是把信号拆成两个互补的部分:近似(由尺度函数 $\phi$ 承载的低频轮廓)与细节(由小波函数 $\psi$ 承载的高频信息)。随后,对近似部分继续重复这一拆分,就像无人机逐级下降,每一层都生成一对“近似+细节”。这一过程可以用滤波器组高效实现,形成金字塔式的离散小波变换(DWT):现实设备采集的离散信号,用 DWT 逐级分解、降采样,计算量远小于连续变换,还能无损重构原始信号。

多分辨率分析的分解公式:

无人机每降一档,细节就多一档;“近似+细节”层层相加,原信号分毫不差地复原。这套“高空俯瞰 + 逐级逼近”的组合拳,让 DWT 成为工程里最常用的小波武器。

x(t)=∑kcj0,kϕj0,k(t)+∑j=j0∞∑kdj,kψj,k(t)x(t) = \sum_{k} c_{j_0,k} \phi_{j_0,k}(t) + \sum_{j=j_0}^{\infty} \sum_{k} d_{j,k} \psi_{j,k}(t)
  1. 低频近似项尺度函数 $\phi$ 乘以近似系数 $c$,承载信号的整体轮廓。
    ∑kcj0,kϕj0,k(t)\sum_{k} c_{j_0,k} \phi_{j_0,k}(t)
  2. 各级高频细节从起始层 $j_0$ 到无穷,每一层的小波函数 $\psi$ 乘以细节系数 $d$。
    ∑j=j0∞∑kdj,kψj,k(t)\sum_{j=j_0}^{\infty} \sum_{k} d_{j,k} \psi_{j,k}(t)
  3. 之和等于原信号把所有层级的粗略轮廓与细节加在一起,可以完整还原原始信号。
    x(t)x(t)

与短时傅里叶对比

音响师把两台设备并排摆在桌上做验收。固定快门的 STFT 拍出来,是一张均匀的方格网——每一格都管“固定长度的时间 × 固定宽度的频率”,无论看低频还是高频,网格粗细一成不变。可变焦镜头的小波则像雷达屏:看低频时,用粗线条扫出全局轮廓;看高频时,用细线条抠出局部细节——分辨率随频率自动调配,该粗则粗、该细则细。

两者的关键差异在于“窗口是否固定”。STFT 一旦选定窗长,整张时频图的时间分辨率和频率分辨率就钉死在同一个值上,换任何位置都不变;小波则天然具备多分辨率特性:低频段频率分辨率好、时间分辨率粗,适合看大势;高频段时间分辨率好、频率分辨率粗,适合抓瞬变。代价也明摆着——CWT 要对每个尺度、每个位置都做积分,计算开销更大,而且结果依赖母小波的选择;STFT 直接用 FFT 加速,工程实现简单得多。

尺度与频率之间的近似换算关系:

固定快门的方格网永远等宽,可变焦镜头却能“低频看轮廓、高频抓细节”。鱼与熊掌不可兼得?小波用变焦换了个打法:按需分配,动态平衡。

f≈fca⋅Δtf \approx \frac{f_c}{a \cdot \Delta t}
  1. 母小波中心频率 f_c每种母小波有一个固有中心频率,是镜头固有的“基准色”。
    fcf_c
  2. 除以尺度 a尺度越大、小波越宽,对应频率越低,二者成反比。
    fca\frac{f_c}{a}
  3. 再除以采样间隔 Δt把离散采样时间折算成真实的物理频率(单位 Hz)。
    f≈fca⋅Δtf \approx \frac{f_c}{a \cdot \Delta t}

实际应用场景

可变焦镜头终于装上了三大工作台。医院的神经科值班室里,医生面对一整夜脑电记录,用 CWT 时频图寻找癫痫发作前突然冒出的“棘波”——它们像红色烟火棒一样贯穿宽频,瞬间就能被框出来。地质勘探队的处理机上,小波多分辨率分析正在压掉地震数据里的随机噪音,同时保住深层反射的微弱信号。工厂车间里,工程师对振动传感器做 db 小波逐级分解,细节系数的能量一旦异常跳变,就预示着轴承开始磨损。

三大场景背后共享同一个数学引擎——小波系数。以脑电棘波检测为例:先对信号做 CWT,得到每个时刻、每个频率上的小波系数;再将系数平方得到能量,能量异常高的时段就是可疑的棘波窗口,可以送入深度学习模型做自动标注。地震去噪则用 DWT 把信号分解到多层,把集中在高频细节层上的随机噪音置零,再用保留的近似层和细节层重构,反射波层位就清晰了。故障诊断里的逻辑类似:越是“突然”的故障特征,越会先在高频细节层和宽频脉冲里露头。

小波能量图的数学定义:

从“歌单”到“节目单”,从固定快门到可变焦镜头——当信号里藏着突发特征的秘密时,小波会让它无所遁形。医生看得见棘波,勘探队听得见深层的回声,工厂的工程师赶在轴承彻底报废前拉响警报:时频一起看,原来这么有力量。

E(a,b)=∣C(a,b)∣2E(a, b) = |C(a, b)|^2
  1. 取系数绝对值小波系数既能取正也能取负,求绝对值得到幅值大小。
    ∣C(a,b)∣|C(a, b)|
  2. 平方得到能量幅值平方后,显著特征变成亮斑,时频能量图上格外醒目。
    E(a,b)=∣C(a,b)∣2E(a, b) = |C(a, b)|^2

AI 应用场景

医疗脑电棘波自动检测

阶段:数据预处理与特征提取

解决的问题:传统医生靠肉眼看数小时脑电,效率低且容易漏检。傅里叶变换只能告诉医生“脑电里有很多高频成分”,却说不清这些高频出现在哪一秒;小波 CWT 的时频图则能精准定位每个棘波突发的时刻和频段,再结合深度学习分类器自动标注异常区段,漏检率大幅下降。

具体案例:某三甲医院癫痫中心收集了 2000 小时头皮脑电,先用 Morlet 小波做 CWT 得到时频能量图,再送入二维 CNN 自动识别含有棘波的短窗口。系统把医生阅图时间从每人每例 40 分钟缩短到 5 分钟,棘波检出率从 82% 提升到 96%。

旋转机械早期故障诊断

阶段:信号特征工程

解决的问题:轴承故障的早期特征是振动信号中突然出现的窄脉冲,能量微弱、易被噪声淹没。固定窗口的 STFT 因分辨率恒定,很难同时保住脉冲的“时间准确”和“频带清晰”;小波多分辨率分析恰好匹配这种“低频看趋势、高频看冲击”的需求,让 AI 模型从细节系数里提取到有效故障特征。

具体案例:某风电场的齿轮箱振动监测项目中,工程师用 db4 小波对振动信号做 5 层分解,计算各层细节系数的峭度和能量比,输入随机森林诊断模型。系统在轴承出现肉眼可见损伤前 21 天发出了预警,避免了整机停机损失。

地震资料随机噪声压制

阶段:信号去噪与重建

解决的问题:地震勘探采集到的信号里,有效反射波通常是低频平滑的,而随机噪声往往分布在高频细节层。小波 DWT 能高效地把信号拆成“近似+细节”,再对细节层做阈值收缩(软阈值去噪),在保住地层反射层位的同时滤除噪声,效果优于传统带通滤波。

具体案例:某油田对三维地震数据做小波域去噪后,深层反射波的同相轴连续性明显改善,构造解释人员识别断层的能力提升,钻井部署的目标层深度误差从 ±15 米缩小到 ±5 米。

Python 演示

python47 行
import numpy as npimport matplotlib.pyplot as pltimport pywt  def demo_nonstationary_signal():    """构造非平稳演示信号:低频正弦 + 高频正弦 + 脉冲尖峰"""    t = np.linspace(0, 1, 1024, endpoint=False)    signal = np.zeros_like(t)    signal[t < 1 / 3] = np.sin(2 * np.pi * 5 * t[t < 1 / 3])    signal[(t >= 1 / 3) & (t < 2 / 3)] = np.sin(2 * np.pi * 30 * t[(t >= 1 / 3) & (t < 2 / 3)])    signal[t >= 2 / 3] = 0.8 * np.exp(-((t[t >= 2 / 3] - 0.78) / 0.02) ** 2)    return t, signal  def cwt_analysis(signal, scales):    """用 Morlet 小波做连续小波变换,返回时频系数"""    coefs, freqs = pywt.cwt(signal, scales, 'morl', sampling_period=0.001)    return coefs, freqs  def plot_time_frequency(t, signal, coefs, freqs):    """绘制信号与 CWT 时频图"""    fig, axes = plt.subplots(2, 1, figsize=(10, 6), sharex=True)    axes[0].plot(t, signal, color='#818CF8')    axes[0].set_title('非平稳演示信号:低频 -> 高频 -> 脉冲')    axes[0].set_ylabel('幅值')    im = axes[1].imshow(np.abs(coefs), aspect='auto',                        extent=[t[0], t[-1], freqs[-1], freqs[0]],                        cmap='viridis')    axes[1].set_ylabel('频率 (Hz)')    axes[1].set_xlabel('时间 (s)')    axes[1].set_title('CWT 时频图:时间与频率同时可见')    fig.colorbar(im, ax=axes[1], label='小波系数幅值')    plt.tight_layout()    plt.show()  def main():    t, signal = demo_nonstationary_signal()    scales = np.arange(1, 128)    coefs, freqs = cwt_analysis(signal, scales)    plot_time_frequency(t, signal, coefs, freqs)  if __name__ == '__main__':    main()
目的:构造一段“低频 → 高频 → 脉冲”的非平稳演示信号,用 PyWavelets 库的 Morlet 小波做连续小波变换,画出信号波形与 CWT 时频图,直观展示小波“时频一起看”的能力。
  1. signal[t < 1 / 3] = np.sin(2 * np.pi * 5 * t[t < 1 / 3])先填充前三分之一为 5Hz 低频正弦,模拟“缓慢的伴奏”,是平稳部分。
  2. signal[(t >= 1 / 3) & (t < 2 / 3)] = np.sin(2 * np.pi * 30 * t[(t >= 1 / 3) & (t < 2 / 3)])中间三分之一换成 30Hz 高频正弦,频率突变,制造非平稳性。
  3. signal[t >= 2 / 3] = 0.8 * np.exp(-((t[t >= 2 / 3] - 0.78) / 0.02) ** 2)末尾插入一个高斯“尖峰”脉冲,模拟脑电棘波这类突发特征。
  4. coefs, freqs = pywt.cwt(signal, scales, 'morl', sampling_period=0.001)用 Morlet 母小波对所有尺度、所有时刻做连续小波变换,返回时频系数。
  5. axes[1].imshow(np.abs(coefs), aspect='auto', extent=[t[0], t[-1], freqs[-1], freqs[0]], cmap='viridis')把系数幅值画成时频图,越亮代表该时刻该频率成分越强,傅里叶给不出的“时间轴”就在这里。
  6. if __name__ == '__main__': main()让脚本可以直接运行,得到完整的双面板演示图。

常见误区

误区看到小波变换输出的纵轴叫“尺度”,小白的直觉是“尺度 a=10 就是 10Hz”,直接把时频图上的坐标当频率去读。

正解尺度 a 是母小波的伸缩倍数,与频率成反比:a 越大,小波被拉得越宽,对应的中心频率越低;a 越小,小波越窄,频率越高。真实频率需要用母小波中心频率 f_c 和采样间隔 Δt 代入公式 f ≈ f_c / (a·Δt) 换算。时频图上看到的 Hz 刻度,是工具帮你换算后的结果。

为何常见:小波时频图的纵轴最终常标成频率,但底层输出的坐标仍是尺度,两者概念不同,初学者把“显示结果”错当“原始坐标”。

误区小波能“时频一起看”,听起来是傅里叶的全面升级版,于是无论信号平稳与否,一律用小波,觉得不用就落伍了。

正解平稳信号(频率成分长期稳定)用傅里叶最合适——频谱干净、计算高效、无需调参。小波的优势恰恰在非平稳信号上:它回答的是“什么时候出现什么频率”,这是傅里叶回答不了的问题。拿小波强行分析平稳信号,反而要面对母小波选择、尺度配置等额外复杂度,收益却微乎其微。

为何常见:看到小波功能多、效果炫,容易默认“复杂=更好”,忽略了方法必须匹配问题本质这条基本原则。

误区在短时傅里叶变换里反复把窗长调小,以为时间分辨率可以无限提高,窗越小越好。

正解海森堡测不准原理是数学铁律:窗口变小,时间分辨率确实提高,但频率分辨率必然下降——窗内框不全一个完整周期,频带被抹宽;反过来窗口变大,频率清晰了,时间又糊了。这不是调参技巧能绕开的,STFT 无法同时获得高时间分辨率和高频率分辨率。

为何常见:日常经验的“快门越快画面越清晰”深入人心,但时频分析里“快”的代价是看不清颜色(频率),这一物理直觉与数学约束相冲突。

误区既然都叫小波变换,用 Haar 还是 Morlet 应该差不多,选哪个只影响速度,不影响结果。

正解母小波决定了你“拿着什么形状的镜头找特征”。Haar 适合陡变、方块状信号;墨西哥帽对尖峰脉冲最敏感;Morlet 对平滑调节性信号最匹配。选错母小波,目标特征的小波系数会被埋没在背景里,时频图的“亮点”根本亮不出来,定位能力大打折扣。

为何常见:不同母小波画出的时频图都有彩色色块,小白觉得“有颜色就行”,忽视了颜色的强弱分布完全取决于镜头形状是否与特征相似。

误区以为 DWT 就是把 CWT 的尺度—位置网格取稀疏的点,本质上还是同一套内积扫描。

正解DWT 走的是多分辨率分析的滤波器组路线:每一级用低通/高通滤波器把信号拆成“近似+细节”,再对近似部分下采样继续拆分,金字塔式逐级分解。它可以完全重构原信号,计算效率远超 CWT 的全网格积分。二者理论出发点不同,DWT 不是简单的抽样关系。

为何常见:两者名字都带“小波变换”,容易让初学者误以为它们只是同一算法的不同精度版本。

面试题

Q1. 傅里叶变换最核心的局限是什么?

单选题 · easy

  • A.无法直接得到信号的振幅大小
  • B.无法直接得到信号的频率大小
  • C.无法直接得到信号的时间位置← 正确答案
  • D.无法直接得到信号的能量信息

答案:C。傅里叶变换对全部时间做积分,把每个时刻的信息“摊平”进一个频率强度,因此只知道“有哪些频率”,不知道“频率出现在什么时候”。振幅、频率、能量它都能给,唯独时间位置被积分抹掉了,这正是小波要补的短板。

Q2. 短时傅里叶变换通过什么方式引入时间信息?

单选题 · easy

  • A.对信号窗口截断再分别分析← 正确答案
  • B.对信号整体做傅里叶展开
  • C.用不同尺度小波匹配信号
  • D.把信号切割成对称波形

答案:A。短时傅里叶变换的核心是加窗:用滑动窗函数把信号切成一段段,再对每一段做傅里叶,从而得到“每个时间片段里的频谱”。B 是纯傅里叶的做法,C 是小波的做法,D 不构成任何标准方法。

Q3. 下列哪些属于常用的母小波函数?

多选题 · mid

  • A.Haar 小波(方波台阶形态)← 正确答案
  • B.Morlet 小波(高斯正弦波)← 正确答案
  • C.Mexican Hat(墨西哥帽)← 正确答案
  • D.Hamming 窗(平滑截断窗函数)

答案:ABC。Haar、Morlet、Mexican Hat 都是经典母小波,分别适合阶跃、平滑调谐和尖峰检测。Hamming 是信号处理里的窗函数,用于 STFT 加窗,不属于小波函数,也没有“伸缩平移生成小波族”的能力。

Q4. 在小波变换中,尺度参数 a 与频率 f 的关系是?

单选题 · mid

  • A.a 越大对应频率越高
  • B.a 越大对应频率越低← 正确答案
  • C.a 与频率完全无关
  • D.a 与频率精确相等

答案:B。尺度 a 是母小波的伸缩倍数:a 越大,小波被拉伸得越宽,振荡越慢,对应中心频率越低;a 越小,小波越窄,振荡越快,对应频率越高。二者成反比,且频率还需结合母小波中心频率和采样间隔换算,并不精确相等。

Q5. 海森堡测不准原理在时频分析中意味着什么?

单选题 · mid

  • A.时间分辨率可以无限提高
  • B.频率分辨率可以无限提高
  • C.时间与频率分辨率不可兼得← 正确答案
  • D.时间和频率可以完全分离

答案:C。该原理表明,窗口越窄则时间定位越准但频率越模糊,窗口越宽则频率越清晰但时间越粗糙,二者存在数学上无法突破的乘积下界。这也是 STFT 固定窗口两难困境的根源,任何时频分析方法都受此约束。

Q6. 连续小波变换系数 C(a,b) 的物理含义是什么?

单选题 · mid

  • A.信号中全部频率成分的能量总和
  • B.信号与该位置小波波形的相似程度← 正确答案
  • C.信号在该时间点的瞬时幅值大小
  • D.信号中心频率与平均周期之比

答案:B。C(a,b) 是信号与尺度 a、位置 b 处小波基函数的内积,衡量信号在“这个时刻、这个频段”与该小波形态有多相似。系数越大越像,越大越突出;它不是总能量、也不是瞬间幅值,而是一个“局部相似度”指标。

Q7. 对带有突发尖峰的非平稳信号,最合适的分析方法是哪一种?

单选题 · easy

  • A.直接进行傅里叶变换
  • B.使用小波变换做时频分析← 正确答案
  • C.只使用低通滤波器滤波
  • D.用固定窗口滑动平均处理

答案:B。非平稳信号的标志是频率随时间变化,突发尖峰更需要“知道出现在何时”。小波变换能同时在时间和频率两个维度定位特征,是这类问题的首选。傅里叶丢时间,低通滤波和高通滤波恰会把尖峰抹平或割裂,都不合适。

Q8. 小波变换相对短时傅里叶变换的核心优势是什么?

单选题 · hard

  • A.频率分辨率在所有频段恒定
  • B.时间分辨率在所有频段恒定
  • C.高低频分辨率可自适应调整← 正确答案
  • D.无需考虑母小波的选择问题

答案:C。STFT 窗口固定,整张时频图的分辨率处处相同;小波则通过改变尺度自动调整:低频段频率分辨率好、时间分辨率粗,高频段时间分辨率好、频率分辨率粗。这种“变焦”特性让小波更贴合非平稳信号的多尺度本质,代价是必须选母小波。

Q9. 关于小波变换与傅里叶变换的区别,下列说法正确的有?

多选题 · mid

  • A.小波能同时展示时间与频率信息← 正确答案
  • B.傅里叶变换隐藏了信号的时间信息← 正确答案
  • C.两种方法都适合分析非平稳信号
  • D.小波变换不需要任何基函数参与

答案:AB。小波以伸缩平移的小波族为基,输出系数同时携带位置与尺度信息;傅里叶以无限正弦为基,积分抹掉了时间坐标。C 错误:傅里叶默认平稳性,不适合突变的非平稳信号。D 错误:小波必须依赖母小波生成的基函数族。

Q10. 关于小波尺度参数与小波形态的关系,正确的有?

多选题 · hard

  • A.尺度大对应低频:看整体轮廓← 正确答案
  • B.尺度小对应高频:看局部细节← 正确答案
  • C.尺度的大小反映小波的拉伸程度← 正确答案
  • D.尺度参数通常与频率完全无关

答案:ABC。尺度 a 就是母小波的伸缩量:a 大、小波宽而平缓,匹配低频成分,适合观察信号的大致起伏;a 小、小波窄而急促,匹配高频成分,适合定位细节和突变。D 错误:尺度与频率呈反比关系,是时频图纵轴的底层坐标。