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

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

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

相关推荐
亚图跨际2 小时前
MATLAB和Python及R潜变量模型和降维
python·matlab·r语言·生物学·潜变量模型
ai_xiaogui15 小时前
AIStarter教程:快速学会卸载AI项目【AI项目管理平台】
人工智能·ai作画·语音识别·ai写作·ai软件
远望清一色18 小时前
基于MATLAB的实现垃圾分类Matlab源码
开发语言·matlab
顶呱呱程序1 天前
2-143 基于matlab-GUI的脉冲响应不变法实现音频滤波功能
算法·matlab·音视频·matlab-gui·音频滤波·脉冲响应不变法
山河君1 天前
ubuntu使用DeepSpeech进行语音识别(包含交叉编译)
linux·ubuntu·语音识别
简简单单做算法1 天前
基于Retinex算法的图像去雾matlab仿真
算法·matlab·图像去雾·retinex
昨日之日20061 天前
Moonshine - 新型开源ASR(语音识别)模型,体积小,速度快,比OpenAI Whisper快五倍 本地一键整合包下载
人工智能·whisper·语音识别
其实吧31 天前
基于Matlab的图像融合研究设计
人工智能·计算机视觉·matlab
袁牛逼2 天前
电话语音机器人,是由哪些功能构成?
人工智能·自然语言处理·机器人·语音识别
Matlab程序猿小助手2 天前
【MATLAB源码-第208期】基于matlab的改进A*算法和传统A*算法对比仿真;改进点:1.无斜穿障碍物顶点2.删除中间多余节点,减少转折。
开发语言·嵌入式硬件·算法·matlab·机器人