语音信号的盲分离

语音信号的盲分离
语音信号的盲分离

课程设计任务书

学生:专业班级:通信1103

指导教师:许建霞工作单位:信息学院

题目: 语音信号的盲分离

初始条件:Matlab软件、PC机

要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)设计任务

根据盲信号分离原理,用matlab采集两路以上的语音信号,选择合适的混合矩阵生成若干混合信号。选取合适的盲信号分离算法(如独立成分分析ICA等)进行训练学习,求出分离矩阵和分离后的语音信号。

设计要求

(1) 用matlab做出采样之后语音信号的时域和频域波形图

(2) 选择合适的混合矩阵,得到混合信号,并做出其时域波形和频谱图

(3) 采用混合声音信号进行训练学习,求出分离矩阵,编写出相应的确matlab代码。

(4) 用求出的分离矩阵从混合信号中分离出原语音信号,并画出各分离信号的时域波形和频谱图。

(5) 对结果进行对比分析。

时间安排:

指导教师签名:2014年 6 月10 日

系主任(或责任教师)签名:2014 年 6 月10 日

摘要

盲信号处理(Blind Signal Processing,BSP)是指从观测到的混合信号中,在没有任何先验条件的情况下,恢复出未知的源信号过程。盲信号分离已成为信号处理学界和通信工程学界共同感兴趣的一个极富挑战性的研究热点问题,并获得了迅速的发展。

盲分离根据信号源的不同可以分为确定信号盲分离、语音信号盲分离和图像盲分离等,本设计主要讨论语音信号的盲分离。

语音信号的盲分离主要是利用盲源分离(Blind Signal Separation,BSS)技术对麦克风检测到的一段语音信号进行处理,本文重点研究了以语音信号为背景的盲处理方法,在语音和听觉信号处理领域中,如何从混有噪声的的混叠语音信号中分离出各个语音源信号,来模仿人类的语音分离能力,成为一个重要的研究问题。根据盲信号分离原理,本设计用matlab采集3路语音信号,选择合适的混合矩阵生成若干混合信号。

具体实现主要结合独立分量分析ICA技术,选取混合矩阵对3个语音信号进行混合,并从混合信号中分离出原语音信号,最后画出各分离信号的时域波形和频谱图和原来的信号进行比较。此外还运用PCA算法进行了混合语音信号的分离实现,最终对两种算法进行比较。

关键字:盲信号处理;语音信号;盲源分离BSS;独立分量分析ICA技术

Abstract

Blind Signal Processing (Blind Signal Processing, BSP) from the observed mixed-signal, to recover the unknown source signal process without any prior conditions. Blind signal separation has become a signal processing academia and communication engineering communities of common interest a challenging research focus and rapid development.

Blind source separation based on the signal source can be divided to determine the blind signal separation, blind separation of speech signals and Blind Image Separation, the design focuses on the blind separation of speech signal.

Blind separation of speech signal using blind source separation (Blind the Signal Separation, BSS) detected by the microphone a voice signal processing, the paper focuses on the blind approach to speech signal as the background in voice and acoustic signal processing in the field, how isolated from a mixture of noise aliasing voice signal voice source signal to mimic the human voice separation ability, become an important research question. Blind signal separation principle, the design collection of three-way voice signal using matlab, select the appropriate mixing matrix to generate a number of mixed-signal.

Concrete realization of the combination of independent component analysis ICA technology, select the mixing matrix of three speech signals mixed and separated from the mixed signal to the original speech signal, and finally draw the separation of signals in time domain waveform and frequency spectrum and the original signal . In addition, use of the PCA algorithm for the separation of mixed speech signals to achieve the final two algorithms.

Keywords: blind signal processing;speech signal ;blind source separation BSS independent ;component analysis ICA technology

目录

摘要 (Ⅰ)

Abstract (Ⅱ)

摘要 (2)

Abstract (3)

1盲信号处理BSP (2)

1.1盲信号处理简介 (2)

1.1.1盲信号处理方法 (3)

1.1.2盲分离的数学模型 (4)

1.2盲源分离的发展 (5)

1.3盲源分离的应用 (6)

1.3.1 语音处理领域 (6)

1.3.2 图像处理领域 (7)

1.3.3 生物医信号处理学领域 (7)

2 Matlab语音信号的采集 (9)

2.1语音信号的采集方法 (9)

2.2三路语音信号的采集 (10)

2.3三路原始语音信号的分析 (10)

2.3.1语音信号时域波形 (10)

2.3.2语音信号FFT频谱 (11)

3盲信号分离的两种算法介绍 (13)

3.1 独立分量分析ICA (13)

3.1.1 Fast-ICA算法简介 (14)

3.1.2 基于负熵最大的快速ICA (14)

3.2 主分量分析PCA (17)

3.2.1 主成分分析原理 (17)

3.2.2 PCA算法原理 (18)

3.3 主分量分析PCA和ICA (19)

4语音信号的盲分离实现 (20)

4.1 语音信号的混合 (20)

4.2 语音信号的分离实现 (21)

4.2.1 FAST-ICA算法分离 (21)

4.2.2 主分量分析算法分离 (22)

4.2.3 分离语音频谱分析 (23)

4.2.4 FAST-ICA和PCA分离比较 (25)

5总结 (26)

参考文献 (27)

附录1 原始语音的时频matlab程序 (28)

附录2 预处理部分matlab程序 (29)

附录3 算法的matlab程序 (30)

附录4 录音的matlab程序 (33)

1盲信号处理BSP

盲信号处理作为计算机智能学的核心研究的容,是20世纪最后的10年迅速发展起来的一个新的研究领域,没事人工神经网络、统计信号处理、信息理论结合的产物,已经成为一些领域研究与发展的重要课题,特别是在生物医学、医疗图像、图像增强、远程传感、雷达与通信系统、地震勘测等方面均具有突出的作用。

1.1盲信号处理简介

在现实生活中及自然界中存在大量的信息,人们通过传感器检测获取含有信息的数据或信号,并处理这些数据来获取相应的信息,这信息进一步加红来获得知识和改造自然的能力。然而,传感器检测往往是多个成分(包括噪声、无用的信号)混合在一起的信号,而且是未知的,又由于信号传输信道的特性复杂未知,给信号处理带来了很大的困难。

虽然各种信号处理的方法,如滤波器、时频分析、小波理论神经网络信号处理等,二盲信号处理(Blind Signal Processing, BSP)与传统的信号处理方完全不同,它是对源信号和传输通道几乎没有可利用的信息的情况下,仅从观测的混合信号中提取或恢复出源信号的一种处理方法。

盲处理的工作原理框图如图1-1所示:

图1-1 盲处理的工作原理框图

