디더링(Dithering)의 개념과 기법들
- 디더링: 제한된 색상 팔레트를 사용하여 더 풍부한 색상 표현을 시뮬레이션하는 기술
- 인간의 시각 시스템이 근접한 픽셀들의 색상을 혼합하여 인식하는 특성을 활용
- 디더링은 주로 색상 심도가 제한된 디스플레이나 인쇄 매체에서 연속적인 톤을 표현하기 위해 사용
- 디더링의 기본 개념
- 다음의 상황에 유용함
- 색상 양자화: 24비트 이미지(1,677만 색상)를 8비트(256색상) 또는 1비트(흑백) 이미지로 변환할 때
- 그라데이션 표현: 제한된 색상으로 부드러운 색상 전환 효과 생성
- 색상 밴딩 감소: 색상 전환 경계에서 발생하는 계단 현상 완화
- 디더링은 기본적으로 픽셀 단위로 양자화 오류를 분산시켜, 제한된 색상 표현에서도 원본 이미지와 유사한 시각적 효과를 만들어냄
- *양자화 오류: 아날로그 신호가 디지털 신호로 바뀌는 과정에서 ADC(Analog to Digital Converter)의 비트 수에 따라 정해지는 디지털화된 값과 실제 아날로그 신호에서 샘플링 되어야 될 값들의 차이가 발생하는 걸 말함
주요 디더링 기법
바이어(Bayer) 디더링
- 바이어 행렬이라고 불리는 임계값 패턴을 사용하는 순서형 디더링 기법
바이어 행렬 구조
바이어 행렬은 2ⁿ × 2ⁿ 크기의 행렬로, 각 위치에 임계값을 배치함
기본 2×2 바이어 행렬:
0 2
3 1
이 행렬은 재귀적으로 확장하여 더 큰 크기의 행렬을 생성할 수 있음
4×4 바이어 행렬:
0 8 2 10
12 4 14 6
3 11 1 9
15 7 13 5
바이어 디더링 과정
- 이미지의 각 픽셀 위치 (x, y)에 대응하는 바이어 행렬의 임계값을 찾음
- 원본 픽셀 값이 정규화된 임계값보다 크면 흰색(1), 작으면 검은색(0)으로 설정
장점: 계산이 간단하고 패턴이 규칙적