이전 포스터에서는 픽셀 기반 처리와 영역 기반 처리에 대해 알아보았다. 이러한 처리 기법들은 궁극적으로 영상을 개선하거나 더 효율적으로 목표를 달성하기 위한 방법으로 사용되었다.
이번에는 형태 기반 영상 처리 방법에 대해 살펴보고자 한다. 특히, 사물이나 객체를 더욱 명확하게 식별할 수 있도록 돕는 침식 연산, 팽창 연산, 열림 연산, 닫힘 연산에 대해 이야기해보도록 하겠다. 더 나아가, 이러한 영상 처리 기법을 활용하여 세포 수를 계산하는 실제 방법도 다루도록 하겠다.
1. 침식 연산
침식 연산은 물체의 크기를 줄이는 기법이다. 일반적으로 배경이 0인 경우, 최소값 필터를 사용한다. 3x3 마스크를 적용하여 중심 픽셀 주변의 8개 픽셀 값 중 가장 작은 값을 중심 픽셀 값으로 대체한다. 예를 들어, 다음 표에서 최솟값 필터를 적용한 결과를 보겠다.
0 | 255 | 255 |
230 | 130 | 120 |
230 | 255 | 120 |
이 값을 작은 순서대로 나열하면
0
120
130
230
255
이다. 위에 설명대로 하면 최솟값은 0이다. 그러므로 표의 가운데 값은 다음과 같이 표현할 수 있다.
0 | ||
침식 연산은 주로 잡음 제거나 경계 윤곽을 부드럽게 하는 데 사용된다. 그러나 배경이 255일 경우, 침식 연산이 아닌 팽창 효과가 나타날 수 있으므로 신중한 접근이 필요하다.
2. 팽창 연산
팽창 연산은 물체의 크기를 확장하는 기법이다. 배경이 0인 경우, 최댓값 필터를 사용하여 주변 픽셀 중 가장 큰 값을 선택해 중심 픽셀 값을 대체한다. 아래 표는 최댓값 필터를 적용한 결과다.
255 | 0 | 120 |
200 | 255 | 160 |
230 | 255 | 230 |
이 값을 작은 순서대로 나열하면
0
120
160
200
230
255
이다. 위에 설명대로 하면 최댓값은 255이다. 그러므로 표의 가운데 값은 다음과 같이 표현할 수 있다.
255 | ||
팽창 연산은 객체를 부각시키거나 빈 공간을 채우는 데 유용하다. 다만 배경이 255일 경우, 팽창 연산이 침식처럼 동작할 수 있어 신중한 적용이 필요다.
3. 열림 연산
열림 연산은 침식 연산을 먼저 적용한 후, 팽창 연산을 수행하는 방식이다. 이는 서로 붙어 있는 물체를 분리하거나 잡음을 제거하는 데 효과적다.
이 연산은 프랑스의 수학자 장 세라(Jean Serra)와 조르주 마텔(Georges Matheron)이 고안한 형태학적 기법으로, 물체의 외곽을 열어 작은 물체를 제거한다는 의미에서 '열림'이라는 이름이 붙여졌다. 예를 들어, 위 사진에서 두 개의 원이 열림 연산을 통해 분리된 모습을 확인할 수 있다.
4. 닫힘 연산
열림 연산과 반대로, 닫힘 연산은 팽창 연산을 먼저 적용한 후 침식 연산을 수행한다. 닫힘 연산은 객체의 틈이나 작은 구멍을 메우는 데 사용되며, 배경이 255인 경우 물체의 경계를 더 명확하게 할 수 있다.
5. 세포수 계산
이전에는 영상 처리 기법을 통해 영상을 변형하는 방법에 대해 살펴보았다. 이번에는 그와는 다른 것을 해보려고 한다. 바로 세포 수를 계산하는 방법에 대해 설명해 보겠다.
먼저, 세포 수를 정확하게 계산하기 위해서는 세포의 핵이 명확히 드러나도록 해야 한다. 이를 위해 첫 번째로 이진화를 수행하여 이미지의 세포와 배경을 구분하고, 두 번째로 역상 연산을 적용해 배경을 0으로 설정한다. 그 후, 열림 연산을 통해 작은 잡음이나 불필요한 점들을 제거함으로써 세포 수를 계산하기 적합한 상태로 만든다.
이제 세포 수를 계산하는 단계이다. 세포를 계산하기 위해서는 흰색(255) 픽셀로 이루어진 영역을 라벨링하고, 각 라벨이 서로 다른 세포를 나타내도록 해야 한다.
이를 위해 배경 픽셀(0)이 아닌 세포의 일부 픽셀에서 시작하여, 8방향으로 연결된 영역을 탐지하는 방법을 사용한다. 이 과정에서 새로운 흰색 픽셀을 발견할 때마다 해당 영역에 고유한 라벨을 할당한다.
라벨링이 완료되면, 각 라벨은 고유한 세포를 의미하며, 라벨의 총 개수를 통해 세포 수를 정확하게 계산할 수 있다.
이러한 방식으로 세포 수를 정확하게 계산할 수 있다. 아래의 표는 이 과정을 시각적으로 나타낸 것이다.
0 | 0 | 0 | 0 | 0 | 0 | 0 | 255 | 255 | 255 |
0 | 0 | 255 | 255 | 0 | 0 | 0 | 0 | 255 | 255 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
255 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
255 | 255 | 255 | 255 | 0 | 0 | 0 | 0 | 0 | 0 |
255 | 255 | 255 | 0 | 255 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
255 | 255 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
255 | 255 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
세포 수 계산을 수행하면 다음과 같은 결과가 나다.
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 |
0 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1 | 1 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
3 | 3 | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 |
3 | 3 | 3 | 0 | 3 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
최종 결과로 4개의 세포가 계산된. 여기서 주목해야 할 점은, 3으로 표시된 영역이다. 이 부분은 서로 연결된 세포들이며, 8방향으로 연결된 픽셀을 인식하여 세포로 간주된다는 점을 강조하고 싶다. 이를 통해 세포 간의 관계를 보다 명확히 이해할 수 있다.
이와 같은 형태 기반 영상 처리 기법들은 세포 연구뿐만 아니라 여러 분야에서 응용될 수 있는 가능성을 지니고 있다. 지속적인 연구와 개발을 통해 이 기술들이 보다 널리 사용되기를 기대한다.
'Computer Science(컴퓨터 과학) > 영상처리' 카테고리의 다른 글
영상처리 - 기하학적 처리 - 1(확대, 축소) (1) | 2024.11.25 |
---|---|
영상처리 정리1 (0) | 2024.10.20 |
영상처리 - 영역기반 처리3 (잡음 제거, 컬러영상에서 영역 기반 처리) (0) | 2024.10.10 |
영상처리 - 영역기반 처리2 (영상 흐리게 하기, 선명화, 경계선 검출) (0) | 2024.10.10 |
영상처리 - 영역기반 처리1 (회선, 영상의 경계처리) (0) | 2024.10.10 |