其中,)(k

S是未知源的信号向量,)(k x是混合信号向量(或观测信号、传感器检测信号),)(k n是噪声信号向量,混合信号向量经过分离系统可以得到分离的信号,可与原信号比较。

在图1-1中,源信号的个数、有用源信号的分量和无用信号的分量、源信号的特性、源信号的传输混合通道特性、噪声特性都是未知的,观测信号)(k x 是传感器检测信号,被认为是已知量,)(k x 中含有未知源信号和未知混合系统的特性。处理具有盲信号特性的信号)(k x ,以估计出盲信号或辨识相互混合系统特性就是盲信号要处理的任务。

有上述的简述可知,盲信号处理的实质及主要的任务就是对于未知的混合系统在其输入信号完全未知或者仅有少量的先验知识情况下,仅有系统的输出信号(即混合信号)来重构输入信号。

顺便指出,盲处理前的信号预处理常常很重要,这些预处理包括去均值、幅值归一化或单位化、限制带宽、信号分解、白化解相关及主分量提取等。另外,盲分离的算法的计算量通常很大,常常限制了实时实现,提高算法效率和高速的硬件是有效的技术途径。

1.1.1盲信号处理方法

盲号理中,就源信号经过传输通道的混合方式而言,其处理的方法可以分为线性瞬时混合信号的盲处理、线性卷积混合信号的盲处理和非线性混合信号盲处理三类;根据通道的传输特性中是否含有噪声、噪声特性、噪声混合形式、可以分为有噪声、无噪声,盲处理,含加性噪声和乘性噪声和乘性噪声混合信号盲处理等。目前,盲信号的分离算法大部分集中在针对加性白噪声或有色高斯噪声等,含噪声的盲处理算法通常称为文件算法。

盲处理的目的可以分为盲辨识和盲源分离两大类。盲辨识的目的就是求得传输混合矩阵。盲源分离的目的是求得源信号的最佳估计。当盲源分离各分量相互独立时,就成为独立分量分析,即独立分量分析是盲源分离的一种特殊情况。当盲源分离是逐个分离并紧缩实现时称为盲抽取。

盲处理的方法大部分是依据一定的理论构造目标函数的无监督学习方法。盲处理采用的目标函数主要是负熵、高斯累积量、互信息量、最大似然估计等。确定了目标之后就要用一定的算法寻优处理,实现算法的主要是各种自适应的优化算法。

下面简介盲辨识(BI )、盲源分离、独立分量分析(ICA )的概念。 盲辨识:盲辨识是针对输入信号传输通道混合特性辨识问题提出的。

盲辨识是针对输入信号传输通道混合特性辨识问题提出的。在传统的系统辨识方法中,需同时已知系统的输入信号和输出信号,再利用经典的辨识算法就可以精确的估算出系统的特性参数,从而完成系统的辨识任务。而对于盲辨识而言,系统的输入信号是未知的,仅仅已知系统的输出,要由输出信号确定传输通道的模型结构及特性参数,从而完成系统的辨识任务。

盲源分离:盲源分离是针对从检测的混合信号中估计后恢复源信号的问题提出的。盲源分离(BSS)是指源信号、传输通道特性未知的情况系,仅有观测信号和源信号的一些先验知识估计出先好的各个分量的过程。一个典型的例子就是“鸡尾酒会”问题,仅根据多个麦克风检测信号的分离恢复出某语音信号的源信号。

1.1.2盲分离的数学模型

盲分离的早期研究始于二十世纪八十年代中后期,短短的十几年里,有关盲分离理论和算法研究得到了较快的发展,包括盲分离问题本身的可解性以及求解原理等方面的基本理论问题已经在一定的程度上部分得到了解决,并提出了一些在分离能力、存需求、计算量等方面性能各异的盲分离算法。

一般认为,对盲分离问题的最早研究是由法国HeraultJutten于1985年左右开始的,1991年发表论文[1],现在通常称他们的方法为H-J算法,H-J算法中提出了一种针对两个源信号和两个混叠信号的递归连接人工神经网络,利用梯度下降算法调整网络权值对网络输出信号的残差最小化实现盲分离。

Herault和Jutten之后,不少学者对H-J算法的收敛性进行了系统的研究,在只存在两个源信号和两个混叠信号的最简单情况下,收敛性问题得到了完满的解决。此后盲分离问引起了神经网络领域和信号处理领域的广泛研究兴趣,盛况空前。瞬时线性混叠盲分离相对而然最为简单目前为止,研究成果也最为丰富。瞬时线性混叠数学模型如下:

t

x=(1-1)

)(t

As

)(

t y=(1-2)

Wx

)(

)(t

其中(1)式为混叠模型,(2)式为分离模型;T

t s))

(

),...,

