时频掩蔽技术。

掩蔽效应

声掩蔽(auditory masking)是指一个声音的听阈因另一个声音的存在而上升的现象。纯音被白噪声所掩蔽时,纯音听阈上升的分贝数,主要决定于以纯音频率为中心一个窄带噪声的功率。

声掩蔽主要决定于以纯音频率为中心一个窄带噪声的功率。这个窄带的频率宽度是随着纯音频率的不同而变化的,称为临界频带。在听觉频率尺度上,一个临界频带的宽度等于1巴克。临界频带的概念是美国科学家H.富来车在20世纪40年代提出来的。这些频带与听觉滤波器有关。在频率上一个强的低频纯音可掩蔽高频纯音。在时间上除了即时掩蔽外,还存在一个声音可对它后面的声音产生掩蔽,称为前向掩蔽;一个声音也可对它前面的声音产生掩蔽,称为后向掩蔽。复合纯音的掩蔽比较复杂,与它的频率组合与相位关系有关,有时产生“时间窗”效应,即在某一时段内产生的掩蔽很小。如果一侧耳输入信号,另一侧耳输入噪声,则可在中枢产生掩蔽。

声音信号大多数时候时非稳态的瞬时信号,声压级随着时间变化很快,即强音后面跟着弱音,弱音后面又可能跟着强音。比较强的声音往往会掩蔽随后到来的较弱音。

【应用】掩蔽效应看来是噪声对信号的一种干扰,但也可在语音通信中加以利用。如数字语音压缩通信中,可借助掩蔽效应使嵌入的加密密码听不出来,即不因密码而降低通话质量。

【应用】根据掩蔽效应的原理,才衍生出电声技术指标中的SNR(信号噪声比),以及THD(谐波失真)等。当噪声或者失真保持在一定范围内的时候,对听觉效果没有影响。

一个较弱的声音(被掩蔽音)的听觉感受被另一个较强的声音(掩蔽音)影响的现象称为人耳的“掩蔽效应。被掩蔽音单独存在时的听阈分贝值,或者说在安静环境中能被人耳听到的纯音的最小值称为绝对闻阈。

实验表明,3kHz—5kHz绝对闻阈值最小,即人耳对它的微弱声音最敏感;而在低频和高频区绝对闻阈值要大得多。在800Hz--1500Hz范围内闻阈随频率变化最不显著,即在这个范围内语言可储度最高。在掩蔽情况下,提高被掩蔽弱音的强度,使人耳能够听见时的闻阈称为掩蔽闻阈(或称掩蔽门限),被掩蔽弱音必须提高的分贝值称为掩蔽量。

BSS中的时频掩蔽

新近的研宄将语音分离看作一个有监督学习问题新近的研宄将语音分离看作一个有监督学习问题。

早期工作受到了计算听觉场景分析中时频掩蔽技术的启发。在计算听觉场景分析中的一个重要的目标是理想二值掩蔽(IBM)。

理想二值掩蔽在带噪语音的时频表示上标注出特定时频单元是否被目标语音主导,即目标语音的能量是否高于噪声的能量。根据人类听觉系统的掩蔽效应,时间、频率相近的(在同一个时频单元内的)两个声音信号中,能量低的那个信号会被能量高的那个掩蔽,听觉系统无法感知到被掩蔽掉的信号。利用理想二值掩蔽去除噪声主导的部分,人们就无法感知到噪声的存在了。

当把理想二值掩蔽作为计算目标时,语音分离就变成了一个二元分类问题。在训练的时候,把理想二值掩蔽作为训练目标,测试时再用训练好的模型来预测理想二值掩蔽。理想二值掩蔽是有监督的语音分离研究中使用的第一个训练目标。

汪德亮等人系统分析了以上的特征,使用拉索(Lasso)方式选择出了对语音分离最有效的特征组合为:梅尔倒谱系数、相对谱变换感知线性预测系数、振幅调制谱和语音基音特征。

目前,在有监督的语音分离中,最常使用的输入特征是语音短时傅里叶变换的振幅谱。

输出信号:目标语音或各种时域掩蔽。

【理想二值掩蔽】:理想二值掩蔽是最早使用的训练目标,在一个时频单元里,如果局部信噪比超过一个阈值,理想二值掩蔽在这个单元是1,否则是0。理想二值掩蔽里面的非零值标注出了目标语音主导的时频单元。

【理想浮值掩蔽】:

【整体模型】:

参考

https://blog.csdn.net/hi_zhengjian/article/details/78959194

https://blog.csdn.net/dream_bin123/article/details/80031447?utm_source=blogxgwz4

