在分析音频信号中,信噪比是我们经常遇到的概念,这里谈谈自己的理解。
定义
概念
计算方式
10lg(Ps/Pn)
,也是能量维度
20lg(val/ref)
,也是样本维度
指标要求
这里举一个实例深化理解SNR的内涵,请阅读以下文本:
通常简单的量化表示一个数按N bit 进行线形量化,如 PCM按 16bit 量化,即[-1,1] 之间的小数线形均匀的分成 65536份,qstep=(1/2)^15。此种量化每提高1bit,可提高 SNR 6db 左右, 16bit 量化的 SNR=90db,CD 音质即为 16bit PCM,已基本满足人类的听觉需要。——谢湘勇的《音频编码原理讲解和分析》
请思考问题:如何理解,每提高1bit位深,SNR提高6dB?
……
OK,思考完毕,这里说下俺的思路。先理解16bit位深量化时SNR=90dB
,如何来的?
个人分析,整数量化时最小值为1,即噪声误差幅值为1。而信号的最大值为2^bit_depth=2^16=65536
,所以信号的最大幅值为65536。于是,套用SNR幅值公式得:SNR=20lg(max_val/min_val)=90dB
,
理解这个后,1bit位深量化精度就清楚了,多1bit就是乘以2,换到对数域就是+6dB
,计算公式:SNR=20lg(2/1)=6.02dB
。
从而进一步理解何为SNR,信号最大幅度(信号范围)对最小幅度的精度误差(量化精度)的比,即可表征位深量化的SNR(最大信噪比)。