주요 콘텐츠

bwconvhull

이진 영상에서 컨벡스 헐 영상 생성

설명

CH = bwconvhull(BW)BW에 있는 모든 객체의 컨벡스 헐을 계산하고 이진 컨벡스 헐 영상인 CH를 반환합니다.

예제

CH = bwconvhull(BW,method)는 컨벡스 헐 영상을 계산하기 위해 원하는 방법을 지정합니다.

CH = bwconvhull(BW,"objects",conn)은 개별 전경 객체를 정의할 때 원하는 연결성을 지정합니다.

예제

모두 축소

회색조 영상을 작업 공간으로 읽어 들입니다. 이 영상을 이진 영상으로 변환하고 합집합 이진 컨벡스 헐을 계산합니다. 마지막으로 객체의 컨벡스 헐을 계산하고 모든 영상을 하나의 Figure 창에 표시합니다.

subplot(2,2,1);
I = imread('coins.png');
imshow(I);
title('Original');

subplot(2,2,2);
BW = I > 100;
imshow(BW);
title('Binary');

subplot(2,2,3);
CH = bwconvhull(BW);
imshow(CH);
title('Union Convex Hull');

subplot(2,2,4);
CH_objects = bwconvhull(BW,'objects');
imshow(CH_objects);
title('Objects Convex Hull');

Figure contains 4 axes objects. Hidden axes object 1 with title Original contains an object of type image. Hidden axes object 2 with title Binary contains an object of type image. Hidden axes object 3 with title Union Convex Hull contains an object of type image. Hidden axes object 4 with title Objects Convex Hull contains an object of type image.

입력 인수

모두 축소

입력 이진 영상으로, 2차원 논리형 행렬로 지정됩니다. 숫자형 입력값의 경우 0이 아닌 픽셀은 1(true)로 간주됩니다.

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

컨벡스 헐 계산에 사용되는 방법으로, 다음 중 하나로 지정됩니다.

설명
"union"모든 전경 객체를 하나의 객체로 간주하여 그에 대한 컨벡스 헐을 계산합니다.
"objects"BW의 각 연결성분의 컨벡스 헐을 개별적으로 계산합니다. CH에는 각 연결성분의 컨벡스 헐이 포함됩니다.

데이터형: char | string

픽셀 연결성으로, 다음 값 중 하나로 지정됩니다. conn 파라미터는 method"objects"인 경우에만 유효합니다.

의미

2차원 연결성

4

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

Center pixel connected to four pixels

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

8

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

Center pixel connected to eight pixels

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

01로 구성된 3×3 행렬을 지정하여 더 일반적인 방식으로 연결성을 정의할 수도 있습니다. 값이 1인 요소는 conn의 중앙 요소를 기준으로 하여 이웃 픽셀의 위치를 정의합니다. 행렬은 그 중앙 요소를 기준으로 대칭이어야 합니다.

데이터형: double

출력 인수

모두 축소

입력 영상에 있는 모든 전경 객체 컨벡스 헐의 이진 마스크로, 2차원 논리형 행렬로 반환됩니다.

버전 내역

R2011a에 개발됨