基于DSP的OMP算法实现及音频信号处理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于DSP的OMP算法实现及音频信号处理
刘亚峰;刘昱;段继忠;汪少初
【摘要】在DSP平台上实现了压缩感知理论中的正交匹配追踪算法,证明了其可行性.针对音频信号的特点,提出了一种实现方案,使重构信号具有更为良好的主观效果.率先在DSP平台上实现了OMP算法,并将其在音频领域进行了应用,为音频压缩处理提供了新的技术方向.
【期刊名称】《电声技术》
【年(卷),期】2012(036)002
【总页数】4页(P60-63)
【关键词】OMP算法;DSP;音频处理
【作者】刘亚峰;刘昱;段继忠;汪少初
【作者单位】天津大学电子信息工程学院,天津300072;天津大学电子信息工程学院,天津300072;天津大学电子信息工程学院,天津300072;天津大学电子信息工程学院,天津300072
【正文语种】中文
【中图分类】TN912.31
1 引言
压缩感知(Compressive Sensing,CS)理论是近几年由Donoho、Tao与Candes 等人提出的新理论。
通过这一理论,采样速率不再决定于信号的带宽,而是决定于
信息在信号中的结构和内容[1]。
CS理论包括测量向量的获得以及原始信号的
重构两部分。
正文匹配追踪(Orthogonal Matching Pursuit,OMP)算法[2]是CS理论贪婪重构算法中的一种,该算法运算速度快,重构结果较好,有利于硬件
的实现。
目前CS理论的研究主要集中在测量矩阵的构建以及重构算法的研究方面,特别是对重构算法的理论研究,已成为信号处理领域的一大热点。
而对重构算法的验证,目前主要通过MATLAB仿真获得实验数据。
结合OMP算法的特点,本文创新性
地将OMP算法应用在硬件开发平台上进行数据测试,并利用其对音频信号进行处理,获得较为良好的重建结果。
为获得较高的运算性能,采用的硬件平台须具有较强的数学运算能力,据此采用的是TI公司TMS320DM6446处理器。
该处理器采用双核架构ARM+DSP,其中ARM处理器采用ARM926EJ-S核,工作主频为297 MHz;DSP处理器采用TI
的高端DSP核C64x+,工作主频为594 MHz,基本满足运算需求。
2 OMP算法及其DSP实现
2.1 OMP算法简介
压缩感知理论包括获取测量向量以及重构信号两部分。
测量向量的获取,主要依据测量矩阵的不同而不同。
理论证明高斯随机矩阵、一致球矩阵、二值随机矩阵、局部傅里叶矩阵、局部哈达玛矩阵以及托普利兹矩阵等可以很好地满足压缩感知理论的约束条件,成为良好的选择[3-5]。
重构算法是CS理论的核心。
目前重构算法主要包括以下三类:贪婪算法、凸优化算法和组合算法。
贪婪算法是认定所做假设为当前最优解,再通过多次迭代更新假设,获得条件限制内的最优解的一种算法,它以解的准确性换取了运算的速度,具有较快的运算速度。
贪婪算法主要有匹配追踪(Matching Pursuit,MP)[6],正交
匹配追踪,正则化正交匹配追踪(Regularized Orthogonal Matching Pursuit,
ROMP)[7],压缩采样匹配追踪(Compressive Sampling Matching Pursuit,CoSaMP)[8]以及子空间追踪(Subspace Pursuit,SP)[9]等。
本文采用的OMP算法是在指定次数的迭代中,通过不断分析信号与设定的过完备原子库的匹配状况确定信号的组成原子,并利用这些原子对信号进行重构。
理论和应用已经证明:从随机测量中恢复信号,OMP算法是非常好的选择[9]。
依据OMP算法的基本过程,选择了随机高斯矩阵作为测量矩阵Φ,正交变换基为单位矩阵的傅里叶变换形成的矩阵Ψ,恢复矩阵Θ等于Φ×Ψ。
整个处理流程如图1
所示。
图1 程序实现流程图
2.2 OMP算法硬件实现与分析
为了方便用户进行DSP开发,TI公司提供了集成开发环境代码调试器(Code Composer Studio,CCS)。
用户可以用C语言完成算法的书写,再通过合理配置DSP的硬件资源完成算法的硬件实现。
根据OMP算法的具体流程,首先需要完
成OMP算法的C语言编程。
而要保证C代码在DSP上正常运行,就必须要对DSP的硬件条件(如对存储器的初始化设置,DSP的C代码定位、数据的存储空间设置等)进行引导配置。
配置过程可以通过两个步骤来实现:首先在启动DSP时,
加载与实验平台相关的通用扩展语言(General Extension Language,GEL)文件,完成对硬件的初始化设置;随后在完成代码的编写后还需要对代码进行定位,包括
设置代码及数据等在硬件的存储位置、堆栈的空间大小等。
完成了以上对系统的配置,就可以在DSP上运行需要移植的算法代码。
选择的主要参数如下:Ψ矩阵是对单位矩阵进行傅里叶变换的矩阵,为了快速有效
地得到数据,采用傅里叶变换的快速算法,在此将输入信号的长度选为256,测
量矩阵Φ为随机高斯矩阵。
由于CS算法包括测量向量的获得以及原始信号的重
构这两部分,本文在数据对比上也将两部分都分别进行了比较。
将待处理的信号看成是一维信号,通过DSP处理获得测量向量s,对于相同的测
量矩阵Φ,可以在软件环境下对此数据进行变换,获得测量向量s1。
s与s1的对比可以反映DSP对测量向量的计算精度。
数据证明,s与s1的误差在10-6以内,不影响算法的后续过程,在DSP上能够获得较为精准的测量向量。
在此基础上,随后进行了恢复算法在DSP上的实现。
针对单频信号和多频信号,
分别进行了测试。
将DSP运行获得的重构信号记为x0,原始信号记为x,其结果对比如图2所示。
图2(a)为针对单频信号运用DSP处理获得的重构信号以及软件仿真获得的重构信号;图2(b)为针对具有三个频率分量的信号运用DSP处理及软件仿真获得的重构信号。
图2表明对于特定的原始数据,不论是采用软件仿真还是DSP实现,获得的数据结果都与原始信号相同。
这不仅证明了OMP算法具有良
好的重建效果,同时表明将OMP算法进行DSP移植能够获得与软件仿真一致的
重建效果,具有非常良好的应用意义。
图2 由DSP和软件仿真获得的重构信号的波形图
在比较重建结果的同时,本文还对算法在DSP上运行的代码进行了必要的剖析。
完成整个算法的代码在DSP存储器内的长度为0x25D4,执行一次共需要执行4294855462个周期,由于DSP的工作主频为594 MHz,执行一次代码共需要7.230 s,具有较高的运算速度。
3 音频信号的CS实验及分析
在完成了上述硬件实现验证以后,将音频信号作为信号源进行了OMP算法处理的探索。
鉴于音频信号的数据量非常大,使用OMP算法一次性处理不能实现,将音频信号分成若干段,每次仅处理一个固定的小长度。
具体实现方案如图3所示。
图3 音频信号处理的实现方案
对于待处理的音频信号,先将其分成若干段子信号。
对每个子信号进行FFT变换,将频域系数作为待处理信号进行OMP恢复处理。
针对每段子信号进行OMP重构
以后得到子信号的频域系数,还需要进行IFFT,获得子信号的时域表示。
将所有的子信号按顺序再重新合并即为对整个音频文件的重构信号。
采用这种处理方法,重构后的信号有较多的噪声。
为了改善信号的重构质量,对重构信号进行了后处理来获得更好的重构信号。
根据重构信号的特点,建议采用低通滤波,将信号中嘈杂的背景噪声滤除,获得与原信号较为逼近的重构信号。
将原始输入信号、OMP算法的重构信号以及滤波后的输出信号三者进行了详细对比,结果如图4所示。
图中,在原始信号的频谱段,OMP算法重建信号的频谱与原始信号基本相同,而在较高的频谱段则存在较多的噪声分量,这在时域信号的直接反映就是波形具有较多毛刺,极大影响了主观效果。
经过低通滤波可有效改善这一状况,获得良好的主观效果。
图4 原始音频信号、经过OMP算法重构的信号以及经过低通滤波的重构信号三者的时域波形图和频谱图
经过进一步处理的重构信号具有与原始信号极为接近的频谱特性,主观效果良好。
数据结果证明,使用笔者提出的实现方案音频信号重建效果良好。
OMP算法在音频领域具有良好的实用价值,将测量向量代替原始音频信号进行存储及传输,可极大减少数据量,有效地压缩数据。
将OMP算法应用于其他领域,还可构成完整的数据采集、传输及恢复的系统,对物联网的数据采集及传输也有借鉴意义。
4 结束语
充分利用了TMS320DM6446处理器高运算能力的特点,借助DSP的易编程性成功将OMP算法进行了硬件实现,并在信号稀疏度未知的情况下仍然较好地进行了重建音频信号。
在信号的选择上,先采用了特定信号(单个或多个频率正弦曲线组成的周期性信号)在硬件平台进行了算法验证,取得了良好的处理结果。
在此基础上,还提出了一套OMP算法的实现方案,利用其对音频信号进行了测量及重建,并将重建结果与原始信号进行对比。
CS理论目前还处于发展阶段,实际的应用价值有待挖掘。
率先将OMP算法应用
于硬件开发平台上进行验证,获得了良好的运行结果,对OMP算法的实际应用具有参考意义。
参考文献
[1]石光明,刘丹华,高大化,等.压缩感知理论及其研究进展[J].电子学报,2009,37(5):1070-1081.
[2]TROPP J,GILBERT A.Signal recovery from random measurements via orthogonal matching pursuit[J].IEEE Transactions on Information Theory,2007,53(12):4655-4666.
[3]BARANIUK R.A lecture on compressive sensing[J].IEEE Signal Processing Magazine,2007,24(4):118-121.
[4]CANDéS E,TAO T.Near optimal signal recovery from random projections:Universal encoding strategies[J].IEEE Transactions on Information Theory,2006,52(12):5406-5425.
[5]CANDéS E,ROMBERG J,TAO T.Stable signal recovery from incomplete and inaccurate measurements[J].Communications on Pure and Applied Mathematics,2006,59(8):1207-1223.
[6]MALLAT S,ZHANG Z.Matching pursuit with time- frequency dictionary[J].IEEE Trans.Signal Processing,1993,41(12):3397-3415. [7]NEEDELL D,VERSHYNIN R.Uniform uncertainty principle and signal recovery via regularized orthogonal matching pursuit[J].Found Comput.Math,2009,9(3):317-334.
[8]NEEDELL D,TROPP J.CoSaMP:Iterative signal recovery from incomplete and inaccurate samples[J].Applied and Computational
Harmonic Analysis,2009,26(3):301-321.
[9]DAI W,MILENKOVIC O.Subspace pursuit for compressive sensing signal reconstruction[J].IEEE Transactions on Information Theory,2009,55(5):2230-2249.。