语音信号处理概念

2022-09-01 10:21:00 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

语音交互

你知道苹果手机有几个麦克风吗?

·

语音交互(VUI)是指人与人/设备通过自然语音进行信息传递的过程。

语音交互的优势

  • 输入效率高。语音输入的速度是传统键盘输入方式的3倍以上。例如:语音电视选台、远场语音交互、语音支持组合指令输出(“播放周星驰电影、要免费的、4星以上的”)
  • 使用门槛低。人类本就是先有语音再有文字,对于那些无法用文字交互的人来说,语音交互学习成本低,能带来极大的便利。例如:还不会打字的小孩,或者不方便打字的老人家
  • 解放双手和双眼,更安全。例如:车载场景通过语音点播音乐和导航,医疗场景(医生在操作设备的时候,可能还需要记录病例)
  • 传递更多的声学信息。声纹、性别、年龄、情感等。

语音交互的劣势

  • 信息接收效率低。例如:文字能快速阅览概括信息,语音的话必须听完才能理解。
  • 复杂的声学环境
  • 心理负担。交互方式不一样,例如:不太愿意通过语音来进行交互,特别是在一些公共场合

人机语音交互发展

  • 1952年,贝尔实验室,阿拉伯数字识别系统Audrey
  • 1962年,IBM-Shoebox
  • ……
  • 2011年,iphone4s,Siri问世
  • 2014年,win8,Cortana
  • 2014年,Amazon发布echo音箱
  • 2016年,Google发布GoogleHome

应用场景

  • 免提通话
  • 电话/视频会议
  • 手机——Siri、小爱同学
  • 车载
  • 智能音响——Amazon
  • 家居——电视语音点台

总结起来就是:家里、车里、路上。

复杂的声学环境

现实中的语音交互系统,无一例外的会受到各种环境不利因素的影响,极大影响了交互成功率和用户体验。

  • 方向性干扰
  • 环境噪声(散射噪声)
  • 远讲产生的混响
  • 声学回声

痛点:人和机器都听不清

一个成功的语音交互产品,意味着对语音交互的场合和使用模式无约束。

前端语音信号处理的意义:

  • 面对噪声、干扰、声学回声、混响等不利因素的影响,运用信号处理、机器学习等手段,提高目标语音的信噪比或主观听觉感受,增强语音交互后续环节的稳健性。
  • 让人听清:更高的信噪比,更好的主观听觉感受和可懂度,更低的处理延时。
  • 让机器听清:更好的声学模型适配,更高的语音识别性能。

总结:语音信号处理的目标,是为了让人和机器更容易听清语音,让语音交互更加自然和无约束。

针对不同的干扰因素,采用不同的信号处理算法   去回声——去混响——盲源分离——波束赋形——语音降噪——自动增益控制

声学回声消除

解混响

  • 盲反卷积法[NeelyandAllen,1979]
    • 估计RIR的逆滤波器
  • 加权预测误差[Takuya,2012]
    • 消除晚期混响,适用于单通道和多通道场景
  • 麦克风阵列波束形成
  • 深度学习用于解混响[Han,2015]
    • 通过DAE、DNN、LSTM或者GAN,实现频谱映射

语音分离

  旨在解决“鸡尾酒会”问题

  • 听觉场景分析法[HuandWang,2004]
    • 本质上是对人的听觉特性的模拟,具体手段是二分类 监督学习
  • 非负矩阵分解[LeeandSeung,2001]
    • 基于统计独立假设,语音信号的稀疏性与谐波特性
  • 多通道技术
    • fixbeamforming,adaptivebeamforming,ICA
  • 基于深度学习的语音分离
    • Deepclustering [Hershey, 2016]
    • Deep attractor network [Luo and Chen, 2017]
    • Permutation invariant training [Yu, 2017]

波束形成

  用于多通道语音增强、信号分离、去混响、声源定位

噪声抑制

  消除或抑制环境噪声,增强语音信号

  • 基于统计模型的方法
    • 最小均方误差MMSE、最大似然估计ML、最大后验估计MAP
  • 基于子空间的方法
    • 利用语音和噪声的不相关性,借助特征值/奇异值分解手段分解到子空间处理
  • 语音增强的核心在于噪声估计
    • 递归平均、最小值追踪、直方图统计是比较常用的噪声估计手段
  • 基于深度学习的语音增强方法
    • 两大类方法:masking&&mapping
    • 通过DNN、CNN、RNN或者GAN,在频域或时域实现(多为频域)

幅度控制

  自动调整信号的动态范围

常用的两种方法

  • 动态范围控制(Dynamic Range Control)
  • 自动增益控制(Automatic Gain Control)

前端信号处理的技术路线

信号处理与深度学习相结合的方案

处理依据——“规则 学习”

  • 客观物理模型
  • 语音信号的时域、频域、空域特性
  • 海量音频数据先验信息

既保留了声音传播的物理规律和信号本身的时域、频域、空域特性,又引入了先验数据统计建模的方法。

优化准则:MSE准则

基于深度学习的前后端联合优化方案

处理依据——“端到端联合建模”

  • 输入多通道麦克风信号,输出语音识别结果
  • 利用近场数据,仿真得到海量的带有各种干扰的训练数据

将前端信号处理与后端ASR声学模型联合建模,用一套深度学习模型完成语音增强和语音识别任务。

优化准则:识别准确率

参考

深蓝学院《语音信号处理》课件

奥本海姆,《信号与系统》,电子工业出版社

奥本海姆,《离散时间信号处理》(Discrete Time Signal Processing, Third Edition)

赵力,《语音信号处理》,机械工业出版社

郑君里,《信号与系统》,电子工业出版社,高等教育本科国家级规范教材

韩纪庆,《语音信号处理》,机械工业出版社

张贤达,《现代信号处理》,清华大学出版社

张贤达,《矩阵分析与应用》,清华大学出版社

VanTrees,检测、估计和调制理论(IV)《Optimumarrayprocessing》

Signals and Systems: an Introduction to Analog and Digital Signal Processing. 1987 Lecture. Alan V. Oppenheim

推荐开源项目

Athena-signal:

Python for Signal Processing:《Python for Signal Processing: Featuring IPythonNotebooks》对应源码,包含信号处理12大类(采样定理、傅里叶变换、滤波器等)、随机过程15大类(高斯马尔科夫、最大似然等)

Speex:A Free Codec For Free Speech。专门语音压缩而设计的,包含超过9种算法:AEC、NS、VAD等,不过现在被Opus替代。

Google WebRTC:一个免费的开放式项目,通过简单的API为浏览器和移动应用程序提供实时通信(RTC)功能。

VOICEBOX: Speech Processing Toolbox for MATLAB:语音处理工具箱,由MATLAB程序组成。超过100个函数,包含语音增强、ASR等在内。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/143728.html原文链接:https://javaforall.cn

0 人点赞