新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 一种新的基于改进的ADALINE神经网络的DTMF解码器方案

一种新的基于改进的ADALINE神经网络的DTMF解码器方案

作者:时间:2004-11-02来源:收藏

2004年6月B版

摘   要:本文提出了一种新的基于改进的信号检测算法,并介绍了在TMS320C5402和TLV320AIC10上采用此算法的信号方案设计。仿真结果和实际工程实验均表明该算法比传统的信号解码方法具有更强的抗干扰能力。

关键词:;LMS算法;DTMF解码

引言

  DTMF(双音多频)信号是电话网中常用的信令,无论是家用电话、移动电话还是程控交换机,多采用DTMF信号发送接收号码。DTMF技术还可以用于电力线载波通信等场合。可见,DTMF拨号和解码在通信系统及其它方面有着广泛的应用。DTMF信号的解码目前常用的方法有两种:一种方法是采用滤波器组来分离8个DTMF信号。滤波器组的实现既可以用模拟滤波器,也可以用数字滤波器,这种方法在时域中进行分离。第二种方法是采用DFT或者Goertzel算法来检测8个信号的强弱,这种方法在频域中进行分离。

  然而,上述两种传统的DTMF信号检测方法都存在一定的缺陷,即在强信道噪声干扰下常常不能正确工作。本文提出了一种基于改进的 (Adaptive Linear Neuron)的DTMF信号检测算法,其结构简单、计算量适中,并且能够在强背景噪声干扰下正常检测,实验显示它比传统方法有更强的抗干扰能力。

DTMF信号

  DTMF信号是将拨号盘上的0~9、A~D及*/E、#/F共16个字符,用音频范围的8个频率来表示的一种编码方式。8个频率分为高频群和低频群两组,分别作为列频和行频。每个字符的信号由来自列频和行频的两个频率的正弦信号叠加而成。频率组合方式如表1所示。

  根据ITU-R Q.23建议[1],DTMF信号的技术指标是:传送/接收率为每秒约10个号码,或每个号码120ms。每个号码传送过程中,信号存在时间至少65ms,且不多于75ms,120ms的其余时间是静音。在每个频率点上允许有不超过 1.8%的频率误差。任何超过给定频率 3.5%的信号,均被认为是无效的,拒绝承认接收。另外,在最坏的检测条件下,信噪比不得低于15dB。

  基于改进的ADALINE神经网络的DTMF检测算法

  神经网络是信号处理发展的一个新方向,它可以在先验知识未知的情况下,通过对输入信号的自学习,实时调整网络的权系数和偏置值,使网络得到最佳的期望输出。神经网络具有内在的自适应性和非线性,能够得到鲁棒性和抗干扰能力更强的系统。

  ADALINE神经网络是Widrow和Hoff提出的,它的一般结构如图1所示,采用LMS算法。输入信号x(n)及其延迟序列是网络的输入,网络输出a(n)与某个目标输出t(n)的差得到误差信号e(n),然后网络按照LMS算法调整权系数和偏置值,并按此方式循环处理。

  ADALINE神经网络非常适合于信号的检测与提取或噪声消除,此时它的一般结构如图2所示。在一定的噪声参考输入下,网络能够自适应的跟踪和捕捉混杂信号中的相应成分,网络输出企图逼近待检测的混杂信号,但是因为噪声参考信号与有用信号不相关或者弱相关,它只能复制到与噪声参考信号强相关的成分。于是混杂信号中的噪声成分被自适应的跟踪,进而可以被消除,误差信号“恰好”就是恢复出来的有用信号。这种结构的ADALINE神经网络在飞机客舱消噪系统和脑电图检测等方面得到了成功的应用。

  然而,实践表明,一般结构的ADALINE网络(图1或图2)用于检测DTMF信号的效果并不好,需要进行改进。DTMF信号的检测可以看成是要在受噪声污染的信号中检测并判断是否存在某个特定信号(8个频率的信号)。基于这一点,我们提出了一种如图3所示的改进的ADALINE神经网络,非常适合于DTMF信号的检测。它与一般结构的ADALINE网络有两点不同:(1)它用DTMF分量参考信号作网络的输入,而把待检测信号作为期望输出;(2)增加一个非线性处理环节,非线性地增强或抑制网络的跟踪结果以增强网络的效果。

  改进的ADALINE神经网络(图3)的工作原理如下:

  神经网络跟踪的期望值是待检测的输入信号x(n),而且LMS算法试图将误差信号e(n)减至最小。但是由于网络输入是某个特定的DTMF分量频率参考信号ref(n),所以它只能复制到与ref(n)信号强相关的信号,而不能复制到与ref(n)信号不相关或弱相关的噪声信号。如果x(n)中含有该特定频率的信号,则参考信号与输入信号匹配,网络就能得到很强的信号a(n)。相反,如果x(n)中不含有该特定频率信号,则参考信号与输入信号不匹配,网络的中间信号a(n)就会很弱。同时,非线性环节会对较强的a(n)信号进一步的增强,而对较弱的a(n)信号进一步的抑制。这样,通过判断神经网络输出信号的强弱,就能判断出待检测的输入信号中是否存在该特定DTMF分量频率的信号。

  改进的ADALINE神经网络采用LMS算法,LMS算法本质是以最小均方误差为准则的近似的最速下降算法。它以均方误差为性能函数F(x),定义如下:F(x)=E(e2)=E((t-a)2)

  为了简化计算,以G(x)=e2(k)=(t(k)-a(k))2来近似F(x)。应用最速下降算法,得到梯度算子为:G(x)=-2e(k)p(k)

  故网络的权系数和偏置值参数更新公式为:wi(k+1)=wi(k)+1ae(k)p(k)  i=l,..., s      b(k+1)=b(k)+2ae(k)。

  其中是梯度算子,a是控制学习速度和稳定性的参数,p(k)是输入向量。

  非线性环节的传输函数如下式:

  其中A和threshold为系统的设定参数。

  神经网络的各个参数需要通过试验来确定。经过试验,对于DTMF检测,选用只含有2个权系数和1个偏置值的网络就可以胜任,也就是在图3中,只需要w1/w2/b三个参数,结构简单,计算量小。

  对每个DTMF分量频率都设置一个如图3所示的神经网络单元,在每个检测周期对8个神经网络单元的输出进行判断并简单分析,就可以实现DTMF解码。

基于改进的ADALINE神经网络的DTMF解码仿真结果

  为了验证上述基于改进的ADALINE神经网络的DTMF检测算法,我们在MATLAB上使用Neural Networks Toolbox进行了仿真。

  仿真条件和参数选择:模拟实际信道中常见的高斯白噪声情况,待检测输入信号x(n)是DTMF信号和信道噪声的叠加,输入信噪比SNR是-3dB。为了讨论方便,假定每个DTMF分量的幅度是



评论


相关推荐

技术专区

关闭