[디지털 영상 처리] Contrast Stretching
Contrast
가장 어두운 영역으로부터 가장 밝은 영역의 범위

* 색을 많이 쓰면 대비가 좋을 확률이 높아진다.
Mach Band Effect (마하 밴드 효과)
서로 다른 광도가 인접해 있는 경우 발생하는 효과. 광도가 급격히 변화하는 데에 대한 시각 시스템의 반응은 경계부분을 강조하여 보는 경향이 있다.

즉, 띠의 경계에서 색이 더 진해보이거나 더 밝게 보이는 것이다.
영상에서의 대비는 매우 중요한 요소이다.
Contrast Stretching
특정 밝기값에 픽셀이 몰려있으면 시각으로 구별하기 쉽지 않다. 따라서 특정 부분의 명암 영역을 stretching하여 이미지가 분명하게 보일 수 있게 하는 것이 목표이다.
contrast stretching은 point processing의 한 종류로서, contrast를 다루는 만큼 다른 변환보다 중요한 포지션을 가진다.
- Basic contrast stretching
- Ends-in-search
- Simple transformation function
- Histogram processing
- Histogram equalization, Histogram specification
Basic contrast stretching
모든 범위의 화소값을 포함하도록 영상을 확장한다.
특정부분 중앙에 명암값이 치우치는 히스토그램을 가진 영상에 가장 잘 적용된다.

먼저 min 픽셀을 0에 가깝게 조정한 후 나머지 픽셀들을 정규화 시킨다. (위 식에서 255를 곱해야 new pixel 값이 된다.)

낮은 명암대비를 가진 영상의 질을 향상시킬 수 있는 유용한 도구로서 가우시안(Gaussian) 분포를 가질 때 가장 잘 적용된다.
Ends-in-search
모든범위의 명암값을 갖지만 히스토그램의 특정 부분에 화소들이 치우친 영상에 가장 잘 적용된다.
- 일정한 양의 화소가 흰색 또는 검은색을 갖도록 지정
- 알고리즘: 2개의 임계값(low, high) 사용
- low보다 낮으면 0, high보다 높으면 255로 처리
→ 그 후 basic contrast stretching 사용
- low보다 낮으면 0, high보다 높으면 255로 처리

그림1과 다르게 위 original image의 히스토그램은 low값이 0과 가까워서 basic contrast stretching이 큰 효과를 보지 못한다. 따라서 각각의 임계값을 0과 255로 처리해버리면 보다 확실한 대비 개선 효과를 기대할 수 있다.
Simple transformation function

low, high의 대비는 낮추고 가운데는 높인 그래프이다.
특정값들을 완전히 먹어버리지 말고 해당 이미지의 histogram에 따라 변환정도를 달리한 것이다.