子带分解。

例如语音信号是宽带信号,根据奈奎斯特采样定理,采样率为16kHz的语音信号的有效带宽是8KHz,不论是对于降噪,aec,vad,波束形成亦或是logfbank特征提取,我们都期望更精细的处理以提高准确性,因为有时噪声就是带限信号,而回声消除要能处理的时间比较长,就需要滤波器抽头数比较多,这样积累的数据长度和计算量就比较大,同理波束形成技术也是空时域滤波技术,也可以划分成子带进行更为精细的处理。
首先划分成多个子带,用到的必然是傅里叶变换,这里通常被称为STFT,也就是截取一段时长然后滑窗做FFT变换,由于语音在10ms~30ms内可以看成是稳态的,所以通常就是这段时长内做FFT,需要提醒的是不同算法在选择语音时长做STFT时并不一定一样,如果在做降噪时选择10ms,而在aec选择了4ms亦或是logfbank选择了25ms,当然上述的时间根据不同的实现也会有所区别。

【子带编码】子带编码技术,是将原始信号由时间域转变为频率域,然后将其分割为若干个子频带,并对其分别进行数字编码的技术。它是利用带通滤波器(BPF)组把原始信号分割为若干(例如m个)子频带(简称子带)。

【子带编码特点】子带编码技术具有突出的优点。首先,声音频谱各频率分量的幅度值各不相同,若对不同子带分配以合适的比例系数,可以更合理地分别控制各子带的量化电平数目和相应的重建误差,使码率更精确地与各子带的信号源特性相匹配。通常,在低频基音附近,采用较大的比特数目来表示取样值,而在高频段则可分配以较小的编码比特。其次,通过合理分配不同子带的比特数,可控制总的重建误差频谱形状,通过与声学心理模型相结合,可将噪声频谱按人耳主观噪声感知特性来形成。于是,利用人耳听觉掩蔽效应可节省大量比特数。 在采用子带编码时,利用了听觉的掩蔽效应进行处理。它对一些子带信号予以删除或大量减少比特数目,可明显压缩传输数据总量。比如,不存在信号频率分量的子带,被噪声掩蔽的信号频率的子带,被邻近强信号掩蔽的信号频率分量子带等,都可进行删除处理。另外,全系统的传输信息量与信号的频带范围、动态范围等均有关系,而动态范围则决定于量化比特数,若对信号引入合理的比特数,可使不同子带内按需要给以不同的比特数,也可压缩其信息量。

【存在问题】滤波器的具体实现不可能是理想的带通,其幅度影响不可避免地带有有限的滚降。因此在划分子带时,只能使子带间有交叠或者使子带间有一定的间隙。前者若按奈氏频率取样将会产生混叠失真,而后者使原有的部分频带经滤波而损失掉,重建的信号会有失真。针对这个问题的解决方法有正交镜像滤波法和时域混叠消除法。

【关键概念】比如对麦克风阵列信号的采样频率是Fs=64000,傅立叶变换点数是1024,那么对每个子间隔进行J点的离散傅立叶变换,就得到了宽带内J个不相重叠的子带。所以我们得到了宽带内1024个不重叠的子带。每个窄带的频带宽度是64000/1024=62.5Hz;因为语音信号频率主要集中在300~3000Hz之间,而且某点n所表示的频率为:Fn=(n-1)*Fs/N,所以我们选取的测试数据主要集中在5~49个频点之间,超过或者小于这个范围测试的话一般会出现测试偏差,或者出现旁瓣,影响主瓣峰值位置的判断。

参考

https://blog.csdn.net/shichaog/article/details/77379998

https://blog.csdn.net/liusandian/article/details/51966740

