




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
50武汉理工大学基础群课设课程设计报告书基础群课设课程设计任务书学生姓名: 专业班级: 通信0906班 指导教师: 工作单位: 信息工程学院 题 目: 语音信号的盲分离 主要目的就是对学生进行基础课程、基本技能、基本动手能力的强化训练,提高学生的基础理论知识、基本动手能力,提高人才培养的基本素质。一、 训练内容和要求设计任务:根据盲信号分离原理,用matlab采集两路以上的语音信号,选择合适的混合矩阵生成若干混合信号。选取合适的盲信号分离算法(如独立成分分析ICA等)进行训练学习,求出分离矩阵和分离后的语音信号。设计要求:(1) 用matlab做出采样之后语音信号的时域和频域波形图(2) 选择合适的混合矩阵,得到混合信号,并做出其时域波形和频谱图(3) 采用混合声音信号进行训练学习,求出分离矩阵,编写出相应的确matlab代码。(4)用求出的分离矩阵从混合信号中分离出原语音信号,并画出各分离信号的时域波形和频谱图。(5)对结果进行对比分析。二、 初始条件 计算机;Microsoft Office Word 软件;MATLAB软件三、 时间安排 1、 2012年 6 月 18日,作基础强化训练具体实施计划与报告格式要求的说明;学生查阅相关资料,学习原理。2、 2012 年 6 月 19 日,算法设计。3、 2012 年 6 月 20 日至2012 年6 月 22 日,运用MATLAB软件仿真 4、 2012年 6 月 23 日,上交基础强化训练成果及报告,进行答辩。指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目 录摘 要IIAbstractIII1 Matlab软件的简介12 语音信号的产生与获取33 语音信号的处理53.1 语音信号的时域分析53.1.1 语音信号的采集53.1.2 语音信号的时域波形图63.2 原始信号的频域分析74 盲信号处理104.1盲信号处理的概述104.1.1 盲信号处理的基本概念104.1.2 盲信号处理的方法和分类104.1.3 盲信号处理技术的研究应用114.2 盲源分离法124.2.1 盲源分离技术124.2.2 盲分离算法实现124.2.3 盲源分离技术的研究发展和应用134.3 独立成分分析144.3.1 独立成分分析的定义144.3.2 ICA的基本原理154.3.3 本文对ICA的研究目的及实现174.3.4分离结果分析205 小结体会23附录 程序25摘 要语音信号盲分离处理的含义是指利用BSS技术对麦克风检测到的一段语音信号进行处理。混合语音信号的分离是盲分离的重要内容,目前的混叠语音分离大多是建立在无噪环境中的混叠情形下,主要以盲源分离(Blind Source Separation,BSS),根据信号的统计特性从几个观测信号中恢复出未知的独立源成分。本文重点研究了以语音信号为背景的盲处理方法,在语音和听觉信号处理领域中,如何从混有噪声的的混叠语音信号中分离出各个语音源信号,来模仿人类的语音分离能力,成为一个重要的研究问题。具体实现主要结合ICA技术,将语音去噪作为一个预处理过程,对带噪声的混叠语音盲分离进行了研究,本文详细了介绍三种FastICA算法:SOBI算法以及CICA算法,将三种算法应用于实际的语音信号噪声分离中,并比较了传统算法和基于ICA/BSS算法在语音消噪和增强方面的差异,文章最后还介绍了分离效果评价准则,并比较了SNR和SIR参数。关键词 语音信号,语音信号噪声,盲源分离,独立成分分析AbstractBlind separation of speech signal processing means is the use of BSS techniques microphone detects a voice signal processing. Separation of mixed speech signals is important for blind separation, the current separation of overlapping speech is built mostly in the absence of aliasing noise in the environment, under the circumstances, mainly in blind source separation (Blind Source Separation, BSS), the statistical characteristics of signal Several observations from the unknown signal to recover the independent source components; This article focuses on the background to the blind speech signal processing method, signal processing, speech and hearing, how the noise from a mixture of overlapping speech signal to separate the various audio source signals to mimic human speech separation ability become an important research question. Combination of concrete realization of the main ICA technology, speech denoising as a preprocessing of speech with noise-aliasing blind separation were studied, the paper introduces three kinds of FastICA algorithm: SOBI algorithm and the CICA algorithm, three kinds of algorithm application the actual noise in speech signal separation, and compared the traditional algorithm and the ICA / BSS algorithm in speech denoising and enhancement of the differences, the paper finally describes the separation evaluation criteria, and compared the SNR and SIR parameters.Keywords: Voice signal, voice signal noise, blind source separation, independent component analysis501 Matlab软件的简介一种语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于它有着不同于其他语言的特点。正如同FORTRAN和C等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一样,被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB的最突出的特点就是简洁。MATLAB用更直观的、符合人们思维习惯的代码,代替了C和FORTRAN语言的冗长代码。MATLAB给用户带来的是最直观、最简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点。语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用其丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发是站在专家的肩膀上。具有FORTRAN和C等高级计算机语言知识的读者可能已经注意到,如果用FORTRAN或C语言去编写程序,尤其当涉及矩阵运算和画图时,编程会很麻烦。例如,如果用户想求解一个线性代数方程,就得编写一个程序块读入数据,然后再使用一种求解线性方程的算法(例如追赶法)编写一个程序块来求解方程,最后再输出计算结果。在求解过程中,最麻烦的要算第二部分。解线性方程的麻烦在于要对矩阵的元素作循环,选择稳定的算法以及代码的调试都不容易。即使有部分源代码,用户也会感到麻烦,且不能保证运算的稳定性。解线性方程的程序用FORTRAN和C这样的高级语言编写至少需要好几十行。再如用双步QR方法求解矩阵特征值,如果用FORTRAN编写,至少需要四百多行,调试这种几百行的计算程序可以说很困难。以下为用MATLAB编写以上两个小程序的具体过程。用MATLAB求解下列方程,并求矩阵A的特征值。解为:x=Ab;设A的特征值组成的向量为e,e=eig(A)。可见,MATLAB的程序极其简短。更为难能可贵的是,MATLAB甚至具有一定的智能水平,比如上面的解方程,MATLAB会根据矩阵的特性选择方程的求解方法,所以用户根本不用怀疑MATLAB的准确性。运算符丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短,具体运算符见附表。MATLAB既具有结构化的控制语句(如for循环、while循环、break语句和if语句),又有面向对象编程的特性。语法限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需对矩阵预定义就可使用。程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。MATLAB的图形功能强大。在FORTRAN和C语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。MATLAB还具有较强的编辑图形界面的能力。MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。功能强劲的工具箱是MATLAB的另一重大特色。MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又可分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能、图示建模仿真功能、文字处理功能以及与硬件实时交互功能。功能性工具箱能用于多种学科。而学科性工具箱是专业性比较强的,如control、toolbox、signal processing toolbox、communication toolbox等。这些工具箱都是由该领域内的学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高、精、尖的研究。下表列出了MATLAB的核心部分及其工具箱等产品系列的主要应用领域。2 语音信号的产生与获取一般来说,人的听觉能感知的声音频率范围为2020000Hz,在这一频率范围内可感知的声音强度为0140dB,其中人耳比较敏感的区域在504000Hz。因此,采集子系统的硬件参数可根据要分析的语音信号的频率和强度来确定。笔者设计的语音采集子系统是通过Realtek Ac97型声卡和MATLAB的数据采集工具箱实现的。其中Realtek Ac97型声卡的采样位数为16位,支持844.1 kHz的采样速率,可以满足语音采集的硬件要求。MATLAB自带的数据采集工具箱(Data Acquisition Toolbox)是为简化和加快数据采集工作而专门设计的,提供了一整套专门用于数据采集的命令和函数,可用来直接控制与PC机兼容的数据采集设备的采集全过程。数据采集硬件设备的内部特性对MATLAB的接口是完全透明的,通过调用MATLAB函数和命令可对其进行访问,并对其属性进行可视化监控,而且对于采集的数据既可以进行实时分析,也可在存储后再进行处理,这样既方便了对实验测量数据的分析、比较和可视化操作,又提高了语音信号采集的质量和灵活性。配置好数据采集设备的参数后,使用start命令便可启动声卡开始语音信号的采集。采集到的数据被暂时存放在PC机的内存里,理论上可采集的最大数据量是由PC机的内存容量决定的,这一点相对于一般的数据采集系统而言有较强的优势。MATLAB还可以记录采集过程中出现错误,如出错的时间、错误产生的来源以及数据采集设备的状态等信息都会被记录下来作为以后工作的参考。采样位数为16位,支持844.1kHz的采样速率,可以满足语音采集的硬件要求1。Matlab自带的数据采集工具箱里面,提供了专门用于语音采集的命令和函数。数据采集的硬件设备的内部特性对Matlab的接口完全是透明的,通过调用Matlab提供的语音采集函数和命令可以对其进行访问。而且,Matlab可以对其采集的数据进行实时的分析,也可在存储后再进行处理。如图2.1所示:话筒数据采集设备(声卡)MATLAB语音采集工具箱图2.1 录取语音原理图按照要求我一共制作了四个不同的语音信号,所采用的是Windows自带的录音机,如图2.2所示:图2.2 自带录音机 经过这个软件的录制,将产生wav格式的语音信号。3 语音信号的处理3.1 语音信号的时域分析3.1.1 语音信号的采集选择一个wav文件作为分析的对象,可以利用Windows下的录音机或其他软件,录制一段自己的话音,在MATLAB中,y,fs,bits=wavread(Blip,N1 N2);用于读取语音,采样值放在向量y中,fs表示采样频率(Hz),bits表示采样位数。N1 N2表示读取的值从N1点到N2点的值。sound(y); 用于对声音的回放。向量y则就代表了一个信号,也即一个复杂的“函数表达式”,也可以说像处理一个信号的表达式一样处理这个声音信号。下面是语音信号在MATLAB中的语言程序,它实现了语音的读入与打开,并绘出了语音信号时域波形,然后对语音信号进行频谱分析。在MATLAB中,可以利用函数fft对信号进行快速傅里叶变化,得到信号的频谱特性。在频谱特性中分析最大值的位置(可能有几个),它代表的频率和时域的采样时间有关,相邻的两点之间的距离为。其中,N是离散傅里叶变换用的点数,是采样的时间,前面在读取 wav文件时得到了采样频率。既然知道了该声波的频谱,按频率就可以反演它的时域值,利用以上分析的主要峰值来重构声波。由于没有考虑相位和其他的频谱分量,所以波形和原来的波形相差甚大,但大体的频率是没有错的。具体程序如下:clear;filename,filepath=uigetfile(.wav,Open wav file);v,fs,bits=wavread(filepath,filename);n = 1:length(v);t = n/fs;plot(t,v);axis(0 33.5 -1 1);xlabel(Time sec);ylabel(amplitude);title(原始信号);set(gcf, Color, 1 1 1)sound(v,fs);pause(length(v)/fs);结果如图2.1所示:图3.1 原始语音3.1.2 语音信号的时域波形图语音信号的时域分析就是分析和提取语音信号的时域参数。进行语音分析时,最先接触到并且也是最直观的是它的时域波形。语音信号本身就是时域信号,因而时域分析是最早使用,也是应用最广泛的一种分析方法,这种方法直接利用语音信号的时域波形。时域分析通常用于最基本的参数分析及应用,如语音的分割、预处理、大分类等。这种分析方法的特点是:表示语音信号比较直观、物理意义明确。实现起来比较简单、运算且少。可以得到语音的一些重要的参数。只使用示波器等通用设备,使用较为简单等。语音信号的时域参数有短时能量、短时过零率、短时白相关函数和短时平均幅度差函数等,这是语音信号的一组最基本的短时参数,在各种语音信号数字处理技术中都要应用6。在计算这些参数时使用的一般是方窗或汉明窗。对语音信号进行分析,发现发浊音时,尽管声道有若干个共振峰,但由于声门波引起谱的高频跌落,所以其话音能量约集中在3kHz以下。而发清音时,多数能量出现在较高频率上。高频就意味着高的平均过零率,低频意味着低的平均过零率,所以可以认为浊音时具有较低的过零率,而清音时具有较高的过零率。当然,这种高低仅是相对而言,并没方精确的数值关系。其程序如下:%functionfftoperate_Callback(hObject,eventdata,handles) y=handles.hdata; fs=handles.hfs; recordtime=handles.hrecordtime; ll=fs*recordtime; n=2; whilenll, n=n*2; end n=n/4; X=fft(y,n); X(1)=0; freq=fs*(0:(n/2-1)/n; power=abs(X(1:n/2).2/(length(X); maxp,i=max(power); set(handles.textfreqmax,String,freq(i); set(handles.textpowermax,String,maxp); figure plot(freq,power,g)其波形图如图2.2所示:图3.2 原始信号波形3.2 原始信号的频域分析信号频谱分析是将信号源发出的信号强度按频率顺序展开,使其成为频率的函数,并考察变化规律。频谱分析主要分析信号是由哪些频率的正弦信号叠加得到的,以及这些正弦信号的振幅。频谱分析的意义可以说是很明确的,就是分析信号的频率构成。更确切地说就是用来分析信号中都含有哪几种正弦波成份。反过来说就是,该信号可以用哪几种频率的正弦波来合成出来。 对于频谱分析的目的,如研究噪声的频谱是为了深入了解噪声源的特性帮助寻找主要的噪声污染源,为噪声控制提供依据。有关频谱分析的应用软件和方法,我们知道对信号进行频谱分析,往往对其进行傅里叶变换,观察其频谱幅度与频谱相位。傅里叶变换简单通俗理解就是把看似杂乱无章的信号考虑成由一定振幅、相位、频率的基本正弦(余弦)信号组合而成,是将函数向一组正交的正弦、余弦函数展开,傅里叶变换的目的就是找出这些基本正弦(余弦)信号中振幅较大(能量较高)信号对应的频率,从而找出杂乱无章的信号中的主要振动频率特点。如减速机故障时,通过傅里叶变换做频谱分析,根据各级齿轮转速、齿数与杂音频谱中振幅大的对比,可以快速判断哪级齿轮损伤。分析软件主要为Matlab。 对于信号来说,分模拟信号与数字信号。对于模拟信号来说,往往对其进行抽样,然后进行快速傅里叶变换(fft),然后对其幅度(abs)和相位(angle)的图像进行分析。对于数字信号,则可直接进行快速傅里叶变换。正弦波、方波、三角波和白噪声信号是实际工程测试中常见的典型信号,这些信号时域、频域之间的关系很明确,并且都具有一定的特性,通过对这些典型信号的频谱进行分析,对掌握信号的特性,熟悉信号的分析方法大有益处,并且这些典型信号也可以作为实际工程信号分析时的参照资料。其程序如下:fs=25600; %语音信号采样频率为25600x,fs,bits=wavread(C:Documents and SettingsAdministrator桌面语音音频.wav); sound(x,fs,bits); %播放语音信号y1=fft(x,4096); %对信号做2048点FFT变换f=fs*(0:2047)/4096;figure(1)magy1=abs(y1);angy1=angle(y1);subplot(3,1,1),plot(x);title(原始信号波形)subplot(3,1,2),plot(magy1);title(原始信号幅值)subplot(3,1,3),plot(angy1);title(原始信号相位)figure(2)freqz(x) %绘制原始语音信号的频率响应图title(频率响应图)figure(3)plot(f,abs(y1(1:2048);title(原始语音信号频谱)xlabel(Hz);ylabel(fudu); axis(0 4500 0 400)其频谱图如图3.3所示:图3.3 原始信号频谱图4 盲信号处理4.1盲信号处理的概述4.1.1 盲信号处理的基本概念盲信号处理是现代数学信号处理、算智能学近年来迅速发展的重要方向。电子信息、通信、生物医学、图像增强、雷达、地球物理信号处理等众多领域有广泛的应用前景。盲信号处理就是利用系统(如无线信道、通信系统等)的输出观测数据,通过某种信号处理的手段, 获得我们感兴趣的有关信息(如原来独立发射的信号等)。盲信号的研究是当前学术界的一个研究热点,而盲信号分离则是盲信号研究中的一个重要的课题。BSS是指从观测到的混合信号中分离出未知的源信号。盲信号中的“盲”意味着两个方面:第一,对源信号一无所知或只有少许的先验知识。第二,混合本身是未知的。这看似是一个不可能的任务,然而理论和实际都证实了只需要相当简单的假设,就可以得到该问题的解。这一特点使得BSS成为一种功能相当强大的信息处理方法。如图4.1所示:混合矩阵分离矩阵噪声向量S(t)X(t)Y(t)图4.1 盲处理原理框图4.1.2 盲信号处理的方法和分类在盲信号处理中,就源信号进过传输通道的混合方式而言,其处理方法可分为线性瞬时混合信号盲处理、线性卷积混合信号盲处理和非线性混合信号盲处理三类。根据通道传输特性中是否含有噪声、噪声特性(白噪声、有色噪声等)、噪声混合形式,可分为有噪声、无噪声盲处理,含加性噪声和乘性噪声混合信号盲处理等。按源信号和观测信号数目的不同可以将混合方式分为欠定 、适定和超定情况 ;按源信号特性的不同分为 : 平稳 、非平稳 、超高斯 、亚高斯 、超高斯和亚高斯混合分离等 。盲处理的目的可分为盲辨识和盲源分离两大类。盲辨识的目的是求得传输通道混合矩阵(新型混合矩阵、卷积混合矩阵、非线性混合矩阵等)。盲源分离的目的是求得源信号的最佳估计。当盲源分离的各分量相互独立时,就称为独立分量分析,即独立分量分析是盲源分离的一种特殊情况。4.1.3 盲信号处理技术的研究应用近年来,盲信号处理逐渐成为当今信息处理领域中热门的课题之一,并且已经在尤其在生物医学工程、医学图像、语音增强、遥感、通信系统、地震探测、地球物理学、计量经济学和数据挖掘等领域显示出诱人的前景,特别是盲源分离技术、ICA的不断发展和应用最为引人注目。下面介绍盲处理应用中的两个主要方面:1.语音识别领域语音信号分离、语音识别是盲处理应用的一个重要领域。最典型的应用就是声控计算机,计算机所接受到的语音指令肯定是肯定是带有各种环境噪声的,还可能存在其他的语音信号(如有其他人说话),而且这些信号源与接收器的相对位置也未知,计算机需要在这种情况下识别出正确的语音命令。在移动通信中,往往存在通信质量问题,极大的影响了通话效果,而盲源分离或盲均衡技术能够消除噪声、抑制干扰及增强语音,提高通话质量。2.生物医学信号处理在生物医学领域,盲信号处理可应用于心电图(ECG)、脑电图(EEG)信号分离、听觉信号分析、功能磁共振图像(FMRI)分析等。例如人们常常需要从肌电图中确定神经元细胞信号的触发模式,而EMG信号通常由多个特殊的传感器在人体表处测得,从信号源到传感器之间的信号传输介质参数是未知的,而人们之间各不相同。目前已经有一些学者将盲源分离技术成功地够应用于脑电图等信号的数据处理。4.2 盲源分离法4.2.1 盲源分离技术盲源信号分离(Blind Source Separation, BSS) 是20世纪90年代迅速发展起来的一个研究领域 。它具有可靠的理论基础和许多方面的应用潜力。其在生物医学工程 、医学图像 、语音增强 、遥感 、通信系统 、地震探测等领域有着广泛而诱人的前景 ,盲源分离成为信号处理和神经网络领域的研究热点 。盲源分离是针对从检测的混合信号中估计或恢复源信号的问题提出的,是指源信号、传输通道特性未知的情况下,仅由观测信号和源信号的一些先验知识(如概率密度)估计出源信号各个分量的过程。例如最著名的鸡尾酒会问题,仅根据多个麦克风检测信号分离或恢复出某种语音源信号。4.2.2 盲分离算法实现在实际的ICA盲分离算法应用中,一般有时是必需的对观测数据做一些预处理技术,如用主成分分析 ( PCA )降维和白化,用滤波器进行滤波降噪处理等。另外,由于恢复准则的局限以及先验知识的缺乏,盲信号分离方法只能得到源信号的波形,而无法确定信号的幅值以及信号之间的顺序。这两点都需要人为的制定规则(如规定信号的方差为1来确定幅值)来确定。如图4.2所示: 图4.2 盲信号分离基本原理框图4.2.3 盲源分离技术的研究发展和应用1986 年,法国学者Jeanny Herault和Christian Jutten提出了递归神经网络模型和基于Hebb学习律的学习算法,以实现2个独立源信号混合的分离。这一开创性的论文在信号处理领域中揭开了新的一章,即盲源分离问题的研究。其后二十几年来,对于盲信号分离问题,学者们提出了很多的算法,每种算法都 在一定程度上取得了成功。从算法的角度而言,BSS算法可分为批处理算法和自适应算法;从代数函数和准则而言,又分为基于神经网络的方法、基于高阶统计量的方法、基于互信息量的方法、基于非线性函数的方法等。尽管国内对盲信号分离问题的研究相对较晚,但在理论和应用方面也取得很大的进展。清华大学的张贤达教授在其 1996 年出版的时间序列分析高阶统计量方法一书中,介绍了有关盲分离的理论基础,其后关于盲分离的研究才逐渐多起来。近年来国内各类基金支持了盲信号处理理论和应用的项目,也成立了一些研究小组。虽然盲源分离理论方法在最近20年已经取得了长足的发展,但是还有许多问题有待进一步研究和解决。首先是理论体系有待完善。实际采用的处理算法或多或少都带有一些经验知识,对于算法的稳定性和收敛性的证明不够充分。盲源分 离尚有大量的理论和实际问题有待解决,例如多维ICA问题、带噪声信号的有效分离方法、如何更有效地利用各种先验知识成功分离或提取出源信号、一般性 的非线性混合信号的盲分离、如何与神经网络有效地结合、源信号的数目大于观察信号的数目时ICA方法等。另外,盲源分离可同其他学科有机结合,如模糊系 统理论在盲分离技术中的应用可能是一个有前途的研究方向;盲源分离技术与遗传算法相结合,可以减少计算复杂度,提高收敛速度。如何有效提高算法对源信号统计特性的学习和利用也需要进行深入研究。在硬件实现方面,盲分离问题也存在着极大的发展空间,例如用FPGA实现等。经过人们将近20年的共同努力,有关盲分离的理论和算法得到了较快发展,包括 盲分离问题本身的可解性,以及求解原理等方面的基本理论问题在一定程度上得到了解决,并提出了一些在分离能力、内存需求、计算速度等方面性能各异的 算 法。由于该问题的理论研究深度和算法实现难度都较大,目前对于盲分离的研究 仍然很不成熟,难以满足许多实际应用需求,许多理论问题和算法实现的相应技术也有待进一步探索。4.3 独立成分分析独立分量分析 ( Independent Component Analy2sis , ICA)是由Herault和J utten在1983年提出,该方法不依赖与源信号类型相关的详细知识或信号传输系统特性的精确辨识,是一种有效的冗余取消技术,被广泛应用于盲源分离 ( blind source separation BSS)、特征提取和盲解卷、生理学数据分析语音信号处理、图像处理及人脸识别等领域。该方法根据代价函数的不同 ,可以得到不同的ICA算法,如信息最大化(infomax)算法、Fast ICA算法、最大熵( M E)和最小互信息( MM I)算法、极大似然(ML)算法等。在统计学中,独立成分分析或独立分量分析(Independent components analysis,缩写:ICA)是一种利用统计原理进行计算的方法。它是一个线性变换。这个变换把数据或信号分离成统计独立的非高斯的信号源的线性组合。独立成分分析是盲信号分离(Blind source separation)的一种特例。4.3.1 独立成分分析的定义ICA是一种用来从多变量(多维)统计数据里找到隐含的因素或成分的方法,被认为是主成分分析(Principal Component Analysis, PCA)和因子分析(Factor Analysis)的一种扩展。对于盲源分离问题,ICA是指在只知道混合信号,而不知道源信号、噪声以及混合机制的情况下,分离或近似地分离出源信号的一种分析过程。独立成分分析(Independent Component Analysis, ICA)是近年来出现的一种强有力的数据分析工具(Hyvarinen A, Karhunen J, Oja E, 2001; Roberts S J, Everson R, 2001)。1994年由Comon给出了ICA的一个较为严格的数学定义,其思想最早是由Heranlt和Jutten于1986年提出来的。ICA从出现到现在虽然时间不长,然而无论从理论上还是应用上,它正受到越来越多的关注,成为国内外研究的一个热点。特别是从应用角度看,它的应用领域与应用前景都是非常广阔的,目前主要应用于盲源分离、图像处理、语言识别、通信、生物医学信号处理、脑功能成像研究、故障诊断、特征提取、金融时间序列分析和数据挖掘等。盲源分离技术是近二十年发展起来的一门新型科学,在各国科学家和研究人员的努力下获得了充分的发展,但是ICA的研究方兴未艾,它毕竟是一个涉及面广并且仍处于发展前沿的课题,在理论上还远没有成熟,许多问题有待进一步研究和解决。(1)带噪混合信号的盲分离问题。盲信号处理中的未知条件太多,混合信号含有噪声的情况下的盲源分离问题解决起来是相当困难的。尽管目前已有部分算法对存在噪声的情况表现出了良好的性能,但由于噪声种类繁多,因此处理起来仍很棘手。现有的大多数盲源分离或盲解卷积算法都假设不含噪声或者把噪声看作是一个独立的信源信号来处理。(2)非平稳混合信号的盲源分离算法。许多情况下源信号可能是非平稳的,如何利用信号的非平稳特性进行盲源分离是摆在广大研究人员面前的一个现实问题。(3)卷积混合信号的盲源分离算法。在实际中,系统接收到的混合输入信号是源信号经过不同的传播途径到达接收器。在这个过程中,不可避免的存在信号的时延和反射。针对这种情况的盲源分离算法还很不成熟。(4)ICA的推广应用。在算法应用方面,ICA可以取得进一步的发展,如可以在语音识别、图像处理、特征提取、医学信号处理方面作进一步的研究。目前的关键的问题是如何将理论算法转化为实际应用,以及如何建立更加符合实际情况的模型等。(5)算法的收敛性。算法全局收敛性的研究,可以考虑将遗传算法、混沌算法等具有全局收敛性的优化算法和ICA结合起来,提高算法的全局收敛性。4.3.2 ICA的基本原理(1)无噪声的ICA模型ICA作为生成模型的估计给定随即变量的一组观测,其中是时间或者样本标号,假设它们有独立成分线性混合而产生:=A (1)式中,是某个未知矩阵。用向量-矩阵符号方式表示通常比上面的求和表达式更为方便。用随机向量x来表示混合向量,其元素分别为,同样地,用来表示元素,用矩阵表示那些混合系数。所有的向量都理解为列向量;这样或者称的转置就是一个行向量。利用向量和矩阵符号表示,混合模型可以写为: (2)有时我们需要使用矩阵A中的列向量,如果将其表示为,则模型也可以写为: (3)(2)有噪声的ICA模型将基本的ICA模型扩展到有噪声的情形,并且假设噪声是以加性噪声形式存在的。这是一个相当现实的假设,因为加性噪声是因子分析和信号处理中通常研究的标准形式,具有简单的噪声模型表达方式。因此,噪声ICA模型可表示为: (4)式中,是噪声向量。信号源噪声,即直接添加到独立成分(即信号源)上的噪声。信号源噪声可用与式(2.1)稍有差别的下式来表示: (5)实际上,如果可以直接考虑带噪声的独立成分,那么可将此模型写为: (6)可以看出,这就是基本的ICA模型,只是独立成分本身变了。4.3.3 本文对ICA的研究目的及实现独立分量分析的含义是把信号分解成若干个互相独立的成分,它是为了解决盲信号分离的问题而发展起来的。如果信号本来就是由若干独立信源混合而成的,ICA就能恰好把这些信源分解开来。故在一般的文献中通常把ICA等同于BSS,ICA不同于主分量分析把目光投注于信号的二阶统计量,研究信号间的相关关系,而是基于信号的高阶统计量,研究信号间的独立关系。原始信号如图4.3所示:图4.3 原始信号混合信号如图4.4所示:图4.4 混合信号独立成分分析方法能够基于信息的的独立性来估计,这样我们就能从混合信号中分离出三个原始信号。该仿真的混合矩阵是由计算机在ICALAB工具箱环境下产生的,参数如4.5所示:图4.5 矩阵A参数即该矩阵为一个4x4的方阵:根据所求矩阵可得混合矩阵波形图如图4.6所示:图4.6 混合矩阵波形图已知混合矩阵与混合信号,根据ICA算法可以得到分离信号,如图4.7所示:图4.7 分离信号4.3.4分离结果分析我们分别使用FastICaA算法对Dkumar1.wav ,Ganesh1.wav, Ganesh2.wav, Kath2.wav 作为源信号的混叠进行盲分离试验,从中分离出的四个源信号的近似值y1,y2,y3和y4,这种算法在ICALAB中的实现方式如图4.8所示:图4.8 FPICA算法在ICA工具箱的实现原始语音信号、混合后的语音信号、分离后的语音信号时域图分别如图4.9、图4.10和图4.11所示:图4.9 原始信号时域图图4.10 混合后语音信号时域图图4.11 分离后语音信号时域图5 小结体会盲源分离算法是盲源分离问题的核心,本文研究了现有的几种盲源分离算法,并在这些算法的基础上结合具体应用于语音信号的噪声处理,对其加以改进,给出了新的算法。论文的主要工作如下:1研究独立成分分析的原理及其基本模型。传统的选取盲源分离算法只适用于单纯超高斯信号(或者亚高斯信号)混合系统的分离,不适用于杂系混合(超高斯和亚高斯信号)系统的分离。论文中的ICA主要应用于语音信号噪声的实现算法,及目前的去除或抑制噪声方法分析,引出独立成分分析不能应用于高斯信号和非独立信号,可用来抑制高斯噪声。2语音信号是一种非平稳信号,本文研究了二阶盲辨识(SOBI)盲源分离算法,快速定点(FastICA)算法以及约束独立分量分析(CICA)算法,利用这三种算法有效地解决了噪声在语音信号中的分离问题,可以在不需要白化过程的情况下,得到良好的分离效果。对算法进行了计算机仿真,并将三种算法在不同噪声环境下的仿真结果进行了比较。盲源分离技术正在不断的发展,新的问题和算法层出不穷。虽然已经有很多成熟的盲源分离算法,但是,作者认为还是有很多问题待于进一步的研究和解决:(1)带噪声混合信号的盲分离问题。由于在盲信号处理中,存在太多的未知条件,带噪声的混迭信号的盲分离是十分困难的。现在研究的大部分盲源分离或者盲反卷积算法,都假设无噪声的情况或者把噪声看作一个独立的源信号,在高阶统计方法中,由于高斯信号高阶累计量为零,所以可以假设加性高斯噪声的存在,但是对于已有的盲源分离算法在什么情况下可以应用到一般的噪声混迭模型,是有待解决的问题。(2)欠完备情形的盲源分离问题。无论是盲源分离还是盲解卷积,现存的大多数算法都假设传感器的数目大于或者等于源信号的个数,这是一种超完备形。然而,传感器数目少于信号源数目的欠完备问题也是需要解决的一大难题此外,在工程实际中,信号源的数目有可能随时问动态变化,如何确定源的数目,保证算法的有效也是一个亟待解决的问题。(3)非线性混合情形的盲源分离问题本文主要研究的是源信号的线性混合模型,而非线性混合模型才更具有一般性,对它的深入研究,也会使将来研究的一个热点问题。(4)盲源分离算法的实际应用。现有的一些算法由于速度太慢,达不到实时要求,而无法应用于实际问题中。在保证算法性能的条件下,降低算法的复杂性提高计算效率,也是一个关于BSS的很重要的研究方向。当前的语音信号盲分离算法所能解决的问题是有一定的适用范围和限制条件的,仍然处在实验室研究阶段,使这些算法从实验室真正走向应用还有很长的研究历程。附录 程序clc;clear all;close all;fs=1000;N=1024;t=(0:N-1)/fs;f1=60;f2=150;f3=200;I1=sin(2*pi*f1*t);I2=cos(2*pi*f2*t);I3=randn(size(t);% I3=sin(2*pi*f3*t);subplot(4,3,1),plot(I1),title(输入信号1),axis(0,100,-4,4);subplot(4,3,2),plot(I2),title(输入信号2),axis(0,100,-4,4);subplot(4,3,3),plot(I3),title(输入信号3),axis(0,100,-4,4);% 将其组成矩阵S=I1;I2;I3; Sweight=rand(size(S,1); MixedS=Sweight*S; % 将混合矩阵重新排列并输出subplot(4,3,4),plot(MixedS(1,:),title(混合信号1),axis(0,100,-4,4);subplot(4,3,5),plot(MixedS(2,:),title(混合信号2),axis(0,100,-4,4);subplot(4,3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中级财务会计1(山东联盟)知到智慧树答案
- 中级微观经济学知到智慧树答案
- 中兽医学(山东联盟)知到智慧树答案
- 中外民俗知到智慧树答案
- 2025版庆典活动赞助商权益授权监管合同
- 2025年度食品添加剂全国代理销售合作协议
- 2025年度暑期实习生劳务合作协议
- 2025版挖掘机搅拌机租赁及施工质量保证合同
- 2025年度投资与国际贸易咨询及风险管理服务协议
- 2025年环保产业外资股权转让及合作开发协议
- 2025年中级会计职称考试经济法冲刺试题及答案
- 乐器供销合同范本
- 2025年辽宁省中考生物学试卷真题附答案
- 《法律职业伦理(第3版)》全套教学课件
- 2025年青岛市崂山旅游集团招聘考试笔试试题
- 2025年执业医师考试全真试题及答案
- GA 1808-2022军工单位反恐怖防范要求
- 焊接工艺要求
- JJF(电子) 31502-2010 静电腕带/脚盘测试仪校准规范-(高清现行)
- 国学武术操太极拳表演活动流程
- DB14∕T 1131-2015 麦茬复播花生栽培技术规程
评论
0/150
提交评论