• 21행 적응형 이진화의 블록 크기 지정을 위한 트랙바를 생성합니다.
• 22행 트랙바의 초기 위치를 11로 설정합니다.
• 33행 bsize 값이 짝수이면 1을 빼서 홀수로 만듭니다.
• 34행 bsize 값이 3보다 작으면 3으로 설정합니다.
• 37행 트랙바에서 설정한 블록 크기를 이용하여 적응형 이진화를 수행합니다. 가우시안 가중 평균을 사용하고, 블록 평균에서 5를 뺀 값을 임계값으로 사용합니다.
코드 11-2의 adaptive 프로그램 실행 결과를 그림 11-7에 나타냈습니다. 그림 11-7(a)는 불균일한 조명 성분을 가지고 있는 sudoku.jpg 입력 영상입니다. adaptive 프로그램이 처음 실행되면 트랙바의 블록 크기가 11로 설정되고, 이때 적응형 이진화 실행 결과를 그림 11-7(b)에 나타냈습니다. 전체적으로 스도쿠 글씨와 사각형 외곽선이 검은색으로 이진화되어 구분이 잘 되는 것을 확인할 수 있습니다. 그림 11-7(c)는 블록 크기를 51로 설정한 결과입니다.
▲ 그림 11-7 다양한 블록 크기를 사용한 적응형 이진화