7.1.1 필터링 연산 방법
일상생활에서도 널리 사용되는 필터(filter)라는 말은 무언가를 걸러 내고 일부만을 통과시키는 장치를 의미합니다. 에어컨에 들어 있는 필터는 먼지를 걸러 내고 깨끗한 공기만을 통과시키는 역할을 수행합니다. 영상 처리에서 필터링(filtering)이란 영상에서 원하는 정보만 통과시키고 원치 않는 정보는 걸러 내는 작업입니다. 예를 들어 영상에서 지저분한 잡음(noise)을 걸러 내어 영상을 깔끔하게 만드는 필터가 있고, 또는 부드러운 느낌의 성분을 제거함으로써 영상을 좀 더 날카로운 느낌이 나도록 만들 수도 있습니다.
영상의 필터링은 보통 마스크(mask)라고 부르는 작은 크기의 행렬을 이용합니다. 마스크는 필터링의 성격을 정의하는 행렬이며 커널(kernel), 윈도우(window)라고도 부르며, 경우에 따라서는 마스크 자체를 필터라고 부르기도 합니다. 마스크는 다양한 크기와 모양으로 정의할 수 있으며, 마스크 행렬의 원소는 보통 실수로 구성됩니다. 영상 처리에서 사용되는 다양한 모양의 필터 마스크 예를 그림 7-1에 나타냈습니다. 1×3 또는 3×1 형태의 직사각형 행렬을 사용하기도 하고 3×3, 5×5 등 정방형 행렬을 사용하기도 합니다. 필요하다면 십자가 모양의 마스크를 사용할 수도 있습니다. 여러 가지 모양의 필터 마스크 중에서 3×3 정방형 행렬이 다양한 필터링 연산에서 가장 널리 사용되고 있습니다. 그림 7-1에 표시한 다양한 필터 마스크에서 진한 색으로 표시한 위치는 고정점(anchor point)을 나타냅니다. 고정점은 현재 필터링 작업을 수행하고 있는 기준 픽셀 위치를 나타내고, 대부분의 경우 마스크 행렬 정중앙을 고정점으로 사용합니다.
▲ 그림 7-1 다양한 필터 마스크 모양