麦克风阵列信号处理(精选七篇)
麦克风阵列信号处理 篇1
阵列信号处理的发展源于20世纪40年代的自适应天线组合技术, 它使用锁相环进行天线跟踪。1967年Widrow提出最小均方 (LMS) 自适应算法, 标志着阵列信号处理取得了显著进展。1969年Capon提出恒定增益指向最小方差波束形成器, 通过增加已知信息的利用程度提高了对目标的分辨能力。1979年Schmidt提出多重信号分类 (MUSIC) 方法, 开创了子空间类阵列信号处理算法研究的先河, 是阵列信号处理发展史上的一个重要里程碑。1986年Roy等人提出的基于旋转不变技术的信号参数估计方法 (ESPRIT) , 相对MUSIC算法大大降低了计算量同时降低了算法对硬件的要求, 为阵列信号处理的发展谱写了新的篇章。
麦克风阵列信号处理是阵列信号处理的一个新兴分支, 继承和发展了阵列信号处理理论算法, 最早于80年代初期用于大型会议室的会议系统[1], 证明了其在语音信号处理方面的独特优势。近年来它已成为现代信号处理的的重要研究热点之一, 很多国际著名的公司和研究机构, 如IBM, BELL等, 都致力于麦克风阵列的研究和产品开发。麦克风阵列正成为越来越流行的高质量语音拾取工具, 预计在不久的将来将取代传统的桌面或头戴式麦克风[2,3,4]。并且由于其在语音信号处理上具有其他信号处理方法无法比拟的优势, 被广泛应用于军事国防、智能空间、新型人机交互、机器人导航等众多领域, 并且随着研究的不断深化, 其研究应用的前景也不断扩大。
1 麦克风阵列信号处理的特点
麦克风阵列信号处理是阵列信号处理的一个新兴分支。在很长的一段时间里, 它的许多算法都是直接借用或简单修改成熟的传统阵列信号处理算法。这在研究初期大大推动了麦克风阵列信号处理的发展, 但深入的研究表明, 这些算法往往无法应用于实际系统或是算法性能不理想, 这主要是因为麦克风阵列信号处理具备以下区别于传统阵列信号的特点[5,6,7]:
语音信号是宽带信号 麦克风接收的语音信号没有经过调制, 阵元间时延和相位差与信号源的频率密切相关。且不同类型的语音信号频谱差异很大, 传统的窄带信号处理算法不再适用。
语音信号是短时平稳信号 麦克风接收信号为短时平稳的语音信号, 分析处理必须建立在短时的基础上, 特别是当声源移动时, 分析处理的难度变大。
应用环境存在高混响 在一些非手持式智能语音通信系统中, 麦克风与说话人距离较远, 特别是应用于室内环境时, 麦克风接收到的信号除语音直达外, 还包括大量经多次反射后形成的反射波, 造成高混响, 大大降低了语音信号的质量。而且造成混响的原因很多, 混响模型很复杂, 去混响难度大。
应用环境的噪声大且复杂 在麦克风阵列应用中, 背景噪声很复杂且不同应用环境的噪声源也不同, 如室内外的噪声源差异就很大。因此提高信号信噪比难度大。
2 麦克风阵列信号处理的研究内容
2.1 声源定位
麦克风阵列声源定位技术利用空间分布的多路麦克风拾取声音信号, 通过对麦克风阵列的各路输出信号进行分析和处理, 得到一个或者多个声源的位置信息。目前存在的声源定位算法主要包括基于波束形成的方法、基于高分辨率谱估计方法和基于到达时延差估计方法, 它们分别将声源和阵列结构之间的关系转变为空间波束、空间谱函数或者多个到达时间差信息, 然后通过估计这些信息进行声源定位。
2.1.1 基于波束形成的定位方法
基于波束形成的定位算法是出现较早的定位方法, 通过对麦克风阵列接收到的语音信号进行滤波、加权求和, 然后直接控制麦克风指向使波束有最大输出功率的方向。
式中:L表示波束输出;x (t) 表示各麦克风的接收信号。
式 (1) 就是一个典型的波束形成估计方程, 通过调整各麦克风接收信号的时延值τi使输出信号达到最大, 进而确定声源位置。因为解上述方程确定τi通常是一个非线性的优化问题, 无法直接计算得到, 通常采用Newton-Raphson算法或最陡下降算法来确定最大值, 而在声源定位系统中, 最大值对应的τi不是惟一的, 取决于信号的初始值, 许多研究人员提出采用峰值搜索的方法来解决这种问题[8]。但目标函数和峰值搜索的计算量往往很大, 这也成为基于波束形成定位方法最大的弊端。
2.1.2 基于高分辨率谱估计的定位方法
基于高分辨率谱估计的定位方法通过求解阵列接收信号的协方差矩阵获得空间谱函数, 再由此信息进行声源定位, 包括自回归模型、最小方差频谱估计、MUSIC、ESPRIT、子空间拟合等。其中的很多方法只能适用于远场模型, 即要求麦克风阵列与声源的距离较远, 远远大于麦克风阵元间距, 并且麦克风是布置成线形。将其用于近场时, 性能会下降很多。同时这种方法也要进行峰值搜索, 但它的峰值通常都比较尖锐[8,9]。
2.1.3 基于到达时延差 (TDOA) 的定位方法
基于到达时延差的定位方法是利用时延估计算法求出信号到达阵列不同麦克风的相对时延, 再利用这些时延信息和麦克风阵列的空间位置关系估计声源位置, 是麦克风阵列声源定位方法中应用最为广泛的方法。基于到达时延差的定位方法已经成功地应用于雷达、声纳系统中, 但是它们处理的信号是窄带信号, 信噪比高。应用于宽带、高混响的麦克风阵列定位系统时, 需要添加一些特殊滤波器并进行预处理。
基于到达时延差定位法的第一步是准确计算时延差。广义互相关函数 (Generalized Cross Correlation, GCC) 是出现最早的方法, 可以在时频两个领域进行计算时延差:
式中:x (t) 是麦克风的接收信号;s (t) 是声源信号;αi是衰减因子;τi是延迟量;n (t) 是噪声;y是两阵元的相关函数。
相关函数y最大值对应的τi就是所要求的阵元i和阵元j之间的时延差。为减少计算量, 还可以对信号进行FFT变换, 在频域做相关然后搜索峰值:
式中:R (t) 是两阵元频域的相关函数;X (f) 是麦克风接收信号x (t) 的傅里叶变换。
为提高抗噪、抗混响性能, 提高时延估计精度, 还可以通过加权函数来改进GCC, 例如相位变换法 (Phase Transform, PHAT) , 平滑变换法 (Smoothed Coherence Transform, SCOT) 等[10,11,12,13]。
式中:Ψ (f) 为加权函数, PHAT中的Ψ (f) 为:
最小均方 (Least Mean Square, LMS) 自适应滤波和自适应特征值分解 (Adaptive Eigenvalue Decomposition Algorithm, AEDA) 等时延估计算法都在声源定位中也到了广泛应用[14,15,16]。但自适应方法依赖于实验的初始值并且计算时会产生较大的时延, 无法适用于实时应用。文献[17,18,19,20]等分别使用广义互相关函数、基于语音信号模型或产生语音的激励源特征、最小平方和极大似然估计的方法给出了TDOA的估计或实现声源定位。
TDOA定位法的第二步是通过计算出的时延差来确定声源位置。理论上, 三个麦克风组成的阵列已经能确定声源位置, 而增加麦克风的数量, 即增加TDOA数据可以减小估计误差。通过TDOA来定位声源的方法有很多:例如极大似然法, 最小方差法等。极大似然法认定误差服从高斯分布, 试图寻找误差最小点。而最小方差法是试图找到一个点使期望的TDOA值与实测的TDOA值的方差和最小。
基于到达时延差TDOA的两步定位法, 延时小, 适用于实时的声源定位与目标追踪。但存在的问题是第一步从原始的麦克风接收数据中提取了时延差这一中间信息后, 丢弃了其他的有用信息, 只将TDOA用于第二步计算, 造成信息损失。一种更好的方法是将原始数据中所有的中间信息保留, 并都用于最后一步声源位置的确定[12]。
2.2 噪声抑制
噪声抑制是要去除观测信号中的噪声, 获得高质量的期望信号。由于通信过程中噪声的产生无法避免, 并且严重影响语音信号的质量, 因此噪声抑制一直是通信学研究的热点问题, 也出现了许多基于单一接收阵元的噪声抑制方法。然而这些方法存在的最大问题是在抑制噪声的同时, 往往也影响了期望信号, 付出信号可懂度下降的代价[21]。利用麦克风阵列独特的空间滤波特性, 可以很好地解决这一问题, 可以达到抑制噪声的同时不对期望信号产生任何干扰。
目前, 基于麦克风阵列实现噪声抑制的方法主要有自适应噪声对消和基于空间信息抑制噪声这两类方法, 其中, 基于空间信息的方法又可分为两大类:基于波束形成原理的方法和基于盲信号分离的方法。而波束形成方法又可以分为固定波束形成方法和自适应的波束形成方法, 其基本原理是利用阵列的空间信息对目标声源形成过滤波束避免来自其他方向的噪声干扰。自适应噪声对消, 是实时地在信号静默期获取噪声的参考信号, 来消弱噪声信号。
2.3 去混响
混响是室内声源停止发声后, 由于房间边界面或其中障碍物使声波多次反射或散射而产生声音延续的现象, 是对语音质量影响最大的因素之一, 会严重降低语音信息的可懂度, 因此, 去混响是语音通信研究的一个重点问题。
目前去混响的方法主要分为三类:基于信源声学模型去混响, 通过同形转化分离混响和基于信道反转均衡去混响, 其中, 基于信道反转均衡去混响又分为直接反转, 最小均方误差和多信道反转理论的方法[22]。
文献[23]应用倒谱预滤波技术来抑制房间混响, 文献[24]通过选取多个峰值进行线性交叉来削弱混响的影响。但由于这两种方法采用了理想房间模型, 因此时延估计的抗混响性能较差。文献[25]的自适应特征值分解算法直接从房间混响模型出发, 通过自适应方法逼近房间冲激响应, 进而估计时延, 因而该方法在混响较强的条件下仍有良好的估计性能。但该方法需要估计矩阵运算, 计算量大, 难以在实际系统中应用。
2.4 声源盲分离
声源盲分离是要通过分析麦克风阵列的接收信号来区分同一时刻来自不同方向的信号, 由于无法获知信道的具体性能参数和声源信号, 称为盲分离。充分利用信源信号独立性的独立成分分析法 (Independent Component Analysis, ICA) 是声源盲分离使用较广的方法。但是在高混响的环境下, 基于ICA的算法性能下降很快, 有待改进。
2.5 鸡尾酒会效应
众所周知, 即使在嘈杂的背景环境下, 人也能集中精神去听其中的某一种声音, 这种有趣的心理声学现象被称为鸡尾酒效应。大量研究实验表明人的这种能力得益于人有两只耳朵。人的大脑只需要根据两只耳朵听到的声音强度就能有效地跟踪声源, 这在麦克风阵列的应用上具有极大的指导意义, 由此引发了一波研究鸡尾酒效应的热潮。
3 麦克风阵列信号处理的应用
麦克风阵列信号处理具有十分广阔的应用前景, 在军事国防、智能化、远程控制、人机交互、电脑游戏、视频会议、语音监测等许多领域都有重要的科研价值和潜在的实用价值, 已经引起了许多国家学术界、工业界和军界的高度重视。下面简要介绍麦克风阵列信号处理的一些应用。
3.1 国防领域应用
麦克风阵列信号处理因其出色的语音信号处理能力, 被广泛应用于军事国防。国外在智能雷弹系统和战场侦查系统研究中, 广泛使用基于麦克风阵列的被动声探测, 近几年还将麦克风阵列声源定位技术应用于飞机探测、直升机报警、炮位侦查、单兵声测系统、枪声定位等。AAI公司的PDCue系统将麦克风安装在车辆的四角, 可以提供低轮廓、360°的态势感知能力。在任何环境下, PDCue系统都可以根据单发、多发和点射枪声迅速定位并跟踪枪声来源。
国内近几年也在麦克风阵列信号处理方面进行了大量研究, 受到国防科技重点实验室基金和国家自然科学基金的支持, 并已取得了一定的成果。其中炮用立靶声定位系统列入国家军用标准, 弹头落点定位系统和敞开型胸环靶系统也已通过鉴定并列入国家军用标准。
3.2 智能化领域应用
麦克风阵列信号处理可以自动高效地从接收的语音信号中提取有用信息, 适用于智能化领域。2003年意大利里雅斯特大学和帕多瓦大学联合研制了智能声视联合多代理监视跟踪系统, 对脚步声之类的声源进行轨迹跟踪, 能实现对博物馆等公共场所的人流进行记录, 或监测在某作品前人们停留的时间长短[26]。2007年加拿大魁北克的珊不勒凯大学机电学院开发研制了避障机器人。机器人具有鲁棒的定位性能和通过使用波束成形和粒子滤波能同时跟踪几个声源[27]。
4 结 语
麦克风阵列信号处理是数字信号处理的一个新领域, 具备许多传统阵列信号处理无法比拟的优势, 是目前国内外的研究热点。很多国际著名的公司和研究机构, 如IBM, BELL等, 正致力于麦克风阵列的研究和产品开发。相信随着研究的不断深入, 麦克风阵列信号处理也必定会具备越来越广阔的应用前景。
摘要:在回顾麦克风阵列信号处理研究历程的基础上, 对麦克风阵列信号处理的特点进行分析, 总结了目前的研究热点问题及现有算法并对各算法的优缺点进行比较, 重点阐述了使用最为广泛的声源定位算法, 最后介绍几个有价值的应用领域, 为进一步研究麦克风阵列信号处理奠定基础。
麦克风阵列信号处理 篇2
声学噪声试验,是研究噪声水平和产生机理的一种有效手段。在传统的声学试验方法中,测量分析后的结果是一个有关噪声整体大小的辐射分布图和指向性图,并不清楚噪声产生区域以及各个声源的幅值强度等信息。相位麦克风阵列技术的出现和发展,旨在准确识别噪声源的位置以及量化噪声源的强度,为研究噪声产生机理和明确降噪目标提供了强有力的工具。国外波音、空客公司以及高校、科研院所广泛采用麦克风阵列定位航空、高速列车、汽车等产生的噪声源。我国目前正在研制大型民用客机,准确定位飞机机体和发动机的噪声源,开展相应的噪声评估和降噪研究,使其满足国际民航组织(ICAO)的适航标准,对我国大型民用客机进入国际市场具有十分重要的意义。
相位麦克风阵列技术产生于20世纪70年代,它的出现极大地促进了声学测试技术的发展,并成为一个全新的发展方向和研究热点。1975年Soderman[1]等人在气动声学试验中第一次使用一维线性阵列,来测量涡轮风扇噪声。Brooks[2]第一次使用二维麦克风阵列,用来测量直升机缩尺模型的噪声,并在频域范围使用了相位延迟与求和算法。算法模型的研究开始成为人们关注的重点。2004年,Brooks[3,4]等人发展了一种反卷积DAMAS算法,首次建立了一个反问题模型并进行迭代求解,被认为是麦克风阵列后处理技术的一个关键性突破。但是该算法具有耗时太长等缺陷。2006年,Burdisso[5]等人提出了LORE算法,建立一个非线性反问题模型,通过简化算法模型和优化求解过程,求解速度显著加快,但是对于复杂的相干性声源仍不能得到较为理想的结果。
本文在Burdisso等人的算法模型基础上,发展了一套更简单有效、实用性高的数值后处理程序,首先对单个点声源进行了验证,然后着重讨论了多个非相干性和相干性声源的反演结果,最后还考虑了背景噪声对反演精度的影响。
1基本原理
相位麦克风阵列技术作为一种全新的声学测试技术,它是基于这样一种思想,在发声体的远场布置一组或几组满足一定几何分布规律的麦克风进行数据采集,基于波束形成算法建立一个关于未知声源信息的反问题模型,并进行求解,反演出发声体位置上每个声源的具体信息。
1.1波束形成(beamforming)算法
在麦克风j处接受的频域压力pj可表示为一种空间分布声源的辐射叠加:
式(1)中s是声源振幅的短时傅里叶变换,C是麦克风j处的阵列响应函数,由频域格林函数给出:
我们定义一个阵列加权因子,又叫操作矢量:
从而在声源平面网格上x处的波束形成输出能量b(x)可以写为:
1.2主控方程
在声源平面的网格上,假设每一个声源都是单极子声源模型,可以将式(1)中的积分写成离散求和形式,并将其代入式(4)中,可以得到:
其中a为单极子点源的幅值,属于求解量,包含位置信息在其中。我们定义阵列点源的复数点分布函数为:
则式(5)可以写成如下形式:
式(7)就是关于未知声源信息的反问题模型的主控方程[5]。方程的数值离散结果是求解一个含有强非适定性矩阵的非线性方程组,并且源项的数目、幅值和位置,以及相关特性都是不确定的,这就加大了反问题求解难度和结果的不确定性。
2阵列性能参数
本文发展的后处理程序采用FORTRAN90编程,数据可视化和分析使用TECPLOT实现。选取的麦克风阵列模型为多臂螺旋形阵列,总共由63个麦克风组成。图1给出了该阵列的位置分布图。
阵列的主瓣宽度(BeamWidth)是评估阵列性能的重要指标,有时也叫做阵列分辨率。其定义是在对采集数据用波数形成算法分析后的图谱中,与图中最大SPL值相差三分贝的直线宽度。阵列的主瓣宽度越小,阵列的分辨率越高,阵列识别声源信息的性能也就越好。图2显示了图1中的麦克风阵列在5 k Hz下的主瓣宽度。
3数值模拟结果分析
3.1点声源验证
本文的数值模拟,从最简单的点声源情形开始,并逐步增加声源的复杂程度。设定扫描网格大小为25×25,单位为英寸,距离阵列平面为36英寸,网格分辨率为1英寸。在所有数值模拟中,声源的幅值统一设为10(无量纲值),数值模拟结果与给定值的相对大小来作为本文后处理程序的重构精度。文中波束形成图像是以分贝为单位刻度的,而反问题求解结果即声源幅值是无量纲值。
点声源模型在网格上任意给定位置为(5,5),频率为5 kHz,阵列平面位于xy平面,坐标原点位于麦克风阵列中心。图3给出了波束形成图像(上图)和反问题求解结果(下图)。从结果可以看出,求解得到的声源位置为(5,5),声源幅值为10,数值验证误差为零。所以本文开发的后处理程序能够非常精确地反演出给定的点声源信息,对于10 kHz和30 kHz,同样能得到类似的结果。
3.2多个非相干性声源
当声源区域存在多个非相干性声源时,不同的声源有着不同的频率,随着声源数目增加,频率个数也增多,如何从一堆虚假声源频率中识别出真实的声源频率,是这种情形的难点。因此它对时域的采样有比较严格的要求,才能保证对频率的分辨率。给定采样率为100 kHz,采样时间为1 s,任意给定5个非相干声源,频率分别为1 kHz,1 001 Hz,5 kHz,9 999 Hz,10 kHz,对应位置为(0,0)、(-5,5)、(5,-5)、(10,5)、(-5,-5)。5个声源的频率具有分布范围广,个别非常靠近的特点。图4显示了重构后的结果,5个声源都被一一识别出来,位置和幅值与给定值相同,后处理程序的重构精度为百分之百。
当把5个非相干性声源的任意一个或几个的幅值减小到原来的1%,本文程序仍能准确无误地识别出所有声源的位置和幅值,并且误差基本为零。图5给出了这种情况下的求解结果。将(-5,5)处声源的幅值改为0.1,其他都保持和前面相同,从图中可以看到,后处理算法能精确地定位到这个很小幅度的声源。这表明了本文程序的可靠性和相位麦克风阵列技术在远场重构声源能力的准确性。
3.3多个相干性声源
相位麦克风阵列技术在国外研究中普遍存在并且直到现在仍没有得到很好地解决的一个难题,就是相干性声源的精确重构。因为相干性声源彼此间会有干涉影响,其合相位分解为多个点源的单个相位具有不唯一性,加上反问题主控方程的复杂性和非适定性,因此反演误差较大。
首先讨论两个在空间上紧靠在一起的相干点源,这时它们的相干性影响显著。设定其频率都为5 kHz,位置分别为(-1,0) (1,0),图6显示了反问题求解结果,两个声源的位置和幅值信息与给定值完全吻合,表明本文程序能够很好地识别偶极子声源。同样对于1 kHz,10 kHz都能得到准确的结果。
接下来在声源分布直线上增加相干性点声源的数目,直线上的每个点源与其邻近点源构成一对偶极子声源。首先来看三个点源的情况,设定频率为10 kHz,位置分别为(-1,0) (0,0) (1,0),得到的求解结果如图7中所示,三个声源都被准确地反演出来。沿着x轴正负方向继续增加相干性点源数目到5个、7个(如图8),仍能得到同样的结果,所有声源的频率、幅值、位置信息与设定值一样。但是增加到9个声源时,已经不能得到正确的反演结果,这种情况产生的原因,可能是空间上的采样不足,需要改善阵列类型和增加麦克风数目,来提高分辨率。
最后讨论更为复杂一点的模型,声源中既含有3个不相干性声源,如前设定频率分别为1 kHz,1 001 Hz,9 999 Hz,位置分别为(0,0)、(-5,5)、(10,5),又含有偶极子声源,频率为5 kHz,位置为(-5,-5)、(5,-5)。数值模拟结果显示,本文发展的程序仍能准确地反演出这对相干性声源,也能识别出另外3个非相干性声源,重构精度为100%,如图9所示。
3.4考虑背景噪声的影响
前面所讨论的情形都是没有考虑背景噪声的声场状态,这还不能充分地体现出相位麦克风阵列技术的优势所在。在真实的实验测量中,被测环境中总是存在着很多的背景噪声,相位麦克风阵列在这样的条件中,依然能够准确重构出所需要的声源信息。即使信噪比(SNR)非常低,也就是背景噪声幅值比目标声源大上许多,仍能具备较高的重构精度。
本文研究了不同信噪比条件下的反演情况,给定的背景噪声是标准的高斯白噪声,当SNR=10时,此时背景噪声较小,后处理程序能反演出前面讨论的5个非相干性声源模型,结果显示重构误差为万分之一。当SNR=1时,反演结果显示重构误差为千分之九。当SNR=0.2时,此时背景噪声强度是被测试信号的5倍,重构误差为5.6%,如图10中所示。以上三种情况,声源的频率和位置都能准确地实现定位,幅值重构误差也都很小,表明相位麦克风阵列技术受背景噪声因素影响较小,在强背景噪声条件下,识别和定位声源的能力仍能较好地保证,这是该技术广泛应用于工程实际的优势所在。
4结论
本文发展了一套相位麦克风阵列技术的后处理算法程序,进行了相关的数值模拟研究。研究表明:
(1) 点声源模型的验证,显示了本文发展的后处理程序能够在数值模拟上准确地识别和定位出简单声源的声源信息,重构误差为零。
(2) 对于非相干性声源,后处理程序可以准确地反演出所有声源的幅值和位置信息,而对于相干性声源,可以在较宽的范围内较高精度地实现偶极子声源和直线分布式声源的信息重构。
(3) 在考虑背景噪声的情形下,后处理程序仍能较高精度地反演出声源的频率、位置和幅值信息,体现了相位麦克风阵列技术定位声源的优势所在。
(4) 数值模拟研究进一步表明了相位麦克风阵列技术在声源识别和降噪方面具有重要的研究价值和广阔的应用前景。
摘要:相位麦克风阵列技术是最近十年快速发展起来的一种声学实验技术,旨在精确地识别和定位出噪声源,反演出每个声源的频率、位置和幅值信息。该技术在国外得到了快速发展和广泛应用,而在国内仍处于起步阶段。相位麦克风阵列技术的核心是数据后处理算法。发展了一套数据后处理算法程序,进行了相关的数值模拟研究。结果显示,该算法程序能够比较精确地识别和定位出声源信息,为今后进一步的实验研究和工程应用打下了基础。
关键词:相位麦克风阵列,数值模拟,声学噪声,声学实验
参考文献
[1] Soderman P T, Node S C. Directional microphone array for acoustic studies of wind tunnel models. Journal of Aircraft, 1975; 12(12):168—173
[2] Brooks T F, Marcolini M A. A directional array approach for the measurement of rotor noise source distributions with controlled spatial resolution. Journal of Sound and Vibration, 1987;112(1):192—197
[3] Brooks T F,Humphreys W M.A deconvolution approach for themapping of acoustic sources determined from phased microphone ar-rays.AIAA 2004—2954
[4] Brooks T F, Humphreys W M. Three-dimensional application of DAMAS methodology for aeroacoustic noise source definition. AIAA 2005—2960
基于麦克风阵列的语音增强系统设计 篇3
在车载系统、电话会议与多媒体会议等非手持式的智能语音通信系统中,由于受到环境噪声、混响以及干扰等因素的影响,麦克风拾取的语音信号质量较差,而这将直接影响到语音编码及语音识别系统的性能[1]。因此,需要设计一种便携的语音采集装置,以增强封闭环境下的带噪语音信号质量。本文论述了一种采用麦克风阵列方式,并以数字信号处理器TMS320VC5509A为核心处理器的语音增强系统,对系统各功能模块进行了较详细的介绍;同时,对语音信号存在的高斯白噪声和有色噪声分别处理,先采用压缩比为1:4的自适应差分脉冲编码调制方法[2]对语音进行压缩,滤除高斯白噪声,后在此基础上进行卡尔曼滤波,进一步滤除有色噪声,实现了语音增强的功能。
1 系统组成和技术指标
在麦克风阵列语音增强系统中,选择几路麦克风来采集语音信号是一个重要的因素。针对不同的系统需求、不同的增强算法,麦克风的数目是多变的。为了提高硬件设计的灵活性和实用性,以便于更好地利用电路,随时增减麦克风的使用数目,该系统在实际电路组成上提出了一种全新的子母电路板相结合的方式。其中,子板的作用是语音采集预处理;母板的作用是模数信号转换和信号处理。能够实现这样的电路设计,主要是由于在模数转换器的选择上,系统选择了一款可级联扩展的芯片AD73360。单块AD73360芯片最大支持6路AD转换,而对麦克风阵列提取的语音信号而言,4到8路即可充分保证信号空间域信息的完整性。因此,在本系统中级联2块AD73360芯片,即系统最大支持12路麦克风同时采集信号。
系统的子母电路板设计如图1所示。子板和母板通过排线相连,可通过母板上的开关切换选择连接的子板数目。
系统的主要技术指标:信号类型为带有近场噪声的语音信号,信噪比低于20dB,声源距麦克风距离不超过2米,采用+5V直流电作为工作电压;单块子板的麦克风个数为6个,一块母板最大可支持级联两块子板,即系统最大支持麦克风阵列个数为12。
2 系统硬件设计与实现
系统采用TI公司的定点DSP芯片TMS320C5509A作为主控制器。图2给出了麦克风阵列语音增强系统的硬件功能框图,主体由语音采集预处理单元、模数转换单元、数字信号处理单元、USB传输单元等四大模块组成。
2.1 语音采集子板设计
近场语音环境复杂,语音采集子板应包括麦克风阵列、前置放大、带通滤波三个部分。子板电路的设计要保证各路信号接收传递的电路完全一致,尽可能减小相位采集的误差。
2.1.1 麦克风阵列
麦克风阵列是指由一定的几何结构排列而成的若干个麦克风组成的阵列。麦克风阵列的几何结构越复杂,对应的阵列信号处理模型就越复杂[3,4]。该系统采用均匀间隔线性麦克风阵列,麦克风数量为6个。这种结构不仅可以满足系统需求,而且可以简化系统数学模型,降低系统运算复杂度。
2.1.2 前置放大电路
麦克风阵列采集到的6路差分峰值电压值很低,为毫伏级,难以满足A/D处理芯片的输入要求。为了解决此问题,需要将原始信号放大到可以满足A/D采集需要的电压值。就该系统而言,采用全向性驻极体麦克风采集到的电压值约为2mV左右,而A/D采集所需要的电压值为2V左右,这就需要将原始信号进行前置放大1 000倍。基于此,系统选用音频放大芯片MAX4061设计前置放大电路。它的突出优点在于差分输入单端输出且工作电压低。
2.1.3 带通滤波电路
考虑到人耳的语音接收频率范围为300Hz~3 400Hz,系统在前置放大电路后级联了6个电路结构完全一致的二阶带通滤波电路,滤除了语音之外的噪声。
2.2 信号处理母板设计
系统的母板主要实现模数转换、核心DSP及其外设、USB传输三大功能。母板通过排线与子板相连,可以保证模拟信号在进入A/D芯片前的电路完全一致,不会出现过多的相位采集误差。
2.2.1 模数转换电路
AD73360是AD公司推出的6通道模拟输入的16位串行可编程模数转换芯片,其采样率和输入增益都是可编程的。其中,采样率可分别设置为64KHz,32KHz,16KHz和8KHz(输入时钟为16.384MHz时),增益可在0dB到38dB之间选择。AD73360能保证6路模拟信号同时采样,且在变换过程中延迟很小(每通道间转换25μs延迟)。AD73360还支持多片级联使用,从而扩充模拟输入的通道数。在系统中同时级联2片AD73360芯片,最大支持12路模拟信号同时接入。
AD73360的模拟输入通道可以选择差分输入或单端输入,考虑到前置放大电路已将差分信号转换为单端信号,该系统将6个通道配置成单端输入。此外,AD73360有一个带缓冲的基准电源输出端REFOUT,作为模数转换的基准参考电压。AD73360的模拟和数字电源可以选择5V或3.3V。使用5V电源时,REFOUT额定值为2.5V;使用3.3V电源时,REFOUT额定值为1.25V。该系统选择1.25V作为基准电压,用来偏置模拟输入端的电平。
AD73360有三种工作模式:程序模式、数据模式和混合模式。在系统初始化阶段,要在程序模式下对AD73360的8个控制寄存器(CRA、CRB、CRC、CRD、CRE、CRF、CRG、CRH)进行配置,以实现模数转换及转换后的数据输出[5]。
2.2.2 核心DSP及其外围电路
系统的模数转换采样率为8KHz,每采样点16bits量化,麦克风阵列共6路,每路信号的帧长为128点,则每帧要处理的数据可达2KB,每秒可达300KB,这是个较为庞大的数字;如果预计软件计算量为1Mcycles/帧,处理延迟为2ms,则要求处理器的工作频率至少在150MHz以上,方能满足要求。该系统采用TI公司针对低功耗应用设计的TMS320C55X系列高性能数字信号处理器VC5509A作为核心处理器。TMS320VC5509A是一款高性能低功耗的16位定点处理器,最高主频200MHz,运算处理能力400MIPS,它是系统的运算核心。通过配置锁相环PLL电路来控制DSP内核的工作频率,外部提供一个参考时钟输入,经过PLL倍频后提供给DSP内核。该系统的工作主频定为200MHz[6]。
TMS320VC5509A本身带有3个多通道缓冲串行接口(McBSP)。McBSP的数据发送通过两级缓冲完成,数据接收通过三级缓冲完成[7]。
McBSP和AD73360都支持工业标准的六线同步串行接口(SPI),可以最大程度地简化电路,提高设计的可靠性。在该系统中,将McBSP0设置为SPI主从模式,连接DSP和AD73360,DSP为从设备,AD73360为主设备,实现模数转换后的信息传递。具体电路如图3所示。DSP的XF引脚和AD73360的RESET引脚和SE引脚相连,XF信号用于对AD73360进行控制,在系统正常工作期间保持高电平;AD73360的串口时钟SCLK信号作为McBSP0的发送时钟信号CLKX和接受时钟信号CLKR;四个帧同步信号连接成帧同步返回环方式,即将AD73360的输出帧同步信号SDOFS、输入帧同步信号SDIFS和McBSP0的发送帧同步信号FSX、接收帧同步信号FSR相连。这样,无论发送帧同步信号或接收帧同步信号,都将强制保持同步,避免了数据丢失。此外,AD73360的数据输入引脚SDI与McBSP0的数据发送引脚DX相连,用于接收DSP对AD73360的控制;AD73360的数据输出引脚SDO与McBSP0的数据接收引脚DR相连,用于向DSP传输AD转换后的语音信号。
硬件电路需要在加电后脱离主机和仿真器实现自启动引导装载。FLASH存储器作为一种高速的具有电擦除可改写的非易失性存储器,可以完成DSP的自启动设计。该系统采用FLASH芯片AT25F1024N来与DSP完成数据的读写,时钟线与数据线都直接接到DSP的McBSP1。此外,为了满足语音进入DSP后的信号处理和数据存储,需要借助外扩大容量存储单元SDRAM。DSP采用EMIF接口连接SDRAM芯片HY57V641620。
外扩的大容量SDRAM和SPI接口的串行FLASH为麦克风语音算法提供了充足的数据及程序存储空间。
2.2.3 USB接口电路
为了满足在语音处理过程中出现的大量数据存储和实时传输,系统采用USB接口电路与上位机保持通信,实现语音信号的同步传输,避免在数据传输过程中因信息量过大导致的数据丢失。
系统采用C5509A内部集成的USB模块来完成USB通信,使系统的硬件设计和调试难度大大降低的同时,也提高了系统的集成度和稳定性。
3 系统软件设计
系统的软件分为DSP硬件电路的驱动程序、ADPCM语音压缩算法和卡尔曼滤波算法三部分。前者完成了整个电路的初始化配置,后者实现了对麦克风阵列语音信号的滤波处理,先后滤去了高斯白噪声和有色噪声,完成了语音增强功能。
3.1 硬件驱动
为实现麦克风阵列语音信号的采集和传递,需要对系统的硬件电路进行初始化配置,包括DSP芯片的工作状态选择、AD采集芯片的配置、SPI主从模式的配置、FLAH及SDRAM的地址分配、USB模块的驱动等。图4给出了硬件电路实现语音采集压缩的工作流程。
3.1.1 AD73360的初始化配置
AD73360具有8个控制寄存器,对它的初始化配置实际上就是DSP通过DX0管脚向AD73360写入控制字,从而对不同的寄存器赋值,使AD73360可以工作在不同的状态。
AD73360的MCLK引脚是主时钟输入,需要由外部时钟信号驱动,频率为16.384MHz;串口时钟SCLK信号决定数据串行传输速率,由控制寄存器CRB控制,一般为主时钟频率除以一个整数。两者时序关系图如图5所示。
DSP向AD73360的控制寄存器写入控制字的串口时序如图6所示:当SE处于高电平时,SDIFS和FSX会在SCLK的某一个上升沿或下降沿同时得到一个帧同步信号;接着DX开始向SDI写入16位控制字,用于配置AD73360的8个控制寄存器。
DSP写入AD73360的控制字为16位,其中高2位用于设置AD73360的工作模式,可在控制、数据、混合三种模式下进行切换;中间的6位用于选择器件和寄存器的地址;最后的低8位将保存写入选择的寄存器中。系统设置AD73360的串口传输速率为2MHz,采样率为8KHz,并依次通过DSP向AD73360写入控制字。
3.1.2 SPI接口配置
为了实现DSP对AD73360的读写,需要将McBSP0设置为SPI主从模式。SPI接口一共具有四种操作模式,它主要决定了设备接收和发送数据时的时钟相位和极性,即决定了时钟信号的上升和下降沿与数据流向之间的关系。由于系统将DSP设置为从设备,为避免时钟错误,需要将McBSP0设置为时钟停止模式,即将McBSP0的串口控制寄存器SPCR1中的CLKSTP位设置成11b,将管脚控制寄存器PCR中的CLKXP位设置为1b的模式。
将McBSP设置成SPI接口需要遵循以下步骤:
① 设置SPCR2的XRST位和SPCR1的RRST位均为0,将发送器和接收器复位。② 设置SPCR2的GRST位为0,将采样率发生器复位。③ 分别设置McBSP的相关寄存器,将McBSP配置成从设备,CLKX引脚和FSX引脚均配置成输入端,由外部主设备提供信号。④ 设置SPCR2中的GRST为1,重新使能采样率发生器。⑤ 采样率发生器被释放后,等待两到三个时钟周期以保证信号的同步,再设置XRST和RRST位为1,使能发送器和接收器;继续等待两到三个时钟周期,使内部正确同步。⑥ 上述步骤完成了McBSP的SPI配置,如果McBSP选择为主设备,则还需要设置SPCR2的FRST位为1,以提供内部帧同步信号。
3.1.3 USB模块驱动
USB驱动程序主要包括两个部分:DSP上的USB固件驱动和上位机的USB管理程序。其中,前者指运行在DSP的CPU中的程序,主要完成USB协议的处理和设备与上位机的数据交换;后者指运行在上位机中的程序,主要完成USB设备的识别和地址分配。
当上位机检测到有设备连接到USB总线时,上位机会向USB设备发出一系列的设备请求,获取USB的一些属性,如设备支持的最大传输速率、设备接口特性、设备端点个数等,这些属性信息在USB的固件驱动上已事先经过定义,上位机上的USB管理程序只是将这部分的信息提取出来。接着,上位机会为已经识别确认的该USB设备分配一个唯一指定的地址,当发生数据传递时,USB设备就通过该地址向上位机传递相关的数据。以上的过程称为USB设备的枚举。USB设备枚举过程结束后,USB设备就可以正常使用了。
3.2 ADPCM语音压缩算法
ADPCM是自适应差分脉冲编码调制的简称,最早使用于数字通信系统中。该算法利用了语音信号样点间的相关性,并针对语音信号的非平稳特点,使用了自适应预测和自适应量化这两种核心算法,将声音流中每次采样的16bit数据以4bit存储,所以压缩比为1:4。由于压缩/解压缩算法非常简单,所以ADPCM是一种低空间消耗、高质量、高效率声音获取的好途径。
本系统设计选择ADPCM作为语音压缩算法主要是基于以下两个考虑:① ADPCM是在时域对信号进行处理,不会影响信号的频域和空间域信息,即经过ADPCM压缩还原不会影响后续信息的提取。② ADPCM算法实现相对简单,且性能优越,可以最大限度的滤除语音采集过程中出现的高斯白噪声。
ADPCM算法结合了DPCM和ADM算法的精髓,可以理解为在差分算法DPCM的基础上根据自适应增量ADM编码原理进行的算法改进。改进的环节有两个:① 量化器的量化步长随着输入信号电平的相关变化而随时做出调整,用大的量化步长去量化大的差值,用小的量化步长去量化小的差值。② 线性预测滤波器的预测参数是自适应的随时调整的[8]。
在DSP上对数字信号进行ADPCM算法处理,可以一定程度地降低语音录入过程中的高斯随机噪声,提高信号质量,便于进一步的处理;同时对信号进行压缩,提高了信号的存储容量。
在距离不超过2米的近场环境中进行语音采集,分别录入“a”、“toefl”和“12345”三段语音,经过ADPCM处理后得到还原信号,计算误码率分别为3.05%、6.10%和2.17%,再结合实际人耳听觉判断,可以得出信号基本无失真的结论。此外,为了进一步验证ADPCM算法对高斯白噪声的抑制能力,只选取一路麦克风录入语音“toefl”,并人为在语音采集端加入大量高斯白噪声,经ADPCM压缩处理后,对比观察前后信号波形,如图7所示。可以明显看出信号中存在的高斯白噪声已得到了充分抑制。
3.3 卡尔曼滤波
考虑到系统已通过ADPCM算法对高斯白噪声进行了抑制处理,尚需进一步对有色噪声进行处理。该系统选取抑制有色信号效果显著的卡尔曼滤波算法[9]。
卡尔曼滤波是一种以状态变量的线性最小方差递推估算的方法。简单地说,卡尔曼滤波是在时域内不断地进行“预测——修正——递推”的过程,这里不再深入展开。
4 讨 论
本文阐述了一种基于麦克风阵列的语音增强系统的设计方案,首先详细介绍了系统的硬件结构组成,包括电路的设计和芯片的选型,并在此基础上讨论了相关驱动的编写。然后具体描述了系统的语音处理工作流程,并对含有高斯白噪声的语音进行ADPCM处理,接着采用卡尔曼滤波进一步对有色噪声处理。最后,通过USB将多路语音传递至上位机储存。经系统测试,该系统可以在距离不超过2米的近场环境中最大限度地提高语音信号质量,还原后的信号清楚无失真,达到了预期设计目标。
摘要:针对目前在近场语音环境中语音增强系统噪声干扰大、难以清晰还原信号等局限性,设计并实现一种基于麦克风阵列的新型语音增强系统。系统硬件设计新颖,采用低功耗设计,最大支持12路语音信号同时采集,同时对噪声的处理采用自适应差分脉冲编码调制和卡尔曼滤波算法相结合分开处理的新型方式。通过Matlab仿真和封闭近场环境下的实际测试,结果表明该系统性能稳定可靠,可以提高语音清晰度,实现短距离的多路语音增强。
关键词:语音增强,麦克风阵列,数字信号处理器,自适应差分脉冲编码调制,卡尔曼滤波
参考文献
[1]刘悦.基于近场的麦克风阵列语音增强方法研究[D].长春理工大学,2009.
[2]杨白,唐宁,汪洋,等.ADPCM语音解码合成输出系统的设计[J].光通信研究,2009(1):33-35.
[3]Khalil F,Jullien J P,Gilloire A.Microphone array for sound pickup inteleconference systems[J].Audio Engineering Society,1994,42(9):691-700.
[4]胡曙辉.麦克风阵列语音增强算法研究[D].西安电子科技大学,2008.
[5]ANALOG DEVICES.Six-Input Channel Analog Front End AD73360L[M].2000.
[6]Texas Instruments.TMS320VC5509A Fixed-point Digital Signal Pro-cessor Data Manual[M].2003.
[7]Texas Instruments.TMS320C55x DSP Multichannel Buffered SerialPort(McBSP)Reference Guide(Rev.B)[M].2004.
[8]任学利.基于TMS320C5402的G.721语音压缩算法的设计与实现[D].内蒙古大学,2006.
麦克风阵列信号处理 篇4
在目标语音的实际拾取过程中, 不可避免会受到外界环境噪声和其他说话人的干扰。如果干扰噪声过强对收听者而言则会觉得刺耳乃至听不清目标语音。针对这种情况, 通常采用增强语音、去除背景噪声的方法来改善系统性能。目前语音增强的方法很多, 根据使用麦克风的数目可分为单麦克风系统和麦克风阵列系统。
近20 年来不少研究者提出了使用一个或两个麦克风来去除噪声, 但由于实际环境噪声的复杂性均不能达到满意的消噪要求。而阵列信号处理采用广义旁瓣对消思想, 即用“电子瞄准”的方式从声源位置获取较高品质的语音信号同时抑制其他说话人的声音及环境噪声, 具有很好的空间选择性。由于麦克风阵列明显优于具有高方向性的单麦克风系统, 使其成为20年来语音信号处理的一个重要分支, 以及拾取语音时减小噪声和混响颇具前景的技术之一。如果系统的算法精简得当, 麦克风阵列可应用于许多场合, 如视频会议、机器人语音识别、车载系统环境、大型场所会议等。
1 麦克风阵列语音增强原理及优点
麦克风阵列通过对拾取的多路语音信号进行分析与处理, 使阵列形成的波束方向图主瓣对准目标语音,“零点”指向干扰源以抑制干扰信号, 从而尽可能地获取目标语音。其中波束方向及波束主瓣宽度与麦克风的间距、麦克风数目、麦克风的摆放位置、声源入射角及采样频率紧密相关。波束的形成不仅消除了使用单个麦克风时需人工调节麦克风指向性问题, 而且可以使输出语音的信噪比大幅度提高, 从而无需人工干预亦可获得高质量的语音。
在实际室内环境中麦克风阵列接收到的信号不仅有直接到达的目标语音, 还有目标语音经过墙面反射、衍射等其它路径到达的部分即混响, 同样对于噪声源也是如此。室内存在干扰和混响的典型示意如图1所示, 而利用麦克风阵列获取目标语音信号示意如图2所示。
由上述可见麦克风阵列较之单麦克风系统具有许多优点, 具体表现在: 1) 麦克风阵列系统具有空间选择特性, 可以用“电子瞄准”的方式从所需声源位置提供高品质的语音信号;2) 高方向性的单麦克风系统通常只能拾取一路信号且其指向性一般不随声源改变。而麦克风阵列系统具有自动探测定位, 可在接收区域内追踪正在说话的人, 有利于获取多个声源或移动声源。
2 麦克风阵列语音增强的主要方法
麦克风阵列语音增强的处理过程主要涉及到三个方面: 语音定位、空间抑制及自适应滤波。对于麦克风阵列获取语音的性能好坏而言, 环境噪声是一个严峻挑战, 因此迫切需要选择性地接收目标语音而抑制干扰信号及噪声的方法。目前众多研究人员应用麦克风阵列波束进行语音增强的方法大致上可分成三类:延迟-累加方法(传统波束法) 、自适应波束法及基于后置自适应滤波的麦克风阵列法。
2.1 延迟-累加波束法
三种方法中最简单的是延迟-累加波束法, 此方法实现空间滤波的思想来源于相控雷达的原理。通过延时控制补偿从声源到每个麦克风的延时,对每个麦克风接收到的信号进行校正。然后使麦克风阵列波束指向有最大输出功率的方向, 即波束对准相应空间位置的声源信号同时削弱噪声和混响的影响。
延时-累加方法可以分为三个部分, 即时间延迟估计、时间延迟补偿及累加部分[6], 其系统框图如图3所示。其中时间延迟估计与使用麦克风数目、麦克风间距、声源入射角及采样频率成正比, 与声音的传播速度成反比。加权方法有很多种, 最简单的是平均加权。该系统具有较好的鲁棒性且计算复杂度也较小, 但在实际应用中, 理论上信噪比的提高与采用麦克风数目的关系为10log10M (M为所采用的麦克风数目), 由此欲达到较好指向性和较高信噪比时需要的麦克风数目较多。
2.2 自适应波束法
自适应波束法利用的原理是自适应噪声抵消, 即以噪声为处理对象将噪声抑制或进行非常大的衰减以提高接收信号的质量, 其系统框图如图4所示。
由系统框图可以看到, 在自适应噪声干扰抵消器的前端, 提供所需的逼近跟踪信号即噪声信号的是一个块矩阵的运算输出, 此输出相当于起了参考信号的作用。这个块矩阵称为标准Griffiths-Jim 块矩阵, 其形式为:
延迟补偿后的信号(即含噪语音)减去块运算输出的模仿噪声信号即得到最小均方误差准则下目标语音估计信号。在开放环境条件下, 如果噪声源的数目比麦克风数目少, 自适应波束法能得到很好的性能。而在封闭环境中由于反射和混响会产生多噪声域的情况, 在此散射噪声条件下自适应波束法的消噪性能比较有限。
2.3 后置自适应滤波法
由于单纯的延迟-累加方法较难得到理想的语音增强,一般在较复杂的实际噪声情况下采用4个麦克风,其信噪比的改善在0.5dB-1dB左右,因此需要进一步的增强方法。1988年Zelinski提出了在传统的波束输出后采用后置滤波来消除不相关噪声的延迟-累加滤波方法,即后置自适应滤波法, 其系统框图如图5所示。
此方法中维纳滤波器的系数是根据各信道接收信号间的自相关和互相关得到,即维纳滤波器的系数是自适应变化的。延迟-累加后的含噪语音信号经过维纳滤波后得到最小均方误差准则下的目标语音估计信号。这种方法在不相关噪声的环境下能通过相对较少的麦克风数目获得较好的消噪性能。如在较复杂的实际情况下系统采用个麦克风时,采用此方法比延迟-累加方法能提高4dB-6dB左右,消噪效果十分明显。
2.4 几类语音增强方法的优缺点比较
由上述分析可知, 延迟-累加波束法和后置自适应滤波法适用于非相干噪声和弱相干噪声消除; 而自适应波束法适用于消除相干噪声, 对非相干噪声或散射噪声消除效果较差。而在实际应用中, 噪声域包含的噪声既不是完全散射的也不是仅有直接路径到达麦克风的, 因此需要在以后的研究中探讨可以同时消除这两种噪声的麦克风阵列语音增强方法。
3 麦克风阵列语音增强技术的应用
由于麦克风阵列在实际语音处理时能提供良好的拾取语音能力及噪声鲁棒性, 且随着DSP 芯片的飞速发展、性价比的提高,使得麦克风阵列广泛应用于车载系统环境、机器人识别、视频会议、语音识别的前端、大型场所的记录会议和助听装置等。
3.1 应用于车载系统
移动电话已成为一般人日常生活中不可或缺的通信工具, 而汽车行驶中驾驶员使用移动电话的安全问题已引起了广泛关注, 采用麦克风阵列系统与语音识别相结合则能很好地解决此难题。汽车中的噪音主要包括汽车引擎的声音、轮胎经过道路的声音及车内音响空调的声音等, 这些噪声大致可认为形成了一个不相干的噪声域。这时采用基于后置自适应滤波的麦克风阵列可以有效地提高语音的辨识效果。
3.2 应用于机器人语音识别
在办公室内运作的机器人与工厂机器人最大的不同是人机交互,而办公室是一个动态的工作环境, 需要机器人有足够的灵活性和适应性。当人机交互时就需要机器人“准确”地识别指令, 而当环境噪声比较复杂时, 用单麦克风的效果是很差的。为解决这个问题就可以使用麦克风阵列, 在机器人的身上放置多个麦克风从而实现语音定位, 通过麦克风阵列语音增强与语音识别相结合能更精确地“理解”指令。
3.3 应用于视频会议及大型会场
参加视频会议的人很多时, 欲发言讨论者也相应较多。传统方法是使用一个麦克风,谁欲发言就给谁使用, 该方法虽然成本不高但在实际使用时很麻烦; 另一种方法则是给每一个欲发言者配备一个专用麦克风, 此方法虽然方便但造价很高。使用麦克风阵列则可以较好地解决该问题, 它能自适应地调整波束并对准发言者。德国工业计算机辅助中心(CAIP) 于2001年把麦克风阵列应用于室内演讲中, 此系统由两组每组四个成直角分布位于观众席的麦克风阵列组成, 其具有定位能力以集中采集当前演讲者的语音。
4 总 结
鉴于麦克风阵列相对单麦克风系统的诸多优点,使其成为减小噪声的又一有力武器, 并成为语音数字信号处理的一个重要分支。因语音是一种宽带的非平稳信源, 所以采用阵列系统时需满足一个比较宽的声域范围以能把此技术更广泛地应用于实际, 同时需要考虑降低系统成本和计算时间, 以达到较好的实用性。近年来随着研究的不断深入和DSP 芯片的飞速发展,性价比的提高使麦克风阵列越来越接近实际使用,在各领域的研究产品也是层出不穷。
参考文献
[1]Widrow B,Mantey P E,Griffiths L J,et al.Goode ( 1967) . Adaptive antenna systems[J]. Proc. IEEE,1967,55(12):2143-2159.
[2]Widrow B,et al.Adaptive noise canceling: Principles and applications[J].Proc. IEEE,1975,63(12):1692-1975.
[3]Widrow B,Luo Fa-Long.Microphone arrays for hearing aids:An over-view[J].Speech Communication,2003,39(1-2):139-146.
[4]Fischer Sven, Simmer Klaus Uwe.Beamforming microphone arrays for speech acquisition in noisy environments[J]. Speech communication,1996,20(3-4):215-227.
[5]McCowan I A,Bourlard H.Microphone array post-filter for diffuse noise field[C]//ICASSP′02,2002,1:905-908.
麦克风阵列信号处理 篇5
在实际封闭环境下, 由于说话者离麦克风有一定的距离, 麦克风接收到的语音信号常常受到环境噪声干扰和混响的影响, 严重影响了通话质量。因此, 麦克风阵列语音增强技术的研究成为近年来语音处理的研究热点[1]。
基于麦克风阵列的语音增强方法主要分为三类:传统的波束形成方法[2]、自适应波束形成方法和后置滤波方法。由于固定波束形成法和后置滤波法适用于非相干噪声和弱相干噪声消除;而自适应波束形成法适用于消除相干噪声, 对非相干噪声或散射噪声消除效果较差。因此, 在实际环境中, 每类方法都存在一定程度上的性能退化。
1 语音增强方法系统描述
本文以麦克风阵列接收的信号为对象, 采用基于后置多级维纳滤波器的方法, 解决带噪语音的增强问题。该方法的系统结构主要由二个模块构成, 即GSC和多级维纳滤波器构成。
2 仿真实验与结果分析
2.1 仿真环境
在嘈杂的实验室中, 实验选取的仿真房间结构为小房间 (5m×4m×3m) 。麦克风阵列由四个麦克风组成的均匀线性阵列, 相邻阵元的间距为5cm, 说话者位于阵列的正前方, 离麦克风阵列的距离为1m。声源位于麦克风阵列远场, 语音声源相对于阵列的入射角度为90°, 干扰噪声源入射方向为45°。房间的冲激响应使用Image模型, 按照Eyring公式[3], 混响时间可以表示为墙壁反射系数的函数, 即
式中分别表示房间的体积、总面积与墙壁的反射系数, 这里假定各面墙的反射系数相同。实验采用的语音样本为“第一课认识新同学”由男生朗读。语音信号的采样率为8k Hz。为了分析本文提出的语音增强方法性能, 在中度混响 (300ms) 情况下, 分别选取传统的GSC和具有后置维纳滤波 (GSC+WF) 的方法与之相比较。
2.2 实验结果与分析
在存有混响的实际封闭的房间内, 当麦克风阵列接收的输入信号信噪比为10d B时, 分别将本文提出的方法与传统的GSC和 (GSC+WF) 的方法对噪声抑制能力进行仿真和比较, 如图1所示。通过实验仿真结果可以看出, 本文提出的方法其噪声的抑制效果要更好。从其对应的语谱图也可以看到, 本文提出的方法其语谱图更接近于纯净信号的语谱图。
3 结语
本文提出的语音增强方法在混响环境下进行了MATLAB仿真实验, 并与传统经典的GSC以及具有后置维纳滤波 (GSC+WF) 方法进行了比较。从仿真图形可以看出, 相对于传统的麦克风阵列语音增强方法而言, 能够取得较好的消噪效果, 仿真实验结果验证了该方法的有效性。
参考文献
[1]M Brandstein, D Ward.Microphone Arrays[M].New Work:Springer-Verlag, 2001
[2]张丽艳, 殷福亮.一种适用于混响环境的麦克风阵列语音增强方法[J].2009, 25 (5) :720-723
麦克风阵列信号处理 篇6
基于麦克风阵列的声源定位技术在视频会议、汽车免提电话、智能机器人、语音增强等领域有着广泛应用。现有的定位算法通常假定有较高的信噪比,然而麦克风阵列的许多实际应用场所信噪比往往较低,如嘈杂的会场,汽车发动机的噪音等,因而研究低信噪比下的声源定位方法,提高算法的鲁棒性有着非常重要的意义。基于麦克风阵列的声源定位方法有多种[1,2],这些方法有各自的优缺点,其中时延估计法运算量较小,易于实时实现,近年来已成为研究的热点。
经典的时延估计算法都是将定位分成两步。首先估计出每对麦克风到声源之间的时延差,然后根据这些时延和麦克风阵的几何位置,采用如球形最小二乘法估计出声源的方位[3]。该类算法计算量较小,在信噪比较高时,可实时估计出声源的方位。但在低信噪比环境下,为克服噪声的影响,必须增大每次用于估计时延的接收数据,这既增加了运算量又不利于实时定位。本文采用相容时延矢量(Con-sistent Delay Vector)估计的算法[4],将上述两个步骤合二为一,构造一个以声源坐标为自变量的目标函数,在预先设定的声源范围内,计算每个假想声源的目标函数,搜索到使该目标函数最大的声源坐标,即得到真实声源的位置。该算法在计算目标函数时利用了阵列的空间增益,提高了抗噪声能力。
1 传统的时延估计定位方法
在无混响,有背景噪声的环境中,两个麦克风的接收信号x1(t)、x2(t)可表示为:
其中,s(t)是声源信号,τ1、τ2是源信号到达麦克风的时延,α1、α2是衰减系数,u1(t)、u2(t)是加性空间白噪声,且与源信号互不相关,接收信号时延差为τ12=τ1-τ2。
广义互相关法(GCC,Generalized Cross-Correlation)是常用的一种时延估计法。x1(t)、x2(t)的互相关函数可表示为:
互功率谱定义为互相关函数的傅里叶变换:
实际估计两路信号的广义互相关函数时,用周期图法先计算其互功率谱X1(ω)X*2(ω),然后乘以加权函数W(ω),再做傅里叶反变换,得到GCC的估计:
使
为了使GCC的峰更为尖锐,可采用相位变换(PHAT, Phase Transform)加权,该方法使用加权函数:
PHAT加权函数消除了幅度谱的影响,使得GCC仅与互功谱的相位有关。参考式(1)的信号模型,假设是远场,则衰减系数可不予考虑,如果噪声与源信号不相关,则x1(t)、x2(t)的互功率谱可表示为:
又因为噪声也是不相关的,故有G12(ω)=0,因此PHAT加权后的互功率谱为:
该式做傅里叶反变换后得到PHAT GCC函数:
可见PHAT GCC是一个在接收信号时延差τ12处的冲激函数,因此有很高的时延估计精度,但实际的信号是有限长的,因此得到的PHAT GCC并非冲激函数,而是有一定宽度的,此即窗口效应,信号时长太短将会带来误差。此外,实际的噪声不是空间白的,信号与噪声也是相关的,这些都会使PHAT GCC的峰变宽。在高信噪比,中等混响环境下,PHAT法可有效地定位,当信噪比较低时,则会产生很大的误差。这就限制了该方法在以加性噪声为主的环境中的应用,尤其相对于最大似然(ML, Maximum Likelihood)加权,更无优势可言。PHAT法在混响环境中有很强的鲁棒性,但当混响时间过长(大于400ms)时,会出现较大误差,文献[5]提出了改进算法,可允许有更强的混响,但该算法仍假定有较高的信噪比。
2 相容时延矢量估计定位方法
传统的时延估计定位法,分为两个步骤,先估计每对基元的时延差,然后进行定位。通常这些技术在定位前必须剔除掉时延中可能的野值,并且假定这些野值能够可靠地被检测出来。如果把这两步合为一步,事先假定一个声源的位置,计算出该位置与所有麦克风对的时延差,显然这些时延差都是满足假想声源与麦克风位置之间的物理约束的,把这些时延差组成的矢量称为相容时延矢量。定义相容能量函数ECON为:
其中,v是指数加权值(通常v取1或2),pi表示第i对麦克风,共有P对麦克风,q为假想声源坐标矢量,T({pi1,pi2},q)为假想声源到第i对麦克风之间的时延差,
相应的相容时延矢量估计为:
相容时延矢量估计定位方法的思想是:在预先设定的空间内,将假想声源的坐标矢量代入式(8)中运算,搜索出使ECON最大的
3 仿真与讨论
为验证相容时延矢量估计定位算法的有效性,用MATLAB做仿真。麦克风阵为一个8元的均匀线阵,基元间距d为0.08m,考虑远场情况,因而波阵面为平面波,如图1所示。
将相邻麦克风配为一对,即第1个与第2个为一对,第2个与第3个为一对,以此类推,共有7对基元,每对基元间的时延为τij=d sin(θ)/c,其中c为空气中的声速,约340m/s。声源信号为事先录制好的一段男声语音,时长约2秒,采样频率22050Hz,做16倍内插。源信号如图2所示。
设定声源入射角θ=30°,搜索范围为-90°·90°,步长为1°,信噪比为-15dB~10dB,每个信噪比分别做20次仿真,结果如表1所示。
由表1可见,在-10dB信噪比时该算法仍有较高的定位精度,信噪比越高,定位精度越高,验证了该算法在低信噪比下有较强的鲁棒性。
4 结束语
基于麦克风阵列的相容时延矢量估计定位算法,将传统的先估计时延再计算声源坐标的两步定位法合为一步,构造能量函数,通过搜索得到声源坐标,该算法利用阵列增益提高了抗噪声能力,特别适用于低信噪比的环境。仿真结果表明:在低信噪比环境下,只需要较短的数据,该算法仍有较高的精度。但搜索运算量较大,有待于进一步研究效率更高的搜索策略。
摘要:时延估计是常用的声源定位方法,传统的算法将定位分为两个步骤,即先估计麦克风阵列中每一对基元的接收信号时延,然后根据这些时延用几何的方法确定声源的位置。在低信噪比下,一对麦克风的时延估计误差较大,导致定位误差较大。相容时延矢量估计算法将两步合为一步,没有逐对估计时延,而是构造一个目标函数,通过搜索得到声源的位置。仿真结果表明,在低信噪比下,只需要较短的数据,该算法仍可得到较高的定位精度。
关键词:麦克风阵列,声源定位,相容时延矢量
参考文献
[1]Huang Yiteng(Arden).Real-Time Acoustic Source Localization withPassive Microphone Arrays[D].Atlanta:Georgia Institute of Tech-nology,2001.
[2]居太亮.基于麦克风阵列的声源定位算法研究[D].博士学位论文,电子科技大学,2006.
[3]李承智,曲天书,吴玺宏.一种改进的AEDA声源定位及跟踪算法[J].北京大学学报:自然科学版,2005,41(5):809-814.
[4]Scott Matthew Griebel.A Microphone Array System for SpeechSource Localization,Denoising,and Dereverberation[D].Cam-bridge:Harvard University,2002.
麦克风阵列信号处理 篇7
在目标语音的实际拾取过程中,不可避免会受到外界环境噪声和其他说话人的干扰。如果干扰噪声过强对收听者而言则会觉得刺耳乃至听不清目标语音。针对这种情况,通常采用增强语音、去除背景噪声的方法来改善系统性能。
对于有些语音应用而言,如视频会议、车载免提电话等。由于说话者到麦克风有一定的距离。麦克风接收到的语音信号受到环境噪声和干扰的影响很大。严重影响了通话质量。一般的基于单麦克风的语音增强系统难以获得较好的增强效果。麦克风阵列由于利用了目标信号、噪声和干扰的空间信息。基于麦克风阵列的语音增强系统能提供更好的增强效果。国外对于麦克风阵列语音增强的研究取得了很多研究成果,而国内类似的研究很少。
(二)麦克风阵列语音增强原理及优点
麦克风阵列通过对拾取的多路语音信号进行分析与处理,使阵列形成的波束方向图主瓣对准目标语音,“零点”指向干扰源以抑制干扰信号,从而尽可能地获取目标语音。其中波束方向及波束主瓣宽度与麦克风的间距、麦克风数目、麦克风的摆放位置、声源入射角及采样频率紧密相关。波束的形成不仅消除了使用单个麦克风时需人工调节麦克风指向性问题,而且可以使输出语音的信噪比大幅度提高。从而无需人工干预亦可获得高质量的语音。
和单个孤立麦克风相比,麦克风阵列在时频域的基础上增加了一个空间域,对来自空间不同方位的信号进行空时频联合处理。因此,它可以弥补单个麦克风在噪声处理、声源定位跟踪、语音提取分离等方而存在的不足,能够广泛应用于各种具有嘈杂背景的语音通信环境 (如会场、多媒体教室、助听器,车载免提电话、战场等) ,以提高语音通信质量。
(三)麦克风阵列语音增强的主要方法
麦克风阵列语音增强的处理过程主要涉及到三个方面:语音定位,空间抑制及自适应滤波。对于麦克风阵列获取语音的性能好坏而言,环境噪声是一个严峻挑战。因此迫切需要选择性地接收目标语音而抑制干扰信号及噪声的方法。目前众多研究人员应用麦克风阵列波束进行语音增强的方法大致上可分成三类:延迟—相加方法 (传统波束法) 、自适应波束法及基于后置自适应滤波的麦克风阵列法。
1. 基于延迟—相加波束形成器的麦克风阵列语音增强
延迟—相加波束形成器的原理如图l (a) 所示。设目标信号波达方向的估计为θs。通过对各路麦克风接收到的信号加一合适的时延补偿τm,使得各路输出信号在θs方向同步,实现阵列对θs方向的入射信号的获得最大增益。权系数ωm的作用相当于对阵列的波束模式进行锥化截取。
设麦克风阵列各通道接收到的信号和噪声不相关,且各通道接收到的信号和噪声分别具有相同的统计特性,则延迟一相加波束形成器的噪声消除因子(Noise Reduction Factor,即输出、输入信噪比增益)为:
其中为噪声场的复相干函数的均值:
其中Γij (ω) 为通道i和通道j之间的噪声的复相干函数。当噪声的相关性很弱时 (Γij (ω) ≈0) ,NRDS (ω) ≈M;对强相干噪声源 (Γij (ω) ≈1) ,NRDS (ω) ≈1,基本没有消噪能力。
从以上分析可知,基于的DS波束形成器的麦克风阵列语音增强结构,对非相干噪声的消除能力十分有限,对相干噪声基本没有消除能力。此外,DS波束形成器对目标DOA估计误差 (或各通道的时延估计误差) 很敏感;不能在干扰方向置零以有效地抑制干扰。
2. 结合波束形成器和后置滤波的麦克风阵列语音增强
为了进一步消除DS波束器增强之后的语音中的非相干噪声,Zelinski提出了在波束形成器后置维纳滤波的结构,如图l (b) 所示。
假设各通道接收到的信号和噪声不相关,且各通道接收到的噪声具有相同的统计特性,后置维纳滤波器的噪声消除性能为:
其中ξ (ω) 是后置维纳滤波器输入的先验信噪比。由 (3) 式可知,噪声的相关性越强,维纳后滤波的消噪性能越差;相关性越弱。消噪越明显。结合维纳后滤波的语音增强系统能很好地消除非相干噪声,对混响有一定的消除;并且由于后置滤波器的权系数是实时更新的,对时变的声学环境有一定的适应性。但经过后滤波之后的语音信号有一定的失真。
3. 基于自适应波束形成器的麦克风阵列语音增强
自适应波束形成器各个通道的权系数能随输入信号的统计特性自适应调整,基于自适应波束形成器的麦克风阵列语音增强有多种具体的实现形式,其中基于广义旁瓣相消器 (Generalized Sidelobe Canceller, GSC) 或其类似结构由于结构简单、易于实现,获得了广泛应用。
基于GSC的麦克风阵列语音增强的基本结构如图2所示,由非自适应支路和自适应支路组成。上面的非自适应支路为一固定波束形成器,下面自适应支路中阻塞矩阵B的作用相当于一空间陷波器:阻塞从阵列指向方向上来的信号,而通过从其他方向上的入射信号。通过调节自适应部分的系数Wa,实现系统的噪声输出功率最小。其噪声的消除性能如式 (4) 所示:
对于相干噪声场,假定在阵列的远场处仅有一个噪声源。其空间相干函数为:
其中dij为麦克风之间的距离,θ为噪声源的波达方向,c为声速。将 (5) 代入 (4) 中,理论上噪声得到全部消除。对于非相干噪声场,其空间相干函数Γij (ω) =0,得到NRGSC (ω) ≈1噪声基本上没有得到消除。
由上可知,对于基于GSC结构的麦克风阵列语音增强系统,其消噪性能取决于噪声场的相关性:相关性越强,消噪性能越好。
(四)麦克风阵列的自适应消噪算法
麦克风阵列的传统波束形成法在各向同性,均匀的噪声场可能有好的检测能力。但是一旦出现近场干扰,或者背景噪声有某种不平稳性,这种检测能力就会迅速下降。而且传统的波束形成法仅仅利用了空域的先验信息,如阵列几何结构,但是这些先验信息在实际应用场合往往不是很精确,因此,人们将注意力集中在自适应阵列信号处理领域。常用算法有LMS, DMI, RLS算法。
1. 最小均方 (LMS) 算法
LMS是一种广泛使用的算法理论,该算法是由其创始人Widrow和Hoff命名为最小均方 (LMS, least—mean—square) 算法。由于实现简单且对信号统计特性变化具有稳健性,LMS成为其它自适应算法的参照标准。LMS算法的缺点在于当输入信号的自相关矩阵的特征值分散时,其收敛性变差。学者们进行长期研究并提出了不少改进算法。
LMS算法的流程如下:
参量:M=滤波器抽头数,μ=步长参数。其中,μ为迭代步长,它控制算法收敛的速度。取值必须满足才能保证算法收敛。Smax是抽头输入的功率谱密度的最大值,M为滤波器长度。在收敛的每一步都要重新确定μ值。
初始条件:w (0) =0或由先验知识决定。
运算:对n=l, 2…
(1) 取得x (n) , d (n)
(2) 滤波y (n) =wH (n) x (n)
(3) 误差估计e (n) =d (n) -y (n) .
(4) 更新权向量w1。
其它由LMS算法衍生出来的算法包括:归一化LMS (NLMS) 算法,处理LMS (BLMS) 算法,快速LMS (FLMS) 算法等。
2. 取样协方差矩阵的直接求逆 (DMI) 算祛
DMI (直接矩阵求逆) 算法又称SMI (采样矩阵求逆) 算法。DMI算法根据估计的采样协方差矩阵直接由正规方程计算矢量,能克服协方差矩阵特征值分散对加权矢量收敛速度的影响,因而可以达到很高的处理速度。DMI算法首先由Reed等人系统提出讨论。
DMI是一种数字开环计算方法,通过直接求解阵列协方差矩阵R来估计权矢量,从而避免收敛速率依赖于特征值散布这一问题。R的无偏估计由下式给出:
其中,为第k时刻的阵列协方差矩阵的估计;K为阵列总数, 通过矩阵求逆计算可以进一步确定最优权矢量估计为。DMI算法可在可在K=2N时刻内收敛至最优权值的范围内。当然,在实际应用中还需考虑协方差矩阵求逆计算的复杂度以及数值稳定性等问题。
DMI算法比LMS算法收敛速度快得多。但是需要矩阵求逆运算。运算量大。硬件实现复杂。
3. 递归最小二乘 (RLS) 算法
递归最小二乘 (RLS) 算法是以最小二乘准则作为最佳准则的算法,由此算法得到的是对一组已知数据的最佳滤波器。
RLS算法假设阵列信号为数据取样形式,并使用数字处理器调整权值,在每一取样瞬间根据最小二乘准则计算权值的最佳值。它基于递归采样计算协方差矩阵。RLS算法的优点是收敛速度快,故在自适应信号处理与快速信道均衡,自适应控制,系统辨识,参数估计以及时间序列分析中已被作为基本的估计和处理方法。
RLS算法流程如下:
(4) 更新逆矩阵C (n) =λ-1[C (n-1) -g (n) xT (n) C (n-1) ]
RLS算法和DMI算法之间的主要区别在于计算逆矩阵的方法不同。RLS算法无需直接进行矩阵求逆运算。因而比DMI运算量小。RLS算法的收敛速度比DMI算法慢,但比LMS算法快的多,而它的性能和DMI算法接近。因而RLS算法兼有LMS和DMI的优点,应用前景广泛。
(五)结论
本文介绍了延迟—相加方法 (传统波束法) 、自适应波束法及基于后置自适应滤波的麦克风阵列语音增强方法。并详细介绍了自适应消噪算法采用自适应波束形成可使阵列自动调整自己的波束,以适应外界环境。最大限度加强有用信号,大大提高了信号干扰比。自适应滤波就是利用前一时刻所获得的滤波器参数等结果,自动调整现在时刻的滤波器参数,以达到最佳滤波;且输入信号和噪声的统计特性出现变化的时候,能够跟踪并自动调节参数,使滤波器重新达到最佳状态。在实际应用中应根据具体的声学环境特性、麦克风阵列结构等选择合适的算法及其具体的实现形式。
摘要:文章简要叙述了应用麦克风阵列进行语音增强的原理方法及基于自适应性的消噪算法。由于麦克风阵列在实际语音处理时具有良好的拾取语音能力及噪声鲁棒性, 使用该系统可大大提高强干扰环境下的语音识别性能。
关键词:麦克风阵列,语音增强,自适应,消噪
参考文献
[1]I Cohen, S Gannot, B Berdugo.An integrated real-time beamforming and postfiltering system for non-stationary noise environments[J].EURASIP Journal on Applied Signal Processing, special issue on signal processing for acoustic communication systems, 2003, 11:1064-1073.
[2]S Gannot, D Burshtein, E Weinstein.Signal enhancement using beamforming and nonstationary with applications to speech[J].IEEE Trans on Signal Processing, 2001, 49 (8) :1614-1626.
[3]Doclo.M Moonen.GSVD—based optimal filtering for signal and multimicrophone speech enhancement[J].IEEE Trans on Signal Processing, 2002, 50 (9) :2230-2244.
[4]C Marro, Y Mahieux, K U Simmer.Analysis of noise reduction and dereverberation techniques based on microphone arrays with postfihering[J].IEEE Trans on Speech and Audio Processing, 1998, 6 (3) :240-259.
相关文章:
麦克道威尔02-19
麦克白650字读书心得体会02-19
魔法麦克菲的观后感700字02-19
小学五年级语文《金钱的魔力》评课稿02-19
《麦克白》02-19
麦克斯韦盈利张量02-19
《麦克米伦高阶美语词典》与语用学02-19
麦克斯韦02-19
探讨企业应付账款管理与风险防范策略02-19
金融危机企业防范策略研究论文02-19