본문 바로가기
필터

재귀 필터 - 평균 필터, 이동 평균 필터, 저주파 통과 필터

by mokhwasomssi 2021. 8. 15.

 

 

칼만 필터는 어렵지 않아

이 책은 칼만 필터 자체가 어려운 것이 아니라 설명하는 방식이 불친절해 배우기 어려웠다는 문제의식에서 출발합니다. 그래서 수학적인 유도와 증명을 앞세우는 대신 칼만 필터의 핵심 알고리

book.naver.com


실시간으로 데이터를 처리하려면 필터가 재귀식로 표현되어야 한다. 

불필요한 연산처리를 줄이기 위함이다. 

 

배치식(batch expression) : 데이터를 모두 모아서 한꺼번에 계산

재귀식(recursive expression) : 이전 결과를 다시 활용

 


1. 평균 필터 averaging filter

평균을 취하면 측정 데이터에서 잡음을 제거할 수 있다.

센서 초기화에 유용하게 쓰인다. 

1.2 배치식   

$$ \bar{x}_k = \frac{x_1 + x_2 + \cdots + x_k}{k} \quad (k = 전체 데이터 개수)$$

1.3 재귀식   

$$ \bar{x}_k = \frac{k - 1}{k}\bar{x}_{k-1} + \frac{1}{k}x_k \quad (\bar{x}_k = k개 데이터 평균)$$

 


2. 이동 평균 필터 moving average filter

평균 필터를 사용하면 측정 데이터의 잡음을 없앨 수 있지만 데이터의 동적인 변화를 따라가지 못한다. 

잡음도 없애고 시스템의 동적인 변화도 반영하기 위해 고안된게 이동 평균 필터이다. 

 

전체 데이터를 평균내는 것이 아니라 지정된 데이터 개수(n)의 최근 측정값으로 평균을 낸다.

 

n이 크면 잡음은 줄지만 측정 신호의 변화가 제때 반영되지 않고

n이 작으면 잡음은 덜 잡히지만 변화는 비교적 잘 따라간다. 

2.1 배치식

$$ \bar{x}_k = \frac{x_{k-n+1} + x_{k-n+2} + \cdots + x_k}{n} \quad (n = 지정한 데이터 개수)$$

2.2 재귀식

$$ \bar{x}_k = \bar{x}_{k-1} + \frac{x_{k} + x_{k-n}}{n} \quad (\bar{x}_k = n개 데이터 평균) $$

 


3. 1차 저주파 통과 필터 first order low pass filter

저주파 신호(측정하려는 신호)는 통과시키고 고주파 신호(잡음)는 걸러낸다. 

 

이동 평균 필터는 모든 데이터에 동일한 가중치(1/n)를 부여하기 때문에

변화가 심한 신호에 적용하면 잡음 제거와 변화 민감성을 동시에 달성하기 어렵다. 

 

이를 보완하기 위해,

1차 저주파 통과 필터는 최근 측정값에 높은 가중치를 주고 오래된 값일수록 낮은 가중치를 준다. 

3.1 재귀식

$$ \bar{x}_k = \alpha\bar{x}_{k-1} + (1 - \alpha)x_k \quad (\bar{x}_k = 추정값,\quad 0 < \alpha < 1) $$

 

가중치 \(\alpha\)가 크면 잡음이 줄지만 시간지연이 생기고

가중치 \(\alpha\)가 작으면 잡음이 덜 잡히지만 측정 값\((x_k)\)의 변화에 민감해진다. 

 

가중치 \(\alpha\)는 필터 설계자가 임의로 적절한 값을 선정한다.