SNR计算
S1 = 原始干净语音
N1 = 噪声.
S2 = S1 + N1 (带噪语音)
S3 = 增强后的语音(使用某种算法降噪)
N2 = S3 - S1 (增强后语音中的残留噪声)
SNR的计算公式为(dB)
SNR=10log10∥noise∥2∥signal∥2
SDR的计算公式为
SDR=10log10∥X−Xc∥2∥Xc∥2
其中Xc为带噪语音中的干净分量,X为带噪语音,Xc−X为带噪语音中的噪声分量。计算SNR提升量:
SNR(afterEnhanced)−SNR(beforeEnhanced)=10log10∥N2∥2∥S1∥2−10log10∥N1∥2∥S1∥2
SDR(afterEnhanced)−SDR(beforeEnhanced)=10log10∥S3−S1∥2∥S1∥2−10log10∥S2−S1∥2∥S1∥2=10log10∥N2∥2∥S1∥2−10log10∥N1∥2∥S1∥2
从公式上看,两者完全相同。
SDR是(输入信号的功率)和(输入信号与增强信号之差的功率比),与SNR是一样的,在语音增强中,他们都反应了整体的性能。SDR的性能可以反应SNR的性能.
另外,在下面文献中也有类似的结论
Huang, Po-Sen, et al. “Joint optimization of masks and deep recurrent neural networks for monaural source separation.” IEEE/ACM Transactions on Audio, Speech, and Language Processing (TASLP) 23.12 (2015): 2136-2147.

SDR是输入信号的功率与输入信号与重构信号之差的功率之比。因此,SDR与经典的测量“信噪比”(SNR)完全相同,SDR反映了整体的分离性能。