
-
冲激响应参数
——来自《语音信号处理- 第二期》·17浏览
一般是三种途径:
一是直接在网上找开源数据,像reverb challenge这种评测都会开放一些冲激响应函数供大家仿真和实验;
二是利用image方法,快速得到各种仿真环境中的RIR函数;
三是自己实测实录,准备好扬声器和麦克风,通过扬声器播放一段源信号,如chirp信号或白噪声,通过麦克风采集回来,计算原始信号和回采信号之间的传递函数,也就是RIR函数。
-
冲激响应参数
——来自《语音信号处理- 第二期》·17浏览
补充下,第三种方法,可以利用arta软件,它会直接帮助你计算RIR。当然你也可以自行计算。
-
第三章作业
——来自《语音信号处理- 第二期》·16浏览
代码中,FFT函数的输入输出都放在一个buffer当中(COMPLEX *fftdata),所以不需要返回值。
作业中并不要求大家实现FFT或者IFFT,只要能够调用即可。大部分语言都有FFT或IFFT的标准api或库。
此外,之所以作业中只给了FFT的实现,而没有IFFT,是希望大家能够用FFT的接口,实现IFFT的功能。FFT和IFFT的公式非常像,所以可以用一个核心函数来实现,只要外围的输入输出稍微做些调整即可,这个地方可以稍微思考下。
-
提供一个理解圆周卷积的思路:
1、首先理解线性卷积的计算过程(翻褶,移位,相乘,相加);
2、计算圆周卷积,必须事先指定点数N(因为要做周期延拓)。所以,在这一步需要确认要做多少点数的圆周卷积(如N点);
3、将其中一路信号,进行N点的周期延拓,也就是以N为周期拷贝无限次,变成一个无限长序列;
4、将这个无限长序列,与另一路信号,做线性卷积,结果当然也是一个无限长的序列;
5、取主值序列,得到圆周卷积的结果。
-
离散非周期信号的DTFT在[-pi, pi]上进行研究
——来自《语音信号处理- 第一期》·13浏览
对的,因为周期是2pi,所以主值区间是【-pi,pi】,当然,也可以取【0,2pi】
-
时域上取值为离散,频域上是周期信号
——来自《语音信号处理- 第一期》·15浏览
可以参考采样定理的推导过程:
时域离散,相当于用一个“周期性”冲激序列去采样连续信号,正是这个“周期性”的序列导致频域上的周期性,你可以看到,这个序列的傅里叶变换,同样也是周期性的冲激序列,它与连续信号的频谱卷积之后,频域自然就变成周期的了。
-
关于球面的疑问
——来自《语音信号处理- 第一期》·12浏览
lambda是波长。给定频率和速度,可以计算出波长。
-
关于平面波方向向量a的理解
——来自《语音信号处理- 第一期》·15浏览
完全正确
-
加性噪声是一种理想的噪声吗?
——来自《语音信号处理- 第一期》·13浏览
是的,它们都属于加性噪声。
-
@FeaturePast 是的,MCRA确实是这样的过程,所以,语音存在概率是一个枢纽,它串联起了RA和MC两部分。
-
主动降噪一般有哪些方法
——来自《语音信号处理- 第一期》·19浏览
对于主动降噪,会有一个mic用来采集环境噪声,并将噪声信号送给处理电路进行处理,尽可能得到与环境噪声反向的一路输出信号,通过扬声器播放出来,与真实的环境噪声叠加,实现降噪的效果。通常还会有一个反馈mic,用来采集降噪后的残差信号,以此判断残差信号是不是符合降噪效果,适当调整降噪算法。所以,这是一个典型的自适应滤波场景,采用的方法基本上都是LMS一类自适应滤波方法。
Kuo S M, Morgan D R. Active noise control: a tutorial review 这里有一篇主动降噪算法的综述,可供参考。
-
我们之前的一些实验结论是,这种方式对于echo的消除量影响不大,但是对于后接唤醒系统的性能会有少量的提升,大概零点几个点的唤醒率提升。
-
怎么理解k=0 跟 k=3这个子带序列?
——来自《语音信号处理- 第一期》·16浏览
k=0指的是每一帧时域信号(长度为4)经过FFT之后的第0个频域点,随着信号帧的时间推移,每一帧FFT之后都选取第0个频点的信号,所有这些频点就形成了一个随时间变化的子带序列,这就是k=0这个频点的子带序列。
-
关于语音稀疏性?
——来自《语音信号处理- 第一期》·18浏览
对于一个稀疏信号而言,如果统计它的概率分布,会发现它属于超高斯分布,像语音信号这种近似拉普拉斯分布,就是一种超高斯分布。它的特点是会以很大的概率取值0或者接近0,而以很小的概率取得一个较大的值。你可以随便选一段语音信号,统计它每个时域采样点的取值分布,就会发现绝大多数采样点的取值都是在0附近,只有少数采样点的取值离0的距离比较远。
这种稀疏性在语音增强和分离任务当中,其实是提供了一种前提假设,我们可以认为在一个分析窗(比如1s)内,某个频段始终存在大的语音信号的概率很低,所以我们才可以利用最小值追踪的方法找到噪声所对应的最小值。
-
关于AEC off时的语谱图?
——来自《语音信号处理- 第一期》·15浏览
这种语谱图应该是背景音乐信号的频谱。
音乐与音乐噪声不是一回事,音乐噪声并不是真的音乐,它是经过降噪处理后,由于消噪的效果有限而产生的听感上忽强忽弱的感觉,而AEC这里的echo是实实在在的音乐信号。
-
关于复数卷积与RES的两个问题
——来自《语音信号处理- 第一期》·14浏览
1、w^H * x,因为结果是一个标量,所以取转置之后,就是x^T * conj(w);
2、no的情况,表示既不是double talk,又不是single talk,说明没有远端信号,也就是没有回声,不需要做任何处理。
-
关于GCC-PHAT中的白化(仅仅取相位计算)?
——来自《语音信号处理- 第一期》·20浏览
确实是这样,相位加权就是为了增强尤其是混响环境下GCC估计的稳健性,在中混响环境中的效果要好于GCC。
-
这种理解是符合先验、后验信噪比的定义的,我觉得是ok的。
-
RLS中的wiener解?
——来自《语音信号处理- 第一期》·25浏览
确实可以这么理解,一个不错的理解角度~~ 当然,需要再乘以1/N(取平均)。
-
系数向量前补0,误差后补0的原因?
——来自《语音信号处理- 第一期》·20浏览
我们先来看w(n),在后面补零,计算卷积的时候会得到什么结果呢?可以发现计算卷积的时候,前N个点是圆周卷积,后N个点是线性卷积,也就是我们需要的结果。所以,延续你的思路,w(n)也是对应于new block。
如果能够理解w(n)在后面补零,那么误差向量e(n)在前面补零也就容易理解了。e(n)做的是相关运算,与卷积相比,它少了一个翻褶的步骤,所以,补零的方式刚好相反,在前面补零,再进行相关运算的时候,刚好前面N个点是线性相关的结果,后面N个点是圆周相关的结果。