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

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

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

相关推荐
不想当个技术宅27 分钟前
【梯级水电站调度优化】基于自适应权值优化粒子群算法
matlab·粒子群算法·梯级水电站调度优化
蓝色洛特2 小时前
【Matlab元胞自动机】《高速公路人工—自动驾驶混行交通流临界特征研究》
matlab·自动驾驶·元胞自动机·交通仿真
quaer3 小时前
Open-Sora全面开源?
开发语言·算法·机器学习·matlab·矩阵
吱吱鼠叔12 小时前
MATLAB计算与建模常见函数:5.曲线拟合
算法·机器学习·matlab
吱吱鼠叔21 小时前
MATLAB数据文件读写:2.矩阵数据读取
数据库·matlab·矩阵
橙意满满的西瓜大侠21 小时前
matlab入门学习(二)矩阵、字符串、基本语句、函数
matlab
kuan_li_lyg1 天前
MATLAB - 机械臂手眼标定(眼在手内) - 估计安装在机器人上的移动相机的姿态
开发语言·人工智能·matlab·机器人·ros·机械臂·手眼标定
感谢地心引力1 天前
【MATLAB2024b】安装离线帮助文档(windows)
windows·matlab
通信仿真实验室1 天前
(4)MATLAB生成CRC校验码
开发语言·数据结构·matlab
月白风清江有声1 天前
关于KKT条件的线性约束下非线性问题-MATLAB
开发语言·算法·matlab