一种基于dsp的定点化实时降噪方法

文档序号:10553995阅读:569来源:国知局
一种基于dsp的定点化实时降噪方法
【专利摘要】本发明涉及一种基于DSP的定点化实时降噪方法分,其为三个部分,第一部分为通过产生白噪声对次级通道进行辨识;第二部分为对浮点算法进行定点化处理;第三部分为通过利用扬声器产生反噪声来抵消外界噪声。本发明针对单频噪声和窄带噪声进行降噪处理,能够在C55x系列DSP平台上达到实时性;而且通过对浮点算法进行定点化处理,大大提高了在DSP平台上的运算速度;通过提高采样率,并能够对最高7khz的高频噪声进行降噪,能够适应噪声可能存在的变化,鲁棒性强。
【专利说明】
一种基于DSP的定点化实时降噪方法
技术领域
[0001] 本发明涉及一种基于DSP的定点化实时降噪方法,用于信号处理、音频处理、噪声 控制。
【背景技术】
[0002] 在科技迅猛发展的今天,人民在享受着现代科技给人类带来的种种便利之时,也 面临着严重的污染问题,在这些污染中,噪声污染是直接危害人们身心健康的污染源之一。 各种场合,如工业生产过程、日常生活工作环境、实验室环境等,均存在声音噪声,在某些场 合甚至十分严重。这些噪声对长期近距离接触设备的工作人员不利,对其生理和心理健康 带来严重危害,听力下降,易于疲劳,注意力下降,生产效率降低。因此,在噪声越来越严重 而人们越来越追求身体健康与生活质量的情况下,对噪声的降低,在理论研究和工程实践 中都将具有广泛的研究价值和广阔的市场前景。
[0003] 嵌入式平台以其便携性、功能的特定性在商业产品领域有很大的优势。常用的嵌 入式平台有ARM、DSP、FPGA等,每一种平台都有其独特的优势。DSP针对数字信号处理和图像 处理很有优势,其内部集成一些硬件的运算器,并且可以进行流水线的指令处理,实现一定 程度的并行计算,而且DSP成本较低,开发方便。随着数字信号处理技术的发展,DSP在音频 处理上收到了广泛的应用。体积小、便于设计和控制的主动噪声控制已经能够实现较好的 降噪效果。当前的降噪算法,许多都存在功能性和实时性之间的矛盾,如何缓和这种矛盾, 在满足功能性的前提下能够在嵌入式平台上达到实时降噪已成为当前迫切需要解决的问 题。
[0004] 任何一个声学系统包括声源、传播途径和受者3个环节,控制噪声应从这三个方面 进行。目前降噪的方法主要可以被动降噪方法和主动降噪方法。
[0005] 被动降噪可以分为减震噪声、吸音噪声和隔音噪声这三种处理方法。它是利用物 理特性将外部噪声与耳朵隔绝开,主要通过隔声材料阻挡噪声,对高频率声音非常有效,一 般可使噪声降低大约为15_20dB。这种方法原理简单,降噪成本低,但效果比较逊色,且由于 使用了高密度的隔声材料,耳机较重佩戴不舒服。但却没有办法来中和噪声达到安静的聆 听效果。被动降噪对于高频信号的隔绝效果好,比如公路旁边的隔音板。但是,对于小空间 的低频噪声来说,像空调工作噪声、飞机发动机噪声等噪音则效果大打折扣。因而现在对于 噪声控制的研究主要集中在主动降噪方面。
[0006] 对于主动降噪,是根据2个声波相消性干涉或声波辐射抑制的原理,通过人为地制 造1个控制声源(次级声源),使其发出的声音与原来的噪声源(初级声源)辐射噪声大小相 等、相位相反,使两者作用结果互相抵消,从而达到降噪的目的。
[0007] 现有的文献:【1】李欣,冯燕,冯勇.基于FPGA自适应有源降噪耳机系统的设计[J]. 电声技术,2008,32(4):72-75.中,研究了??64可以实现快速并行计算,作者提到可以针对 400-600HZ的低频窄带噪声进行有效降噪,满足实时要求。但是作者是在FPGA平台上实现该 算法,其硬件成本高,开发周期长,这也是不得不考虑的问题。【2】Roy T K,M〇rShed M.Active noise control using filtered-xLMS and feedback ANC filter algorithms [C]//Advances in Electrical Engineering(ICAEE),2013International Conference 〇11.1£££,2013:7-12.中,使用反馈滤波1-最小均方算法$乂11^)(?虽然可以使设备简单,但 由于反馈结构需要误差噪声来驱动,所以降噪后的残余噪声不能完全消除【3】Tan L,Jiang J.Active noise control using the filtered-x rls algorithm with sequential updates[J].Engineering Technology Opens the Door to a World of Opportunity, 2009:29.中,使用滤波-x-最小二乘算法(FXRLS),将最小二乘准则,加入次级通道补偿,同 时进行自适应降噪。该算法查找全局最优解,有很好的降噪效果,但计算量较大,无法满足 实时降噪要求。【4】Amir N.Active acoustic noise reduction system:US,US 7317801 B1.2008.中,采用前馈滤波-X-最小均方算法(FXLMS),并采用基于DSP的双麦克平台,对低 频噪声有较好的降噪效果,但是由于最高采样率只有4k,因此无法对高频噪声进行降噪。

