自适应谐波检测

2024-07-19

自适应谐波检测(精选8篇)

自适应谐波检测 第1篇

电力有源滤波器实时检测电网的谐波电流并进行补偿,可有效减少电网中的谐波电流[4]。谐波电流的准确、实时检测是电力有源滤波器,高效滤除谐波的关键,然而电网的随机性、复杂性干扰着谐波电流的准确、实时测量。国内外专家学者提出了不同的谐波电流检测方法,基于FFT的频域傅里叶分析方法[5],基于小波变换法[6],基于神经网络的检测方法[7],还有基于瞬时无功理论的检测方法[8]。FFT算法存在严重的频谱泄漏和栅栏现象,故谐波电流的检测精度达不到要求,且计算量较大; 基于小波变换和神经网络检测算法,结构较为复杂; 而基于瞬时无功功率理论的法中使用PLL获得基波电压的相位,并使用低通滤波器,这两个过程均会产生一定的延时。本文采用非线性最小二乘法和自适应神经网络的谐波电流检测方法,通过在Matlab下的仿真,验证该方法的时效性和准确性。

1 非线性最小二乘法检测电压基波频率

在理想情况下,电网电压是频率不变的正弦波。但电压含有谐波,且基波频率在一定范围内存在波动。根据傅里叶级数理论,满足狄里赫利条件的周期信号均可分解为直流分量与幅值一定且频率为基波频率整数倍的正余弦之和[9]。

因电网中电压和电流是半波对称的,所以傅里叶级数中没有偶次谐波分量,且在平衡的三相三线制系统中,无3 的整数倍谐波。由于,电网中电压的畸变率远小于电流的畸变率,所以采用电压频率f0作为电流基波频率的参考信号。若f0已知,第m点的电压值记为vm,将采集的N个点的电压值记为1 × N的矩阵Y。

将电压分解后的傅里叶级数各谐波的系数记为X,包含的奇次谐波的个数为Nh。

若记矩阵A为

则式( 1) 近似地表示为

因矩阵A不是方阵,无法用逆矩阵解出式( 4) ,可采用A的伪逆矩阵。AAT是非奇异矩阵,傅里叶级数各谐波的系数表示为

因f0是未知的,则A也未知,解线性最小二乘法的问题就变成解非线性最小二乘法( NLS) ,将式( 5) 代入式( 4)

误差向量e表示为

当A中的f0越接近真实的电网电压频率,e的模长越小,我国的电网工频频率规定为50 Hz,并允许在0. 5 Hz内波动,将|e|2作为目标函数,在49. 5 ~ 50. 5 Hz内以0. 05 Hz作为搜索步长,以|e|2最小值时对应的频率f0作为电网电压频率。

2 自适应神经元电压相位检测

在传统的谐波电流检测算法中,大多采用PLL来获得基波电压的相位以此得到与电压同相位的参考信号。上文中非线性最小二乘法只获得了电压基波频率,要分离出基波有功和无功电流,还需要检测出基波电压的相位。因此,提出了使用自适应神经网络( Adaline)来检测电压相位。

在文中已检测出电网电压基波频率f0,将m点的电压vm近似地由WmXm表示,其中Ts为电压采用周期,Xm和Wm分别表示为

傅里叶系数Wm,作为Adaline在线训练的权值,算法不断修正Wm使得检测的电压值与实际的平方差最小。目标函数表示为

Wm采用梯度下降法调整

基波电压的相角 θ1可表示为

3 自适应神经元谐波电流检测

将第m采样点检测的电流im展开成傅里叶级数

式中Ip和Iq分别是基波有功电流和无功电流的幅值,Ts、fk分别为采样周期和k次谐波的频率。令

Zm作为自适应在线训练的权值,以误差的平方作为目标函数,即

Zm采用梯度下降法调整

基波有功电流ip可表示为

基波无功电流iq可表示为

k次谐波电流的相角 φk可表示为

则k次谐波电流ik可表示为

4 自适应智能化谐波电流检测方法

图1 是自适应智能化谐波电流检测方法的实现框图。电网总电流i减去基波有功电流ip可得到基波无功电流和各次谐波电流的总和iq+ ih; 根据有源滤波器的补偿需要,如果不需要补偿无功或者某次谐波,可选择性的将其从iq+ ih中减去,便可得到有源电力滤波器的补偿参考电流信号。

5 仿真验证

在Matlab下搭建三相全控整流电路,电源初始相位为50°,频率为50 Hz,电压为220 V,0. 2 s时电源电压相位发生突变,超前180°。三相全控整流电路的触发角为0°,直流侧负载为纯电阻,阻值R = 50 Ω。为验证本文提出方法的时效性和准确性,本文在上述电路环境下,分别使用本文提出的方法和传统的基于瞬时无功功率理论的ip- iq法获取有源电力滤波器的电流补偿参考信号。因为大多数情况下有源电力滤波器需要补偿无功和谐波电流,所以只需对比基波有功电流就能反映检测的精确性和实时性。

对比图2( a) 和图2( b) 两图可看出,PLL锁相环在电压初始相位为50°时,需> 0. 06 s的时间才能完全跟踪电压信号,而使用NLS和ANN算法只需0. 01 s便可完全跟踪电压信号。由图2( c) 和图2( d) 两图可看出,在0. 2 s发生电压相位突变180°时,PLL锁相环需要约0. 1 s,才能跟踪信号,而非线性最小二乘法在0. 02 s之内已完全跟踪。

由图3 所示,基于PLL锁相环的法在约0. 1 s才较为准确的检测出基波有功电流,而本文提出的方法在0. 02 s之内就能准确的检测出基波的有功电流。而当电压相位在0. 2 s发生180°突变时,基于PLL锁相环的ip- iq法在需要约0. 15 s才又较准确地输出基波有功电流,而本文所用方法只需0. 02 s。

6 结束语

本文提出的自适应智能谐波电流检测方法,与传统的基于瞬时无功理论的检测算法相比,算法中未使用PLL锁相环和低通滤波器,而是采用实时性更高的NLS和自适应神经网络。通过在Matlab中的仿真,对比这两种算法分别在电压初始相位不为0 和电压相位发生突变的情况下的动态响应,可看出自适应智能谐波电流检测方法能显著提高检测无功电流的实时性和精确度。

参考文献

[1]朱宁辉,白晓民,董伟杰.基于EEMD的谐波检测方法[J].中国电机工程学报,2013,33(S1):184-189.

[2]雍静,娄方桥,王一平,等.低压配电系统单相非线性负荷的谐波衰减效应研究[J].中国电机工程学报,2011,31(13):55-61.

[3]髙赐威,张亮.电动汽车充电对电网影响的综述[J].电网技术,2011,35(2):127-131.

[4]邱银锋,梁志珊,魏学良.有源电力滤波器电源直流直接控制改进方法[J].电力系统及其自动化,2012,36(24):79-83.

[5]卿柏元,滕召胜,高云鹏,等.基于Nuttall窗双谱线插值FFT的电力谐波分析方法[J].中国电机工程学报,2008,28(25):152-158.

[6]黄文清,戴瑜兴,全慧敏.基于Daubechies小波的谐波分析算法[J].电工技术学报,2006,21(6):45-49.

[7]陈淑华,付青,马桂龙,等.基于神经网络自适应预测算法的谐波检测[J].电工技术学报,2011,26(S1):200-206.

[8]关彬,崔玉龙,王圆月.基于瞬时无功功率理论的谐波检测方法研究[J].电测与仪表,2007,44(10):1-4.

自适应谐波检测 第2篇

自适应Wiener滤波改进LOG算子对激光雷达图像的边缘检测能力

