visboundaries
영역 경계선 플로팅
구문
설명
visboundaries(
는 이진 영상 BW
)BW
의 영역 경계선을 현재 좌표축에 그립니다. BW
는 2차원 이진 영상이며 논리값 true
인 픽셀은 전경 영역에 속하고 논리값 false
인 픽셀은 배경을 구성합니다. visboundaries
는 bwboundaries
를 사용하여 영상에서 경계 픽셀 위치를 찾습니다.
visboundaries(
는 B
)B
에 의해 지정된 영역 경계선을 그립니다. 여기서 B
는 영역의 경계 픽셀 위치를 포함하는 셀 배열로, bwboundaries
에서 반환하는 첫 번째 출력값과 유사한 구조를 가집니다.
visboundaries(
는 영역 경계선을 ax
,___)ax
로 지정된 좌표축에 그립니다. ax
를 첫 번째 입력 인수로 지정하고 뒤이어 위에 열거된 구문에 나와 있는 입력 인수를 원하는 대로 조합하여 지정하십시오.
visboundaries(___,
는 이름-값 인수를 사용하여 경계선의 추가 속성을 지정합니다.Name,Value
)
는 경계선에 대한 핸들 h
= visboundaries(___)h
를 반환합니다.
예제
경계선을 계산하고 영상에 플로팅하기
영상을 읽어 들입니다.
BW = imread('blobs.png');
경계선을 계산합니다.
B = bwboundaries(BW);
영상을 표시하고 영상에 경계선을 플로팅합니다.
imshow(BW)
hold on
visboundaries(B)
분할 결과 시각화하기
영상을 읽어 들인 후 이를 표시합니다.
I = imread('toyobjects.png'); imshow(I) hold on
능동 윤곽선(스네이크) 알고리즘을 사용하여 영상을 분할합니다. 먼저, 분할하려는 객체에 가깝게 초기 윤곽선 위치를 지정합니다.
mask = false(size(I)); mask(50:150,40:170) = true;
원본 영상 위에 초기 윤곽선을 파란색으로 표시합니다.
visboundaries(mask,'Color','b');
'edge'
방법과 200회의 반복을 사용하여 영상을 분할합니다.
bw = activecontour(I,mask,200,'edge');
원본 영상 위에 최종 윤곽선을 빨간색으로 표시합니다.
visboundaries(bw,'Color','r'); title('Blue - Initial Contour, Red - Final Contour');
입력 인수
BW
— 이진 영상
논리형 배열
이진 영상으로, 논리형 배열로 지정됩니다.
데이터형: logical
B
— 경계 픽셀 위치
Q×2 행렬로 구성된 셀형 배열
경계 픽셀 위치로, 셀형 배열로 지정됩니다. 각 셀에는 Q×2 행렬이 포함되며, 여기서 Q는 해당 영역의 경계 픽셀 수입니다. 이 Q×2 행렬의 각 행에는 경계 픽셀의 행 좌표와 열 좌표가 포함되어 있습니다.
데이터형: cell
ax
— 경계선을 그릴 영상
현재 좌표축 (디폴트 값) | axes 객체
경계선을 그릴 영상으로, axes 객체로 지정됩니다.
데이터형: double
이름-값 인수
선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN
으로 지정합니다. 여기서 Name
은 인수 이름이고 Value
는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.
R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name
을 따옴표로 묶으십시오.
예: visboundaries(bw,'Color','b');
Color
— 경계 색
'red'
(디폴트 값) | RGB 3색 | 16진수 색 코드 | 색 이름 | 짧은 색 이름
경계 색으로, RGB 3색, 16진수 색 코드, 색 이름 또는 짧은 색 이름으로 지정됩니다.
사용자 지정 색의 경우에는 RGB 3색 또는 16진수 색 코드를 지정하십시오.
RGB 3색은 요소를 3개 가진 행 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 지정합니다. 농도의 범위는
[0,1]
이어야 합니다(예:[0.4 0.6 0.7]
).16진수 색 코드는 string형 스칼라 또는 문자형 벡터로, 해시 기호(
#
)로 시작하고 그 뒤에 3자리 또는 6자리의 16진수 숫자(0
에서F
사이일 수 있음)가 옵니다. 이 값은 대/소문자를 구분하지 않습니다. 따라서 색 코드"#FF8800"
,"#ff8800"
,"#F80"
및"#f80"
은 모두 동일합니다.
몇몇의 흔한 색은 이름으로 지정할 수도 있습니다. 다음 표에는 명명된 색 옵션과 그에 해당하는 RGB 3색 및 16진수 색 코드가 나와 있습니다.
색 이름 | 짧은 이름 | RGB 3색 | 16진수 색 코드 | 실제 표시 색 |
---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" | |
"green" | "g" | [0 1 0] | "#00FF00" | |
"blue" | "b" | [0 0 1] | "#0000FF" | |
"cyan" | "c" | [0 1 1] | "#00FFFF" | |
"magenta" | "m" | [1 0 1] | "#FF00FF" | |
"yellow" | "y" | [1 1 0] | "#FFFF00" | |
"black" | "k" | [0 0 0] | "#000000" | |
"white" | "w" | [1 1 1] | "#FFFFFF" | |
"none" | 해당 없음 | 해당 없음 | 해당 없음 | 색 없음 |
다음은 MATLAB®이 여러 유형의 플롯에서 사용하는 디폴트 색의 RGB 3색과 16진수 색 코드입니다.
RGB 3색 | 16진수 색 코드 | 실제 표시 색 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
예: 'Color','r'
예: 'Color','green'
예: 'Color',[0 0 1]
예: 'Color','#FF8800'
LineStyle
— 경계 선 스타일
'-'
(디폴트 값) | '--'
| ':'
| '-.'
| 'none'
경계 모서리의 선 스타일로, 'LineStyle'
과 함께 아래 표에 나온 선 지정자가 쉼표로 구분되어 지정됩니다.
선 스타일 | 설명 | 결과 선 |
---|---|---|
"-" | 실선 |
|
"--" | 파선 |
|
":" | 점선 |
|
"-." | 일점 쇄선 |
|
"none" | 선 없음 | 선 없음 |
예: 'LineStyle','-.'
LineWidth
— 경계선에 사용된 선의 너비
2
(디폴트 값) | 양수
경계선에 사용된 선의 너비로, 양수로 지정됩니다. 이 값을 포인트 단위로 지정하십시오(1포인트 = 1/72인치).
예: 'LineWidth',4
데이터형: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
EnhanceVisibility
— 그린 경계선을 대비 기능으로 향상시킬지 여부
true
또는 1
(디폴트 값) | false
또는 0
그린 경계선을 대비 기능으로 향상시켜 다양한 배경에서 가시성을 개선할지 여부로, 숫자형 또는 논리값 1
(true
) 또는 0
(false
)으로 지정됩니다.
예: 'EnhanceVisibility',true
데이터형: logical
출력 인수
버전 내역
R2015a에 개발됨
참고 항목
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)