이미지를 특정 부분만 강조하여 보고싶은 경우가 있다. 이를 이미지를 이진화한다. 라고 표현하는데 식은 다음과 같다.
다음 식에서 j,i 는 이미지 내의 픽셀의 좌표이며 ,f(j,i) 는 해당 좌표의 명암 값이다.
T 는 threshold 값을 의미하는데 임계치 즉 특정 값을 의미한다.
즉 , 특정 좌표에 명암 값이 임계치보다 크거나 같으면 1이라는 값을 그 반대라면 0이라는 값을 준다가 이진화식이다.
이미지를 0아님 1 둘중 하나로 표현해버리는 엄청난 식이다 ㅎ;
그렇다면 저 T 값을 어떻게 정해지는 걸까? 감으로?
이를 해결하기위해 오추라는 사람이 알고리즘을 발명했다. 이름하여 오추 알고리즘
오츠 알고리즘 : 이미지 내에서 사물과 배경을 나눠주는 최적의 임계치 픽셀값 찾기.
T(임계치)란 무엇인가? 이미지 내에서 특정 사물과 배경을 구분할때 사물은 분명 사물끼리 비슷한 명암을 가질것이고 사물과 배경은 어느정도 다른 명암을 가질 것일텐데 이 사물과 배경을 기가막히게 구분해주는 명암의 수치를 의미한다.
여기서부터 시작이다. 픽셀별로 명암의 수치가 존재하는데 히스토그램을 정의하면 0~255까지의 픽셀이 가질 수 있는 값을 전체 픽셀 내에서 각각 몇개씩 가지는지 알 수 있다.
(히스토그램의 자세한 설명은 다른 글을 통해 작성하고자 한다.)
히스토그램을 통해 사물내 특정 명암값이 얼마나 많은지를 알아낼 수 있고(1) 사물과 배경의 명암값이 얼마나 다른지(2)를 알아낼 수 있는데 , (1)을 클래스 내의 분산이 낮다 => 유사도가 높다 (2)를 클래스 간의 분산이 높다 => 유사도가 낮다라고 한다.
임계치를 픽셀값 (강도) 인 0~ 255까지로 하나씩 가정하면서 이 수치가 가장 최적의 T인지 찾는 알고리즘을 오츠 알고리즘이라고 할 수 있다. T = i 일때 클래스 내 분산값이 가장 작으면서 클래스 간 분산값이 높은 T를 찾는 것이다.