(2

),(1(

)(=为源信号,AW为未

t

s

sn

t

s

t

知的n

m?的混叠矩阵,源信号)(t s也是未知的,W为分离矩阵。瞬时线性混叠盲分离的目的就是通过调节分离矩阵W(或混叠矩阵A),使得分离信号与对应的源信号的波形保持一致,即:

t y (1-3)

PDs

)(t

)(

其中P为置换矩阵,D为对角矩阵。)(t y是对源信号)(t s的估计,瞬时线性混叠盲分离问题允许存在两个方面的不确定性:

(1)排列顺序的不确定性,无法了解所抽取的信号应是源信号)(t s为哪一个分量。(2)信号幅度的不确定性,即无法知道源信号的真实幅值。

由于信号的信息很大一部分隐含在波形中,所以很多时候这两种不确定性并不影响盲分离技术的应用。瞬时线性盲分离实现的数学模型如图1-2所示,其中LA表示学习算法(LearningAlgorithm)。

图1-2 瞬时线性盲分离实现的数学模型图

对于这样一个模型,如果没有关于A和源信号的任何先验信息,仅从观测的信号)(t x 恢复出)(t s时,一般对模型做如下的假设:

(1)信号源的各个分量之间相互统计独立;

(2)至少有一个独立源满足高斯分布;

(3)没有噪声或者噪声能量很小。

上述的假设是实现盲信号分离即盲分离的独立分量分析方法的先决条件。盲分离的核心问题是求解分离矩阵,其基本思想是抽取统计独立的特征作为输入的表示,而又不丢失任何信息。一般情况下借助独立分量分析求解信号盲分离,两者等价。

1.2盲源分离的发展

1986年4月,法国学者Jeanny Herault和Christian Jutten提出了递归神经网络模型和基于Hebb学习律的学习算法,以实现2个独立源信号混合的分离。这一开创性的论文在信号处理领域中揭开了新的一章,即盲源分离问题的研究。

在盲信号分离问题研究中,学者们提出了很多的算法,每种算法都在一定程度上取得了成功。从算法的角度而言,BSS算法可分为批处理算法和自适应算法;从代数函数和准则而言,又分为基于神经网络的方法、基于高阶统计量的方法、基于互信息量的方法、基于非线性函数的方法等。

尽管国对盲信号分离问题的研究相对较晚,但在理论和应用方面也取得很大的进展。清华大学的贤达教授在其1996年出版的《时间序列分析——高阶统计量方法》一书中,介绍了有关盲分离的理论基础,其后关于盲分离的研究才逐渐多起来。近年来国各类基金支持了盲信号处理理论和应用的项目,也成立了一些研究小组。

虽然盲源分离理论方法在近几年已经取得了长足的发展,但是还有许多问题有待进一步研究和解决。首先是理论体系有待完善。实际采用的处理算法或多或少都带有一些经验知识,对于算法的稳定性和收敛性的证明不够充分。盲源分离尚有大量的理论和实际问题有待解决,例如多维ICA问题、带噪声信号的有效分离方法、如何更有效地利用各种先验知识成功分离或提取出源信号、一般性的非线性混合信号的盲分离、如何与神经网络有效地结合、源信号的数目大于观察信号的数目时ICA方法等。另外,盲源分离可同其他学科有机结合,如模糊系统理论在盲分离技术中的应用可能是一个有前途的研究方向;盲源分离技术与遗传算法相结合,可以减少计算复杂度,提高收敛速度。如何有效提高算法对源信号统计特性的学习和利用也需要进行深入研究。

1.3盲源分离的应用

近年来,盲信号处理逐渐成为当今信息处理领域中热门的课题之一,并且已经在尤其在、地震探测、移动通信、语音处理、阵列信号处理及生物医学工程领域展现出诱人的应用前景。下面介绍盲处理应用中的三个主要方面。

0500100015002000

250030003500400045005000

-3

混合信号1

0500100015002000

250030003500400045005000

混合信号2

a m p l i t u d e

0500100015002000

250030003500400045005000

-3

混合信号3

混合信号4sample

1.3.1 语音处理领域

语音信号分离、语音识别是盲处理应用的一个重要领域。最典型的应用就是声控计机,计算机所接受到的语音指令肯定是肯定是带有各种环境噪声的,还可能存在其他的

语音信号(如有其他人说话),而且这些信号源与接收器的相对位置也未知,计算机需要在这种情况下识别出正确的语音命令。

在移动通信中,往往存在通信质量问题,极大的影响了通话效果,而盲源分离或盲均衡技术能够消除噪声、抑制干扰及增强语音,提高通话质量。

如图1-3所示的是4段语音信号的混合信号,用忙信号处理算法可以将源语音信号分离出来,虽然不知道源语音信号的类型。

图1-3 4段混合语音信号

如图只知道混合的语音信号,其他的未知,要分离出源语音信号就是语音信号盲分

离要做的工作,也是本次设计的主要目的。

1.3.2 图像处理领域

盲信号分离同样应用于二维数据,如图像滤波、图像增强等处理。在图像恢复和重构问题中,主要的任务就是从被污染的图像中恢复出图像的原来面目,消除获取图像时

各种因素如相机抖动、镜头变形、传输噪声叠加等造成的图像质量问题,可用盲处理的方法获得比较满意的效果。

1.3.3 生物医信号处理学领域

在生物医学领域,盲信号处理可应用于心电图(ECG)、脑电图(EEG)信号分离、听觉信号分析、功能磁共振图像(FMRI)分析等。例如人们常常需要从肌电图中确定神经元细胞信号的触发模式,而EMG信号通常由多个特殊的传感器在人体表处测得,从信号源到传感器之间的信号传输介质参数是未知的,而人们之间各不相同。目前已经有一些学者将盲源分离技术成功地够应用于脑电图等信号的数据处理。

此外,盲分离技术还应用于阵列信号的处理领域。在阵列传感器中,各传感器接收到的混合信号,而源信号及混合特性完全未知,这是典型的盲信号处理应用问题。在军事领域中,近年来发展起来的雷达由于只接受信号而不发出任何信号受到广泛的重视,这种雷达的工作原理就是盲信号处理技术。

2 Matlab语音信号的采集

2.1语音信号的采集方法

在Matlab环境中,主要可以通过以下几种方法驱动声卡,采集语音信号:

1.将声卡作为对象处理采集语音信号Matlab将声卡作为对象处理,其后的一切操作都不与硬件直接相关,而是通过对该对象的操作来作用于硬件设备(声卡)。操作时首先要对声卡产生一个模拟输入对象,给对象添加一个通道设置采样频率后,就可以启动设备对象,开始采集数据,采集完成后停止对象并删除对象。

2.调用wavrecord功能函数采集语音信号。wavrecord功能函数只适用windows95/98/N平台,它使用windows声音输入设备录制声音。

函数调用方式:wavrecord(N,fs,ch,nbits),其中N采集的样本数据量,fs 是样本采集频率有8000Hz、11025Hz、22050Hz和44100Hz几个选项,默认值为11025Hz;ch是样本采集通道,1为单声道,2为双声道,默认值为单声道;nbits是每个样本的位数(或称解析度),double、single或int16、uint8。

3.运用audiorecorder对象采集语音信号audiorecorder(fs,nbits,ch)可以创设一个audiorecorder对象。fs是样本采集频率,为8000Hz、11025Hz、22050Hz 和44100Hz之一,默认值为8000Hz;nbits是每个样本的位数,8位或16位,默认值为8位;ch:样本采集通道,1为单声道,2为双声道,默认值为1(单声道);audiorecorder对象创设后,就可以进行相应的录音、暂停、停止、播放以及数据读取等操作。

在这次的设计中,利用windows自带的录音机录制语音文件,图2-1是基于PC 机的语音信号采集过程,声卡可以完成语音波形的A/D转换,获得WAVE文件,为后续的处理储备原材料。调节录音机保存界面的“更改”选项,可以存储各种格式的WAVE 文件。

图2-1 基于PC机的语音信号采集过程

2.2三路语音信号的采集

这次设计用Matlab程序采集三路语音信号,基本步骤如下:创建工程文件-编写程序-调试-运行-录音,程序如下。在干扰噪声很小的环境下用麦克风录制进行3段不同的语音文件,保存成*.wav文件。为了便于语音信号的盲分离要将这3段语音用软件进行处理使其文件大小一样,仿真时所用的3段语音是gequ1 gequ2, gequ3,时间是5秒,单通道。

在matlab中对上述语音信号进行分析,接下来对3段语音信号进行的时域分析、频谱分析。

2.3三路原始语音信号的分析

利用MATLAB中的wavread命令来读入(采集)语音信号,将它赋值给某一向量。再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析,再依据实际情况对它进行滤波。对于波形图与频谱图(包括分离前后的对比图)都可以用MATLAB画出。我们还可以通过sound命令来对语音信号进行回放,以便在听觉上来感受声音的变化,格式如下:

N

Blip

[N

fs

y ;用于读取语音,采样值放在向量y中,fs表示bits

wavread

,

])

,

1

2

('

]

[,'

采样频率(Hz),bits表示采样位数。[N1 N2]表示读取从N1点到N2点的值(若只有一个N的点则表示读取前N点的采样值)

x

fs

sound; 用于对声音的回放。向量y则就代表了一个信号(也即一个复杂的“函)

,

,

(bits

数表达式”)也就是说可以像处理一个信号表达式一样处理这个声音信号。

2.3.1语音信号时域波形

在MATLAB中画出gequ1.wav、gequ2.wav、gequ3.wav这三段语音信号的时域波形如图图2-2所示。程序见附录1:

图2-2 三段原始信号时域波形

在时域,语音信号具有“短时性”的特点,即在总体上,语音信号的特征是随着时间而变化的,但在一段较短的时间间隔,语音信号保持平稳。在浊音段表现出周期信号的特征,在清音段表现出随机噪声的特征。

2.3.2语音信号FFT 频谱

在频域,语音信号的频谱分量主要集中在300~3400Hz 的围。利用这个特点,可以用一个防混迭的带通滤波器将此围的语音信号频率分量取出,然后按8kHz 的采样率对语音信号进行采样,就可以得到离散的语音信号。

00.51 1.52 2.53 3.5

4

x 10

4

-1

1gequ1原始语音信号

0.5

1

1.5

2

2.5

3

3.5

4

x 10

4

-0.5

0.5gequ2原始语音信号

0.5

1

1.5

2

2.5

3

3.5

4

x 10

4

-0.5

0.5gequ3原始语音信号

函数FFT 用于序列快速傅立叶变换,一种调用格式为:),(N x fft y 式中,x ,y 意义同前,N 为正整数。函数执行N 点的FFT 。若x 为向量且长度小于N ,则函数将x 补零至长度N 。若x 的长度大于N ,则函数截短x 使之长度为N 。

在 MATLAB 中画出gequ1.wav 、gequ2.wav 、gequ3.wav 这三段语音信号的时域波形和频谱如图2-3所示。程序见附录1:

图2-3 原始语音1、2、3的时域和FFT 频谱图

从上面的频谱可以看出,语音信号大部分分布于低频部分,这三路语音信号的时域波形形状、信号幅度差别明显,这给分离出来的信号做一个衡量的标准。

1

2

3

4

x 10

4

-101gequ1原始语音信

050010001500

0.2

0.4gequ1原始语音信号FFT 频谱

1

2

3

4

x 10

4

-0.5

00.5gequ2原始语音信

050010001500

0.5

1gequ2原始语音信号FFT 频谱

1

2

3

4

x 10

4

-0.5

00.5gequ3原始语音信

500

1000

1500

00.51gequ3原始语音信号FFT 频谱

信号源

1()s t 2()s t 3()

s t ()

M s t 混合

系统

A

观察信号

1()x t 2()x t 3()

x t ()M x t 解混

矩阵

B

估计信号

1()

y t 2()y t 3()

y t ()

M y t 1

信道2

信道3

信道n

信道(t)

S (t)X (t)

Y 3盲信号分离的两种算法介绍

盲源分离在许多领域中都有成功的应用,近十几年来,受到了越来越多的重视,已经有大量的算法不断地提出。其算法可以大致的分为基于高阶累积量的盲源分离、基于信息理论的盲源分离和基于神经网络的盲源分离三种类型。这三类也包含很多不同类型的算法,下面主要介绍本次设计要用到的ICA 算法和PCA 算法。

3.1 独立分量分析ICA

对于盲源分离问题,独立分量分析(Independent Component Analy2sis,ICA )是指在只知道混合信号,而不知道源信号、噪声以及混合机制的情况下,分离或近似地分离出源信号的一种分析过程。

假设源信号若干个统计上相互独立的信号组成的,它们在空间中形成交叠,独立分量分析(Independent Component Analysis ,ICA)是借助于多个信道同步观察交叠信号,将观察信号经过解混分解成若干独立成分,作为对源信号的一组估计,如图3-1所示:

图3-1 独立分量分析法

可以假设:A 是线性系统可用矩阵表示,实际仿真时是随机阵。且信道对信号无影响,观察信道数与信号数相同(A ,B 方阵)。

独立分量分析ICA 有多种算法,如基于代数结构的AMUSE,SOBI,JADE 以及基于信息论的Fast-ICA 和Info-max 。其中,Fast-ICA 的收敛速度快,且有一定的精度保证。

Fast-ICA 算法能够更科学的去除元素组合之间的相关性,得到的元素组合比传统方法更具有说服力。

从处理技术上看,依据独立性分解势必涉及概论密度函数或高阶统计量,而处理过程常常要引入非线性环节。而地球化学数据从本质上将也是非线性的,所以应用该技术来对地球化学数据进行处理是合理的、可行的。从这一意义上看,Fast-ICA技术优越于常用的只建立在二阶统计量的线性处理技术,接下来的小节对Fast-ICA原理进行阐述。

3.1.1 Fast-ICA算法简介

Fast-ICA算法是一种快速而数值稳定的方法,采用拟牛顿算法实现寻优,具有超线性收敛速度,通常收敛速度较梯度下降寻优算法快得多;矩阵特征值分解盲分离方法通过对矩阵进行特征分解或者广义特征分解估计分离矩阵,是一种解析方法,可直接找到闭形式解,没有迭代寻优过程,因此运行速度很快。

快速ICA算法,由于采用了定点迭代的思想,所以又称固定点(Fixed-Point)算法或定点算法,是一种快速寻优神经网络算法。与普通的神经网络算法不同的是这种算法采用了牛顿迭代的思想对采样点采用批处理的方式,在每一步迭代中有大量的样本数据参与运算。基于目标函数的选择不同,从而产生了FastICA算法的基于负熵最大、峭度、互信息最小、最大似然估计等的多种形式。FastICA算法的优点如下:

1.收敛速度快,FastICA收敛速度为2次以上,普通的ICA算法收敛仅为1次。

2.能利用任何的非线性函数直接找出任何非高斯分布的独立分量,而对于其他的算法来说,概率密度函数的估计不得不首先进行。

3.独立分量可被逐个估计出来,类似于做投影追踪,这在仅需要估计几个(不是全部)独立分量的情况下,能减小计算量。

4.Fast-ICA算法有许多神经算法的优点,它是并行、分布式的且计算简单,存要求很少,它的性能能够通过选择适当的非线性函数来最佳化。

然而FastICA算法也有其自身的缺点,首先是它对初值的选择较自然梯度算法敏感,当初值的选择不是很合适的时候,算法的分离性能急剧的下降,其次算法的迭代步长有待进行自适应的优化。

3.1.2 基于负熵最大的快速ICA

语音信号的盲分离

课程设计任务书 学生:专业班级:通信1103 指导教师:许建霞工作单位:信息学院 题目: 语音信号的盲分离 初始条件:Matlab软件、PC机 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)设计任务 根据盲信号分离原理,用matlab采集两路以上的语音信号,选择合适的混合矩阵生成若干混合信号。选取合适的盲信号分离算法(如独立成分分析ICA等)进行训练学习,求出分离矩阵和分离后的语音信号。 设计要求 (1) 用matlab做出采样之后语音信号的时域和频域波形图 (2) 选择合适的混合矩阵,得到混合信号,并做出其时域波形和频谱图 (3) 采用混合声音信号进行训练学习,求出分离矩阵,编写出相应的确matlab代码。 (4) 用求出的分离矩阵从混合信号中分离出原语音信号,并画出各分离信号的时域波形和频谱图。 (5) 对结果进行对比分析。 时间安排:

指导教师签名:2014年 6 月10 日 系主任(或责任教师)签名:2014 年 6 月10 日 摘要 盲信号处理(Blind Signal Processing,BSP)是指从观测到的混合信号中,在没有任何先验条件的情况下,恢复出未知的源信号过程。盲信号分离已成为信号处理学界和通信工程学界共同感兴趣的一个极富挑战性的研究热点问题,并获得了迅速的发展。 盲分离根据信号源的不同可以分为确定信号盲分离、语音信号盲分离和图像盲分离等,本设计主要讨论语音信号的盲分离。 语音信号的盲分离主要是利用盲源分离(Blind Signal Separation,BSS)技术对麦克风检测到的一段语音信号进行处理,本文重点研究了以语音信号为背景的盲处理方法,在语音和听觉信号处理领域中,如何从混有噪声的的混叠语音信号中分离出各个语音源信号,来模仿人类的语音分离能力,成为一个重要的研究问题。根据盲信号分离原理,本设计用matlab采集3路语音信号,选择合适的混合矩阵生成若干混合信号。 具体实现主要结合独立分量分析ICA技术,选取混合矩阵对3个语音信号进行混合,并从混合信号中分离出原语音信号,最后画出各分离信号的时域波形和频谱图和原来的信号进行比较。此外还运用PCA算法进行了混合语音信号的分离实现,最终对两种算法进行比较。 关键字:盲信号处理;语音信号;盲源分离BSS;独立分量分析ICA技术

matlab语音信号采集与初步处理要点

《matlab与信号系统》实验报告 学院: 学号: 姓名: 考核实验——语音信号采集与处理初步 一、课题要求 1.语音信号的采集 2.语音信号的频谱分析 3.设计数字滤波器和画出频率响应 4.用滤波器对信号进行滤波 5.比较滤波前后语音信号的波形及频谱 6.回放和存储语音信号 (第5、第6步我放到一起做了) 二、语音信号的采集 本段音频文件为胡夏演唱的“那些年”的前奏(采用Audition音频软件进行剪切,时长17秒)。运行matlab软件,在当前目录中打开原音频文件所在的位置,采用wavread函数对其进行采样,并用sound函数可进行试听,程序运行之后记下采样频率和采样点。 利用函数wavread对语音信号的采集的程序如下: clear; [y,fs,bits]=wavread('music.wav'); %x:语音数据;fs:采样频率;bits:采样点数sound(y,fs,bits); %话音回放 程序运行之后,在工作区间中可以看到采样频率fs=44100Hz,采样点bits=16

三、语音信号的频谱分析 先画出语音信号的时域波形,然后对语音号进行快速傅里叶变换,得到信号的频谱特性。语音信号的FFT频谱分析的完整程序如下: clear; [y,fs,bits]=wavread('music.wav'); %x:语音数据;fs:采样频率;bits:采样点数sound(y,fs,bits); %话音回放 n = length (y) ; %求出语音信号的长度 Y=fft(y,n); %傅里叶变换 subplot(2,1,1); plot(y); title('原始信号波形'); subplot(2,1,2); plot(abs(Y)); title('原始信号频谱'); 程序结果如下图: 四、设计数字滤波器和画出频率响应 根据语音信号的特点给出有关滤波器的性能指标: 1)低通滤波器性能指标,fp=1000Hz,fc=1200 Hz,As=100dB,Ap=1dB; 2)高通滤波器性能指标,fc=4800 Hz,fp=5000 Hz As=100dB,Ap=1dB。

