주파수 영역 워터마킹이란?
주파수 영역 워터마킹(Frequency Domain Watermarking)의 가장 큰 목표는 이미지의 스펙트럼 계수(spectral coefficients)에 워터마크를 삽입하는 것입니다. 이를 위해 가장 널리 사용되는 변환 기법으로는 이산 코사인 변환(DCT), 이산 푸리에 변환(DFT), 이산 웨이블릿 변환(DWT)이 있습니다.
공간 영역이 아닌 주파수 영역에서 워터마킹을 수행하는 주된 이유는, 인간의 시각 시스템(HVS, Human Visual System)의 특성이 스펙트럼 계수를 통해 더 잘 반영되기 때문입니다.
1. 이산 코사인 변환(DCT)
DCT는 푸리에 변환과 유사한 방식으로, 데이터를 진폭 공간이 아닌 주파수 공간으로 표현합니다. 이는 인간이 빛을 지각하는 방식과 더 잘 부합하기 때문에 유용하며, 사람이 인지하지 못하는 성분을 식별해 제거할 수 있습니다.
DCT 기반 워터마킹 기법은 공간 영역 기반 기법보다 강력합니다. 저역 통과 필터링, 밝기 및 명암 조절, 블러링(blurring)과 같은 단순한 이미지 처리 연산에 대한 강인성(robustness)이 뛰어납니다.
다만 구현이 복잡하고 연산 비용이 많이 든다는 단점이 있으며, 회전, 스케일링, 크롭핑(cropping)과 같은 기하학적 공격에는 상대적으로 취약합니다.
DCT 도메인 워터마킹은 전역 DCT(Global DCT) 워터마킹과 블록 기반 DCT 워터마킹으로 나눌 수 있습니다. 이미지의 지각적으로 중요한 부분에 워터마크를 삽입하면, 대부분의 압축 방식이 지각적으로 불필요한 부분을 제거하기 때문에 그 자체로 장점이 됩니다.
DCT 기반 워터마킹은 일반적으로 다음과 같은 절차로 진행됩니다.
- 이미지를 8×8 크기의 비중첩(non-overlapping) 블록으로 분할합니다.
- 각 블록에 순방향(forward) DCT를 적용합니다.
- 블록 선택 기준(예: HVS)을 적용합니다.
- 계수 선택 기준(예: 최댓값)을 적용합니다.
- 선택된 계수를 수정하여 워터마크를 삽입합니다.
- 각 블록에 역(inverse) DCT 변환을 적용합니다.
2. 이산 웨이블릿 변환(DWT)
웨이블릿 변환은 디지털 이미지 처리, 압축, 워터마킹 등에 폭넓게 활용되는 현대적인 접근 방식입니다. 이 변환은 서로 다른 주파수와 제한된 길이를 가진 작은 파동, 즉 '웨이블릿(wavelet)'을 기반으로 합니다.
웨이블릿 변환은 이미지를 수평, 수직, 대각선이라는 세 개의 공간적 방향으로 분해합니다. 따라서 웨이블릿은 인간 시각 시스템의 비등방성(anisotropic) 특성을 더 정확하게 반영합니다. DWT 계수의 크기는 매 분해 단계에서 최저 주파수 대역(LL)에서 가장 크고, 나머지 대역(HH, LH, HL)에서는 더 작습니다.
DWT는 오디오·비디오 압축, 오디오 잡음 제거, 무선 안테나 배치 시뮬레이션 등 광범위한 신호 처리 분야에서 일반적으로 활용됩니다.
3. 이산 푸리에 변환(DFT)
DFT는 연속 함수를 주파수 성분으로 변환할 수 있는 기법입니다. 회전, 스케일링, 크롭핑, 평행 이동(translation) 등 기하학적 공격에 대한 강인성이 뛰어난 것이 가장 큰 특징입니다.
DFT는 평행 이동 불변성(translation invariance)을 보입니다. 이미지의 공간적 이동은 위상(phase) 정보에는 영향을 미치지만 크기(magnitude) 정보에는 영향을 주지 않으며, 공간 영역에서의 원형 이동 역시 푸리에 변환의 크기에 영향을 주지 않습니다.
마무리
정리하면, 주파수 영역 워터마킹은 DCT, DWT, DFT라는 세 가지 대표 변환 기법을 통해 구현됩니다. DCT는 단순 이미지 처리 연산에 강하고, DWT는 인간 시각 특성을 정교하게 반영하며, DFT는 기하학적 공격에 강인하다는 각자의 장점을 지니고 있습니다. 따라서 워터마킹의 용도와 예상되는 공격 유형에 맞춰 적절한 변환 기법을 선택하는 것이 중요합니다.