히스토그램 매칭

영상 처리에서 히스토그램 매칭() 또는 히스토그램 지정()은 이미지의 히스토그램이 특정한 히스토그램과 일치하도록 이미지를 변환하는 과정이다. 잘 알려진 히스토그램 평탄화 방법은 지정된 히스토그램이 균등하게 분포된 특수한 경우에 해당한다.

상대적 검출기 보정 기술로서 검출기 응답의 균형을 맞추기 위해 히스토그램 매칭을 사용할 수 있다. 서로 다른 센서, 대기 조건 또는 전체 조명 아래에서 동일한 위치의 동일한 국부 조명(예: 그림자)으로 획득된 두 이미지를 정규화하는 데 사용될 수 있다.

 구현 
회색조 입력 이미지 X를 가정해 보자. 이 이미지는 확률 밀도 함수 pr(r)를 가지며, 여기서 r은 회색조 값이고 pr(r)은 해당 값의 확률이다. 이 확률은 이미지의 히스토그램으로부터 다음과 같이 쉽게 계산할 수 있다.

여기서 nj는 회색조 값 rj의 빈도이며, n은 이미지의 전체 픽셀 수이다.

이제 원하는 출력 확률 밀도 함수 pz(z)를 고려하자. pr(r)을 pz(z)로 변환하기 위한 변환이 필요하다.
섬네일|원하는 출력 CDF에 매칭된 입력 이미지 CDF
각 pdf(확률 밀도 함수)는 다음과 같이 누적 분포 함수로 쉽게 매핑될 수 있다.





여기서 L은 가능한 전체 회색조 단계의 수이다(표준 이미지의 경우 256).

핵심 아이디어는 X의 각 r 값을 원하는 pdf에서 동일한 확률을 가진 z 값으로 매핑하는 것이다. 즉, S(rj) = G(zi) 또는 z = G−1(S(r))이다.

 예시 
다음 입력 회색조 이미지를 참조 히스토그램에 맞게 변경하고자 한다.

439x439px

입력 이미지는 다음과 같은 히스토그램을 가진다.
섬네일|1002x1002px|입력 이미지의 히스토그램|none
낮은 회색조 단계를 강조하기 위해 이 참조 히스토그램에 매칭될 것이다.

 알고리즘 
참조 이미지와 대상 이미지라는 두 이미지가 주어지면, 각각의 히스토그램을 계산한다. 이어서 두 이미지 히스토그램의 누적 분포 함수를 계산한다. 참조 이미지의 경우 , 대상 이미지의 경우 이다. 그런 다음 각 회색조 단계 에 대해, 를 만족하는 회색조 단계 를 찾으며, 이것이 히스토그램 매칭 함수의 결과인 가 된다. 마지막으로 참조 이미지의 각 픽셀에 함수 을 적용한다.

 정확한 히스토그램 매칭 
전형적인 실제 응용 분야에서 히스토그램 매칭은 지정된 히스토그램에 근사할 뿐이다. 원본 이미지에서 특정 값을 가진 모든 픽셀은 출력 이미지에서 단 하나의 값으로만 변환되어야 하기 때문이다.

정확한 히스토그램 매칭(Exact histogram matching)은 이산 이미지에 대한 변환을 찾아 그 히스토그램이 지정된 히스토그램과 정확히 일치하도록 하는 문제이다. 이를 위해 여러 기술이 제안되었다. 한 가지 단순한 접근 방식은 이산값 이미지를 연속값 이미지로 변환하고 각 픽셀에 작은 무작위 값을 추가하여 값이 겹치지 않고 순위를 매길 수 있도록 하는 것이다. 그러나 이는 출력 이미지에 노이즈를 유발한다.

이 때문에 매칭된 출력 히스토그램에 구멍이나 빈 지점이 생길 수 있다.

 다중 히스토그램 매칭 
히스토그램 매칭 알고리즘은 두 히스토그램 집합 사이의 단조 매핑을 찾도록 확장될 수 있다. 두 히스토그램 집합 와 가 주어졌을 때, 두 집합 사이의 거리를 동시에 최소화하는 최적의 단조 색상 매핑 을 계산한다. 즉, 이며, 여기서 는 두 히스토그램 사이의 거리 척도이다. 최적의 해는 동적 계획법을 사용하여 계산된다.

 같이 보기 
 히스토그램 평탄화
 이미지 히스토그램
 색상 매핑

 각주 

분류:영상 처리