孙烽原 基于MATLAB的线性盲信号分离算法的研究

毕业论文(设计)材料 题目:基于 MATLAB 的线性盲信号分离算 法的研究 学生姓名:孙烽原 学生学号:0908030229 系别:电气信息工程学院 专业:电子信息工程 届别:2013 指导教师:张大雷

填写说明 1、本材料包括淮南师范学院本科毕业论文(设计)任务书、开题报告以及毕业论文(设计)评审表三部分内容。 2、本材料填写顺序依次为: (1)指导教师下达毕业论文(设计)任务书; (2)学生根据毕业论文(设计)任务书的要求,在文献查阅的基础上撰写开题报告,送交指导教师审阅并签字认可; (3)毕业论文(设计)工作后期,学生填写毕业论文(设计)主要内容,连同毕业论文(设计)全文一并送交指导教师审阅,指导教师根据学生实际完成的论文(设计)质量进行评价; (4)指导教师将此表连同学生毕业论文(设计)全文一并送交评阅教师评阅。 3、指导教师、评阅教师对学生毕业论文(设计)的成绩评定均采用百分制。 4、毕业论文(设计)答辩记录不包括在此表中。

一、毕业论文(设计)任务书 要求完成的主要任务及达到的目标 顾名思义,盲信号是指未知的、有杂乱无章特征的信号,人们难以得知源信号以及源信号的结合形式。对于盲信号的处理是通信时代比较前沿的技术之一,从接收信号中尽力还原源信号的技术称为盲源分离、盲信号提取。这已经称为通信信号学术领域的研究焦点。盲信号处理如今广泛被语音识别、语音增强、图像处理、通信系统、地震探测、遥感、数据挖掘、计量经济学、医学成像等领域所应用。根据传输介质的不同混合方式,盲信号处理有线性瞬时混合信号盲处理、线性卷积混合信号盲处理、非线性混合信号盲处理三种。本研究主要讨论有线性瞬时混合信号忙处理的计算方法。 ?对盲信号处理学各类算法的了解和掌握; ?对有线瞬时混合信号忙处理方法的熟悉和精通; ?对于MATLAB软件的熟练操作; ?实现用MATLAB软件实现对线性盲信号分离算法。 在此基础上巩固、加深和扩大MATLAB应用的知识面,进一步了解用此款软件对数字信号处理、数字图像处理、工程设计等的应用。加深对盲信号处理知识的掌握深度,加强对线性盲信号分离算法的理解,提高综合及灵活运用所学知识研究各类数学算法的能力。学会查阅书籍,并且要能够熟练的运用数学软件、编写程序、仿真、处理信号问题的方法、内容及步骤。学会对课题设计方案的分析、选择、比较。 工作进度要求

