인공지능관련/이미지 프러세싱

이미지프로세싱1

학위논문통계 2016. 11. 21. 13:42

 

 

 

1.

 

이미지 프레세싱은 포토샵과 같은 이미지 편집 프로그램과 개념이 많이 다릅니다. 이미지 편집은 사람들에게 심리적인 효과를 주기 위해 미적, 또는 미용적인 작업을 하는 것이고요 이미지 프로세싱은 어떤 문제를 해결하기 위해서 하는 작업입니다. 즉 과학적인 작업입니다. 단지 이미지 편집 프로그램이 이미지 프로세싱의 이론을 많이 이용하는 걸로 알고 있습니다.

 

 

 

 

2.

 

이미지 프로세싱은 크게 3개 영역이 있습니다. enhancement(이미지 화질 개선), segmentation(이미지 특정 부분 추출), restoration(이미지 복원)입니다.

 

이미지 enhancement와 이미지 복원과 개념이 좀 햇갈릴 수가 있습니다. 이미지 enhancement는 그냥 이미지 화질을 좀 개선하는 것입니다. 이에 반해 이미지 복원은 훼손된 이미지를 훼손되기 전 원래 이미지를 찾으려고 하는 작업입니다.

 

이미지 복원의 대표적인 예가 광개토왕비가 될 수 있습니다. 우리가 현재 가지고 있는 광개토왕비 이미지는 원래 광개토왕비 이미지에서 비와 바람, 인간 등에 의해 오랜 역사기간 동안 훼손되었다고 보는 것이죠. 즉

 

현재 이미지=부식작업(원래 이미지)+노이즈

 

라는 공식이라 보고 그럼

 

원래 이미지=부식작업의 역함수(현재 이미지-노이즈)

 

 

이렇게 보는 것이죠.

 

 

이 분야는 좀 어렵습니다. 이 분야의 대표적인 논문이 앞에서 여러 번 언급한 German & German 이미지 복원 논문입니다. 여기서 Gibbs Sampler가 나오고 이를 통해 그 동안 계산 불가능하다고 생각한 베이지안 추론을 계산할 수 있게 되었습니다. 이 논문 이후 MCMC 이론과 베이지안 이론이 큰 인기를 얻게 되었고요.

 

 

이미지 추출(segmentation)이 딥런닝에서 나오는 cnn 기법과 가장 관련이 많은 것 같습니다. 물론 이미지 개선과 이미지 복원도 preprocessing 과정에서 사용될 수 있을 겁니다. 이미지 추출은 이미지에서 우리가 관심을 가지고 있는 특정 부분을 인식해 내는 것입니다.

 

 

예를 들어 CCTV에 찍은 차 번호판을 인식하고 싶다고 하죠. 그럼 먼저 이미지 화질 개선이나 이미지 복원 작업을 먼저 합니다. 그럼 다음 차 번호의 윤곽선만을 뽑아내고 싶다는 것이죠. 우리가 알고 싶은 것은 차 번호를 인식하는 것이지 차 번호를 예쁘게 보고 싶은 것은 아니다라는 것이죠. 이미지에서 이런 윤곽선 같은 특정 부위만을 뽑아내는 작업이 바로 이미지 추출입니다.

 

바둑에서 단수, 축, 패 같은 것을 인식하는데 이런 이미지 추출 기법이 사용되지 않았을까 하는 생각이 깊게 듭니다. 즉 흔히 딥 러닝에서 은닉층인 중간과정은 블랙박스로 아무도 모른다고 하는데 cnn의 경우 전혀 그렇지 않을 겁니다.

 

 

3. 화질 개선의 예

그럼 일단 이미지 화질 개선의 예를 한번 보면서 이미지 프로세싱이 이런 작업을 하는 것이구나 한번 느껴 보시죠. 곤잘레스 책에 나오는 가장 기본적인 예입니다. 인터넷에 돌아다니는 이 pdf는 이미지로 캡처한 것이라 화질이 안 좋습니다. 관심있는 분들은 책을 구입하시는 것이 좋을 거라 보입니다.

 

먼저 이 그림은 원 이미지와 이에 해당하는 히스토그램입니다. 앞에서 이야기 했지만 이미지 이쪽에서는 흰색을 255, 검정색을 0으로 처리합니다. 관례인 것 같습니다. 그래서 첫 번째 이미지는 온통 검정색 이미지라 히스토그램에서 0 근처에서 집중되어 있습니다. 두 번째 그림은 휜색이 많이 나와 히스토그램에서 255근처에서도 빈도가 제법 있습니다.

 

 

 

 

 

 

다음 그림은 화질이 개선한 이미지입니다. 첫 번째가 앞의 원 이미지고 두 번째가 화질을 개선한 이미지이고 마지막 칸이 개선된 이미지의 히스토그램입니다.

 

 

 

 

 

그래서 아이디어는 간단합니다. 이미지 값이 집중되어 있으면 가능하면 이미지 값이 균등하게 나오게끔 히스토그램을 평평하게 만들어 주는 것입니다.

 

 

여기서 쓰는 방법은 히스토그램 방법이라 합니다. 그냥 이미지 값의 분포라고 생각하시면 됩니다. 원래 이미지의 히스토그램을 가능하면 평평하게 만들려고 하는 것이 아이디어입니다. 이건 앞에서 표본추출에서도 나온 이론입니다. 확률변수(즉, 이미지에서는 이미지 값) X의 확률분포를 f(x)라 하고, 누적 확률분포를 F(x)라 하면

 

 

U=F(x)

 

는 균등분포를 합니다. 이 이론을 이용한 것입니다. 지난번 블로그에서 그린 이미지를 다시 넣겠습니다.

 

 

다음 글에서는 이 작업을 좀 구체적으로 쓰고 그 다음에는 이미지 추출의 점 추출에 관해서 쓰겠습니다. 왜냐하면 이게 단수, 축, 패를 인식하는데 쓰이는 방법이 아닐까 생각이 들어서요.

 

'인공지능관련 > 이미지 프러세싱' 카테고리의 다른 글

윤곽선 드러내기.  (0) 2016.12.14
윤곽선 드러내기1  (0) 2016.12.07
스무딩2  (0) 2016.12.01
이미지 스무딩1  (0) 2016.11.30
화질 개선1  (0) 2016.11.29