Library/opencv

Histogram Specification (히스토그램 명세화)

퓨림노 2010. 4. 15. 09:13

Histogram Specification....

 

Histogram Equalization은 Histogram을 균일한 분포를 가지도록 하여 영상의 품질을 개선시켰다.

그러나 Histogram Specification은 Equalization처럼 Histogram을 무조건 균일하게 분포시키는 것이 아니라, 영상의 Histogram을 사용자가 원하는 모양의 Histogram으로 만들고자 할 때 사용하는 것이다.

즉, 이미 Histogram이 잘 분포되어 있는 영상이 있을 때, 이 영상의 명암 대비를 높이고 싶다거나, 더 밝게 하고 싶다거나, 더 어둡게 하고 싶다거 할 때 사용자의 요구에 맞춘 Histogram모양이 되도록 하는 것이다(Desired Histogram)

 

히스토그램 명세화는 입력으로 원본영상과 Desired Histogram 을 사용한다.

Step1. 원본영상의 히스토그램을 평활화한다.
Step2. 평활화된 영상에 대해 역히스토그램 평활화를 수행한다.

 

평활화된 영상에 대해 역히스토그램 평활호를 수행하기 위해서는 우선, Desired Histogram을 가지고 Inverse Look-Up Table을 만들어야 한다.

 

예를 들어,

4x4 영상

0~7 밝기

를 갖는 영상에 대해

사용자가 밝은 영상(히스토그램이 우측으로 편중된)을 만들고 싶을 경우

즉, 밝기가 밝기값 5, 6, 7에만 집중된 영상을 원할 수 있다.

5에 6, 6에 5, 7에 5개 (총 16화소) 인 영상을 원할 경우

 

밝기    누적값     정규화합     역히스토그램값

0              0              0.0                       0

1              0              0.0                       0

2              0              0.0                       5

3              0              0.0                       5

4              0              0.0                       6

5              6              2.6                       6

6             11              4.8                       7

7             16              7.0                       7

 

이 된다.

역히스토그램값은 각 밝기값을 정규화합값과 비교하여 가장 근접한 정규화합값을 갖는 밝기의 값으로 대체하는 것이다.

밝기 2는 정규화합값 중 2.6에 가장 가깝다. 정규화합값 2.6을 갖는 밝기는 5이다.

그러므로, 밝기 2에 해당하는 화소는 밝기 5에 매칭된다.