이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

bwareaopen

이진 영상에서 크기가 작은 객체 제거

설명

예제

BW2 = bwareaopen(BW,P)는 이진 영상 BW에서 픽셀 수가 P개보다 적은 연결성분(객체)을 모두 제거하여 또다른 이진 영상 BW2를 생성합니다. 이 연산을 영역 열기라고 합니다.

BW2 = bwareaopen(BW,P,conn)은 연결성분을 모두 제거합니다. 여기서 conn은 사용자가 지정하는 연결성을 의미합니다.

예제

모두 축소

이진 영상을 읽어 들입니다.

BW = imread('text.png');

bwareaopen 함수를 사용하여 픽셀 수가 50개 미만인 객체를 제거합니다.

BW2 = bwareaopen(BW, 50);

원본 영상과 모폴로지 열기 연산이 수행된 영상을 나란히 표시합니다.

imshowpair(BW,BW2,'montage')

입력 인수

모두 축소

이진 영상으로, 임의 차원을 가진 논리형 또는 숫자형 배열로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

객체의 최대 픽셀 수로, 음이 아닌 정수로 지정됩니다.

예: 50

데이터형: double

픽셀 연결성으로, 다음 표에 있는 값 중 하나로 지정됩니다. 디폴트 연결성은 2차원 영상의 경우 8, 3차원 영상의 경우 26입니다.

의미

2차원 연결성

4-연결

경계가 서로 닿으면 픽셀이 연결됩니다. 두 개의 인접한 픽셀이 모두 켜져 있고 가로 또는 세로 방향으로 연결되어 있으면 두 픽셀은 동일한 객체에 속합니다.

8-연결

경계 또는 코너가 서로 닿으면 픽셀이 연결됩니다. 두 개의 인접한 픽셀이 모두 켜져 있고 가로, 세로 또는 대각선 방향으로 연결되어 있으면 두 픽셀은 동일한 객체에 속합니다.

3차원 연결성

6-연결

면이 서로 닿으면 픽셀이 연결됩니다. 두 개의 인접한 픽셀이 모두 켜져 있고 다음 방향으로 연결되어 있으면 두 픽셀은 동일한 객체에 속합니다.

  • 안쪽, 바깥쪽, 왼쪽, 오른쪽, 위쪽, 아래쪽 방향 중 하나

18-연결

면 또는 경계가 서로 닿으면 픽셀이 연결됩니다. 두 개의 인접한 픽셀이 모두 켜져 있고 다음 방향으로 연결되어 있으면 두 픽셀은 동일한 객체에 속합니다.

  • 안쪽, 바깥쪽, 왼쪽, 오른쪽, 위쪽, 아래쪽 방향 중 하나

  • 두 방향의 조합(예: 오른쪽-아래쪽 또는 안쪽-위쪽)

26-연결

면, 경계 또는 코너가 서로 닿으면 픽셀이 연결됩니다. 두 개의 인접한 픽셀이 모두 켜져 있고 다음 방향으로 연결되어 있으면 두 픽셀은 동일한 객체에 속합니다.

  • 안쪽, 바깥쪽, 왼쪽, 오른쪽, 위쪽, 아래쪽 방향 중 하나

  • 두 방향의 조합(예: 오른쪽-아래쪽 또는 안쪽-위쪽)

  • 세 방향의 조합(예: 안쪽-오른쪽-위쪽 또는 안쪽 -왼쪽-아래쪽)

더 높은 차원의 경우, bwareaopen은 디폴트 값 conndef(ndims(BW),'maximal')을 사용합니다.

01로 구성된 3x3x...x3 행렬을 지정하여 모든 차원에 대해 더 일반적인 방식으로 연결성을 정의할 수도 있습니다. 값이 1인 요소는 conn의 중앙 요소를 기준으로 하여 이웃 픽셀의 위치를 정의합니다. conn은 그 중앙 요소를 기준으로 대칭이어야 합니다. 자세한 내용은 Specifying Custom Connectivities 항목을 참조하십시오.

데이터형: double | logical

출력 인수

모두 축소

영역이 열린 영상으로, BW와 크기가 같은 논리형 배열로 반환됩니다.

알고리즘

기본 단계는 아래와 같습니다.

  1. 연결성분을 판별합니다.

    CC = bwconncomp(BW, conn);
  2. 각 성분의 면적을 계산합니다.

    S = regionprops(CC, 'Area');
  3. 크기가 작은 객체를 제거합니다.

    L = labelmatrix(CC);
    BW2 = ismember(L, find([S.Area] >= P));
    

확장 기능

참고 항목

|

R2006a 이전에 개발됨