Main Content

imclearborder

영상 테두리에 연결된 밝은 구조체 표시 안 함

설명

예제

J = imclearborder(I)는 영상 I에서 주변보다 밝고 영상 테두리에 연결되어 있는 구조물을 표시하지 않습니다. 이 함수를 사용하여 영상 테두리를 지울 수 있습니다. 회색조 영상에서는 imclearborder가 테두리 구조물을 표시하지 않을 뿐 아니라 전반적인 명암 수준을 낮추는 경향이 있습니다. 출력 영상 J는 입력 영상에 따라 회색조 또는 이진 영상이 될 수 있습니다.

예제

J = imclearborder(I,conn)은 픽셀 연결성 conn을 지정합니다.

예제

모두 축소

단순한 이진 영상을 만듭니다.

BW = [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     0     0
      1     0     0     1     1     1     0     0     0
      0     1     0     1     1     1     0     0     0
      0     0     0     1     1     1     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     0     0     0     0     0];

4-연결성을 사용하여 영상 테두리의 픽셀을 지웁니다. imclearborder는 (5,2)의 픽셀을 지우지 않습니다. 4-연결성에서는 (4,1)의 테두리 픽셀에 연결된 것으로 간주되지 않기 때문입니다.

BWc1 = imclearborder(BW,4)
BWc1 = 9×9

     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     0     0
     0     0     0     1     1     1     0     0     0
     0     1     0     1     1     1     0     0     0
     0     0     0     1     1     1     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     0     0     0     0     0

이제 8-연결성을 사용하여 영상 테두리의 픽셀을 지웁니다. imclearborder는 (5,2)의 픽셀을 지웁니다. 8-연결성에서는 테두리 픽셀 (4,1)에 연결된 것으로 간주되기 때문입니다.

BWc2 = imclearborder(BW,8)
BWc2 = 9×9

     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     0     0
     0     0     0     1     1     1     0     0     0
     0     0     0     1     1     1     0     0     0
     0     0     0     1     1     1     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     0     0     0     0     0

입력 인수

모두 축소

회색조 또는 이진 영상으로, 숫자형 배열 또는 논리형 배열로 지정됩니다.

예: I = imread('pout.tif');

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

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

의미

2차원 연결성

4

경계가 서로 닿으면 픽셀이 연결됩니다. 픽셀의 이웃은 가로 또는 세로 방향으로 인접한 픽셀입니다.

3-by-3 pixel neighborhood with four pixels connected to the center pixel

현재 픽셀은 회색으로 표시됩니다.

8

경계 또는 코너가 서로 닿으면 픽셀이 연결됩니다. 픽셀의 이웃은 가로, 세로 또는 대각선 방향으로 인접한 픽셀입니다.

3-by-3 pixel neighborhood with 8 pixels connected to the center pixel

현재 픽셀은 회색으로 표시됩니다.

3차원 연결성

6

면이 서로 닿으면 픽셀이 연결됩니다. 픽셀의 이웃은 다음 방향으로 인접한 픽셀입니다.

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

3-by-3-by-3 pixel neighborhood with 6 pixels connected to the faces of the center pixel

현재 픽셀은 회색으로 표시됩니다.

18

면 또는 경계가 서로 닿으면 픽셀이 연결됩니다. 픽셀의 이웃은 다음 방향으로 인접한 픽셀입니다.

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

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

3-by-3-by-3 pixel neighborhood with 6 pixels connected to the faces and 12 pixels connected to the edges of the center pixel

현재 픽셀은 큐브의 중앙입니다.

26

면, 경계 또는 코너가 서로 닿으면 픽셀이 연결됩니다. 픽셀의 이웃은 다음 방향으로 인접한 픽셀입니다.

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

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

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

3-by-3-by-3 pixel neighborhood with 6 pixels connected to the faces, 12 pixels connected to the edges, and 8 pixels connected to the corners of the center pixel

현재 픽셀은 큐브의 중앙입니다.

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

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

참고

디폴트가 아닌 연결성을 지정할 경우 입력 영상의 경계에 있는 픽셀이 테두리 픽셀로 간주되지 않을 수 있습니다. 예를 들어, conn = [0 0 0; 1 1 1; 0 0 0]이면 이 연결성 정의에 따라 첫 번째 행과 마지막 행의 요소들은 영상 범위를 벗어난 영역과 연결되지 않기 때문에 테두리 픽셀로 간주되지 않습니다.

데이터형: double | logical

출력 인수

모두 축소

처리된 회색조 또는 이진 영상으로, 지정한 입력 영상에 따라 숫자형 배열 또는 논리형 배열로 반환됩니다.

알고리즘

imclearborder는 다음과 같은 경우 모폴로지 재구성을 사용합니다.

  • 마스크 영상이 입력 영상인 경우.

  • 마스크 영상과 동일한 테두리 부분을 제외한 모든 곳에서 마커 영상이 0인 경우.

참고 문헌

[1] Soille, P., Morphological Image Analysis: Principles and Applications, Springer, 1999, pp. 164-165.

확장 기능

버전 내역

R2006a 이전에 개발됨

참고 항목