CS/영상처리

[영상처리] Thresholding - Global Thresholding, Otsu's Method [컴공과고씨]

시간빌게이츠 2022. 4. 18. 12:01
반응형

영상에서 Thresholding이란 어떤 이미지에서 기준을 정해서 그 값 이상이면 어떤 값, 낮으면 또 어떤 값 이런식으로 정해주는 것이다. 

예시

 

여기서 중요한 것은 기준 T를 어떻게 정할 것이냐가 가장 중요한 요소이다.

 

기본적인 Global thresholding은 임의의 T를 기준으로 클래스를 나눈 후 각 클래스의 평균의 평균을 구해서 그것을 다시 T로 잡고 다시 반복한다. 

이런 식으로 해서 T를 최대한 클래스가 잘 구별되는 쪽으로 가도록 한다.

 

그러나 이 방법에는 문제가 있다. 한 쪽 클래스가 너무 몰려있고 구별하려는 곳이 너무 적을 경우 제대로 된 thresholding 안될 수 있다. 예를 들면

이럴 때 유용한 것이 바로 otsu's method 이다.

 

 

Otsu's Method

이 방법은 평균과 분산을 이용하여 within-class 와 between-class를 이용한 방법이다.

Within-class는 각 클래스들이 평균적으로 얼마나 퍼져있는지를 뜻하고

Between-Class는 클래스간 얼마나 떨어져있는지를 뜻한다.

나머지 그림은 직접 채워 보도록 하자.

 

 

Between class를 구하는 식이다.

 

자 그렇다면 k를 기준으로 between-class를 구했을 때 값이 클수록 잘 분류 했다는 것을 알 수 있다. 왜냐하면 클래스간 거리가 클 수록 분류가 잘 된것이기 때문이다.

그래서 모든 값에 대해 otsu's method를 적용하여 그중에서 가장 큰 k값을 채택하여 thresholding을 해주면 평균으로 무작정 나누는 thresholding 보다 훨씬 더 좋은 결과를 가져올 수 있다.

또한 thresholding을 하기전 잡음을 먼저 제거를 한 후에 thresholding을 하는 것이 훨씬 효과적이다.

 

반응형