热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

语音去混响算法之WPE(WeightedPredictionErrorforspeechdereverberation)

目录简介信号模型WPE算法(Weightedpredictionerror)参考文献简介背景噪声和空间内声反射产生的混响是声学信号处理和远场语音识别的两大障碍。WPE(Weig

目录

    • 简介
    • 信号模型
    • WPE 算法(Weighted prediction error)
    • 参考文献


简介

背景噪声和空间内声反射产生的混响是声学信号处理和远场语音识别的两大障碍。WPE(Weighted Prediction Error)算法主要用于去除信号中的混响成分,此算法基于线性预测估计,是目前针对去混响(dereverberation)问题的主流算法之一。


信号模型

假设观测信号由D个麦克风采集,则该信号由STFT变换之后可表示为一个D维向量yt,fy_{t,f},其中时间index为t,频率index为f。
在远场情境之下,信号被卷性混响(观测信号为干净信号与混响的卷积)干扰。我们认为信号靠近声源的部分为空间冲击响应(RIR room impulse response),是有益的信号,而尾部的信号干扰ASR,需要被消除。我们假设信号主峰之后的50ms为h(early)h^{(early)},剩下的部分为h(tail)h^{(tail)}
在STFT域我们建立如下模型:
Yt,f=Xt,f(early)+Xt,f(tail)Y_{t,f} = X_{t,f}^{(early) }+ X_{t,f}^{(tail)}
图片来源:https://www.sonible.com/de/blog/nachhall-audioproduktion/


WPE 算法(Weighted prediction error)

WPE的主要思路是首先估计信号的混响尾部,然后再从观测信号中减去混响尾部,得到对弱混响信号的极大似然意义下的最优估计。
混响信号的时域可表达为:
xt,f,d(early)=yt,f,dτ=ΔΔ+K1dgτ,f,d,dytτ,f,d x_{t,f,d}^{(early)} = y_{t,f,d} - \sum_{\tau=\Delta}^{\Delta+K-1} {\sum_{d'}{g_{\tau,f,d,d'}^* y_{t-\tau,f,d'} } }
经过STFT变换后记作:
Xt,f(early)=Yt,fGfHYtτ,f X_{t,f}^{(early)} = Y_{t,f} - G_f^H Y_{t-\tau,f}

dd为麦克风的编号,KK为滤波器的抽头(Filter Tap)数,预测步长Δ>0\Delta>0GfG_f 代表滤波器权重,Yt,fY_{t,f}为观测信号。下图描述了WPE一步预测。
在这里插入图片描述
未完待续。。。


参考文献

Yoshioka, Takuya, and Tomohiro Nakatani. “Generalization of multi-channel linear prediction methods for blind MIMO impulse response shortening.” IEEE Transactions on Audio, Speech, and Language Processing 20.10 (2012): 2707-2720.


推荐阅读
author-avatar
夏未夏至青_872
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有