더북(TheBook)

OpenCV는 그레이스케일 영상의 히스토그램 평활화를 수행하는 equalizeHist() 함수를 제공합니다. equalizeHist() 함수 원형은 다음과 같습니다.

void equalizeHist( InputArray src, OutputArray dst );

src

입력 영상. 8비트 1채널

dst

출력 영상. src와 크기와 타입이 같습니다.

 

equalizeHist() 함수는 CV_8UC1 타입을 사용하는 그레이스케일 영상만 입력으로 받습니다. 3채널로 구성된 컬러 영상을 equalizeHist() 함수 입력으로 전달하면 에러가 발생하므로 주의해야 합니다. 컬러 영상에서 히스토그램 평활화를 수행하는 방법에 대해서는 10.2.1절에서 따로 설명하겠습니다.

실제 영상에 대하여 히스토그램 평활화를 수행하고 히스토그램을 화면에 출력하는 예제 코드를 코드 5-10에 나타냈습니다. 코드 5-10의 histgoram_equalization() 함수는 equalizeHist() 함수를 이용하여 hawkes.bmp 영상에 대한 히스토그램 평활화를 수행하고, 평활화 전후의 영상과 히스토그램 그래프를 화면에 출력합니다. histgoram_equalization() 함수를 사용하는 전체 예제 코드는 내려받은 예제 파일 중 ch05/histogram 프로젝트에서 확인할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.