低信噪比环境下的语音端点检测

  • 端点检测技术语音信号处理 的关键技术之一
  • 为提高低信噪比环境下端点检测的准确率和稳健性,提出了一种非平稳噪声抑制和调制域谱减结合功率 归一化 倒谱距离的端点检测算法

1 端点检测

1-1 定义

  • 定义:在 存在背景噪声 的情况下检测出 语音的起始点和结束点 (这里的重点是 噪声环境下 语音信号的处理)

1-2 应用需求

  • 应用于语音信号处理:语音增强、语音识别、编码和传输
  • 需求是:人们希望在远场或者 嘈杂的环境中 也能用语音控制智能设备,因此研究低信噪比环境下高效的语音控制技术具有一定的实际应用价值

1-3 获取信号端点对噪声处理的帮助

  • 语音端点的 准确定位 有助于排除噪声段的干扰、增强系统处理的实时响应性、降低功耗从而提升系统性能
  • 传统的处理噪声的办法(算法):主要采用 语音特征参数 进行检测,通常可划分为 时域和频域 两大类
  • 时域: 短时能量、短时过零率、短时相关性特征被广泛应用
  • 频域: 谱熵、方差、倒谱距离、小波变换等特征也被认为是端点检测的有效参数

1-4 低信噪比环境下的端点检测

  • 端点检测的性能和 信噪比 密切相关------引出------>话题:低信噪比环境下的端点检测

2 瞬态噪声抑制

  • 背景:越来越多的研究 在端点检测前 增强了语音,这对端点检测的准确性有重要影响。
    传统上的语音增强技术利用 时间平滑 来估计噪声的 功率谱密度PSD 是不够的。
    因此提高算法在复杂环境中的稳健性具有广泛的研究意义。
  • 实际生活中出现的大多都是非平稳噪声
    如典型的瞬态干扰:键盘敲击、敲门声等
  • 具有 时间短、频域广 等特点,会对语音造成极大的干扰

2-1 瞬态 PSD 估计

2-1-1 算法实现简介

  • 利用语音、瞬态噪声、背景噪声的不同变化率,引入一个 可跟踪 瞬态信号快速变化 的 最优改进 对数谱 幅度 估计 (Optimally-Modified Log-Spectral Amplitude Estimator, OM-LSA)算法
    (具体做法是:通过分配一个较小的 平滑参数 来调整 OM-LSA 的噪声 PSD 估计分量,以跟踪输入信号频谱的瞬态变化)

2-1-2 具体实现步骤

  • 1、表示被测信号 y ( n ) y(n) y(n)
    y ( n ) = x ( n ) + d ( n ) + t ( n ) y(n)=x(n)+d(n)+t(n) y(n)=x(n)+d(n)+t(n)

    【 x ( n ) x(n) x(n)为语音信号、 d ( n ) d(n) d(n) 为加性平稳噪声、 t ( n ) t(n) t(n)​为瞬态噪声】

    (感觉和eemd处理很相似:eemd加了一段白噪声)

  • 2、 y ( n ) y(n) y(n) 信号经过加窗、快速傅里叶变换FFT 后可实现 短时傅里叶变换SFFT

  • 3、对 最小控制递归平均MCRA平滑参数 进行调整再加入反因果窗区分瞬态

    可为修正的 OM-LSA 算法提供准确的噪声 PSD估计(这一步感觉这种新处理方法的关键)

2-1-3 改进的噪声 PSD 估计算法流程图

  • 虚线框图为调整部分

  • 注:IFFT为 逆傅里叶变换

  • FFT:快速傅里叶变换
    信号从 时域转换到频域 ,FFT变换的结果是复数(即得到的频域是复数)
  • IFFT:逆快速傅里叶变换
    信号从 频域转换到时域 ,将频域数据(复数)进行虚部取反得到共轭复数然后在进行FFT变换得到时域数据
c 复制代码
%% 使用 快速傅里叶变换算法 计算 Y的逆离散傅里叶变换(X 与 Y 的大小相同)
X = ifft(Y)
% 如果 Y 是向量,则 ifft(Y) 返回该向量的逆变换。   
% 如果 Y 是矩阵,则 ifft(Y) 返回该矩阵每一列的逆变换。
% 如果 Y 是多维数组,则 ifft(Y) 将大小不等于 1 的第一个维度上的值视为向量,并返回每个向量的逆变换。

即 X = = i f f t ( f f t ( X ) ) X==ifft(fft(X)) X==ifft(fft(X)) 等式是成立的

参考文献:一种低信噪比环境下的语音端点检测算法-卜玉婷,曾庆宁,郑展恒.pdf

相关推荐
Dev7z1 小时前
基于Matlab的多制式条形码识别与图形界面(GUI)系统设计与实现
开发语言·matlab
Evand J1 小时前
【MATLAB例程】3D雷达-IMU融合定位系统(基于扩展卡尔曼滤波)|雷达观测距离、俯仰角、方向角,IMU包括6维(加速度与角速度)。附下载链接
开发语言·matlab·跟踪·雷达观测·三维定位·ekf滤波
Evand J2 小时前
【matlabfilter例程】二维平面的雷达测角+测距目标跟踪,单个雷达,KF融合雷达和IMU数据。轨迹绘图、误差绘图输出。附代码下载链接
matlab·雷达·卡尔曼滤波·kf·跟踪·kalman·二维
爱尔兰的楠小楠2 小时前
matlab/simulink与WLS2下ROS2联合仿真环境搭建
matlab·机器人·ros·px4
Dev7z8 小时前
基于OpenCV和MATLAB的椭圆检测系统的设计与实现
人工智能·opencv·matlab
利刃大大2 天前
【c++中间件】语音识别SDK && 二次封装
开发语言·c++·中间件·语音识别
东荷新绿2 天前
MATLAB 2018a 安装教程:30分钟搞定安装
开发语言·matlab·matlab2018a
c***97983 天前
React语音识别案例
前端·react.js·语音识别
jllllyuz3 天前
Matlab实现基于Matrix Pencil算法实现声源信号角度和时间估计
开发语言·算法·matlab
Dev7z3 天前
基于Matlab传统图像处理的风景图像多风格转换与优化
图像处理·matlab·风景