더북(TheBook)

2차원 영상을 이산 푸리에 변환하였을 때, u = v = 0 위치에서의 함숫값 F(0, 0)을 영상의 DC 성분이라고 부른다. DC 성분의 값은 입력 영상의 모든 픽셀 값을 합한 것과 동일하다. 실제 푸리에 변환 공식에서 u = v = 0을 대입하면 다음과 같이 식이 전개되기 때문이다.

영상의 이산 푸리에 변환 결과를 화면에 나타내는 방법에 대하여 알아보도록 하자. 이상 푸리에 변환 결과를 그레이스케일 영상 형태로 화면에 표현하려면 푸리에 변환 결괏값을 0~255 사이의 값으로 변환해주어야 한다. 앞에서도 언급하였듯이, 영상의 주파수 성분은 복소수 형태를 갖기 때문에 푸리에 변환 결과를 한 장의 영상으로 표현하기는 쉽지 않다. 그러므로 푸리에 변환 결과는 푸리에 스펙트럼과 위상각을 따로 분리하여 표현하는 것이 일반적이다. 복소수를 실수부와 허수부로 나누어 표현할 수도 있지만 푸리에 스펙트럼과 위상각이 주파수 특성을 더욱 잘 표현하기 때문이다.

푸리에 스펙트럼을 효과적으로 화면에 출력하기 위해서는 몇 가지 과정을 거쳐야 한다. 영상의 푸리에 스펙트럼 값은 보통 그레이스케일 값의 최댓값인 255보다 크게 나타나기 때문에 화면에 출력하기 위해서는 값의 범위를 조절해주어야 한다. 가장 직관적으로 생각할 수 있는 방법은 푸리에 스펙트럼이 가지는 최댓값의 크기가 255가 되도록 선형 변환하는 것이다. 일반적으로 푸리에 스펙트럼은 DC 성분에서 최댓값을 갖기 때문에, 다음과 같은 수식으로 선형 변환할 수 있다.

그러나 이 방법은 푸리에 스펙트럼을 표현하는 데에 있어서 문제가 있다. 왜냐하면 푸리에 스펙트럼에서 DC 성분의 값이 다른 좌표의 값보다 상대적으로 너무 크기 때문에 선형 변환 방법을 사용하면 DC 성분을 제외한 나머지 주파수 성분의 값들이 모두 0에 가까운 검정색으로 표현되기 때문이다. 그러므로 푸리에 스펙트럼을 화면에 출력하기 전에는 일반적으로 로그 변환log transform을 거친다. 로그 변환 수식은 다음과 같다.

D(u, v) = c log[| F(u, v) | +1]

앞의 식에서 c는 스케일 상수로써 함수 D(u, v)의 최댓값이 255가 되도록 설정한다. 푸리에 스펙트럼 값에 1을 더하여 로그 변환을 수행하는 이유는 로그 함수의 입력값이 0이 되는 경우를 방지하기 위함이다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.