基于matlab的语音信号的采集与处理

文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。 目录 第1章前言 ................................................................................................... 错误!未定义书签。第2章语音信号分析处理的目的和要求 ................................................... 错误!未定义书签。 2.1MATLAB软件功能简介................................................................. 错误!未定义书签。 2.2课程设计意义 .................................................................................. 错误!未定义书签。第3章语音信号的仿真原理..................................................................... 错误!未定义书签。第4章语音信号的具体实现..................................................................... 错误!未定义书签。 4.1语音信号的采集................................................................................ 错误!未定义书签。 4.2语音信号加噪与频谱分析................................................................ 错误!未定义书签。 4.3设计巴特沃斯低通滤波器................................................................ 错误!未定义书签。 4.4用滤波器对加噪语音滤波................................................................ 错误!未定义书签。 4.5比较滤波前后语音信号波形及频谱................................................ 错误!未定义书签。第5章总结................................................................................................... 错误!未定义书签。参考文献......................................................................................................... 错误!未定义书签。附录................................................................................................................. 错误!未定义书签。

盲源分离 开题报告

一、研究背景及意义 语音信号的分离近年来成为信号处理领域的一个研究热点,它在电话会议、助听器及便携设备、机器的语音识别方面有很多的应用与影响。而语音信号常使用盲信号处理的方法分离。 盲信号处理(Blind Source Processing)作为一种新兴的信号处理方法,逐步发展并得到了越来越多的关注。盲信号处理与现代信号处理朝向非平稳、非高斯、非线性的发展方向相吻合,有利于复杂信号的分析以及处理,其研究对象主要为非高斯信号。它在传统信号处理方法的基础上结合了信息论、统计学和人工神经网络的相关思想。如图1所示,所谓的“盲分离”是指在没有关于源信号本身以及传输信道的知识,对数据及系统参数没有太多先验知识的假设的情况下,如何从混迭信号(观测信号)中分离出各源信号的过程。它能适用于更广泛的环境,为许多受限于传统信号处理方法的实际问题提供了崭新的思路。 图1 盲分离的概念 在科学研究和工程应用中,很多观测信号都可以假设成是不可见的源信号的混合,如通信信号、图像、生物医学信号、雷达信号等等。例如经典的“鸡尾酒会”问题,在一个充满宾客的宴会厅里,我们每个人都会听到来自不同地方的声音,如音乐,歌声及说话声等,正常的人类拥有在这种嘈杂环境下捕捉到所感兴趣的语音的能力。可以看到,盲信号处理同传统信号处理方法最大的不同就在于用它致力于用最少的信息得到理想的处理结果。

盲信号分离可以有不同的分类方法。 根据所处理信号的不同,可以分为声纳信号盲分离,雷达信号盲分离,通信信号盲分离,语音信号盲分离,脑电信号盲分离等。 根据盲处理领域的不同,可以分为时域盲分离和频域盲分离。 根据传输信道的情况,可以分为无噪声,有加性噪声,有乘性噪声等。 根据源信号在传输信道中被混合方式的不同,可以分为瞬时混合,卷积混合,非线性混合等。 根据源信号和观测信号数目的不同,可以分为正定盲分离,欠定盲分离,过定盲分离等。 本文研究的主要内容是正定不含噪的卷积混合语音信号的频域盲分离 方法。 总的来说,盲信号分离是一种仅利用观测到的混合信号来估计源信号的方法,它是以独立分量分析(Independent Component Analysis,ICA)为理论基础的。与传统信号处理方法如FIR 滤波,小波分析等不同的是,它不要求有关于源信号本身以及信号传输通道的知识。受益于这种“盲”的条件,盲信号分离对多个领域有很大的促进作用,特别是它在声纳、雷达、通信、语音、图像等方面的应用对军事,国防科技的发展起着非常重要的作用。近十多年来,各国学者在盲信号分离领域展开了深入的研究,有了一系列的成果。本课题就是在这样的背景下对语音信号进行盲分离的研究,以探索新的算法,新的应用。 二、研究的基本内容,拟解决的主要问题 1.研究的基本内容 本课题详细研究语音分离的基本理论,重点研究卷积混合频域解法模型框架下的语音信号分离算法。 基于时域实值瞬时混合模型的盲分离算法已经研究的比较充分,但是在语音信号在现实中往往是卷积混合,而且在频域分离方法中信号是复值的,本文将研究利用复值信号特征的瞬时混合盲分离算法,对不同的复数域盲分

基于MATLAB的线性盲信号分离算法的研究

毕业论文(设计) 论文题目:基于MATLAB的线性盲信号分离算法的研究 学生姓名:孙烽原 学号:0908030229 所在院系:电气信息工程学院 专业名称:电子信息工程 届次:2013届 指导教师:张大雷

淮南师范学院本科毕业论文(设计) 诚信承诺书 1.本人郑重承诺:所呈交的毕业论文(设计),题目《 》是本人在指导教师指导下独立完成的,没有弄虚作假,没有抄袭、剽窃别人的内容; 2.毕业论文(设计)所使用的相关资料、数据、观点等均真实可靠,文中所有引用的他人观点、材料、数据、图表均已注释说明来源; 3. 毕业论文(设计)中无抄袭、剽窃或不正当引用他人学术观点、思想和学术成果,伪造、篡改数据的情况; 4.本人已被告知并清楚:学院对毕业论文(设计)中的抄袭、剽窃、弄虚作假等违反学术规范的行为将严肃处理,并可能导致毕业论文(设计)成绩不合格,无法正常毕业、取消学士学位资格或注销并追回已发放的毕业证书、学士学位证书等严重后果; 5.若在省教育厅、学院组织的毕业论文(设计)检查、评比中,被发现有抄袭、剽窃、弄虚作假等违反学术规范的行为,本人愿意接受学院按有关规定给予的处理,并承担相应责任。 学生(签名): 日期:年月日

目录 前言 (2) 1 概述 (2) 1.1盲信号处理的概念与分类 (3) 1.2盲处理概念 (4) 1.3盲信号处理的分类 (4) 1.4盲信号处理的应用 (4) 2 盲信号分离的基础 (4) 2.1盲信号的预处理 (5) 2.2信号的去均值处理 (5) 2.3盲信号分离原理 (5) 2.4盲信号分离的方法 (6) 3 盲分离的算法和仿真结果 (6) 3.1最大信噪比的盲信号分离算法 (6) 3.2基于最大信噪比盲信号分离的算法流程 (7) 3.3基于峭度的盲信号分离的算法 (7) 3.4基于峭度的盲信号分离的算法流程 (8) 3.5基于两种算法的仿真 (8) 3.6仿真结果分析 (12) 4 结论 (13) 4.1总结 (13) 4.2未来工作 (13) 参考文献 (14)

基于MATLAB的语音信号滤波处理

