영상처리 2

영상처리에서의 커널 (Kernel)

프로그래밍을 하다보면 커널 (Kernel) 이란 말을 자주보게 될 것이다. 그리고 이 글을 읽는 사람들은 커널이 뭔지 찾기 위해 녹색창 혹은 구글에 커널이란 말을 검색할 것이고 한글로 쳤다면 '대령' 이 나와 오잉 할 것이고 영어로 치면 '핵'이 나와 이게 뭐지 하는 생각이 들 것이다. 각 분야에서 사용되는 커널이란 말의 의미는 다를 것이지만 영상처리에서 커널은 픽셀의 주위에 연산을 해주는 행렬이다. 언제나 그렇듯이 설명에 그림이 포함되지 않으면 이해를 하기 힘들다. 커널을 그림으로 설명하면 아래와 같다. 픽셀 '픽셀'을 설명할 때 사용되었던 행렬이다. 이 행렬의 각 성분에 아래와 같은 행렬을 곱해준다고 생각해보자. (가장자리에서 경계를 초과하는 경우 지금 설명할 부분은 아니기 때문에 언급하지 않겠다.)..

영상처리에서의 침식과 팽창 - 1 (Erosion and Dilation in Image Processing)

블로그를 뒤지다보면 (언젠간 글이 많아져서 뒤질날이 오겠지) 침식과 팽창에 대한 설명, 그리고 픽셀에 대한 설명이 있다. 두 글을 다 읽었다는 전제하에 설명하겠다. 이 글의 순서는 1. 침식과 팽창을 어떤 용도로 사용하는지 알아보고 2. 침식팽창 알고리즘에 대해 설명한 뒤 3. 실제로 그 용도에 맞게 알고리즘을 사용하는 것을 보여줄 것이다. 영상처리에서 침식과 팽창을 하는 이유는 (내 기준에서) 네 가지 정도이다.ㄱ. 단순히 영상에서 작은 것을 크게 보기 위해 (팽창)ㄴ. 단순히 영상에서 작은 것들을 무시하기 위해(침식)ㄷ. 침식 -> 팽창 을 통한 Openingㄹ. 팽창 -> 침식 을 통한 Closing 영상처리에서 침식과 팽창은 특정 픽셀의 주위 부분에 대해 커널을 씌우는 것이다. 침식/팽창에서 사용..