LOG算子是一种经典的边缘检测算子,针对激光雷达图像含有丰富的高斯噪声和乘性噪声干扰.提出一种LOG算子的`改进方法:用二维自适应Wiener滤波代替LOG算子中Gaussian滤波.设计了自适应性算法,通过仿真可以看出,该方法有效提高了LOG算子对激光雷达图像的边缘检测能力,是一种实用、有效的方法.

作 者:孟飞 孙鹏 梁树辉 张合新 Meng Fei Sun Peng Liang Shuhui Zhang Hexin  作者单位:孟飞,孙鹏,张合新,Meng Fei,Sun Peng,Zhang Hexin(第二炮兵工程学院,西安,710025)

梁树辉,Liang Shuhui(第二炮兵装备研究院,北京,100085)

刊 名:导弹与航天运载技术  ISTIC PKU英文刊名:MISSILES AND SPACE VEHICLES 年,卷(期):2007 “”(6) 分类号:V556.6 关键词:Wiener滤波   激光雷达图像   边缘检测   LOG算子  

改进的变步长自适应谐波检测算法 第3篇

关键词:有源电力滤波器,谐波检测,自适应滤波,变步长,LMS算法,无功补偿

0 引言

近年来,随着电力电子技术的发展,各种电力电子装置广泛投入使用,其产生的谐波污染也日趋严重。常用的谐波治理方法有无源滤波器和有源电力滤波器APF(Active Power Filter)。随着对电能质量要求的提高,传统的利用无源滤波装置抑制谐波的方法已经不能满足要求。由于大功率电力电子器件的研制成功,有源滤波技术得到很大的发展,其优势也越来越明显。APF可以克服传统无源滤波装置的一些缺点,其已成为谐波补偿的重点研究方向。

APF的工作性能依赖于对谐波电流进行实时准确的检测。其中普遍采用的方法是基于“瞬时无功功率理论”的检测算法。自适应谐波检测因为计算简单并且有良好的鲁棒性和自学习能力,能对频率和相位进行精确的跟踪,在近些年得到了广泛的重视[1,2]。本文通过对自适应谐波检测理论的分析,对传统的自适应算法进行改进,通过仿真研究,证明了该方法有效地解决了收敛速度和稳态精度之间的矛盾。

1 APF的基本工作原理

APF的基本工作原理如图1所示[3]。

流过负载的周期性非正弦电流可用傅里叶级数展开为

其中,i1(t)是基波电流,包括有功电流i1p(t)和无功电流i1q(t);ih(t)是高次谐波电流。如果APF同时进行无功功率补偿,iL(t)还可以分解为

APF的基本工作原理是检测补偿对象的电压和电流,经指令电流运算电路计算得出补偿电流的指令信号,控制主电路使其输出的补偿电流ic(t)=i1q(t)+ih(t),则补偿电流与负载电流中的谐波及无功电流抵消。这时,经过补偿后的电网电流只含基波有功电流,不含谐波与无功电流,是与电网电压同频、同相的正弦波[4]。

2 自适应谐波检测原理

自适应噪声消除技术ANCT(Adaptive Noise Canceling Technology)的原理如图2所示[5]。其中,原始输入包括信号源s(n)和噪声n(n),并且信号源s(n)和噪声n(n)之间不相关。参考输入x(n)与信号源s(n)不相关,而与噪声n(n)相关。参考输入x(n)通过自适应滤波器处理得到逼近噪声n(n)的输出信号y(n)。此时,系统反馈误差信号e(n),即是对信号源s(n)的最佳估计。

图3为利用自适应噪声消除技术构建的自适应谐波检测系统[6,7]。其中,输入信号iL(n)表示非线性负载电流采样值;参考输入信号x1(n)、x2(n)分别代表由锁相环(PLL)输出的以电网电压为参考的标准正弦和余弦信号采样值;w1(n)、w2(n)分别代表参考输入信号x1(n)、x2(n)的权值;y(n)为自适应滤波器的输出信号;e(n)为自适应滤波器的反馈误差信号。

所以有

其中,f代表锁相环电路产生的信号频率;ΔT表示采样间隔。

自适应滤波器的输出y(n)为

其中,w(n)和X(n)分别为权向量和参考输入向量。

系统的反馈误差信号e(n)为

e(n)包括总畸变电流信号ic(n)和实际跟踪误差信号c(n)。

由最小均方(LMS)算法,自适应滤波器的权向量w应沿滤波器的均方误差梯度塄E[e2(n)]下降方向变化,达到最佳值w*时,均方误差E[e2(n)]达到最小。在实际计算中,用瞬时均方误差梯度塄e2(n)代替塄E[e2(n)],得到权值的迭代公式:

其中,μ为计算步长。

在电网谐波检测中,将iL(n)中基波有功分量i1p(n)视为期望信号。以电网电压为参考信号,利用误差反馈信号e(n)控制权值的迭代过程,使其逐渐逼近最佳值w*。此时,输出信号y(n)也在跟踪i1p(n)的变化,则系统的瞬时反馈误差信号e(n)就是APF的输出补偿电流信号[8]。

3 改进的自适应谐波检测算法

传统的LMS算法在实际应用中效果不是很理想,这是因为传统的定步长算法克服不了收敛速度和稳态误差之间的矛盾。在系统收敛的前提下,较大的计算步长虽然会加快系统的收敛速度,但也会产生较大的稳态误差;反之,较小的计算步长虽然会产生较小的稳态误差,但系统的收敛速度会很慢。目前看来,采用变步长LMS算法是一种比较好的解决方案。当权值远离最佳值时,通过增大步长加快系统的收敛速度;当权值接近最佳值时,通过减小步长获得较小的稳态误差[9,10]。

文献[11]采用了一种变步长LMS算法,利用计算步长与瞬时反馈误差建立关系。其中,步长的更新式为

参数a主要控制权值的收敛速度;参数b同时控制算法的失调和收敛时间。

该算法的步长更新标准直接来自受噪声污染的瞬时反馈误差,使得算法易受噪声信号的干扰[8,12,13]。系统在接近最佳权值时,实际跟踪误差c(n)近似为0,但由于噪声的存在,计算步长仍较大。因此,这种变步长算法适用于噪声较小,即高信噪比的情况下。

通过对各种变步长算法的分析,本文采用误差信号的均值估计来控制步长及权值的更新。误差信号的均值估计为

其中,λ>1,用来调整当前信号在对系统的影响中所占比重。

式(13)实际上是对误差信号序列添加一个滑动时间窗,并不断对窗内的数据进行均值计算,可以用来降低由于利用瞬时均方误差梯度代替均方误差梯度所产生的噪声。应用在电网谐波检测中,目的在于将总畸变电流信号从反馈误差信号e(n)中滤除,用输出信号y(n)与电流基波有功分量的差值,即实际跟踪误差信号c(n)来控制步长及权值的更新。

用误差信号的均值估计代替反馈误差来控制步长更新,得到步长的更新式:

其中,0

在自适应系统的初始阶段,系统反馈误差信号e(n)较大,使得其均值估计p(n)也较大,产生了较大的步长;当接近最佳权值时,p(n)逐渐变小,产生较小的步长。由于较大的初始步长,产生了快速收敛,同时由于后期步长较小,使得在最佳权值附近产生较小的失调。

在电网负载电流中谐波含量有时会较大,使得负载电流信号的信噪比较低。由于LMS算法在提取弱信号时收敛较慢,而在APF中谐波检测是一个实时的信号处理过程,系统的收敛速度是一个非常关键的因素。考虑上述原因,在传统LMS算法的权值迭代过程中加入动量,进一步提高系统的收敛速度。相应的权值迭代公式为

其中,k为动量因子。在权值的迭代过程中加入动量后,可以加快自适应过程的收敛速度。如果在上一次更新中权值的变化量较大,则相应的动量也较大,权值的修正量也随之增加,从而加快了系统的收敛速度。

由于在权值迭代过程中加入动量可能引起系统的失调,需要对算法的收敛性进行分析。

Δw(n)=in=-鄱11kiμ(n-i)p(n-i)X(n-i)+kn-1Δw(0)(17)

由式(17)可知,在传统LMS算法的收敛条件下,只有当时,系统收敛。此时需要满足k2<1。k的选取对系统的收敛速度和稳态失调均有较大影响,应综合考虑。

另外,为了保证系统的稳定性,并使得算法能够收敛,在迭代过程中需要对步长进行限幅[15]:

μmax的选取应保证算法的稳定性,μmin的选取应兼顾系统的收敛速度和稳态失调。

4 仿真结果分析

为检验该谐波检测算法的有效性,应用Matlab软件进行仿真。电网相电压为220 V/50 Hz,谐波源为三相全控桥式整流电路,带感性负载,L=20 m H,R=50Ω,触发角α=30°,以A相电流为例。

将本文算法与定步长算法和原始变步长算法进行比较。传统定步长算法的步长μ取0.01。通过多次仿真试验,选取a=0.9,b=4×10-4,λ=100,k=0.3。选取μmax为0.1,μmin为0.005。为了保证较快的响应速度,将μ的初值选为0.1。

图4为负载电流波形,由于存在谐波电流,导致负载电流发生畸变。经过谐波分析,得到信号的THD=30.67%,信噪比较低。

图5为检测出的负载电流中的基波有功电流的波形。采用传统定步长LMS算法,当μ=0.01时,系统在第3周期才趋于稳定。采用变步长LMS算法后,系统在第2周期就处于稳态。与原始的变步长算法相比,改进的变步长算法的收敛速度略有提高。

图6为检测出的基波有功电流信号的频谱。传统的LMS算法检测出的信号THD=2.55%,原始的变步长算法检测出的信号THD=1.79%,而改进后的变步长算法检测出的信号THD=0.93%。在LMS算法中,由于利用瞬时均方误差梯度代替均方误差梯度,梯度估计中存在噪声,使得权值不是收敛于最佳值,而是在最佳值附近波动。采用误差的均值估计控制权值的更新,可以降低梯度估计中噪声的影响,提高系统的稳态精度。

5 结论

自适应谐波检测 第4篇

随着大量非线性负载 (如变速驱动器、医疗设备和不间断电源等) 的投入使用, 产生的谐波污染严重影响着电力系统及其设备的安全、稳定运行[1]。为了能有效地治理谐波污染, 首先必须对谐波进行实时、精确的检测。目前谐波电流检测方法很多, 主要有基于瞬时无功功率理论[2,3]、FFT变换[4]和ip-iq理论[5], 虽然这些方法丰富了谐波电流检测理论, 但是它们本身固有的缺点使其应用在一定程度上受到限制。

由于基于自适应滤波理论的自适应谐波电流检测方法对电网参数的变化具有自适应性、易于实现, 且对单相、三相电力系统具有通用性等优点, 因而越来越受到国内外研究人员的广泛关注。目前自适应谐波电流检测技术主要有基于自适应噪声对消技术 (ANCT) 原理[6,7,8,9,10,11,12,13,14,15,16,17,18]的谐波电流检测和基于Adaline模型的谐波电流检测[19,20,21,22,23,24,25]。虽然文献[7-11]是基于ANCT与神经元结合的谐波电流检测模型, 但是文献[12]已经证明了与文献[6, 13-18]的模型是一致的, 因此本文将其归类为ANCT模型。然而, 至今尚无ANCT和Adaline这两种谐波电流检测模型在检测性能、区别与联系和各自的适用范围的比较分析, 从而限制了自适应谐波电流检测理论的发展与工程应用。

因此, 本文对上述两种自适应谐波电流检测模型在同种自适应算法的条件下, 就检测性能 (稳态误差、收敛速度和计算量) 做了详细的对比分析, 并讨论了两种模型各自的缺陷及其适用的范围。同时, 也讨论了最小均方 (LMS) 和递归最小二乘 (RLS) 两种自适应算法对同种模型的检测性能的影响。

1 两种自适应谐波电流检测模型

1.1 模型一:基于ANCT的谐波电流检测模型

假设电源电压us (t) 为标准的正弦电压us (t) =sin (ωt) , ω为角速度 (ω=2πf, f为频率) 。令流过非线性负载的电流为iL (t) , 其离散值iL (n) 的傅里叶级数展开式为

其中:Ts为采样间隔;n为采样时刻;N为最高谐波次数;i1p (n) 、i1q (n) 和ih (n) 分别为基波有功电流、基波无功电流和谐波电流;i1 (n) 和if (n) 分别为基波电流和畸变电流 (包括基波无功电流和谐波电流) 。

基于ANCT的谐波电流检测模型如图1所示。其中, 负载电流iL (n) 作为主输入, 参考输入为基波频率的单位正、余弦信号, 即X (n) =[sin (ωn Ts) , cos (ωn Ts) ]T, 一般由锁相环 (PLL) 从电源电压su (t) 处获得, 记为X (n) =[x1 (n) , x2 (n) ]T, 其对应的权系数为W (n) =[w1 (n) , w2 (n) ]T, T为数学转置运算符号。

由三角函数的正交特性知道, x1 (n) , x2 (n) 与i1 (n) 全相关, 与ih (n) 不相关, 从而满足ANCT的条件。因此, 基于ANCT的谐波电流检测是采用某种自适应算法, 不断地调节滤波器的权系数W (n) 使得当自适应算法收敛到稳态阶段时, 滤波器的输出y (n) =WT (n) X (n) 逼近基波电流i1 (n) , 从而负载电流iL (n) 减去滤波器输出y (n) 得到的 逼近真实的谐波电流ih (n) , 实现谐波电流的检测。若检测谐波电流的同时还要检测基波无功电流, 则只需将参考输入变为X (n) =sin (ωn Ts) , 则此时的检测输出 逼近真实的畸变电流if (n) , 实现畸变电流 (包括谐波和基波无功电流) 的检测。

1.2 模型二:基于Adaline模型的谐波电流检测

根据三角函数的特点, 可将式 (1) 重写为

其中, I k, ψk分别为第k次谐波的幅值和相位即

基于Adaline模型的自适应谐波检测原理框图如图2所示。其中, 输入信号为Xn) [cos (= (ωnTs) , sin (ωn Ts) , …, cos (NωnTs) , sin (NnTωnTs) ]T, 对应的权系数为W (n) =[a1, b1, …, aN, bN]T, Adaline模型的输出为

y (n) =WT (n) X (n) 。

因此, 基于Adaline模型的谐波电流检测是采用某种自适应算法, 自动调节权系数为W (n) , 当自适应算法收敛到稳态阶段时, 使得Adaline模型的输出y (n) 逼近负载电流Li (n) 的真实值, 从而权系数W (n) 逼近式 (2) 中的傅氏系数, 实现任意k次谐波电流检测。

2 两种自适应谐波检测模型的分析

2.1 同种自适应算法下两种模型的性能比较

根据自适应滤波理论[26], 本节对上述两种自适应谐波电流检测模型在相同自适应算法的条件下, 就稳态误差、收敛速度和计算量等性能指标进行详细的分析, 并讨论两种模型各自的缺陷及其适用的范围。

1) 稳态误差

稳态误差是指算法进入稳态之后谐波的检测值与其理论值的差的大小。在同种算法的条件下, 根据多重线性回归模型的原理[26], 模型二的权系数个数与负载电流的傅氏系数个数2N相等, 属于临界拟合模型, 从而模型二的检测结果可以无误差地逼近其理论值;而模型一属于欠拟合模型。因此, 在同种算法的条件下模型二的稳态误差比模型一的稳态误差小, 且理论上模型二的稳态误差为0。

2) 收敛速度

收敛速度是指算法从开始到进入稳态所用的时间, 时间越短, 表明收敛速度越快, 反之越慢。由于收敛速度主要取决于算法本身的特性, 因此在同种算法的条件下两种模型的收敛速度无明显区别。

3) 计算量

模型一用于谐波电流检测时其权系数的个数是2, 用于检测畸变电流时其权系数的个数是1, 而模型二的权系数的个数为2N。因此在同种算法的条件下, 模型二的计算量大概是模型一的N倍或者2N倍。

4) 缺陷与适用范围

模型一:

A、如前所述, 模型一不仅可以实现谐波和畸变电流检测, 理论上也可以实现任意次谐波电流检测, 即:假设检测第k次谐波, 则只需将参考输入变为X (n) =[cos (kωn Ts) , sin (kωn Ts) ]T, 从而滤波器输出y (n) =WT (n) X (n) 为第k次谐波电流的检测值。然而, 谐波次数越高其占负载电流中的比重就越小, 则用模型一实现第k次谐波电流检测的精度随谐波次数k的增大而降低。因此, 模型一为了获得比较高的检测精度, 主要适用于谐波电流检测和畸变电流检测。

B、假设负载电流iL (n) 中含有测量噪声v (n) , 若采用抗干扰能力比较强的算法使得滤波器的输出y (n) 精确逼近基波电流 (或基波有功电流) 的理论值, 则负载电流iL (n) 减去滤波器输出y (n) 得到的谐波电流 (或畸变电流) 与其理论值的误差近似为测量噪声v (n) ;若采用抗干扰能力比较弱的算法, 则滤波器的输出y (n) 不能精确逼近基波电流 (或基波有功电流) 的理论值, 从而负载电流iL (n) 减去滤波器输出y (n) 得到的谐波电流 (或畸变电流) 与其理论值的误差比测量噪声v (n) 更大。因此, 模型一为了获得比较高的检测精度, 则只适用于噪声比较小或高信噪比 (SNR) 的情况下。

C、由于模型一是测量谐波的总和而不是对每次谐波分量进行测量, 因此其检测出的谐波电流 (或者畸变电流) 只适用于作为APF的参考信号。并且模型一在原理上属于模型二的一种特例。

模型二:

A、如前所述, 模型二可以同时实现每次谐波的幅度和相位检测且有比较高的检测精度, 但是计算量比模型一大。

B、当模型二用于含有测量噪声v (n) 的情况下时, 可以通过采用抗干扰能力比较强的算法来消除噪声对检测精度的影响。因此, 模型二可以用于含有噪声的情况。

C、虽然模型二需要知道最高谐波次数N, 但是在实际应用中, 由于谐波次数越高, 其幅值就越小, 因此一般通过设置前置滤波器滤除负载电流iL (n) 中不需要检测的高次谐波分量和噪声, 从而确定N的大小。

D、该模型的缺点是需要已知基波频率, 而实际上电力系统的工作频率并不是稳定不变的, 因此, 在实际应用中一般通过锁相环 (如模型一) , FFT变换[20]和频率的自适应跟踪[21,23]来获取基波频率。

E、模型二的检测结果, 不仅可以作为APF的参考信号, 而且根据需要还可以用于其他用途 (如, 谐波分析[20,21,22]、保护和控制等) 。

2.2 同种模型采用不同算法的性能比较

上节对两种自适应谐波电流检测模型在同种算法下的检测性能进行了比较分析, 本节则讨论不同自适应算法对同种模型的检测性能的影响。由于自适应算法的种类很多而篇幅有限, 因此本节只对基于LMS算法, RLS算法[26]的自适应谐波电流检测进行分析。

A、LMS算法

基于LMS算法的谐波电流检测算法[6,7,8,9,10,11,12]公式如下:

其中:e (n) 为负载电流iL (n) 与滤波器输出y (n) 的差;W (n) 和X (n) 分别为n时刻滤波器的权值和输入向量。步长m控制着算法的收敛速度与稳态误差, 即:其值越大, 收敛速度越快而稳态误差越大;其值越小, 稳态误差越小而收敛速度越慢。因此, 步长的取值必须考虑收敛速度与稳态误差之间的折中。为保证算法的稳定性, 其收敛的充分条件为mÎ (0, 2/λmax) , 其中, λmax为输入信号X (n) 的相关矩阵E[X (n) XT (n) ]的最大特征值。为了克服LMS算法的收敛速度与稳态误差难以兼顾的问题, 一些学者提出了基于变步长LMS算法的谐波电流检测方法[13,14,15,16,17,18], 即在保证稳态误差不增大的情况下使得收敛速度有所提高, 但效果仍不够理想, 尤其是对突变的负载电流的跟踪能力差。

B、RLS算法

由于RLS算法比LMS算法的收敛速度快, 因此基于RLS算法的谐波电流检测方法被提出[24,25], 其算法公式为

其中:λÎ (0, 1]称作遗忘因子, 其值越大则稳态误差小, 跟踪能力差, 反之则跟踪能力强, 稳态误差大;k (n) 为卡尔曼增益矩阵;p (n) 为逆相关矩阵, 初始值为p (0) =d-1I, I为单位阵, d为一个很小的数, 其典型取值为0.01或更小。为了使RLS算法具有好的性能, 则遗忘因子一般取值在λÎ (0.95, 1) [26]。

虽然, RLS算法的收敛速度比LMS算法快一个数量级, 但是计算量大大增加。同时也存在跟踪能力与稳态误差难以兼顾的问题, 取决于遗忘因子的选取。

3 仿真实验

本实验旨在验证上述对两种谐波电流检测模型的性能分析的正确性。因此, 在以下的仿真试验中, 负载电流如式 (11) 所示[19,23], 其中, ω=2πf=100π;a=1, 在t=0.1 s时, a突变为4;rand (t) 为随机噪声, 本文中信噪比取为20 d B[23];采样频率为10 k Hz, 滤波器的权系数初值为0, 模型一的参考输入为单位正、余弦信号。

3.1 实验一:相同算法, 不同模型

图3、图4分别为两种模型在LMS算法 (步长为0.02和0.01) 下的基波电流检测值与其理论值的拟合曲线和与其理论值的误差曲线。

图5、图6分别为两种模型在RLS算法 (d=0.01, λ=0.985和λ=0.995) 下的基波电流检测值与其理论值的拟合曲线和与其理论值的误差曲线。

从图3~图6中可以明显看出:在相同自适应算法 (LMS算法和RLS算法) 的条件下, 两种模型的收敛速度基本一致, 即检测模型的收敛速度由自适应算法决定;模型二 (Adaline模型) 的稳态误差远远小于模型一 (ANCT模型) 的稳态误差, 这是因为模型二属于临界拟合模型。对于同种模型, 步长为0.02的LMS算法明显比步长为0.01的LMS算法的收敛速度快, 但是增大了稳态误差;遗忘因子为0.995的RLS算法明显比遗忘因子为0.985的RLS算法的稳态误差小, 但是对于突变的负载电流却需要很长的时间才能再次收敛, 即跟踪能力差。

3.2 实验二:相同模型, 不同算法

本实验旨在验证相同模型的条件下, 不同自适应算法 (LMS和RLS) 的性能, 加之实验一已证实了收敛速度由自适应算法决定。因此, 本实验以Adaline模型为例。图7、图8分别为模型二 (Adaline模型) 在稳态误差相同的情况下, LMS算法 (步长为0.015) 和RLS算法 (d=0.01, λ=0.98) 的基波电流检测值与其理论值的拟合曲线和与其理论值的误差曲线。

从图7和图8中可以明显地看出, 在相同稳态误差的条件小, RLS算法的收敛速度至少比采用LMS算法快1.5个周期, 并且RLS算法对突变的负载电流的跟踪能力也比LMS算法强。

4 结论与展望

本文对上述两种自适应谐波电流检测模型在同种自适应算法的条件下, 就稳态误差、收敛速度和计算量做了详细的对比分析, 并讨论了两种模型各自的缺陷及其适用的范围。其分析结果表明:同种算法条件下, 两种模型在收敛速度方面没有差别;模型一的计算量小但是稳态误差大, 适用于无噪声或噪声很小的情况下, 其检测结果主要作为APF的参考信号;理论上模型二的稳态误差可以为零, 但是必须知道负载电流的最高谐波次数并且计算量大, 其检测结果不仅可以作为APF的参考信号, 还可以作为其他用途 (如谐波分析, 保护和控制等) 。同时, 不同的自适应算法对同种模型的检测性能由算法本身决定。因此, 针对上述自适应谐波电流检测的优缺点, 未来自适应谐波电流检测的主要发展趋势如下:

1) 提出更加全面 (如考虑谐波频率, 幅值和相位波动) 的自适应谐波检测模型。

2) 提出收敛速度更快, 稳态误差更小, 跟踪能力强, 并适用于谐波检测的自适应算法。

自适应谐波检测 第5篇

关键词:自适应滤波,谐波电流检测,最小均方算法,变步长,箕舌线函数

0 引言

近年来, 随着非线性负荷及电力电子器件在电力系统中的大量投入使用, 电网谐波畸变造成的谐波污染日益突出, 严重影响着电力系统和用户设备的安全运行。因此, 为提高电能质量以及保证用户设备的安全运行, 必须采取有效治理谐波污染的措施。作为一种能有效治理谐波的补偿装置———有源电力滤波器 (APF) , 在电力系统中得到了广泛的应用, 其性能的好坏很大程度上取决于对谐波电流实时、精确的检测。目前, 谐波电流检测的方法[1]主要有基于傅里叶变换[2,3]、瞬时无功功率理论[4,5]、同步旋转坐标系[6]以及小波变换[7]。虽然这些方法有效地丰富了谐波检测理论, 但是其本身固有的不足限制了进一步应用。

基于自适应滤波算法的谐波电流检测算法[8,9,10,11,12,13,14,15,16,17,18]由于对电网参数的变化不但具有自适应性, 而且算法简单, 因而受到了国内外研究人员的广泛关注。然而, 固定步长的最小均方 (LMS) 算法存在着收敛速度与稳态误差的固有矛盾。因此, 为有效解决这一矛盾, 采用变步长LMS算法[19,20,21]是一种较好的选择。但是在实际应用中, 文献[19-20]不具有抗干扰的能力, 文献[21]虽然对白噪声具有抗干扰能力, 但是对跃变的系统跟踪能力差。

虽然针对谐波电流检测已提出一些变步长LMS算法[11,12,13,14,15,16,17,18], 但是它们也存在一些缺点。如文献[11-12]虽然消除了同频谐波对步长更新的干扰, 但是对跃变系统的跟踪能力差, 并且当负载电流在过零点附近时, 文献[12]会出现数值计算的困难;尽管文献[13]克服了此算法数值计算的问题, 然而参数的增多给求解算法的最优参数带来困难;文献[14]为提高收敛速度, 在权值的迭代公式中引入权值的动量项, 但与文献[11]相比效果不明显;文献[15]不能消除同频率的谐波对步长更新的干扰且对跃变系统的跟踪能力差;文献[16]的稳态误差大且有绝对值和指数运算, 计算量大。文献[17]没有说明如何选取有效的模糊推理规则且难于应用。因此, 为了有效地克服上述算法存在的缺点, 本文提出了一种基于箕舌线函数的变步长LMS谐波电流检测算法。

1 自适应谐波检测原理

设流经非线性负载的周期性非正弦电流为iL (t) , 其离散的傅里叶展开式为:

式中:Ts为采样周期;n为采样点;ω=2πf为角频率;i1p (n) , i1q (n) 和ih (n) 分别为基波有功电流、基波无功电流和谐波电流;if (n) 为广义谐波电流 (包含基波无功电流和谐波电流) ;ψk和Ik分别为k次谐波的相角和电流幅值。

因此, 基于自适应算法的广义谐波电流检测原理如图1所示。其中, 负载电流iL (n) 为谐波检测系统的主输入;x (n) =sinωn为参考信号, 与电源电压us (t) 的基波分量同频同相, 由锁相环 (PLL) 从us (t) 处获得[10];基波有功电流i1p (n) 为自适应滤波器的期望信号。

基于LMS算法的广义谐波电流检测的基本原理是:在代价函数J=|e (n) |2最小的条件下, n时刻的滤波器权系数w (n) 根据负载电流iL (n) 减去滤波器输出y (n) 的反馈误差e (n) 的大小进行自动调节, 使得滤波器输出y (n) 逼近基波有功电流i1p (n) , 进而检测输出if* (n) 逼近真实的广义谐波电流, 从而实现广义谐波电流检测, 即算法公式为:

式中:n为迭代次数;μ为步长, 为保证算法的稳定收敛, 其取值范围为0<μ<2/λmax, 其中λmax为参考输入信号的相关矩阵的最大特征值, 因在广义谐波电流检测中, 滤波器系数是单系数, 从而λmax=E (x (n) x (n) ) (E (·) 为求期望运算) 。

上述固定步长LMS算法存在着收敛速度与稳态误差的固有矛盾, 即步长越小, 则稳态误差小但收敛速度慢;步长越大, 则收敛速度快但稳态误差大。而采用变步长LMS算法能够有效解决这个问题, 其原理是:在初始阶段, 大的步长可以获得较快的收敛速度;随着迭代次数的增加, 步长逐渐减小, 进而获得较小的稳态误差。

由于大多数变步长算法是建立步长与反馈误差e (n) 的某种函数关系来实现步长的更新[19,20,21], 而在广义谐波电流检测的应用中, e (n) 包含滤波器的输出y (n) 对i1q (n) 的跟随误差和广义谐波电流if (n) , 使得步长的更新受到了谐波电流和基波无功电流的干扰。因此, 寻求一种适用于广义谐波电流检测的变步长LMS算法十分必要。

2 变步长谐波电流检测算法

虽然文献[18]已经将基于箕舌线函数的变步长LMS算法[22,23]用于谐波电流检测中, 但仍然没有消除谐波电流对步长更新的干扰。因此, 本文提出了改进的基于箕舌线函数的变步长LMS广义谐波电流检测算法。其步长的更新公式如下:

式中:p (n) 为e (n) 与x (n) 的瞬时互相关时间均值估计;β为取值与采样频率有关的参数, 其范围为1-2/N≤β≤1-1/N, 其中N为负载电流在一个周期内的采样个数;参数δ的取值小于1又接近1, 典型值在0.97左右;参数b的取值在101数量级, 在本文的仿真实验中其最优取值范围在10~20之间;参数γ是一个很小的数, 其取值一般在10-2数量级。通常的做法是固定参数δ, b, K和β (K为动态因子, 其取值范围为0<K<1) , 通过实验调节γ的最优取值。

式 (5) 是采用p (n) 来消除基波无功电流和谐波电流对步长更新的干扰。

式 (6) 中, a (n) 随p (n) 的变化而变化:在初始阶段p (n) 较大, 使得a (n) 较大, 从而步长很大以获得较快的收敛速度。在逐渐收敛到稳态阶段时, p (n) 减小, a (n) 也随之减小, 使得步长进一步减小, 以获得较小的稳态误差。当待检测信号突变时, p (n) 突然变大, 同时a (n) 也增大, 从而步长突然增大以跟踪待检测信号的突变。

式 (7) 是对基本箕舌线函数算法[18]的改进。相比文献[16]中的S函数, 箕舌线函数的曲线在开口处较陡、底部较平使得本算法在初始阶段, 步长变化较快;在逐渐收敛到稳态阶段时, 步长缓慢减小, 以获得较小的稳态误差。

由于在本文算法中步长是变化的, 因此为了保证本文算法的稳定性, 必须对其进行幅度的限制。又因步长μ (n) 始终是小于a (n) 的, 所以只需对a (n) 进行幅度限制, 即

参数amax通常设为接近定步长LMS算法的临界稳定值, 而amin的选择应兼顾稳态失调和收敛速度的要求, 通常为一较小正数。在本文的仿真实验中, amax=0.2, amin=0.001。

同时, 为了提高收敛速度, 在权值的更新公式 (式 (1) ) 中引入了当前时刻权值w (n) 对前一时刻的权值w (n-1) 的变化量, 即

3 新算法的性能分析

设最优权系数为wopt, 则将权值误差ξ (n) =wopt-w (n) 代入式 (9) , 得到:

对式 (10) 两边同取期望得到:

式中:λ为参考输入相关矩阵的特征值。

又由式 (9) 变形得到:

为保证算法的收敛, 则必须使得当n→∞时, Δw (∞) →0, ξ (∞) →0成立。因此, 由式 (11) 和式 (12) 得到本算法的收敛条件为:0<K<1, 0<μ<2 (1+K) /λmax。又因为本文算法的滤波器系数是单系数, 所以λmax=E (x (n) x (n) ) , 则进一步得到算法收敛的步长的取值范围为:

另外, 考虑三角函数的特性, 则可以得到e (n) 与x (n) 的互相关函数为:

因为i1q (n) 与x (n) 无关, 即E (i1q (n) x (n) ) =0, ih (n) 与x (n) 无关, 即E (ih (n) x (n) ) =0, 因而E (e (n) x (n) ) =E ( (i1p (n) -y (n) ) x (n) ) 。当算法收敛到稳态阶段时, 有y (n) ≈i1p (n) , 继而E (e (n) x (n) ) ≈0, 从而p (n) 中不含有谐波电流和基波无功电流, 使得步长的更新不受谐波电流和基波无功电流的干扰。

综上所述, 本文算法消除了基波无功电流和谐波电流对步长更新的干扰, 从而具有更小的稳态误差, 同时对跃变的系统具有较强的跟踪能力且其参数的最优取值对负载电流大小的依赖性较小。

4 仿真分析

为了验证本文算法的有效性, 与定步长算法和文献[12, 15-16]提出的算法做了详细的对比仿真实验。其中, 各变步长算法的步长更新公式如附录A表A1所示。在以下的实验中, 滤波器的参考输入为工频正弦信号, 采样频率为10kHz, 滤波器权系数初值w (0) 取为0。

4.1 仿真1

负载电流为1A的工频方波信号 (在第11个周期突变为5 A) [11,16], 第21个周期后负载电流由式 (15) 表示。在这种情况下, 本文算法、定步长算法和文献[12, 15-16]提出的算法的参数最优近似取值如附录A表A2所示。

定步长算法、文献[12, 15-16]提出的算法和本文算法的基波有功电流检测值与理论值的误差曲线如图2所示。

从图2可以看出:①变步长LMS算法能有效地解决定步长算法在稳态误差与收敛速度上的固有矛盾;②在保证动态响应时间都在1.5个周期的时候, 不管负载电流是幅值发生突变 (发生在0.2~0.4s) 还是其中的谐波含量发生突变 (发生在0.4~0.6s) , 本文算法在跃变前后的稳态误差都是最小, 其次是文献[12, 16]提出的算法, 这是因为式 (5) 的采用消除了基波无功电流和谐波电流对步长更新的干扰。

定步长算法、文献[12, 15-16]提出的算法和本文算法的滤波器权系数的变化曲线如图3所示。

从图3可以看出, 滤波器权系数随负载电流的跃变而跃变, 说明本文算法对负载电流具有良好的跟踪能力, 其次是文献[12, 16]提出的算法和文献[15]提出的算法对突变的负载电流的跟踪能力最差, 同时, 也说明本文算法参数的取值对负载电流的大小依赖性较小。

图4为本文算法的基波有功电流检测值与理论值的拟合曲线。可以看出, 本文算法大约在1.5个工频周期就能跟踪上负载电流的变化。

4.2 仿真2

仿真电路以TI公司的TMS320F2812数字信号处理器 (DSP) 芯片为主控芯片, 实现谐波电流检测。非线性负载的仿真电路为带阻感负载的单相桥式全控整流电路, 如图5所示。其中, us (t) 为220V的交流电流, R1=R2=50Ω, L1=1 mH, L2=10mH, 触发角为30°。图6为该电路下的负载电流。各算法在这种情况下的参数最优近似取值见附录A表A3。

在这种情况下定步长算法、文献[12, 15-16]提出的算法和本文算法的基波有功电流检测曲线与权值系数的变化曲线分别如图7和图8所示。

从图7可以看出, 除了定步长算法外, 其他变步长算法都具有相同的收敛速度。然而在算法收敛到稳态之后, 只有本文算法的权值系数波动比较小 (见图8) , 说明本文算法的稳态误差是最小的, 即提高了检测精度。最后, 只需将检测到的基波有功电流与负载电流相减即得到待补偿的谐波电流和无功电流。值得注意的是, 本文算法的好坏主要取决于参数γ的选择。

5 结论

本文提出了一种新的变步长自适应谐波检测算法。该算法利用负载电流减去滤波器输出的反馈误差e (n) 与参考输入信号x (n) 的瞬时互相关时间均值估计p (n) 来消除谐波电流和基波无功电流对步长更新的干扰, 进而p (n) 通过改进的箕舌线函数来控制步长的更新。该算法在保证动态响应时间不增加的条件下, 相比现有的变步长谐波电流检测算法有更小的稳态误差, 且稳态之后固定在一个很小的常数;同时对跃变的系统具有良好的跟踪能力;而且, 参数的取值对负载的电流的大小的依赖性较小。另外, 相比文献[16]提出的算法, 计算量小。仿真和实验结果证明了理论分析的有效性。

附录见本刊网络版 (http://aeps.sgepri.sgcc.com.cn/aeps/ch/index.aspx) 。

自适应谐波检测 第6篇

本文引入了一种自适应神经网络(ADNN)检测方法来检测各次谐波的幅值和相位,检测时间比常规的方法要短,通过这种方法能够有选择性地对5次和7次谐波进行补偿。本方法中,不需要进行网络训练,而是采用神经网络的基本原理确定畸变的负载电流中的基波和各次谐波成分,即不再为训练选择训练模式、隐藏的层数和每一层神经元的个数。而且所提出的ADNN在单相和三相系统中都适用[5,6,7,8,9,10]。

1 系统描述

1.1 实验系统的一般介绍

完整的APF配置在图1中给予了描述[11]。

ADNN方法确定出基波分量(iaf,ibf)和三相非线性负载电流(ila,ilb),然后用负载电流减去基波得到谐波成分的补偿量(i*ca,i*cb)。负载电流各相中总的谐波电流是通过从负载电流中减去基波分量得到的,而并不是各次谐波分量的总和。低次谐波分量占据总的谐波的主要部分,这样用于确定谐波的神经网络也会简单一些。可以证明,通过ADNN分离出来的谐波幅值和相位是正确的。

补偿电流参考量(i*ca,i*cb)通过abc-dq相位变换被转换为d-q轴分量(i*cd,i*cq),它们被用于指令电压向量计算,计算单元中含一个快速电流控制器。指令输出电压向量由空间矢量调制方法提供。在快速电流控制器中,引用一个自适应性线路放大器(ALE)[12]提前2个采样周期预测参考值,这样就减少了计算时间,同时也能增强快速电流控制系统的鲁棒性。

1.2 实验系统的构成

ADNN确定谐波电流以及APF的实现都是在基于DSP的实验系统中进行的[13,14]。逆变器中的功率半导体开关器件是以数字1和0表示的开或关状态。因此,同DSP接口的逆变器控制器适合采用数字电路。所有的计算都是数字化完成的,补偿电流的计算,使用ALE的快速控制算法,以及用于维持直流电压Udc恒定的比例积分(PI)控制,都是用汇编语言编程完成的,程序由连接在PC机上的DSP运行。实验系统框图如图2所示。

2 各因素对实验结果的影响

2.1 积分常数K的影响

下面对积分常数K进行定义。

设为时间t时的负载电流,可以证明:

它们分别为第l次谐波系数,且相互关联;K为积分常数。

定义为时间tk时的误差量。

K取值的变化对ADNN的性能有着重大影响。图3给出了用于精确谐波检测的最优K值下的电流波形(图中n为采样点数)。

图3(a)中,K设为240。这时K值过低,误差量比较大,系数B1的响应比较慢。图3(b)中,K值设为480,误差减小,B1的响应快多了,此时是最优值。当K被设为一个更大的值,如图3(c)所示,误差变得更小,但是系数B1,也就是基波的幅值,发生波动,而且基波分量发生畸变。事实证明调整K值的基准在于系数B1,而不是误差大小。有一点很重要,就是注意到在暂态条件下,一旦K值决定,它是不随负载类型和负载大小变化而变化的。

2.2 谐波次数的影响

考虑的谐波次数越高,则谐波提取的精度也越高。同时,考虑的谐波次数也被限制在一个较低的值,因为提取算法的执行必须在一个采样周期内完成。

以下3种模式显示了实验结果,它表明了如果要高精度地检测出基波电流,需要对谐波次数考虑到何种程度。图4给出了不同K值下的电流波形。

第1种模式,如图4(a)所示,K=240欠增益,此时是只考虑基波成分的情况,误差很大。

第2种模式,如图4(b)所示,此时K=480最优增益,只是考虑了7次谐波以下的情况。虽然误差不小,但是基波的估算很精确,因此要想精确地提取基波成分,至少要考虑到7次谐波。

第3种模式,如图4(c)所示,此时K=1 080过增益,只是考虑到19次谐波时的情况,可以看到误差几乎被消除。

从这3种模式看,证明所提出的ADNN要想以高精度检测出基波电流,并不需要考虑到太高次数的谐波成分。因此也不需要有功能十分强大的DSP来将ADNN应用到APF中的谐波检测中。

2.3 采样频率的影响

一般,当把采样频率定在某个较高的值时,谐波提取的精度也会大幅提高。但是为了能在采样周期内完成ADNN的计算,采样频率也会受到限制。采样频率的不同,可能获取的精度不同。为了能够获得较高的提取精度,这里考虑了2种采样频率:7.68 k Hz和15.36 k Hz。

图5显示了在这2种频率下的负载电流波形、波形系数、误差及基波分量。图中采样点0表示谐波分析计算的起始点。可以看出,系数A1和B1,也就是对应于基波无功分量和有功分量波形的幅值,当采样频率从15.36 k Hz减少至7.68 k Hz时,它们的执行时间没有改变。而且,在2种采样频率下,对基波的检测精度几乎没有差别。因此可以得出结论,在进行谐波分析时,要想得到满意的结果,7.68 k Hz已经是足够高的采样频率。

3 传统方法和ADNN算法检测速度的比较

3.1 傅里叶变换和ADNN算法检测速度的比较

这里给出了傅里叶变换和所提出的ADNN算法执行时间的比较。图6给出了实验结果。图中,采样点0表示谐波分析计算的开始点。在图6(a)所示傅里叶变换的情况下,计算系数A1和B1需要一个基波周期。而在本文所提出的方法下,只需要半个基波周期,如图6(b)所示。

3.2 d-q算法和ADNN算法检测速度的比较

本节中对提出的基于ADNN的谐波算法和基于常规d-q理论的算法做了比较。在基本的d-q理论中,补偿电流有功分量的参考向量是这样确定的:首先让负载电流向量的有功分量通过低通滤波器,来得到输出的直流分量,然后从瞬时有功分量里减去这个输出量得到参考量。因此,发生了直流成分的检测延迟,而且参考量中包含有误差。

图7(a)给出了阶跃变化条件下d轴补偿电流的参考量。此时以一个数字低通滤波器为例来检测负载电流中的直流分量。暂态过程中由检测延迟造成的电流降落较为显著。

而在本文提出的ADNN算法中,虽然不可能完全消除检测延迟,但做到了能有效地减少延迟,如图7(b)所示。可以说本文提出的ADNN算法具有更短的执行时间,而且在暂态过程中带来更小的电流幅值降落。

4 谐波补偿性能

为了检验所提出的ADNN谐波检测法的APF的谐波补偿特性,做了以下2个实验。图8给出了分别对感性负载和容性负载进行阶跃变化操作的实验结果(负载电阻从60Ω变为30Ω)。图中,iLa为负载电流,ica为补偿电流,isa为电源电流。

在容性负载情况下,负载电流THD为32.3%,而经过补偿后的电源电流THD仅为3.35%,有显著改进。获得了优良的谐波补偿性能,那是因为ADNN谐波检测法和快速电流控制法在APF中都足够精确。

图9中以占基波电流百分比(ef)的形式给出了负载电流和电源电流的谐波频谱(h为谐波次数)。在基于对电源电流的THD值的测量基础上,APF补偿后的结果表明所提出的检测方法是很有效的。同时还可以观察到,各次谐波电流,不管是在检测范围内(5~7谐波)的,还是在检测范围之外的,它们的幅值都大幅减小了。最显著的是5次谐波电流的幅值减小了大约95%。检测范围之内的谐波电流幅值减小了88%~95%,之外的则为30%~86%。

5 结论

本文提出的基于ADNN谐波检测方法能有效而精确地提取谐波分量,其可行性和有效性也通过实验得到了证实。为了利用ADNN得到好的谐波分析结果,分析结果表明:积分常数的最优值为480,这个值适用于任何类型的负载;对于谐波系数的计算,至少要计算到7次谐波;采样频率的最低值是7.68k Hz;补偿电流的参考值是通过从原始畸变负载电流中减去基波分量得到的,而不是所有次数谐波的总和。

摘要:对有源电力滤波器(APF)谐波检测方法进行研究,将自适应神经网络(ADNN)的信号处理技术应用于三相非线性负载的谐波电流检测中,提出了一种基于ADNN检测方法。该方法的主要特点是不仅能检测谐波电流中的基波成分,也能检测出其中不同的高次谐波分量的幅值和相位。通过搭建一个基于DSP三相并联APF的实验系统来证实该方法的有效性,并与传统的傅里叶变换法和d-q算法相比较,验证其具有更快的动态响应。最后,通过分别对感性负载和容性负载进行阶跃变化操作试验检验所提出的ADNN检测法的APF谐波补偿特性,并获得了优良的补偿性能。

自适应谐波检测 第7篇

Rootkit是攻击者在入侵系统后,用来保持对系统的超级用户访问权限,创建后门和隐藏攻击痕迹等常采用的一种技术,存在于Linux、Solaris和Windows等各种操作系统上[1]。利用Rootkit技术,攻击者可以很容易地控制目标主机,窃取其中的机密信息或对其破坏,还可以把它当作“跳板”来进行各种网络攻击,给互联网带来了强大的威胁。

Rootkit的典型特征是隐藏自身不被发现。目前常见的Rootkit隐藏技术包括:通过替换文件、挂钩输入地址表、修改原始代码、挂钩2Eh号中断处理程序等方式修改函数执行路径[2],过滤驱动,修改内核对象,动态装入和BIOS Rootkit[3]等技术隐藏自身,欺骗检测程序。

针对各种隐藏技术,检测Rootkit的方法主要有:基于已知签名[4]、基于文件完整性[5]、基于交叉视图[6]、基于虚拟机技术[7]和基于异常行为的检测[8,9]等。基于已知签名的检测通过事先对已知Rootkit的分析提取签名,检测时利用签名对系统的关键区域进行模式匹配,该方法执行简单、快捷,但只能检测已知Rootkit;基于文件完整性的检测存储标准文件(如SSDT表)的哈希值,将待测文件与标准文件进行匹配以确定是否被Rootkit攻击。该方法需要建立没有感染恶意代码的标准文件,且检测的误报率和漏报率较高。基于交叉视图的检测方法通过比较不同途径获取到的系统信息,根据差异实现检测,如比较进程在应用层API和内核系统服务函数两种视图信息是否一致,该方法通用性强,但检测结果依赖于不同途径获取信息的可信性。基于虚拟机的检测主要针对使用代码变形技术的恶意代码,创建一个虚拟执行环境提取待测程序行为进行判断,已在商用反恶意软件广泛应用,但仍需结合特征扫描。基于异常行为的检测通过建立目标系统和用户正常活动的标准模型对系统和用户的实际行为进行审计,是目前Rootkit检测系统的发展趋势。

本文针对目前基于异常行为的Rootkit检测方法依赖于行为的选取和行为模式库的完备性,提出了一种基于自适应学习的Rootkit检测模型。该模型中的学习引擎分析并提取新检测出的Rootkit行为特征,自适应地完善行为模式库,动态更新行为特征的检测权值。通过行为特征的不断完善和各行为对检测支持度的自适应更新,实现对未知Rootkit的检测。检测算法借鉴模糊识别技术[10],采用了基于行为模糊识别的检测算法。最后在Windows XP平台上进行了实验,验证其有效性。

1 系统模型

1.1 Rootkit的行为分析

在已获得系统超级用户访问权限的前提下,Rootkit若要长久地维持对系统的控制,需隐藏其攻击痕迹,欺骗检测工具。通过对多种典型Rootkit行为的分析发现,无论Rootkit程序怎样变种和衍生,其在系统中的行为具有一定的特征,例如:变形病毒感染文件时的解密模板通常是固定的;扫描系统的执行文件;对内存的清除、移动和替换;恶意进驻内核以获取内核权限等。

由于Rootkit是一组程序和代码。在计算机系统中,程序的行为集中表现为系统调用[11]。因此,通过监控、截获进程中Rootkit的典型行为所对应的系统调用,可以检测Rootkit并加以控制,预先避免攻击的发生。

1.2 基于自适应学习的Rootkit检测模型

基于行为的Rootkit检测系统大多按照建立行为模式库、提取待测程序的行为特征、匹配的流程检测Rootkit。本文加入学习引擎通过自适应地行为学习来完善行为模式库,所建立的系统模型主要包括底层行为监控模块、行为检测引擎、行为响应引擎、学习引擎、行为模式库和策略库,如图1所示。

底层行为监控模块截取所监控进程发出的系统调用并上报给行为检测引擎。由于Rootkit的隐藏对象通常是系统服务资源、系统配置、通信资源和文件,因此本文建立的行为监控模块包括进程监控、注册表监控、文件监控、网络监控等四个子模块。通过系统提供的查看工具查询系统服务调用表SSDT(System Service Dispatch Table)对内核的跟踪调试和逆向工程分析获得。

行为检测引擎接收提取到的系统调用信息,对程序行为进行分析,并与行为模式库匹配,按检测算法判断是否为Rootkit,并将检测结果提交给行为响应引擎。

行为响应引擎根据策略库中制定的策略发出报警并采取相应的响应措施,如中止进程、修改系统调用参数、向用户发出报警信息等。同时,行为响应引擎将检测结果反馈给学习引擎。

学习引擎根据检测结果提取新的行为特征,实现行为模式库的扩充和完善,动态更新行为特征的检测权重。用户可以通过行为响应引擎提供的界面维护策略库,也可以根据自己的经验对检测结果进一步做出判断和修正,指导学习引擎对行为模式库的完善。

在整个系统模型中,行为模式库、学习引擎和模式匹配算法是能否有效识别Rootkit的关键。行为模式库的建立需要最大范围的覆盖恶意Rootkit程序行为特征,并通过学习引擎不断完善以具有发现未知Rootkit的能力。由于系统调用可能被正常和恶意程序调用,且各种恶意Rootkit的目的不同,其程序行为表现也有所差异,不便进行行为模式的精确匹配。因此,本文的行为检测引擎采用一种基于行为模糊识别的检测算法以实现对恶意Rootkit的有效识别。

2 关键模块及其实现

2.1 行为模式库

Rootkit行为模式库可以用一个集合表示为:

V={A1,A2,…,Am}

每个Ai表示Rootkit的一个行为特征,为一个系统调用,m为行为特征的数量。由于系统调用可以被正常和恶意代码调用,为了能够表达某种行为对Rootkit正确检测的支持程度,本系统记录了每个系统调用分别在恶意程序和正常程序中出现的次数,即将每个行为用一个四元组表示为:

Ai=<Mi,Fi,Ri,Ni>

其中,各元素分别表示第i个行为所在的系统模块号、API函数编号、该函数在Rootkit中出现的次数和在正常程序中出现的次数。这样,程序行为Ai可以量化表示出来,简化了检测和学习引擎中的行为匹配。

由于各行为在Rootkit程序中的典型性和危害程度不同,这里对各行为赋予权值,提高对危险程序行为的监视度,减少对正常程序的误报。对应于V,行为特征权值向量为:

W={W1,W2,…,Wm}

2.2 学习引擎

学习引擎通过比对检测结果中Rootkit的行为和行为模式库,补充新的行为模式,更新四元组和各行为特征的检测权重。对新出现的行为,由于拥有该行为的Rootkit程序较少,其在检测时所占的权重也较小。若随着检测过程中该行为在恶意程序中出现次数的增大,则其检测权重也将逐渐增大,成为Rootkit的典型特征。

一个行为在恶意程序中频繁出现而很少在正常程序中出现,则表明它是恶意程序的典型行为特征,对Rootkit正确检测的作用也越大。这里定义行为Ai对Rootkit检测的支持度为:

Sup(Ai)=m×RiiRi+iΝi×(1-m×ΝiiRi+iΝi)(1)

式中,RiNi分别表示行为Ai在Rootkit程序中出现的次数和在正常程序中出现的次数,m为行为模式库中行为特征的总数。将行为Ai的支持度归一化后作为其检测权重,即:

Wi=Sup(Ai)iSup(Ai)(2)

学习引擎的学习算法描述如下:

算法1 学习算法

Get <{Qj}, R>;// {Qj}为进程的系统调用序列集Qj=<Mj, Fj>,Mj, Fj分别是第j个系统调用的系统模块号和API函数号,R为检测结果。

For j =1 to n

{

Search(Qj)

//在行为模式库匹配Qj=(Mj, Fj)

If(Founded)

{ //更新模式库中Aj的四元组

If R=Rootkit

Then Rj=Rj+1;

Else Nj=Nj+1;

UpdateBahavior(Aj)

}

Else //在模式库中加入新的行为Aj

AddNewBahavior(Aj)

}

ComputeWeight //根据式(1)和式(2)调整行为权值

2.3 基于行为模糊识别的检测行为检测引擎

由于系统函数调用可以在任何程序中调用,因此本文借鉴模式识别算法对Rootkit进行检测。其基本思想是,用行为特征集合V作为指标特征向量,将指标特征向量在系统调用序列中的统计特征作为隶属度函数,对一个待检测程序,根据特征的相对隶属度和每个特征的权重按照阈值原则实现分类。

指标特征向量按照行为模式库中的Rootkit典型行为构造,即指标特征向量V={A1,A2,…,Am},其中元素Ai为行为模式库中的一个行为。由于程序对系统调用呈现出正态偏大型分布的典型特征[10],因此可用正态偏大型分布来构造程序集对Rootkit的相对隶属度函数,表示为:

μi=1-e-(E(Ai))2/σi2 (3)

式中,E(Ai)为行为Ai在检测文件中出现的频率均值,σi为行为Ai在检测文件中出现的频率均方差。检测时,若待测程序的系统调用序列中出现了行为Ai对应的系统调用,则该程序具有了行为特征Ai

对于待检测程序,用其行为对一个分类的相对隶属度集与行为权值集的点积表示待测程序对该分类的隶属关系。则该待测程序是否为Rootkit,可用判别值F表示为:

F=i=1mμiWi(4)

根据阈值原则,给定检测阈值θ,当F>θ时,可认为待检测程序为Rootkit程序,否则为正常程序。

3 实验与性能分析

模拟实验在Windows XP平台上进行,CPU频率为3.1GHz、内存为1GB,测试了系统模型的检测精度和系统性能。实验中使用程序API函数调用监视工具SUPERSPY32软件提取程序API函数。在系统虚拟软件Vmare下运行病毒程序反复试验。

3.1 检测精度

系统模型中,Rootkit检测阈值θ的取值目前没有理论依据,需要通过实验总结。模拟实验时,将待检测的程序在虚拟机中运行,提取其执行时的完整API函数调用序列。实验导入了60个待检测程序,其中包括Hacker Defender、He4Hook、MigBot、TCPIRPHOOK、NTRootk等40个著名的Rootkit和20个正常程序,在不同阈值下的检测结果如表1所示。

从表1可以看出,在阈值θ取不同值时,误报警个数和漏报警个数有所不同。当检测阈值为0.5时,系统的漏报率和误报率都比较低,比流行的Rootkit检测工具IceSword.exe的检测准确率略高。因此,本系统设置阈值θ为0.5进行下面的实验。

3.2 系统性能测试

通过钩挂函数添加代码消耗测试和检测系统整体性能消耗测试两方面,对本文提出的检测系统的性能进行测试。

3.2.1 钩挂函数添加代码消耗

这里使用内核函数KeQueryPerformanceCounter()来测试钩挂函数添加代码运行时间与原系统调用运行时间之间的对比,该函数提供操作系统中最精确的运行计数。假设T是两次KeQueryperformanceCounter()函数调用之间的时间间隔,T1和T2分别表示第一次和第二次调用,则T=T2-T1。设原系统调用消耗的时间为ΔTZw,钩挂函数总消耗时间为ΔTHookZw,考虑到KeQueryPerformanceCounter()函数本身的时间负载ΔTO,则钩挂函数添加的代码的时间负载ΔTOHookZw为:

ΔTOHookZw=(ΔTHookZw-ΔTZw)-ΔTO (5)

使用式(5)对操作系统最常用的系统调用进行测试,原系统调用消耗时间和钩挂函数添加代码消耗时间的测试结果如表2所示。

3.2.2 系统整体性能消耗

使用微软提供的工具Kemrate收集和分析本系统的性能数据。根据本系统运行后与运行前核心态和用户态的运行时间百分比来测试本系统对操作系统性能的影响,测试结果如表3所示。

从表2和表3中可以看出,本检测系统的使用并没有对系统性能产生明显影响。

4 结 语

本文提出了基于自适应学习的Rootkit检测模型。通过模糊识别算法和Rootkit特征行为模式库实现了Rootkit的有效检测。通过模型的学习功能,在检测的同时不断完善行为模式库,实现对未知恶意代码的检测。

下一步的工作将研究用系统调用序列精确描述程序行为;并在准确检测的技术上,研究清除Rootkit和阻止Rootkit进入系统的有效方法。

参考文献

[1]Ha Jin Hwang.A Comparative Study of the Perception of Computer Se-curity between US and Korea:Focused on Rootkits[C]//2008 Ad-vanced Software Engineering&Its Applications,ASEA2008.HainanIsland,China:2008:73-76.

[2]Lee Dong Hwi1,Kim Jae Myung1,Choi Kyong-Ho,et al.The Study ofResponse Model&Mechanism Against Windows Kernel Compromises[C]//2008 International Conference on Convergence and Hybrid In-formation Technology,ICHIT 2008.Daejeon,Korea,2008,August 2829.2008:600-608.

[3]David Francis M,Chan Ellick M,Carlyle Jeffrey C,et al.Cloaker:Hardware supported rootkit concealment[C]//2008 IEEE Symposiumon Security and Privacy.Oakland,CA,United states.2008:296-310.

[4]Li Zhuowei,Das Amitabha,Zhou Jianying.Theoretical basis for intru-sion detection[C]//6th Annual IEEE System,Man and CyberneticsInformation Assurance Workshop,SMC 2005.West Point,NY,Unit-ed states,2005:184-192.

[5]Andrew Hay,Daniel Cid,Rory Bray.OSSEC Host-Based IntrusionDetection Guide[M].Burlington,MA.Syngress Publishing,Inc,2008:149-174.

[6]白光冬,郭耀,陈向群.一种基于交叉视图的Windows Rootkit检测方法[J].计算机科学,2009,36(8):133-137.

[7]Takamasa Isohara,Keisuke Takemori,Yutaka Miyake,et al.LSM-based Secure System Monitoring Using Kernel Protection Schemes[C]//5th International Conference on Availability,Reliability and Se-curity,ARES 2010.Krakow,Poland,2010:591-596.

[8]Desmond Lobo,Paul Watters,Xinwen Wu.RBACS:Rootkit BehavioralAnalysis and Classification System[C]//3rd International Conferenceon Knowledge Discovery and Data Mining.Phuket,Thailand,2010:7580.

[9]刘巍伟,石勇,郭煜,等.一种基于综合行为特征的恶意代码识别方法[J].电子学报,2009,37(4):696-700.

[10]张波云,殷建平,唐文胜.一种未知病毒智能检测系统的研究与实现[J].计算机工程与设计,2006,27(11):1936-1938.

基于自适应背景模型的运动目标检测 第8篇

在许多计算机视觉应用领域,如智能监控、人机交互等,从视频图像序列中实时分割运动目标是一项基本而又重要的环节。现有的运动分割方法可以归纳为3种:光流法[1,2]、相邻帧差法[3,4]、背景减法[5,6,7]。光流法的优点是能够检测独立运动的对象,不需要预先知道场景的任何信息。但光流法计算复杂耗时,很难实现实时检测。相邻帧差法适用于动态变化的环境,但不能够完整的分割运动对象,不利于进一步的对象分析和识别。背景减法是最常用的运动对象检测算法,在算法速度和效果两个方面综合性能最好。

背景减法就是计算参考图像,然后用当前帧与参考图像相减得到差图像,对差分图像进行阈值分割,所分割出的二值图像代表了图像序列中的运动目标对应的区域。背景减法包括背景表示、背景初始化、背景维护、运动像素检测等。背景表示研究采用什么样的模型有效表示图像序列中的背景及其变化。背景初始化研究背景模型初始参数的获取问题。背景维护是研究背景模型的更新策略。运动像素检测研究如何减小诸如光线变化等因素对运动对象检测的影响。背景减法直接影响后续运动目标检测的质量好坏,从而影响到对运动对象的识别和分类。

2 背景提取

2.1 静态背景提取的一般算法

背景提取一般是利用背景图像的缓变性,或者说是在时域上的稳定性。尽管背景部分的某些点有时会被前景物体遮挡,但是在大部分时间里,背景部分的图像都是不变或是缓变的。较为简单快速的算法是直接从图像序列中选取某一幅完全没有运动前景的图像作为背景[8]。但是这在现实应用中很难满足。另一种背景提取方法是取图像序列在一段时间内的平均值。视频图像序列可看作是受运动目标影响和噪声污染的背景序列,目标的不同色彩表现为灰度的随机分布。对于视场内的每一个像素,隶属于背景的概率极大。经过对输入序列的若干帧图像进行平均即可得到与实际背景图像近似的初始背景,平均同时达到了过滤随机噪声的目的。得到的初始背景质量不依赖于起始时间。

这种基于点平均的方法有以下三个问题:1)最后得到的背景图像含有大量的噪声点。2)需要对每帧图像做大量的乘除法运算,运算量大。3)收敛速度不稳定,对于运动比较快、运动面积比较小的情况,可以很快得到比较好的背景图像,但是如果运动缓慢或者运动面积比较大,可能就需要很长的时间。因此有必要提出新的背景提取方法。

2.2 一种基于改进K-均值聚类算法的背景提取方法

聚类分析是把一个给定的数据对象集合分成不同的簇。一个好的聚类方法应能产生高质量的聚类结果——簇,这些簇需具备两个特点:高的簇内相似性和低的簇间相似性。聚类结果的好坏取决于该聚类方法采用的相似性评估方法。传统的聚类算法有分割聚类方法以及层次聚类方法两种。分割聚类方法又包括了试探算法和迭代算法两种,迭代算法比较实用,它是从一个初始的分割开始,反复地进行迭代直到达到最优。K-均值聚类算法和自适应聚类算法是比较典型的迭代算法,经常用于对数据流的聚类[9,10]。

K-均值聚类算法有一个明显的缺点,就是要求事先确定群集中心的初值,而这些参数的设定一般需要通过大量的实验才能得出。自适应聚类算法虽然不存在这样的问题,不依赖于经验参数和阙值的设定,但它得到的群集个数太多,相应的就是群集内的对象个数过少,不满足现实的需求。针对以上两种算法的不足,本文提出了一种新的适用于图像序列背景提取的聚类算法,该算法首先确定群集个数k,把数据流中前k个数据对象分配给这k个凝聚点,在以后的聚类过程中,根据距离最近准则归类,然后计算新群集的均值形成新的凝聚点。

针对每个像素的灰度值X,按下面的公式进行转换:

式中:XR,XG,XB分别是像素RGB颜色空间的红色分量值,绿色分量值和蓝色分量值。

算法的具体步骤如下:

1)设置群集数k=3,给三个群集中心赋初值{C1(1),C2(2),C3(3)},也就是图像序列中前3帧像素的灰度值,其中,Ci(1)代表第i个群集第1次迭代后凝聚点的值。

2)处理后续帧图像的像素灰度值,按照距离最小准则将每个像素的灰度值划归到3个群集中的某一个。划分条件为

X是像素灰度值,l代表第几次迭代,对于i=1,2,3,j≠i。上式中的距离就是像素灰度值与群集均值之间的差值。这一步同时记录隶属于该群集的像素个数Mj。

3)用第二步中建立的新群集中所有成员来计算群集的均值,更新凝聚点,以便群集中每个对象到凝聚点的距离之和最小。即,希望最小化Jj:

式中:Sj(l)代表第l次迭代时,群集j的全体。群集中心值可按下式计算:

同时计算所有隶属Sj(l)像素灰度方差σj2。这样,对于像素序列Xt将由3个形如{Cj,Mj,σj2}的三元组构成。

4)比较M1,M2,M3,将最大的那一组数据的均值和方差作为背景模型的参数,完成背景提取。

应用上述算法在室内场景下进行了实验。视频序列中有运动目标,经过足够长时间的学习,可以得到理想的背景模型。图1(a)、图1(b)是正常情况下有运动目标的视频帧。图1(c)是经过学习得到的背景图像。

3 背景维护和更新

随着时间的推移,视场内会发生许多变化。其中,光照亮度的渐变和突变会导致背景图像的变化,与前景物体混淆。还有背景物体的移入移出,比如墙上原来挂着的一件衣服被永久拿走,对此我们需要更新背景模型。

为了解决这些问题,对于每一个像素点,在上文完成背景提取,得到该像素均值和方差的基础上,重新维护一个动态三元组{µ,σ2,N},这里的N是像素点最近连续被判定为前景点的次数。

3.1 变化像素检测

当前时刻,某一像素的强度值为It,其动态三元组中的均值为µt,用m(x,y)存储当前像素是否为运动像素的判定结果:

根据虚警率设置图像的全局阈值T,本文根据经验采用T=3σ。当m(x,y)等于1时表示当前帧像素为运动像素。

3.2 基于动态三元组的背景维护和更新

我们知道,一般运动物体停留的时间比较短,所以对于场景本身的变化,如果某个像素点连续被判定为前景的次数N大于设定值Nu,就可以判定背景发生了物体移入或移出。此时,将该点的背景用当前的前景值替代:

Nu的取值不能太小,否则将会把在背景内做短暂停留的对象更新到背景中,影响后面检测的准确性。考虑光线突变或者是摄像头移动等影响因素,本文给出突变判断因子β:

式中Fu是反映背景变化程度的阈值(本文取值20000)。当∑m(x,y)>Fu时有突变发生,此时对于变化像素不需要再累积N,判断是否大于Nu,模型可直接按式(6)更替。

对于光线的缓慢变化,本文选择在像素点被判定为非运动像素的前提下,即m(x,y)=0时,有如下更新策略:

式中α∈(0,1)为更新系数,控制背景更新速度。

4 背景减除

应用第2节描述的自适应背景模型分割运动物体。用自适应背景模型更新算法得到当前的背景模型,然后用当前图像与背景模型相减,得到差分图像,再对差分图像进行阈值分割。

这时,由于噪声的影响等因素,会使一些背景区域被检测成运动区域,也可能使运动目标对应区域内产生裂缝和空洞,需要应用数学形态学和判断连通域大小的方法对该二值图像做进一步的处理。首先对检测后的结果进行闭运算,得到运动目标的完整区域,再计算每个独立的前景区域的大小(即包含的像素点数目),如果小于一定值,则将其抛弃,不认为是前景运动目标,最后得到准确的运动区域。

5 算法实验

利用本文的方法,在室内针对多种场景条件进行了实验。我们移动背景中的物体使背景发生变化。如图2(a)和图2(b)所示,背景中一件衣服过了一段时间后被拿走。应用本方法分割出的图像如图2(c)和图2(d)所示。可以看到背景变化后仍然能够正确地检测出运动人体。

图3是一组图像帧及其检测结果。尽管背景发生了光照突变(关闭了部分日光灯),但运动目标仍然能被检测出来。说明本文的背景模型是有效的。

6 结论

本文提出了一种新颖的背景差方案。使用K-均值聚类算法初始化背景图像,该方法的优点在于可以在存在运动目标的情况下,提取出背景模型。此外,使用基于动态三元组(DTDG)的自适应背景模型检测运动目标。根据像素的动态变化信息决定更新策略,能有效地处理外界光照条件变化、场景变化、背景扰动等带来的影响。

对提出的方案在多种场景条件下进行了实验。很好的实现了图像背景的提取和背景模型的更新,在物体移入移出,光线的缓变和突变等情况下都能有效的检测出运动目标。

本文方法还存在一些问题,需要进一步解决。首先是在阈值分割过程中,当前景运动目标与背景灰度很接近时,运动目标很难被检测出来,或者是运动目标出现较大的空洞,对于这种情况,可以在阈值分割过程中考虑颜色、轮廓、深度等信息。其次,本文中一些阈值、系数和连通域大小的选取目前主要是靠经验,或特定场景下反复实验得出,对于不同的场景取值不同。因此,如何为各种场景提取自适应的阈值,也是一个值得研究的问题。

参考文献

[1]李熙莹,倪国强,陈小梅.红外目标运动参数估计方法[J].光学技术,2003,29(1):63-65.LI Xi-ying,NI Guo-qiang,CHEN Xiao-mei.A Method of Infrared Target Motion Parameter Estimation[J].Optical Technology,2003,29(1):63-65.

[2]Hiraiwa A,Fuse K,Komatsu N,et al.Accurate Estimation of Optical Flow for Fully Automated Tracking of Moving-Objects within Video Streams[J].IEEE International Symposium on Circuits and Systems,1999,4:515-519.

[3]吕常魁,姜澄宇,王宁生.一种新的运动检测及轮廓追踪方法[J].武汉大学学报,2005,30(8):724-727.LüChang-kui,JIANG Cheng-yu,WANG Ning-sheng.A Novel Statistical Model for Motion Detection and Contour Tracing[J].Editorial Board of Geomatics and Information Science of Wuhan University,2005,30(8):724-727.

[4]Lipton A,Fujiyoshi H,Patil R.Moving Target Classification and Tracking from Real-time Video[C]//Applications of Computer Vision,1998.WACV'98.Proceedings.,Fourth IEEE Workshop on.Princeton,NJ,USA:IEEE,1998:8-14.

[5]胥健,胡福乔,霍宏.基于二维时空图像分析的车辆检测和分割方法[J].上海交通大学学报,2002,36(6):887-890.XU Jian,HU Fu-qiao,HUO Hong.Vehicle Detection and Separation Based on2D Spatio Temporal Image Analysis[J].Journal of Shanghai Jiaotong University,2002,36(6):887-890.

[6]Zhao T,Nevatia R.Tracking Multiple Humans in Complex Situations[J].IEEE Trans Pattern Analysis and Machine Intelligence,2004,26(9):1208-1221.

[7]HAN Hong-zhe,WANG Zhi-liang,LIU Ji-wei,et al.Adaptive Background Modeling with Shadow Suppression[J].The IEEE6th International Conference On Intelligent Transportation Systems,2003,1:720-724.

[8]童念念.车辆自动监控系统算法研究及实现[D].北京:北京大学,2002.TONG Nian-nian.The Research and Realization of Vehicle Automatic Surveillance System Algorithm[D].Beijing:Peking University,2002.

[9]李俊韬,张海,范跃祖.复杂交通场景中多运动目标分割算法[J].北京航天航空大学学报,2006,32(3):297-300.LI Jun-tao,ZHANG Hai,FAN Yue-zu.Multiple Moving Objects Segmentation Algorithm in Complex Traffic Scene[J].Journal of Beijing University of Aeronautics and Astronautics,2006,32(3):297-300.

上一篇:老年绝经期女性下一篇:肝硬化饮食护理