基于MATLAB的语音信号滤波处理 题目:基于MATLAB的语音信号滤波处理 课程:数字信号处理 学院:电气工程学院 班级: 学生: 指导教师: 二O一三年十二月

目录CONTENTS 摘要 一、引言 二、正文 1.设计要求 2.设计步骤 3.设计内容 4.简易GUI设计 三、结论 四、收获与心得 五、附录

一、引言 随着Matlab仿真技术的推广,我们可以在计算机上对声音信号进行处理,甚至是模拟。通过计算机作图,采样,我们可以更加直观的了解语音信号的性质,通过matlab编程,调用相关的函数,我们可以非常方便的对信号进行运算和处理。 二、正文 2.1 设计要求 在有噪音的环境中录制语音,并设计滤波器去除噪声。 2.2 设计步骤 1.分析原始信号,画出原始信号频谱图及时频图,确定滤波器类型及相关指标; 2.按照类型及指标要求设计出滤波器,画出滤波器幅度和相位响应,分析该滤波器是否符合要求; 3.用所设计的滤波器对原始信号进行滤波处理,画出滤波后信号的频谱图及时频图; 4.对滤波前的信号进行分析比对,评估所设计滤波器性能。 2.3 设计内容 1.原始信号分析

分析信号的谱图可知,噪音在1650HZ和3300HZ附近的能量较高,而人声的能量基本位于1000HZ以下。因此,可以设计低通滤波器对信号进行去噪处理。 2.IIR滤波器设计 用双线性变换法分别设计了巴特沃斯低通滤波器和椭圆低通滤波器和带阻滤波器: ①巴特沃斯滤波器 fp=800;fs=1300;rs=35;rp=0.5; 程序代码如下: fp=800;fs=1300;rs=35;rp=0.5;Fs=44100; wp=2*Fs*tan(2*pi*fp/(2*Fs));ws=2*Fs*tan(2*pi*fs/(2*Fs)); [n,wn]=buttord(wp,ws,rp,rs,'s'); [b,a]=butter(n,wn,'s'); [num,den]=bilinear(b,a,Fs); [h,w]=freqz(num,den,512,Fs);

基于matlab的语音信号滤波处理——数字信号处理课程设计

数字信号处理课程设计 题目:基于matlab的语音信号滤波处理学院:物理与电子信息工程 专业:电子信息工程 班级: B07073041 学号: 200932000066 姓名:高珊 指导教师:任先平

摘要: 语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴学科,是目前发展最为迅速的学科之一,通过语音传递信息是人类最重要,最有效,最常用和最方便的交换信息手段,所以对其的研究更显得尤为重要。 Matlab语言是一种数据分析和处理功能十分强大的计算机应用软件,它可以将声音文件变换成离散的数据文件,然后用起强大的矩阵运算能力处理数据。这为我们的本次设计提供了强大并良好的环境! 本设计要求自己录制一段自己的语音后,在MATLAB软件中采集语音信号、回放语音信号并画出语音信号的时域波形和频谱图。再在Matlab中分别设计不同形式的FIR数字滤波器。之后对采集的语音信号经过不同的滤波器(低通、高通、带通)后,观察不同的波形,并进行时域和频谱的分析。对比处理前后的时域图和频谱图,分析各种滤波器对于语音信号的影响。最后分别收听进行滤波后的语音信号效果,做到了解在怎么样的情况下该用怎么样的滤波器。

目录 1.设计内容 (4) 2.设计原理 (4) 2.1语音信号的时域分析 (4) 2.2语音信号的频域分析 (5) 3.设计过程 (5) 3.1实验程序源代码 (6) 3.1.1原语音信号时域、频域图 (6) 3.1.2低通滤波器的设计 (6) 3.1.3高通滤波器的设计 (7) 3.1.4带通滤波器的设计 (8) 3.1.5语音信号的回放 (9) 3.2调试结果描述 (10) 3.3所遇问题及结果分析 (15) 3.3.1所遇主要问题 (16) 3.3.2结果分析 (16) 4.体会与收获 (17) 5.参考文献 (17)

盲源分离算法初步研究

盲源分离算法初步研究 一、盲源分离基本问题 1.概念 BSS 信号盲分离,是指从若干观测到的混合信号中恢复出未知的源信号的方法。典型的观测到的混合信号是一系列传感器的输出,而每一个传感器输出的是一系列源信号经过不同程度的混合之后的信号。其中,“盲”有两方面的含义:(1)源信号是未知的;(2)混合方式也是未知的。 根据不同的分类标准,信号盲分离问题可以分成以下几类: (1)从混合通道的个数上分,信号的盲分离可以分为多通道信号分离和单通道信号分离。单通道信号分离是指多路源信号混合后只得到一路混合信号,设法从这一路混合信号中分离出多个源信号的问题就是单通道信号分离。多通道信号分离是M 个源信号混合后得到N 路混合信号(通常N ≥M )。从N 路混合信号中恢复出M 个源信号的问题即为多通道信号分离。一般情况下,单通道信号分离的难度要超过多通道信号分离。 (2)从源信号的混合方式上分,可将信号盲分离问题分为瞬时混合和卷积混合、线性混合和非线性混合等不同种类。在目前信号盲分离的研究文章中,所建模型大部分为瞬时混合。但是,作为更接近实际情况的卷积混合方式正受到越来越多的关注。 (3)根据源信号的种类,也可将信号盲分离分为多类。在通常的处理方法上,根据不同种类信号的特点,也有一些独特的处理技术。 2.盲分离问题的描述 BSS 是指仅从观测的混合信号(通常是多个传感器的输出)中恢复独立的源信号,在科学研究和工程应用中,很多观测信号都可以假设成是不可见的源信号的混合。所谓的“鸡尾酒会”问题就是一个典型的例子。在某个场所,多个人正在高声交谈。我们用多个麦克风来接受这些人说话的声音信号。每个人说话的声音是源信号,麦克风阵列的输出是观测信号。由于每个麦克风距离各个说话者的相对方位不同,它们接受到的也是这些人的声音信号以不同方式的混合。盲信号分离此时的任务是从麦克风阵列的输出信号中估计出每个人各自说话的声音信号,即源信号。如果混合系统是已知的,则以上问题就退化成简单的求混合矩阵的逆矩阵。但是在更多的情况下,人们无法获取有关混合系统的先验知识,这就要求人们从观测信号来推断这个混合矩阵,实现盲源分离。 3.混合模型 信号的混合模型包含两个方面的内容:(1)源信号的统计特征;(2)源信号的混合方式。 3.1源信号的统计特征 已有的研究表明如果加上源信号间相互独立的限制条件,就可以有效地补偿对以上先验知识的缺乏。如果用q i 表示第i 个分量的概率密度函数,则这种统计独立性可以表示为: 11221()()...()()n n n i i i q s q s q s q s ==???=∏q(s) 其中q(s)是s 的联合概率密度函数。 3.2源信号的混合方式 最简单的混合模型假定各个分量是线性叠加混合在一起而形成观测信号的。基于这样的假设,我们可以把观测信号和源信号用矩阵的方式表示为: ()()t t =x Hs 式中H 是n ×n 阶的混合矩阵。基于该模型,盲信号分离()()t t =x Hs 的目标可以表

语音信号处理matlab实现

短时能量分析matlab源程序: x=wavread('4.wav'); %计算N=50,帧移=50时的语音能量 s=fra(50,50,x);%对输入的语音信号进行分帧,其中帧长50,帧移50 s2=s.^2;%一帧内各种点的能量 energy=sum(s2,2);%求一帧能量 subplot(2,2,1); plot(energy) xlabel('帧数'); ylabel('短时能量E'); legend('N=50'); axis([0,500,0,30]) %计算N=100,帧移=100时的语音能量 s=fra(100,100,x); s2=s.^2; energy=sum(s2,2); subplot(2,2,2); plot(energy) xlabel('帧数'); ylabel('短时能量E'); legend('N=100'); axis([0,300,0,30]) %计算N=400,帧移=400时的语音能量 s=fra(400,400,x); s2=s.^2; energy=sum(s2,2); subplot(2,2,3); plot(energy) xlabel('帧数'); ylabel('短时能量E'); legend('N=400'); axis([0,60,0,100]) %计算N=800,帧移=800时的语音能量 s=fra(800,800,x); s2=s.^2; energy=sum(s2,2); subplot(2,2,4); plot(energy) xlabel('帧数'); ylabel('短时能量E'); legend('N=800'); axis([0,30,0,200]) 分帧子函数: function f=fra(len,inc,x) %对读入语音分帧,len为帧长,inc为帧重叠样点数,x为输入语音数据 fh=fix(((size(x,1)-len)/inc)+1);%计算帧数 f=zeros(fh,len);%设一个零矩阵,行为帧数,列为帧长 i=1;n=1; while i<=fh %帧间循环 j=1; while j<=len %帧内循环 f(i,j)=x(n); j=j+1;n=n+1; end n=n-len+inc;%下一帧开始位置 i=i+1; end

