啸叫的信号处理解释

原创 2011年09月19日 20:08:37
 啸叫的信号处理解释

 

        啸叫是日常生活中经常遇到的现象。比如在上课的时候,老师胸前挂着话筒讲课,时不时可能就会出现一下啸叫。再比如开会的时候,主席台上某个人正在讲话,冷不丁可能出现一声啸叫。啸叫不能说有多大的危害,但大家一般情况下不喜欢啸叫应该是没有疑问的。粉丝追星时的啸叫则是另外一回事。

       从声学的角度看,话筒拾音的音响系统,都有反馈啸叫的可能。这个是否能从信号处理的角度来解释呢?

       话筒拾音的音响系统,实际上可以等效为一个简单的FIR滤波器。考虑最简单的情况:

             y(n)=x(n)+h*x(n-tao)

      其中y(n)表示驱动音箱的输出,当然实际中要变成模拟信号。x(n)表示话筒输入的语音,当然是对原始模拟信号采样之后得到的。tao表示音箱发出的声音到话筒之间的延时,h表示声音从音箱到话筒之间的衰减。这样,上面这个式子表示的物理意义就非常清楚了。音箱的输出等于当前的输入加上前一个时刻声音的影响。更严格地说,这里应该还有一个放大的环节,但对我们的解释没有太大的影响。

       即便不告诉上面这个式子是对语音拾音系统的建模,只要稍有一点信号处理基础的人一眼就能想到这是一个简单的FIR滤波器。从滤波器的角度就可以很好的理解,改变h或者tao,都会对系统的频率响应产生影响。啸叫则源于系统对某个频率的增益太大。这个式子就将我们熟悉的信号处理知识与啸叫这个物理现象联系起来了。当然,这只是最简单的假设,实际上,不仅是前一个时刻的声音会反馈到话筒,更前面的声音也可能会反馈到话筒,只是延时和衰减不同。当然,这对用FIR滤波器来理解啸叫影响不大。

       FIR系统响应的角度,就非常好理解消除啸叫的一些措施。比如说,我们经常发现,老师讲课时啸叫的话,走几步调整一下话筒与音箱之间的距离,啸叫就可能没了。这是因为改变了htao,系统的频率响应有所改变,在刚才引起啸叫的频率上可能增益降低了。再比如说,常用的消除啸叫的宽带陷波法和窄带陷波法等等方法,更是明显地与滤波器有关。

相关文章推荐

数字信号处理中离散傅里叶变换的物理意义---即如何理解离散傅里叶变换

写着写着突然发现内容有点多,因此写成了一片文档,放在百度文库里面,链接为:其中的程序附录如下:附录程序一m =2; t= -m*pi:0.1:m*pi;yy1 = sin(t); yy2 = (1/3...

Linux环境编程之信号处理(二、kill()函数)

前一篇有关信号的blog Linux中信号处理(一)中已经大概的分析了信号基本处理方法,已经signal的解析和绑定处理函数;这一篇blog来复习下信号中常用到的几个函数; kil...

【Get深一度】信号处理必经之坎:相关与卷积【由理论至仿真】

相关与卷积的计算公式想必大家一看便懂,可其中奥义,囫囵吞枣,不得奇妙,原理与物理意义,我要吃了你们相关函数:外衣不神秘,先剥开看看信号啊信号,多想将你蹂躏,事实上,却反被蹂躏至死 … 信号到底是个什...

linux信号处理之signal、sigaction、alarm、pause函数

信号相关的东西都在  /usr/include/singnal.h里 各种信号的定义的都在 /usr/include/i386-linux-gnu/bits/signum.h         3....

语音信号处理之(四)梅尔频率倒谱系数(MFCC)

语音信号处理之(四)梅尔频率倒谱系数(MFCC)zouxy09@qq.comhttp://blog.csdn.net/zouxy09        这学期有《语音信号处理》这门课,快考试了,所以也要了...
  • zouxy09
  • zouxy09
  • 2013年06月23日 21:05
  • 82094

国内外数字信号处理经典教材

经典数字信号处理图书的个人评述:外版书(一)         数字信号处理是电子与信息专业的骨干课程,其应用非常广泛。这方面的图书正可谓是浩如烟海,有的侧重理论推导,有的侧重工程应用,有的侧...

基于阵列信号处理的矩阵基础知识心得(持续更新中)

酉矩阵。Hermite矩阵。相似矩阵。范德蒙行列式以及Kronecker积。

linux下c/c++实例之四父检测子进程和信号处理

一、简介       Linux下fork创建子进程执行程序,而父进程检测子进程的执行过程并处理部分信号,当出现段错误生成core文件时被重新命名,以便能随时通过时间调试core。 二、详解 1...

Linux 多线程应用中的信号处理

Linux 多线程应用中的信号处理模型 在基于 Linux 的多线程应用中,对于因为程序逻辑需要而产生的信号,可考虑调用sigwait()使用同步模型进行处理。其程序流程如下: 主线程设置...
  • xb_0916
  • xb_0916
  • 2013年05月27日 15:23
  • 414
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:啸叫的信号处理解释
举报原因:
原因补充:

(最多只允许输入30个字)