Main Content

boundarymask

분할의 영역 경계선 찾기

설명

예제

mask = boundarymask(L)은 입력 레이블 행렬 L의 영역 경계선을 나타내는 마스크를 계산합니다. 출력값 mask는 경계선 위치에서는 true이고 경계선이 아닌 위치에서는 false인 논리형 영상입니다.

mask = boundarymask(BW)는 입력 이진 영상 BW의 영역 경계선을 계산합니다.

mask = boundarymask(___,conn)conn으로 지정된 연결성을 사용하여 영역 경계선을 계산합니다.

예제

모두 축소

영상을 작업 공간으로 읽어 들입니다.

I = imread('kobi.png');

레이블 행렬로 반환되는, 영상의 슈퍼픽셀 표현을 만듭니다.

L = superpixels(I,100);

레이블 행렬을 표시합니다.

imshow(label2rgb(L))

Figure contains an axes object. The axes object contains an object of type image.

레이블 행렬의 영역 경계선을 찾습니다.

mask = boundarymask(L);

labeloverlay 함수를 사용하여 원래 영상 위에 경계선 마스크를 표시합니다. 레이블 행렬의 영역 경계선이 1픽셀 너비의 녹청색 선으로 표시됩니다.

imshow(labeloverlay(I,mask,'Transparency',0))

Figure contains an axes object. The axes object contains an object of type image.

입력 인수

모두 축소

레이블 행렬로, 2차원 논리형 행렬 또는 음이 아닌 숫자로 구성된 2차원 숫자형 행렬로 지정됩니다.

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

이진 영상으로, L과 크기가 같은 숫자형 행렬 또는 논리형 행렬로 지정됩니다.

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

픽셀 연결성으로, 4 또는 8로 지정됩니다.

의미

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

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

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

출력 인수

모두 축소

영역 경계선의 래스터화된 그리드로, 입력 영상과 크기가 동일한 2차원 논리형 행렬로 지정됩니다. 입력 영상에서 어떤 픽셀의 값이 P이고 그 이웃 픽셀의 값이 P와 다를 경우, 이 어떤 픽셀에 대응하는 mask의 픽셀은 true입니다.

데이터형: logical

확장 기능

버전 내역

R2016a에 개발됨