走近特定音频识别(之五)—— 音频预处理技术

上一篇博文向大家介绍了,一个典型的特定音频识别系统的原理如下图所示:

                           走近特定音频识别(之五)—— 音频预处理技术
特定音频识别系统原理图
​    上图中可以看到,离线训练和在线识别两个阶段中,都有 预处理 和 生成特征向量 这两个模块,事实上,这两个模块是大多数音频识别系统(例如特定音频识别、说话人识别、音频场景识别等)所必须的。特别是预处理模块,是几乎所有的音频处理系统(例如语音编码、音频压缩、音频检索等)不可缺少的组成部分。
    预处理,顾名思义,就是在进行系统的核心处理步骤之前所进行的处理动作。不同的音频处理系统,预处理所涉及的步骤及算法也不尽相同。
    一个特定音频识别系统的经典音频预处理模块的处理步骤如下图所示:
                                走近特定音频识别(之五)—— 音频预处理技术
经典音频预处理模块示意图
    首先是解码过程,我们常见的音频文件都是按照不同的编码方式(例如wav、MP3、acc、ape、fla、mp4、wma等)存储在文件系统当中的,因此,在进行识别或者训练之前,必须将不同编码方式下的音频文件通过解码,统一转换为后续处理步骤可以处理的数据格式(例如PCM、wav 等等)。
    解码之后,音频文件需要进行分帧处理,也就是把音频数据按照时间顺序,分割成20毫秒左右的音频片段(被称作音频帧)。实际的操作过程中,往往采用滑窗的方法进行,即采用一个20毫秒长的窗口,从音频的起点开始向后滑动,每隔一段特定的时长(例如10毫秒,这个时长被称作帧移),就做一次分帧处理。在分帧时,往往并不适用矩形窗,而使用双肩并不是直角的窗口,例如汉明(Hamming)窗和汉宁(Hanning)窗等。
    对于特定音频识别系统来说,静音及能量过低的音频片段,对后续的训练和识别过程都是有负面影响的,因此,在预处理阶段去除静音及能量过低的音频片段,是预处理模块的一项基本步骤。一个简单的处理办法是:设定一个能量阈值,能量低于该阈值的音频帧,判断为静音或能量过低的音频帧,予以丢弃。
    接下来的步骤是生成音频段。由于音频帧受时间的限制,所包含的信息相对有限,对于特定音频的共性特征不易表现,因此不能直接采用帧特征进行特定音频的学习和识别,而是将一定数量的音频帧组成音频段,通过分析和处理音频段内的所有帧特征得到音频段特征,利用段特征进行特定音频训练和识别,可以得到更好的识别效果。音频段特征的生成方法如下图所示。
                                  走近特定音频识别(之五)—— 音频预处理技术
   音频段的生成方法示意图
    在实际情况下,音频信号往往受到背景噪声、编码损耗、以及非理想的传输通道的影响,如电话信道、手机信道等等,这些都会对特定音频识别系统的性能造成一定的影响。因此,信道自适应也是一项重要的预处理步骤。
    在倒谱域,卷积噪声的影响变成了加性的。假设传输信道的性质(相对于语音信号而言)在较长的时间内是不变的,因此其倒谱参数也就不变,并且假设卷积噪声同语音信号不相关,因此就可以在倒谱域通过一个高通滤波器,把慢变的卷积噪声滤掉。倒谱均值归一化(Cepstral Mean Normalization, CMN; 又称为倒谱均值相减, Cepstral Mean Subtraction, CMS)是一种简单有效的解决方法,复杂的方法包括RASTA滤波,短时高斯化(CDF),特征映射(Feature Mapping)等。
    到这里,就把一个典型的特定音频识别系统的预处理模块介绍完毕了,里面涉及到了一些专业术语和比较复杂的处理算法,有兴趣的同学可以自行维基百科或者谷歌:) 下一节,将向大家介绍生成特征向量模块。

原创文章,作者:admin,如若转载,请注明出处:https://www.isclab.org.cn/2014/10/28/%e8%b5%b0%e8%bf%91%e7%89%b9%e5%ae%9a%e9%9f%b3%e9%a2%91%e8%af%86%e5%88%ab%ef%bc%88%e4%b9%8b%e4%ba%94%ef%bc%89-%e9%9f%b3%e9%a2%91%e9%a2%84%e5%a4%84%e7%90%86%e6%8a%80%e6%9c%af/

(2)
adminadmin
上一篇 2014年10月28日 下午4:45
下一篇 2014年10月31日

相关推荐

  • 走近特定音频识别(之四)—— 训练和识别

    上篇文章介绍了“识别”和“检索”的区别和关系,从这篇开始,我们将从更近的距离接触特定音频识别,本文将向大家介绍特定音频识别系统的基本构成。     一个典型的特定音频识别系统的原理…

    2014年10月28日
    696
  • 面向操作系统的模糊测试

    本报告主要介绍了关于面向操作系统的模糊测试方法,探讨了操作系统漏洞挖掘的挑战与常见漏洞类型,详细介绍了模糊测试中的基本概念、常用方法以及两种前沿的Linux内核模糊测试技术ACTO…

    2025年2月9日
    515
  • 基于网络一致性的对抗样本检测

    人工智能系统面临着多种安全威胁,其中对抗样本攻击被广泛应用于诸如计算机视觉、自然语言处理、音频处理以及恶意软件检测等多个领域。本文介绍了常见的对抗样本检测方法和原理。特别的,简单分…

    2020年12月20日
    924
  • 计算机启动流程详解2

          计算机从按下电源按钮到操作系统启动完成的过程其实相当复杂,大多数普通用户可能并不了解其中的过程和玄机。本次报…

    2018年6月10日
    643
  • Android进程注入

    1. 基本知识 由于Android系统使用的是Linux内核,在Linux上使用的很多攻防技术都能被应用到Android上,进程注入技术就是其中一种。(以下有关进程注入的描述大多针…

    2015年1月5日
    956
  • 基于深度学习的二进制软件漏洞挖掘

    CVE年度统计结果表明,2018年披露的漏洞数量超过16500,创历史新高。漏洞的数量和复杂程度与日俱增,导致传统二进制漏洞自动化挖掘技术的成本也在不断升高。为迎接这些挑战,研究人…

    2019年12月22日
    1.6K
  • 如何优雅地进行模型训练

    本次报告介绍了机器学习模型训练过程中的显存优化方法。首先介绍了深度学习框架的显存利用机制,随后结合原理和具体实例讲解了“代码级”和“框架级”显存优化方法,引导大家在实际科研过程中更…

    2022年5月5日
    823
  • 媒体安全

    走近特定音频识别(之一)——让计算机分辨出“这是什么声音” 走进特定音频识别(之二)——计算机是靠什么来分辨声音种类的? 走进特定音频识别(之三)——检索 Vs 识别 走近特定音频…

    学术报告 2014年10月18日
    423
  • Spectre攻击及检测

    2018年初,推测执行攻击Spectre的出现表明,一些软件尽管通过了如模糊测试、符号执行等技术的安全检测,但是在执行过程中,攻击者还是可以通过推测执行窃取重要信息。而且,推测执行…

    2022年8月12日
    946
  • 增强认知诊断结果的可解释性

    认知诊断通过挖掘学习者行为、心理和认知之间的关系,利用学习者的学习数据,对其认知状态进行综合评估和诊断,其输出结果,即学生对于不同知识概念的熟练程度应与实际情况相符,具有高度的可解…

    2024年10月17日
    505