语音信号盲分离测试工具

基于Tcl/Tk 与C 的语音信号盲分离测试工具 马骏 西安市地下铁道有限责任公司 西安 710018 摘要:如何分离多说话人环境下麦克风所采集的混合语音信号是盲源分离研究的一个重要课题。文章采用TCL/TK 与C 语言混合编程,自主开发了用于语音信号盲分离测试的工具,并介绍了该工具的结构、界面和功能。最后通过试验验证了该工具的正确性。 关键词:盲源分离 语音信号 Tcl/Tk A Tcl/Tk & C-based testing tool for blind separation of audio signals Ma Jun Xi'an Metro Co., Ltd. Xi'an 710018 Abstract: Separating independent signal from audio mixtures is one of the elementary problems in Blind Source Separation (BSS) research. The interface between Tcl/Tk is explained, and a testing tool for blind separation of audio signals is developed. The structure, interface and function of the tool are introduced. The validity of the tool is proved by experiment. Keywords :Blind source separation Audio signals Tcl/Tk 1.引言 盲源分离(BSS )[1,2,3,4]是人工神经网络与统计信号处理以及信息论相结合的产物,而混 合语音信号的盲分离是该领域的一个重要课题。使计算机具有和人类一样的听觉,是计算机智能领域研究者们的梦想。语音识别技术为我们实现计算机听觉的这一目标提供了有效的途径,使得计算机能听懂我们人类的语言,计算机操作从此变得更互动和简单自然,方便了人机的交流。混合语音信号盲分离虽然不能实现计算机听觉这一目标,但是通过该技术却能使原本相互混叠的语音信号相互剥离,来作为语音识别的预处理,从而使得噪声环境下和多说话人情形下的语音识别的实现成为可能,增大了识别算法的鲁棒性和适应能力,从这种意义上来讲该问题的研究具有很大的现实意义。 本文首先阐述了盲源分离的基本理论知识以及Tcl/Tk [5]与C 语言的接口编程,然后采用 分层软件模型开发了用于语音信号盲分离的测试工具,其外壳选择灵活的事件驱动脚本Tcl/Tk 作为基本的界面开发平台,完成配置、控制任务;而其低层的BSS 核心算法库则利用高效的编译型C 语言实现。另外为了完成语音信号的读写等操作还参考了snack [6]语音处理库及其源代码。文章介绍了该工具的结构、界面和功能,最后通过实验验证了该测试工具的正确性。 2.盲源分离模型及算法 设由N 个未知的统计独立的信号源)(t s i 构成了一个列向量,)](),...,([)(1T N t s t s t S =其中t 是离散采样时刻。设A 是一个未知的N M ?维矩阵,通常称为混合矩阵。设[]T M t x t x t X )(),...,()(1=是由M 个传感器观测到混合信号)(t x i 构成的列向量,且满足下列方程: )()((t)t V t AS X += (1) 其中T M 1t ,...,v t v t V )]()([)(=是由M 个空间白化、统计独立噪声信号(t)i v 构成的列向量。盲源分 离的命题是,对任何t ,根据观测到的)(t X ,在A 未知的条件下求)(t S 。 图1给出了语音信号盲分离算法框架图。

一种盲信号分离算法的改进研究

2010年第2期计算机与现代化 JISUANⅡYUXIANDAIHUA总第174期 文章编号:1006-2475(2010)02-0052-03 一种盲信号分离算法的改进研究 王纪伟,高宝成 (北京邮电大学自动化学院,北京100876) 摘要:盲信号分离在信号处理领城中逐渐变得重要起来,其为混合信号的分离提供一种较好的途径。独立分量分析是盲信号分离中的主流方法之一。其中的快速ICA算法更是具有分离效果好、收敛速度快的特点,具有广泛的应用。本文介绍盲信号分离的基本原理。详细阐述快速ICA算法,并且根据快速ICA算法应用中的局限性做出一些改进。取得较好的效果。 关键词:盲信号;ICA;快速ICA;目标函数 中图分类号:TNgll.23文献标识码:Adoi:10.3969/j.issn.1006-2475.2010。02.014 StudyofImprovementofBlindSignalSeparationAlgorithm WANGJi-wei,GAOBao?cheng (SchoolofAutomation,BeijingUniversityofPostsandTelecommunications。Beijing100876,China)Abstract:Theblindsignalseparationhasgraduallybecomeimportantinsignalprocessing,foritproddingabetterwaytosepa— ratemixed—signals.Intheblindsignalseparation,oneofthemainstreammethodsistheindependentcomponentanalysis,ofwhichfastICAisinwideUseforitssoodseparationeffectandfastconvergence.Thispaperdescribesthebasicprinciplesofblindsignalseparation,anddetailsofthefastICAalgorithm.Also,itmakessomeimprovementsinallusiontothelimitationsoffastICA,andachievesgoodresults. Keywords:blindsignal;ICA;fastICA;objectivefunction 0引言 近年来,盲信号分离技术在音频信号处理、通信、生物医学工程和图像处理等领域的应用越来越广泛,盲信号处理方面的研究逐渐变为信号处理中的一个重要领域,并且取得了迅速的发展[1剖。所谓盲信号分离,是指在不知源信号和传输通道参数的情况下,根据输入信源信号的统计特性,仅由观测信号恢复出信源信号的过程。典型情况下,观测信号是一组传感器的输出,其中每个传感器接收到的是源信号的不同组合口】。 独立分量分析(1CA)是针对盲源分离问题的一种基于信号高阶统计特性的分析方法,由于其对源信号所需要的先验知识极少和良好的信号分离性能,在越来越多的领域得到应用H]。Hyvarinen[51的固定点算法(又称为快速ICA算法)是一种快速和数值稳定的独立分量分析算法,具有较好的收敛速度,且没有学习速率或其它参数需要调节,因此具有广泛的应用。针对快速ICA算法在某些应用中的限制,本文对其进行了一些改进,经过仿真实验,获得较好的效果。 1盲信号分离原理 盲信号分离问题中的输入是传感器组的输出信号,设共有m个观测信号,每一个观测信号x;(j=1,2,…,m)都是由n个独立源信号si(i=1,2,…,n)线性混合而来。信号混合的方式可以用下列公式表示‘6】: 收稿日期:2009-094)3 作者简介:王纪伟(1984一),男,甘肃武威人,北京邮电大学自动化学院硕士研究生,研究方向:盲信号处理;高宝成(1961-),男,河南信阳人,副教授,博士,研究方向:弱信号检测与处理。 万方数据

基于某MATLAB地语音信号采集与处理

工程设计论文 题目:基于MATLAB的语音信号采集与处理 姓名: 班级: 学号:

指导老师: 一.选题背景 1、实践意义: 语音信号是一种非平稳的时变信号,它携带着各种信息。在语音编码、语音合成、语音识别和语音增强等语音处理中无一例外需要提取语音中包含的各种信息。语音信号分析的目的就在于方便有效地提取并表示语音信号所携带的信息。所以理解并掌握语音信号的时域和频域特性是非常重要的。 通过语音相互传递信息是人类最重要的基本功能之一.语言是人类特有的功能.声音是人类常用工具,是相互传递信息的最重要的手段.虽然,人可以通过多种手段获得外界信息,但最重要,最精细的信息源只有语言,图像和文字三种.与用声音传递信息相比,显然用视觉和文字相互传递信息,其效果要差得多.这是因为语音中除包含实际发音容的话言信息外,还包括发音者是谁及喜怒哀乐等各种信息.所以,语音是人类最重要,最有效,最常用和最方便的交换信息的形式.另一方面,

语言和语音与人的智力活动密切相关,与文化和社会的进步紧密相连,它具有最大的信息容量和最高的智能水平。 语音信号处理是研究用数字信号处理技术对语音信号进行处理的一门学科,处理的目的是用于得到某些参数以便高效传输或存储;或者是用于某种应用,如人工合成出语音,辨识出讲话者,识别出讲话容,进行语音增强等. 语音信号处理是一门新兴的学科,同时又是综合性的多学科领域,是一门涉及面很广的交叉学科.虽然从事达一领域研究的人员主要来自信息处理及计算机等学科.但是它与语音学,语言学,声学,认知科学,生理学,心理学及数理统计等许多学科也有非常密切的联系. 语音信号处理是许多信息领域应用的核心技术之一,是目前发展最为迅速的信息科学研究领域中的一个.语音处理是目前极为活跃和热门的研究领域,其研究涉及一系列前沿科研课题,巳处于迅速发展之中;其研究成果具有重要的学术及应用价值. 数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。它在语音、雷达、图像、系统控制、通信、航空航天、生物医学等众多领域都获得了极其广泛的应用。具有灵活、精确、抗干扰强、度快等优点。 数字滤波器, 是数字信号处理中及其重要的一部分。随着信息时代和数字技术的发展,受到人们越来越多的重视。数字滤波器可以通过数

语音信号的盲分离分析

目录 摘要.................................................................... I ABSTRACT ............................................................... II 第一章前言.. (2) 1.1语音特性分析 (2) 1.2语音信号的基本特征 (2) 1.3语音信号处理的理论基础 (2) 第二章盲分离的基本概念 (2) 2.1盲分离的数学模型 (2) 2.2盲源分离的基本方法 (2) 2.3盲分离的目标准则 (2) 2.4盲分离的研究领域 (2) 2.5盲分离的研究内容 (2) 第三章独立分量分析的基本算法 (2) 3.1ICA的线性模型 (2) 3.2ICA研究中的主要问题及限制条件 (2) 3.3ICA的基本算法 (2) 3.4F AST ICA算法原理 (2) 第四章语音信号盲分离仿真及分析 (2) 4.1ICA算法实现 (2) 4.2频谱分析 (2) 第五章总结 (2) 参考文献 (2)

摘要 盲源分离(BSS)是一种多维信号处理方法,它指在未知源信号以及混合模型也未知的情况下,仅从观测信号中恢复出源信号各个独立分量的过程。盲源分离已近成为现代信号处理领域研究的热点问题,在通信、语音处理、图像处理等领域具有非常重要的理论意义和广泛的应用价值。本文主要内容如下: 首先,介绍了语音信号的产生机理,特性,基本特征及语音信号处理的理论基础,为后文语音信号盲分离奠定了基础。 其次,从盲源分离的理论出发,研究了盲分离的数学模型以及基本方法,并对盲分离的目标准则、研究领域以及研究内容进行了探讨。 然后,引出了独立分量分析(ICA),并对其的概念以及相关的知识进行了研究,探讨了ICA研究中的主要问题,列出了ICA的3种基本算法:信息极大化、负熵最大化和最大似然估计法。 最后,用FastICA对三路语音信号进行了盲分离的仿真并求出了混合矩阵和分解矩阵,再接着进行了频谱,幅度,相位的分析,找出了FastICA的特点。 关键词:盲源分离;独立分量分析;频谱分析 III

matlab报告基于matlab有噪声语音信号处理

Matlab课程设计报告题目:基于MATLAB有噪声语音信号处理 系(院):计算机与信息工程学院 专业:通信工程 班级:10623102 指导教师: 学年学期:2011 ~ 2012 学年第2 学期

简介: 我们通信工程专业在实践中经常碰到需要对已接收信号进行处理的情况,而滤波器设计在数字信号处理中占有极其重要的地位。本课题基于MATLAB有噪音语音信号处理的设计与实现,综合运用数字信号处理的理论知识对加噪语音信号进行时域、频域分析和滤波。通过理论推导得出相应结论,再利用MATLAB作为编程工具进行计算机实现。在设计实现的过程中,我们使用双线性变换法设计IIR数字滤波器,对模拟加噪语音信号进行低通滤波、高通滤波及带通滤波,并利用MATLAB作为辅助工具完成设计中的计算与图形的绘制。 1 绪论: 数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。数字滤波器, 是数字信号处理中及其重要的一部分。本课题采用IIR 滤波器对加噪声音信号进行处理。 IIR滤波器采用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。同时,IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。 2.原始语音信号采集与处理 2.1语音信号的采集 由于MATLAB只识别格式为.wav的声音文件,我们利用PC机上的声卡和WINDOWS操作系统进行数字信号的采集。启动录音机进行录音,以文件名“Orisound”保存入原程序所属的文件夹中。可以看到,文件存储器的后缀默认为.wav ,这是WINDOWS操作系统规定的声音文件存的标准。

语音信号的盲分离(毛丽娟)

课程设计任务书 学生姓名:毛丽娟专业班级:通信0906 指导教师:黄铮工作单位:信息工程学院 题目: 语音信号的盲分离 初始条件 ①matlab软件 ②盲信号处理知识 要求完成的主要任务: 根据盲信号分离原理,用matlab采集两路以上的语音信号,选择合适的混合矩阵生成若干混合信号。选取合适的盲信号分离算法(如独立成分分析ICA等)进行训练学习,求出分离矩阵和分离后的语音信号。 设计要求 (1)用matlab做出采样之后语音信号的时域和频域波形图 (2)选择合适的混合矩阵,得到混合信号,并做出其时域波形和频谱图 (3)采用混合声音信号进行训练学习,求出分离矩阵,编写出相应的确matlab 代码。 (4)用求出的分离矩阵从混合信号中分离出原语音信号,并画出各分离信号的时域波形和频谱图。 (5)对结果进行对比分析。 时间安排 第17周,仿真设计 第18周,完成(答辩,提交报告,演示) 指导教师签名:年月日 系主任(或责任教师)签名:年月日

目录 摘要 (3) Abstract (4) 1 语音信号 (5) 1.1 语音特性分析 (5) 1.2 语音信号的基本特征 (6) 2 盲信号处理 (8) 2.1 盲信号处理的概述 (8) 2.1.1 盲信号处理的基本概念 (8) 2.1.2 盲信号处理的方法和分类 (9) 2.1.3 盲信号处理技术的研究应用 (9) 2.2 盲源分离法 (10) 2.2.1 盲源分离技术 (10) 2.2.2 盲分离算法实现 (10) 2.3 独立成分分析 (11) 2.3.1 独立成分分析的定义 (11) 2.3.2 ICA的基本原理 (13) 3 语音信号盲分离的实现 (15) 3.1 盲信号分离的三种算法 (15) 3.1.1 二阶盲辨识(SOBI) (15) 3.1.2 FastICA算法 (15) 3.1.3 CICA算法 (16) 3.2 不同算法的分离性能比较 (17) 3.3 FastlCA的算法仿真及结果分析 (17) 4 结论 (22) 5 参考文献 (23) 附录 (24)

基于matlab的语音信号的采集与处理

目录 第1章前言 (1) 第2章语音信号分析处理的目的和要求 (2) 2.1MATLAB软件功能简介............................................................................................ - 2 - 2.2课程设计意义 ............................................................................................................. - 2 - 第3章语音信号的仿真原理. (3) 第4章语音信号的具体实现 (4) 4.1语音信号的采集........................................................................................................... - 4 - 4.2语音信号加噪与频谱分析........................................................................................... - 5 - 4.3设计巴特沃斯低通滤波器........................................................................................... - 6 - 4.4用滤波器对加噪语音滤波........................................................................................... - 7 - 4.5比较滤波前后语音信号波形及频谱........................................................................... - 8 - 第5章总结.............................................................................................................................. - 9 - 参考文献.................................................................................................................................. - 10 - 附录.......................................................................................................................................... - 11 -

相关文档
最新文档