안녕하세요. 지난 포스팅의 디지털 영상 처리 - 주파수 도메인을 이용한 영상 샤프닝에 이어서 오늘은 선택적 필터링(selective filtering)에 대해서 알아보겠습니다. 선택적 필터링은 크게 3가지로 각각 대역차단(band reject), 대역통과(band pass), 노치(notch) 필터로 나뉩니다.
1. 대역차단과 대역통과 필터
일단 대역차단 필터만 이해하면 대역통과 필터도 이해할 수 있기 때문에 대역차단 필터를 중심으로 이야기해보도록 하겠습니다. 대역차단 필터는 특정한 주파수 영역을 차단하는 필터링 방법입니다. 그리고 다들 예상하셨다싶이 대역차단 필터 역시 이상적, Butterworth, 가우스 필터를 기반으로 만들어집니다. 이를 수식적으로 나타내면 아래와 같습니다.
아마 기존의 저역 및 고역 통과 필터와 다른점이 한가지 보이실겁니다. 바로 $W$라는 파라미터가 추가되었죠. 이 파라미터는 대역의 폭을 의미합니다. 그리고 나머지 파라미터인 $D$는 직사각형 중심에서의 거리, $C_{0}$는 차단되는 대역의 중심을 의미하죠. 이를 그림으로 그려보면 더 쉽게 이해할 수 있습니다.
위의 그림과 같이 특정 주파수만 차단하고 나머지 주파수들은 그대로 통과시키게 됩니다. 아주 간단하죠? 다음 궁금한 점은 대역통과 필터겠죠. 혹시 저역 및 고역 통과 필터 사이의 관계식을 기억하시나요? 두 필터 사이의 관계식도 동일합니다. 바로 아래와 같습니다.
$H_{\text{BP}}(\mu, \nu) = 1 - H_{\text{BR}}(\mu, \nu)$
따라서 만약에 여러분들이 대역차단 필터나 대역통과 필터 중 하나만 구현하면 다른 하나를 바로 구할 수 있습니다.
2. 노치 필터
노치 필터는 선택적 필터링 중 가장 사용자의 개입이 많이 들어가는 필터링방법입니다. 하지만 그만큼 유용하다고 볼 수 있죠. 노치 필터는 주파수 직사각형의 중심부에 미리 정의된 범위의 주파수를 차단하거나 통과시키는 필터링을 의미합니다. 다시 한번 DFT의 특성을 보면 원점 대칭을 가집니다. 이 말은 특정 위치, 즉 노치 지점 $(\mu_{0}, \nu_{0})$인 반드시 원점에 대칭인 $(-\mu_{0}, -\nu_{0})$에 대해서 대응노치를 가져야만 합니다.
기본적으로 노치 차단 필터는 중심이 노치의 중심으로 이동된 고역 통과 필터들의 곱으로 만들어집니다.
$$H_{\text{NR}} = \Pi_{k = 1}^{Q} H_{k}(\mu, \nu)H_{-k}(\mu, \nu)$$
여기서 $H_{k}$와 $H_{-k}$는 각각 고역통과 필터를 의미합니다. 그리고 각 필터의 중심은 $(\mu_{k}, \nu_{k})$와 $(-\mu_{k}, -\nu_{k})$에 있습니다. 여기서 한 주기의 중심이 직사각형의 중심으로 이동했다고 하면 $(\frac{M}{2}, \frac{N}{2})$에서 중심을 가지게 됩니다. 이때, 각 노치 필터를 얻기 위해서 가장 먼저 필요한 것은 각 필터에 대한 중심까지의 거리입니다.
$$D_{k}(\mu, \nu) = \left[(\mu - M/2 - \mu_{k})^{2} + (\nu - N/2 - \nu_{k})\right]^{1/2}$$
$$D_{-k}(\mu, \nu) = \left[(\mu - M/2 + \mu_{k})^{2} + (\nu - N/2 + \nu_{k})\right]^{1/2}$$
이번에도 필터의 종류를 다양하게 정해볼 수 있지만 만약 만약 3개의 노치가 존재하고 Butterworth 필터를 사용한다고 하면 아래와 같은 노치 필터를 얻을 수 있습니다.
$$H_{\text{NR}}(\mu, \nu) = \Pi_{k = 1}^{3} \left[\frac{1}{1 + [D_{0k}/D_{k}(\mu, \nu)]^{2n}}\right]\left[\frac{1}{1 + [D_{0K}/D_{-k}(\mu, \nu)]^{2n}}\right]$$
여기서 $D_{k}$와 $D_{-k}$는 위의 수식을 통해서 계산할 수 있습니다. 그리고 $D_{0k}$는 같은 노치쌍에 대해서는 동일하지만 다른 노치쌍끼리는 서로 다를수도 있고 같은수도 있습니다. 참고로 노치 통과 필터 역시 고역 및 저역 그리고 대역 차단 및 통과 필터와 마찬가지로 동일한 관계식을 보유하고 있습니다.
$$H_{\text{NP}}(\mu, \nu) = 1 - H_{\text{NR}}(\mu, \nu)$$
이번에는 노치 필터를 이용한 주파수 공간에서의 노이즈 제거에 대해서 예시를 보도록 하겠습니다. 아래의 예제를 통해서 이해하시겠지만 미리 말씀드리면 노치 필터는 DFT의 작은 영역을 선택적으로 수정하기 위한 것입니다. 따라서 어떤 작은 영역을 선택할지에 대해서는 컴퓨터와 상호작용(interative)하면서 결정해야합니다.
위의 그림과 같이 자동차에 어떤 반복적인 패턴(제가 보았을 때는 무아레 패턴인거 같네요.)으로 인해 노이즈가 발생한 것을 관찰할 수 있습니다. 이와 같이 반복적인 패턴은 주파수 공간에서 왼쪽 그림의 중심 영역이 아닌 다른 영역에서 강한 스펙트럼을 가집니다. 따라서 이 영역을 제거하는 4개의 쌍을 가지는 노치차단 필터를 이용하면 오른쪽 아래의 그림과 같이 상대적으로 많은 노이즈가 제거된 영상을 얻을 수 있습니다.
비슷한 예제로 이번에는 가로 패턴이 반복적으로 나타나는 노이즈가 낀 영상입니다. 여기서 주의할 점은 가로 패턴은 주파수 공간에서는 세로로 나온다는 특징을 가집니다. 왜냐하면 가로 노이즈가 낀 영상에서 가로방향의 밝기값의 변화보다는 세로방향의 밝기값의 변화가 더 크기 때문에 고주파 영역으로 나올것이라는 것을 예측할 수 있습니다. 따라서 주파수 공간에서 왼쪽 아래와 같이 세로로 된 필터를 사용해서 제거하면 오른쪽 아래 영상과 같이 상대적으로 많은 노이즈가 제거된 영상을 얻을 수 있습니다.
이와는 반대로 통과 필터를 사용하면 가로 패턴으로 된 노이즈를 추출할 수 있습니다. 여기서 아마 궁금한 점이 생기실겁니다. 통과 필터나 차단 필터 모두 중앙 영역을 살짝 남겨두는 데 그 이유는 무엇일까요? 이에 대한 답은 이전에 설명드렸듯이 중앙 지점을 많이 차단시킬수록 평균적인 밝기값이 낮아지는 현상이 발생하기 때문에 어느 정도 통과시켜주어야합니다. 즉, 어떻게 보면 노이즈 제거와 픽셀 정보 간의 Trade-off 관계라고 볼 수 있습니다.
'image processing' 카테고리의 다른 글
디지털 영상 처리 - 노이즈 모델들 (0) | 2021.05.05 |
---|---|
디지털 영상 처리 - 영상 열화 및 복원 과정 모델 (0) | 2021.05.02 |
디지털 영상 처리 - 주파수 도메인 필터를 이용한 영상 샤프닝 구현 (0) | 2021.04.26 |
디지털 영상 처리 - 주파수 도메인 필터를 이용한 영상 스무딩 구현 (1) | 2021.04.25 |
디지털 영상 처리 - 주파수 도메인 필터를 이용한 영상 샤프닝 (0) | 2021.04.19 |