Time Frequency (T-F) Masking Technique的更多相关文章

  1. [Mathematics][MIT 18.03] Detailed Explanation of the Frequency Problems in Second-Order Differential Equation of Oscillation System

    Well, to begin with, I'd like to say thank you to MIT open courses twice. It's their generosity that ...

  2. Libfilth(一个滤波器C库)使用

    Libfilth使用说明 winshton 2009年2月 (*本文大部分翻译自libfilth,还有一部分是个人使用实践 *时间水平均有限,翻译的不完整,尤其第二章可以忽略) 版本历史修改记录 版本 ...

  3. ffmpeg full help

    Hyper fast Audio and Video encoder usage: ffmpeg [options] [[infile options] -i infile]... {[outfile ...

  4. C++高精度计算代码运行时间(转载)

    转载:http://blog.csdn.net/rrrfff/article/details/6583410 //在定时前应该先调用QueryPerformanceFrequency()函数获得机器内 ...

  5. Cisco IOS IP Service Level Agreementv (IP SLA)

    Responder and Control Protocol 1.Responder内嵌在思科目标路由器中的一个组件,用来对IP SLA请求包做应答,通过对应达包添加时间戳属性,以提高测量计算的准确性 ...

  6. openstack中运行定时任务的两种方法及源代码分析

    启动一个进程,如要想要这个进程的某个方法定时得进行执行的话,在openstack有两种方式: 一种是通过继承 periodic_task.PeriodicTasks,另一种是使用loopingcall ...

  7. 一个matlab数字图像处理程序的解释

    clc; %clc是清除command window里的内容 clear all; %clear是清除workspace里的变量 close all; %close all来关闭所有已经打开的图像窗口 ...

  8. LoRa术语

    ADR      Adaptive Data Rate          自适应数据率 AES      Advanced Encryption Standard        高级加密标准 AFA  ...

  9. 10个重要的算法C语言实现源代码

    包括拉格朗日,牛顿插值,高斯,龙贝格,牛顿迭代,牛顿-科特斯,雅克比,秦九昭,幂法,高斯塞德尔 .都是经典的数学算法,希望能开托您的思路.转自kunli.info 1.拉格朗日插值多项式 ,用于离散数 ...

随机推荐

  1. JVM 堆内存设置原理

    堆内存设置 原理 JVM堆内存分为2块:Permanent Space 和 Heap Space. Permanent 即 持久代(Permanent Generation),主要存放的是Java类定 ...

  2. 记一次redis主从同步失败

    zabbix告警突然从某个时间点开始提示CPU使用高,网卡流量也一直居高不下. 首先查看redis日志,发现告警时间点redis主节点被重启了,发生了主备切换,并且在日志中发现这么一段 [3081] ...

  3. logstash解析tomcat的catalina.out日志字段

    filter { mutate { remove_field => ["@version","prospector","input", ...

  4. nginx+lua+storm的热点缓存的流量分发策略自动降级

    1.在storm中,实时的计算出瞬间出现的热点. 某个storm task,上面算出了1万个商品的访问次数,LRUMap 频率高一些,每隔5秒,去遍历一次LRUMap,将其中的访问次数进行排序,统计出 ...

  5. java之spring mvc之Controller配置的几种方式

    这篇主要讲解 controller配置的几种方式. 1. URL对应 Bean 如果要使用此类配置方式,需要在XML中做如下样式配置 <!-- 配置handlerMapping --> & ...

  6. 安卓自定义View基础 --坐标系,角度弧度,颜色

    转自:https://www.gcssloop.com/customview/CustomViewIndex/ 1.坐标系 2.角度弧度 3.颜色 一.屏幕坐标系和数学坐标系的区别 由于移动设备一般定 ...

  7. JS把格林威治时间转换为北京标准时间

    function fermitTime(time){ var now = new Date(time); var year = now.getFullYear(); ; var date= now.g ...

  8. intellij IDEA github clone 指定分支代码

    1.问题描述 在实际开发中,我们通常会使用idea克隆一个新项目(clone),通常情况下,我们默认克隆的是master分支,但是如果master分支只是一个空文件夹而已,真正的代码在develop分 ...

  9. Linq Left Join;linq左连接 (转载)

    来源 https://www.cnblogs.com/xinjian/archive/2010/11/17/1879959.html 准备一些测试数据,如下: use Test Create tabl ...

  10. Clickhouse高可用配置总结

    1. 简述 Clickhouse默认是多分片单副本集群,分布式表的配置是每个分片只有一份,如果某个节点挂掉的话,则会直接导致写入或查询异常:Clickhouse是具有高可用特性的,即每个分片具有2个或 ...