평균은 데이터의 총합을 데이터 개수로 나눈 값을 의미한다.
데이터를 모두 모아서 한꺼번에 계산하는 식을 배치식이라고 한다. 또한 이전 결과를 다시 활용하는 식을 재귀식이라고 한다.
재귀식은 이전 결과를 재사용하기 때문에 계산 효율이 좋다. 평균 필터를 재귀식으로 나타내면 다음과 같다.
여기서, 라고 정의하면, 가 되므로, 평균 필터의 재귀식은 아래와 같이 표현될 수 있다.
이 수식을 평균 필터라고 부른다.
function avg = AvgFilter(x)
%
%
persistent prevAvg k
persistent firstRun
if isempty(firstRun)
k = 1;
prevAvg = 0;
firstRun = 1;
end
alpha = (k - 1) / k;
avg = alpha*prevAvg + (1 - alpha)*x;
prevAvg = avg;
k = k + 1;