Subband Decomposition的更多相关文章

  1. Matrix QR Decomposition using OpenCV

    Matrix QR decomposition is very useful in least square fitting model. But there is no function avail ...

  2. A.Kaw矩阵代数初步学习笔记 7. LU Decomposition

    “矩阵代数初步”(Introduction to MATRIX ALGEBRA)课程由Prof. A.K.Kaw(University of South Florida)设计并讲授. PDF格式学习笔 ...

  3. URAL 1320 Graph Decomposition(并查集)

    1320. Graph Decomposition Time limit: 0.5 secondMemory limit: 64 MB There is a simple graph with an ...

  4. 奇异值分解(We Recommend a Singular Value Decomposition)

    奇异值分解(We Recommend a Singular Value Decomposition) 原文作者:David Austin原文链接: http://www.ams.org/samplin ...

  5. We Recommend a Singular Value Decomposition

    We Recommend a Singular Value Decomposition Introduction The topic of this article, the singular val ...

  6. 【转】奇异值分解(We Recommend a Singular Value Decomposition)

    文章转自:奇异值分解(We Recommend a Singular Value Decomposition) 文章写的浅显易懂,很有意思.但是没找到转载方式,所以复制了过来.一个是备忘,一个是分享给 ...

  7. 矩阵分解(rank decomposition)文章代码汇总

    矩阵分解(rank decomposition)文章代码汇总 矩阵分解(rank decomposition) 本文收集了现有矩阵分解的几乎所有算法和应用,原文链接:https://sites.goo ...

  8. 关于SVD(Singular Value Decomposition)的那些事儿

    SVD简介 SVD不仅是一个数学问题,在机器学习领域,有相当多的应用与奇异值都可以扯上关系,比如做feature reduction的PCA,做数据压缩(以图像压缩为代表)的算法,还有做搜索引擎语义层 ...

  9. [转]奇异值分解(We Recommend a Singular Value Decomposition)

    原文作者:David Austin原文链接: http://www.ams.org/samplings/feature-column/fcarc-svd译者:richardsun(孙振龙) 在这篇文章 ...

随机推荐

  1. Linux 常用文件描述

    Linux 常用文件描述 /etc/issue 本地登陆显示的信息,本地登录前 /etc/issue.net 网络登陆显示的信息,登录后显示,需要由sshd配置 /etc/motd 常用于通告信息,如 ...

  2. SQL系列(五)—— 排序(order by)

    对查询结果进行排序是日常应用开发中最为常见的需求,在SQL中通过order by实现.order by是select语句中一部分,即子句. 1.order by 1.1 单列排序 其实,检索出的数据并 ...

  3. 【vue】搭建vue环境以及要安装的所有东西

    参考地址: https://www.cnblogs.com/laizhouzhou/p/8027908.html

  4. Javascript PC Emulator

    Javascript PC Emulator https://bellard.org/jslinux/ JSLinux Run Linux or other Operating Systems in ...

  5. iOS架构:MVVM设计模式+RAC响应式编程

    https://cloud.tencent.com/developer/article/1117009 一:为什么要用MVVM? 为什么要用MVVM?只是因为它不会让我时常懵逼. 每次做完项目过后,都 ...

  6. ECMA6新增语法(待续...)

    块级作用域:  ES6允许你使用块级作用域,不过目前大多数的ES6语法只允许在严格模式下使用("use strict” ). 1 let关键字 作用:声明变量,一个花括号就是一个作用域(每个 ...

  7. JavaWeb第三天--JavaScript

    JavaScript 1. JavaScript概述 1.1 JavaScript是什么?有什么作用? HTML:就是用来写网页的.(人的身体) CSS:就是用来美化页面的.(人的衣服) JavaSc ...

  8. java接口中的成员方法和成员变量

    接口的含义理解:接口可以理解成统一的"协议",而接口中的属性也属于协议中的内容;但是接口的属性都是公共的,静态的,最终的 接口的成员特点:A:成员变量 只能是常量.默认修饰符 pu ...

  9. Python 序列、列表(List)、元组(Tuple)

    序列 序列是Python中最基本的数据结构,包括字符串.列表.元组. 序列,顾名思义,是有序的,序列都有索引,都能进行索引.切片(截取).加(连接).乘(倍增).检查成员的操作. 因为序列有序,可通过 ...

  10. CRM BP函数

    REPORT ZCRM_BP_TEST. """""""""""""& ...