Histogram Equalization에 대한 설명
히스토그램 평활화(Histogram Equalization)는 이미지의 contrast(명암대비)를 개선하기 위한 기법 중 하나임: Image Enhancement
- 일반적으로 이미지의 히스토그램이 특정 영역에 집중되어 있으면, 해당 이미지의 contrast가 낮다고 볼 수 있음: low contrast
- 반면, 히스토그램이 이미지의 전체 범위에 고르게 분포되어 있을 때, 그 이미지는 명암 대비가 좋다고 평가됨: High contrast
아래 그림의 경우와 같이 Histogram을 균일하게 해주는 작업을 Histogram Equalization이라고 부름.
관련 gist
https://gist.github.com/dsaint31x/ba25af517ac9807d3964709d12816384
1. 히스토그램과 명암 대비
- Histogram 은 이미지 내 각 픽셀의 밝기 값이 얼마나 자주 나타나는지를 보여주는 도구임.
- 명암 대비가 낮은 이미지는 히스토그램이 특정한 밝기 영역에 몰려있어, 전체 이미지의 밝기 차이가 적음.
- 반면, 명암 대비가 높은 이미지는 히스토그램이 고르게 분포되어 있어 밝기 차이가 큼.
2. Histogram Equlization 의 목적
Histogram Equlization (HE)은 히스토그램을 전체 밝기 범위(흔히, 0~255)로 균등하게 분포시키는 작업임.
이를 통해 이미지의 contrast를 자동으로 최적화하여 , 전체적인 시각적 선명도를 개선하는 것이 목적임.
3. HE의 원리
HE는 각 픽셀의 Cumulative Distribution Function (CDF)을 이용하여 구해짐.
CDF는 밝기 값이 특정 값 이하인 픽셀의 수를 누적하여 표현한 함수임.
이후 이 CDF 값을 다음의 히스토그램 평활화 공식에 대입하여 새로운 픽셀 값을 계산하게 됨.
$$\text{dst}(x, y) = \text{round}\left( I_{\text{max}} \times \frac{\text{cdf}(\text{src}(x, y))}{N} \right)$$
where:
- $I_{\text{max}}$ 는 이미지의 최대 밝기 값(보통 255)임,
- $\text{cdf}(\text{src}(x, y))$ 는 원본 이미지 픽셀의 CDF 값임,
- $N$ 은 총 픽셀 수임.
- $\text{cdt}(g) = \sum _{0\le i \le g} H(i)$
즉, 쉽게 설명하면
i-th pixel의 intensity $x_i$의 Histogram 값은 $x_i$의 발생빈도 $n_i$임.
$$H(x_i) = n_i$$
이 경우, $x_i$에 대한 probability mass function $p$는 다음과 같이 정의됨.
$$p(x_i) = \frac{n_i}{N}$$
보통의 uint8의 single channel의 gray-scale image라면 $i=0,1,\dots, 255$임.
이 때, $x_i$에 대한 HE의 결과값 $s_i$는 다음과 같음.
$$s_i = 255 \times \sum^i_{k=0} p(x_k) = 255 \times \sum^i_{k=0} \frac{n_k}{N}, \text{ where } k=0,1,\dots,255$$
4. 결론
히스토그램 평활화는 이미지 처리에서 매우 유용한 기법으로, 이미지를 더 선명하고 명확하게 만드는 데 기여함.
이는 주로 저명암 대비 이미지를 개선하는 데 사용되며, 히스토그램을 균일하게 분포시키는 원리를 통해 달성됨.
이 과정을 통해, 이미지의 픽셀 값들이 조정되고, 보다 고르게 분포된 히스토그램을 갖게 되어 최종적으로 명암 대비가 향상된 이미지를 얻을 수 있음.
같이보면 좋은 자료들
2024.10.07 - [Programming/DIP] - [DIP] Contrast Limited Adaptive Histogram Equalization (CLAHE)
2022.09.26 - [Programming/DIP] - [DIP] Local Contrast
2023.10.04 - [Programming/DIP] - [DIP] Image Quality 관련 정량화 지표들
'Programming > DIP' 카테고리의 다른 글
[CV] Median Sensor Resolution in Consumer Cameras (0) | 2024.10.09 |
---|---|
[DIP] Histogram Stretching (0) | 2024.10.07 |
[DIP] Contrast Limited Adaptive Histogram Equalization (CLAHE) (0) | 2024.10.07 |
[DIP] Histogram Matching: Image Enhancement (0) | 2024.10.07 |
[DIP] Moirè (모아레) (and Beat) (3) | 2024.09.30 |