【发明内容】

[0008] 本发明的技术解决问题:克服现有技术的不足,提供一种基于DSP的定点化实时降 噪方法,能够在DSP平台上达到实时性,大大提高了在DSP平台上的运算速度;而且通过对浮 点算法进行定点化处理,提高了采样率,并能够对最高7khz的高频噪声进行降噪,能够适应 噪声可能存在的变化,鲁棒性强。
[0009] 本发明技术解决方案:一种基于DSP的定点化实时降噪方法,实现步骤如下:
[0010] 步骤1中,采用自适应方法,使用基于最小均方算法(LMS)的浮点算法,通过DSP平 台产生白噪声,并通过抵消扬声器输出,对次级通道进行辨识,得到次级通道浮点型系数; 所述次级通道指产生声音信号并通过抵消扬声器输出,到通过误差麦克风采集并获得声音 信号的物理通道;
[0011 ]步骤2,选择适当的Qn格式定标方法对浮点算法定点化。首先选用Q15格式定标方 法,将步骤1浮点算法中的浮点数乘以215转换成整型数,然后对浮点算法中的加减乘除运算 进行定点化改造得到定点算法,用得到的定点算法通过DSP平台产生白噪声,并通过噪声抵 消扬声器输出,对次级通道再次进行辨识,得到次级通道的整型系数;再将该整型系数与步 骤1中的浮点型系数进行比较,以判断采用Q15格式的定点算法数据精度是否满足要求,如 果该定点算法的数据精度满足要求则定点化完成,否则采用Q16-Q31定标方法,最后确定适 当的Qn格式定标方法;
[0012] 步骤3,利用步骤2得到的次级通道的整型系数对实际的次级通道进行补偿,再利 用基于LMS算法的定点化算法进行降噪处理。
[0013] 所述步骤1通过DSP平台产生白噪声,并通过抵消扬声器输出,对次级通道进行辨 识实现如下:
[0014] (1)通过DSP平台产生白噪声u(n)并由音频编解码芯片读取,然后通过噪声抵消扬 声器发出白噪声;
[0015] (2)通过误差检测麦克风采集(1)中音响发出的声音信号,采集到的信号为v(n);
[0016] (3)利用(1)中的产生的白噪声信号计算自适应滤波器的输出信号r(n): M-i
[0017] r{n) ~ ^ sI{n)u{n - f) i = 0
[0018] 式中u(n)表示步骤(1)中的白噪声信号,Sl(n)表示自适应滤波器系数,n为当前时 刻,M为滤波器阶数,i为滤波器的阶数序号;
[0019] (4)计算误差信号e'(n):
[0020] e' (n) =v(n)-r(n)
[0021] 式中v(n)为(2)中误差检测麦克风采集到的声音信号;
[0022] (5)利用最小均方准则更新自适应滤波器的系数81(11+1):
[0023] si(n+l) = si(n)+iie' (n)u(n-i ),i = l,...,M-l [0024] 其中:y为迭代步长;
[0025] (6)判断迭代次数是否大于设定的T次,当迭代次数大于T时,停止迭代,完成对次 级通道的辨识,此时就得到了次级的系数。
[0026]所述步骤1中得到次级通道浮点型系数为30阶。
[0027] 所述步骤 1 中 T取 5000-10000。
[0028] 所述步骤2中选择适当的Qn格式定标方法对浮点算法定点化的具体过程如下: [0029] (1)首先选择Q15格式定标方法;
[0030] (2)将已知的浮点数用整型数表示,用15位表示浮点数的小数部分。换算公式为X15 = (int)X*215,其中X为浮点数,X15是采用Q15格式的整型数,如果采用其它格式的Qn格式定 标方法,则用n位表示浮点数的小数部分,换算公式为X n=(int)X*2n,其中X为浮点数,Xn*X 对应的Qn格式的整型数;
[0031 ] (3)对浮点算法中的加减乘除运算进行定点化改造
[0032] xl,x2均为已知的浮点数,x3为未知的浮点数,xl,x2的Q15格式定点数分别为ql, q2,q3,则由(2)得到ql,q2的值分别为:ql = xl*215,q2 = x2*215;
[0033] 对于下列计算式:
[0035]进行定点化改造之后,对应的计算式为:
[0037] 对浮点算法定点化时,加减法的运算规则不变,乘法运算时要将乘积除以215,而除 法运算时要将被除数乘以2 15,由于对215进行乘除运算均可以用移位运算替代,因此可以大 大加快运算速度;
[0038] (4)用定点化的算法对次级通道再次进行辨识,得到次级通道的整型系数;
[0039] (5)判断数据精度是否满足要求
[0040]采用Qn格式定标方法时,如果次级通道的整型系数除以2"后与浮点系数的误差范 围为-0.003-0.003,则数据精度满足要求,定点化完成;否则使用Q16-Q31格式定标方法,然 后返回步骤(2)。
[0041 ]所述步骤4进行降噪处理的具体实现方法为:
[0042] (1)由音响输出噪声并通过噪声检测麦克风采集噪声信号,采集到的值为x(n);
[0043] (2)利用采集的噪声信号计算需要的反噪声信号并利用抵消扬声器发出,计算公 式为: -1
[0044] yijr) = ^w^xin - i) i=Q
[0045] 式中x(n)为(1)中采集的噪声信号,Wl(n)为自适应降噪滤波器在n时刻的系数,N 为自适应降噪滤波器的阶数;
[0046] (3)由误差麦克风采集声音抵消后的误差信号e(n);
[0047] (4)计算利用(1)中采集到的噪声信号经过次级通道进行补偿后的值,计算公式 为: M-1
[0048] X'(/?) =. ^ q - .0 i=0
[0049] 式中Cl(n)为次级通道的整型系数;
[0050] (5)利用最小均方准则更新自适应降噪滤波器的系数,公式如下:
[0051 ] wi(n+l) =wi(n)_ii*e(n)*x'(n_i ),i = 0,...,N_l
[0052]式中e(n)为(3)中采集得到的声音抵消后的误差信号,y为迭代步长,x'(n)为(4) 中噪声信号经过次级通道进行补偿后的值,通过不断调节自适应滤波器的系数,对外界噪 声进行实时降噪处理。
[0053]本发明与现有技术相比的优点在于:
[0054] (1)使用定点化方法,满足实时性
[0055] 现有的DSP处理器中,无论从运算速度或是设备成本看,定点处理器较浮点处理器 都有一定的优势,因此本发明采用了C55x系列的16bit定点DSP C5509。但是由于定点DSP处 理浮点数据比较慢的特点,因此本发明对浮点算法进行了定点化处理。定点化可以直接着 手进行,也可以在完成浮点算法的基础上对降噪程序进行改造,本发明采用后者。
[0056]本发明把浮点运算转化为定点运算,极大地提高了运算速度,满足在C55x系列DSP 上运行的实时性。定点化之后,由于DSP平台运算速度较快,因此可以通过提高采样率对高 频噪声降噪。
[0057] (2)基于LMS算法改进
[0058] FXLMS算法是利用最小均方准则针对降噪系统设计的算法,其中加入了次级通道 的补偿。本发明基于DSP平台并采用两套拾音装置分别对外界噪声和降噪后的误差进行采 集,可以使噪声降到最小甚至完全消除。
[0059] (3)使用自适应数字滤波器
[0060]本发明采用自适应降噪算法,根据噪声存在的变化自适应地调节降噪滤波器的参 数,对于噪声可能存在的变化有较强的适应性。
【附图说明】
[0061 ]图1为本发明的实现流程图;
[0062] 图2为本发明中次级通道辨识流程图;
[0063] 图3为本发明中针对浮点程序的定点化处理流程;
[0064] 图4为本发明采用浮点算法与定点算法测得的次级通道对比图;
[0065] 图5为本发明中降噪的执行流程图。
【具体实施方式】
[0066]如图1所示,首先用浮点算法对次级通道进行辨识,然后对浮点算法进行定点化, 再用定点算法对次级通道继续辨识,通过对比次级通道的数据判断定点化的精度是否符合 要求;最后,利用LMS算法对音响发出的噪声进行降噪处理。
[0067] (1)次级通道辨识
[0068]次级通道指产生声音信号并通过扬声器输出,到通过拾音装置采集并获得声音信 号的物理通道,具体指扬声器中的D/A转换器、重构滤波器、功放,扬声器到拾音装置声器之 间的通道,拾音装置中的误差传声器、前置放大、抗混叠滤波器以及A/D转换器。本发明中设 定次级通道为30阶,为了更准确地辨识次级通道,本发明根据最小均方算法进行运算。
[0069] 如图2所示,本发明中次级通道辨识如下
[0070] 第一步,通过DSP平台产生白噪声y(n)并由音频编解码芯片aic23读取,然后通过 抵消扬声器发出白噪声u(n);
[0071] 第二步,通过噪声检测麦克风采集第一步中音响发出的声音信号v(n);
[0072]第三步,利用第一步中的白噪声信号计算自适应滤波器的输出信号r(n):
[0073] r(n) = (n)u(n ~ i) ./ = 0
[0074] 式中u(n)表示步骤(1)中的白噪声信号,Sl(n)表示自适应滤波器系数,n为当前时 刻,M为滤波器阶数,i为滤波器的阶数序号;
[0075]第四步,计算误差信号e'(n):
[0076] e' (n) =v(n)-r(n)
[0077] 式中v(n)为第二步中误差检测麦克风采集到的声音信号;
[0078] 第五步,利用最小均方准则更新自适应滤波器的系数Sl(n+1):
[0079] si(n+l) = Si(n)+lie '(n)u(n-i ),i = l,...,M_l
[0080] 其中:迭代步长y取值0.05,滤波器阶数M取30阶;
[0081 ]第六步,判断迭代次数是否大于T(T取10000)次,当迭代次数大于T时,停止迭代, 完成对次级通道的辨识,此时就得到了次级通道的系数。
[0082] (2)选择适当的定标方法对浮点算法定点化处理
[0083]采用定点数表示实际的浮点数,浮点数和定点数的转换公式如下:
[0084]浮点数(x)转换为定点数:Xn=(int)X*2n [0085]定点数(Xn)转换为浮点数:X=(float)Xn*2-n
[0086] 不同的n格式所表示的数的范围不同,精度也不同。n越大,数值范围越小,但精度 越高。例如,Q0(n = 0)的数值范围是-32768到+32767,其精度是1,而Q15的数值范围为-1到 0.9999695,精度为1/32768 = 0.00003051,因此数据范围和精度是一对矛盾。
[0087] 如图3所示,本发明中针对浮点程序的定点化处理流程如下:
[0088]第一步,定标方式选取为Q15;
[0089]第二步,利用公式X15=(int)X*215将已知的浮点数据转换为定点数据。所谓已知 的数据是指能直接采集到的输入信号(如采集麦克风采集到的噪声信号,误差麦克风采集 到的误差信号),以及一些需要设定的参数(如迭代步长y)。
[0090] 第三步,将需要计算才能得到的浮点数据求取公式进行定点化改造
[0091] 例如浮点算法中e'(n)的求解公式为:e'(n) = v(n)-r(n),定点化后e'(n)的求解 公式为e'(11)15 = ¥(11)15-1'(11)15,¥(11)15为误差检测麦克风采集的声音信号¥(11)的定点化形 式,可由第二步求得,即为反噪声信号r(n)的定点化形式。
[0092] 第四步,用定点化算法对次级通道进行再次辨识并测得次级通道的整型系数
[0093] 通过DSP平台产生白噪声,并通过噪声抵消扬声器输出,对次级通道进行辨识,得 到次级通道整型系数
[0094] 第五步,判断数据精度是否满足要求
[0095] 将第四步中所测的次级通道的系数与浮点算法得到的系数进行比较。如果次级通 道的整型系数除以215后与浮点系数的误差在-0.003到0.003之间,则数据精度符合要求,定 点化结束。如果不满足这个条件就需要改变定标格式对定点化进一步改进,用Q16-Q31格式 定标方法,然后返回步骤(2)。
[0096] 如图4所示,图中实线表示浮点算法得到的次级通道的系数。由于定点算法中次级 通道采用的是Q15格式,因此虚线是定点算法学习到的系数除以2 15之后的数值,次级通道设 定为30阶,米样率为1kHz。可以发现,两条曲线几乎重合,它们的最大误差是0.0019,在-0.003到0.003之间。因此采用Q15定标方法的定点算法后,精度满足要求。
[0097] (3)利用扬声器产生反噪声来抵消外界噪声
[0098] 定点算法的精度满足要求时,即开始进行降噪的阶段。对于外界单频与窄带噪声, 通过抵消扬声器发出反噪声,可以达到良好的降噪效果。
[0099] 如图5,第一步,由音响输出噪声并通过噪声检测麦克风采集该噪声信号。
[0100] 第二步,利用第一步采集的噪声信号计算需要的反噪声信号y(n),并利用抵消扬 声器发出,其求取公式为: A -1
[0101 ] v(n) - ^ w^xin - i) .!:=.0
[0102]式中x(n)为在n时刻采集到的外界噪声,Wl(n)为自适应降噪滤波器在n时刻的系 数,N为自适应降噪滤波器的阶数。
[0103]第二步,由误差麦检测克风米集误差噪声彳目号e(n);
[0104] 第四步,计算利用第一步中采集到的噪声信号经过次级通道进行补偿后的值,其 求取公式为: M -1
[0105] 尤' (/?) :=. I q (/?)尤(/? - /). i = 0,
[0106] 式中Cl(n)为(2)得到的次级通道的系数,x(n)为在n时刻采集到的外界噪声,11为 该自适应滤波器系数。
[0107] 第五步,利用最小均方准则更新自适应降噪滤波器的系数^(1!),其求取公式如 下:
[0108] wi(n+l) =wi(n)_ii*e(n)*x,(n_i ),i = 0,...,N_l
[0109] 式中e(n)为第三步中采集得到的误差噪声信号,i为滤波器阶数序号,y为迭代步 长,x'(n)为第四步中得到的噪声信号的补偿值。通过不断调节自适应滤波器系数滤就可以 对外界噪声进行实时降噪处理。
[0110]提供以上实施例仅仅是为了描述本发明的目的,而并非要限制本发明的范围。本 发明的范围由所附权利要求限定。不脱离本发明的精神和原理而做出的各种等同替换和修 改,均应涵盖在本发明的范围之内。
【主权项】
1. 一种基于DSP的定点化实时降噪方法,其特征在于实现步骤如下: 步骤1,采用自适应方法,使用基于最小均方算法(LMS)的浮点算法,通过DSP平台产生 白噪声,并通过抵消扬声器输出,对次级通道进行辨识,得到次级通道浮点型系数;所述次 级通道指产生声音信号并通过抵消扬声器输出,到通过误差麦克风采集并获得声音信号的 物理通道; 步骤2,选择适当的化格式定标方法对浮点算法定点化,首先选用Q15格式定标方法,将 步骤1浮点算法中的浮点数乘W21S转换成整型数,然后对浮点算法中的加减乘除运算进行 定点化改造得到定点算法,用得到的定点算法通过DSP平台产生白噪声,并通过噪声抵消扬 声器输出,对次级通道再次进行辨识,得到次级通道的整型系数;再将该整型系数与步骤1 中的浮点型系数进行比较,W判断采用Q15格式的定点算法数据精度是否满足要求,如果该 定点算法的数据精度满足要求则定点化完成,否则采用Q16-Q31定标方法,最后确定合适的 化格式定标方法; 步骤3,利用步骤2得到的次级通道的整型系数对实际的次级通道进行补偿,再利用基 于LMS算法的定点化算法进行降噪处理。2. 根据权利要求1所述的基于DSP的定点化实时降噪方法,其特征在于:所述步骤1通过 DSP平台产生白噪声,并通过抵消扬声器输出,对次级通道进行辨识实现如下: (1) 通过DSP平台产生白噪声u(n)并由音频编解码忍片读取,然后通过噪声抵消扬声器 发出白噪声; (2) 通过误差检测麦克风采集(1)中音响发出的声音信号,采集到的信号为v(n); (3) 利用步骤(1)中的产生的白噪声信号计算自适应滤波器的输出信号r(n):式中u(n)表示步骤(1)中的白噪声信号,si(n)表示自适应滤波器系数,n为当前时刻,M 为滤波器阶数,i为滤波器的阶数序号; (4) 计算误差信号e'(n): e '(n) =v(n)-r(n) 式中v(n)为步骤(2)中误差检测麦克风采集到的声音信号; (5) 利用最小均方准则更新自适应滤波器的系数si(n+l): si(n+l) = si(n)+]ie '(n)u(n-i), i = 1,. . . ,M-I 其中:y为迭代步长; (6) 判断迭代次数是否大于设定的T次,当迭代次数大于T时,停止迭代,完成对次级通 道的辨识,此时就得到了次级的系数。3. 根据权利要求1所述的基于DSP的定点化实时降噪方法,其特征在于:所述步骤1中得 到次级通道浮点型系数为30阶。4. 根据权利要求2所述的基于DSP的定点化实时降噪方法,其特征在于:所述步骤(6)中 T取5000-10000。5. 根据权利要求1所述的基于DSP的定点化实时降噪方法,其特征在于:所述步骤2中选 择适当的化格式定标方法对浮点算法定点化的具体过程如下: (1)首先选择Q15格式定标方法; (2) 将已知的浮点数用整型数表示,用15位表示浮点数的小数部分。换算公式为Xis = (int)X巧1S,其中X为浮点数,Xis是采用Q15格式的整型数,如果采用其它格式的化格式定标 方法,则用n位表示浮点数的小数部分,换算公式为Xn=Qnt)料2%其中X为浮点数,品为X对 应的化格式的整型数; (3) 对浮点算法中的加减乘除运算进行定点化改造 Xl,x2均为已知的浮点数,x3为未知的浮点数,Xl,x2的Qis格式定点数分别为ql,q2,q3, 则由(2)得到ql,q2的值分别为:ql=xl巧I5,q2 = x2*2i5, 对于下列计算式: 进行.(4) 用定点化的算法对次级通道再次进行辨识,得到次级通道的整型系数; (5) 判断数据精度是否满足要求 采用化格式定标方法时,如果次级通道的整型系数除W2D后与浮点系数的误差范围为- 0.003-0.003,则数据精度满足要求,定点化完成;否则使用Q16-Q31格式定标方法,然后返 回步骤(2)。6.根据权利要求1所述的基于DSP的定点化实时降噪方法,其特征在于:所述步骤4进行 降噪处理的具体实现方法为: (1) 由音响输出噪声并通过噪声检测麦克风采集噪声信号,采集到的值为x(n); (2) 利用采集的噪声信号计算需要的反噪声信号并利用抵消扬声器发出,计算公式为:式中x(n)为(1)中采集的噪户信巧,Wi (n j刃目抵应降噪滤波器在n时刻的系数,N为自适 应降噪滤波器的阶数; (3) 由误差麦克风采集声音抵消后的误差信号e(n); (4) 计算利用(1)中采集到的噪声信号经过次级通道进行补偿后的值,计算公式为:式中ci(n)为次级通道的整型系数; (5) 利用最小均方准则更新自适应降噪滤波器的系数,公式如下: wi(n+l) =wi(n)-]i*e(n)*x'(n_i), i = 0,. . . ,N-I 式中e(n)为(3)中采集得到的声音抵消后的误差信号,ii为迭代步长,x'(n)为(4)中噪 声信号经过次级通道进行补偿后的值,通过不断调节自适应滤波器的系数,对外界噪声进 行实时降噪处理。
【文档编号】G10K11/178GK105913836SQ201610214190
【公开日】2016年8月31日
【申请日】2016年4月7日
【发明人】虞安波, 凌强
【申请人】虞安波
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1