Main Content

insertShape

영상 또는 비디오에 형태 삽입

설명

예제

RGB = insertShape(I,shape,position)shape가 삽입된 트루컬러 영상을 반환합니다. 입력 영상 I는 트루컬러 또는 회색조 영상일 수 있습니다. 픽셀 값을 덮어써서 형태를 그립니다.

예제

RGB = insertShape(___,Name=Value)는 위에 열거된 구문 외에 하나 이상의 이름-값 인수를 사용하여 옵션을 지정합니다. 예를 들어 insertShape(I,"circle",[150 280 35],LineWidth=5)는 선 너비 값을 5로 설정합니다.

예제

모두 축소

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

I = imread("peppers.png");

테두리 선 너비가 5인 원을 영상에 그립니다.

RGB = insertShape(I,"circle",[150 280 35],LineWidth=5);

영상에 채워진 삼각형과 채워진 육각형을 그립니다.

pos_triangle = [183 297 302 250 316 297];
pos_hexagon = [340 163 305 186 303 257 334 294 362 255 361 191];
RGB = insertShape(RGB,"filled-polygon",{pos_triangle,pos_hexagon},...
    Color=["white","green"],Opacity=0.7);

결과 영상을 표시합니다.

imshow(RGB);

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

입력 인수

모두 축소

입력 영상으로, 트루컬러 또는 2차원 회색조로 지정됩니다.

데이터형: single | double | int16 | uint8 | uint16

형태의 유형으로, "rectangle", "filled-rectangle", "line", "polygon", "filled-polygon", "circle" 또는 "filled-circle", "projected-cuboid"로 지정됩니다.

데이터형: char

형태의 위치로, 표에 설명된 형태 유형에 따라 지정됩니다.

형태위치
"rectangle"
"filled-rectangle"
하나 이상의 사각형인 경우 M×4 행렬을 지정합니다. 여기서 각 행은 사각형을 [xywidthheight]로 지정합니다.

[x1y1width1height1x2y2width2height2xMyMwidthMheightM]

사각형 2개, M=2

"line"

"polygon"

"filled-polygon"

하나 이상의 연결되지 않은 선인 경우 M×4 행렬을 지정합니다. 여기서 4개의 요소를 가진 벡터 [x1y1x2y2] 각각은 끝점이 있는 선을 나타냅니다.

[x11y11x12y12x21y21x22y22xM1yM1xM2xM2]

연속선은 첫 번째 꼭짓점과 마지막 꼭짓점이 연결되지 않기 때문에 항상 (L-1)개의 세그먼트를 포함합니다.

선 2개, M=2

같은 수의 꼭짓점을 갖는 하나 이상의 연속선 또는 다각형인 경우 M×2L 행렬을 지정합니다. 여기서 각 행은 연속된 꼭짓점 위치로 구성된 벡터 [x1y1x2y2...xLyL]로, L개의 꼭짓점을 갖는 하나의 연속선 또는 다각형을 나타냅니다.

[x11y11x12y12x1Ly1Lx21y21x22y22x2Ly2LxM1yM1xM2yM2xMLyML]

같은 수의 꼭짓점을 갖는 다각형 2개, M=2, L=5

서로 다른 개수의 꼭짓점을 갖는 하나 이상의 연속선 또는 다각형인 경우 M×1 셀형 배열을 지정합니다. 여기서 각 셀은 [x,y] 꼭짓점으로 구성된 L×2 행렬 또는 연속적인 꼭짓점 위치로 구성된 1×2L 벡터 [x1y1x2y2...xLyL]을 포함합니다.

L 값은 셀 요소마다 다를 수 있습니다. 예를 들면 다음과 같습니다.

{[x1y1x2y2],[x1y1x2y2x3y3]}

서로 다른 개수의 꼭짓점을 갖는 다각형 2개, M=2two polygons, one with 5 vertices and one with 4 vertices

"circle"
"filled-circle"
M×3 행렬. 여기서 각 행은 원을 [xyradius]로 지정하는 벡터입니다. [xy] 좌표는 원의 중심을 나타냅니다.

[x1y1radius1x2y2radius2xMyMradiusM]

"projected-cuboid"

8×2×M 배열 또는 M×8 행렬. 여기서 M은 투영 직육면체를 지정합니다.

8×2×M 배열로 지정하는 경우 각 행은 투영 직육면체 꼭짓점의 [xy] 위치를 포함해야 합니다. 꼭짓점이 연결되어 6개의 면을 갖는 직육면체를 형성합니다. 입력 꼭짓점의 순서는 도식에 표시된 순서와 일치해야 합니다.

M×8 행렬로 지정하는 경우 각 행은

[x1y1w1h1x2y2w2h2]

형식으로 투영 직육면체의 앞면과 뒷면을 지정합니다. 여기서 [x1 y1]과 [x2 y2]는 각각 앞면과 뒷면의 왼쪽 위 좌표를 지정합니다. [w1 h1]과 [w2 h2]는 대응하는 너비와 높이를 지정합니다.

Cuboid showing numbered vertices. The number starts with 1 assigned to the top right corner of the front facing rectangle. Going counter-clockwise 1-4 for the top face of cuboid, then 5-8 for the bottom face. The positive Z-axis goes up, the positive Y-axis goes to the right and the positive X-axis faces forward.

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

이름-값 인수

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name을 따옴표로 묶으십시오.

예: Color="yellow"는 형태의 색을 노란색으로 설정합니다.

형태의 테두리 선 너비로, 픽셀 단위의 양의 정수 스칼라로 지정됩니다. 이 속성은 "Rectangle", "Line", "Polygon" 또는 "Circle" 형태에만 적용됩니다.

데이터형: uint8 | uint16 | int16 | double | single

형태의 색으로, 문자형 벡터, 문자형 벡터로 구성된 셀형 배열, 벡터 또는 M×3 행렬로 지정됩니다. 각 형태에 서로 다른 색을 지정하거나 모든 형태에 하나의 색을 지정할 수 있습니다. 색 값은 [0,255] 범위로 지정해야 합니다. 범위가 [0,1]인 값은 이 함수와 함께 사용하기 전에 255 값으로 스케일링해야 합니다. 예를 들면 [255 255 255].*colorvalue와 같습니다.

지원되는 색은 "blue", "green", "red", "cyan", "magenta" , "yellow","black", "white"입니다.

형식
모든 형태에 대해 하나의 색 지정

string형 또는 문자형 색 이름

"r"

"red"

1×3 벡터(RGB 3색)

[255 0 0]1-by-3 grid, with columns labeled r,g,b respectively.

각 형태에 대해 색 지정요소를 M개 가진 벡터

["red","yellow","blue"]

M×3 행렬(RGB 값 목록으로 지정)

255 0 0
255 0 0
0 255 255
M-by-3 grid, with columns labeled r,g,b respectively.

데이터형: cell | char | uint8 | uint16 | int16 | double | single

채워진 형태의 불투명도로, [0 1] 범위의 스칼라 값으로 지정됩니다. Opacity 속성은 "filled-rectangle", "filled-polygon", "filled-circle" 형태에 적용됩니다.

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

형태 경계 평활화로, 논리값 1(true) 또는 0(false)으로 지정됩니다. true 값을 지정하면 안티에일리어싱 필터가 활성화되어 형태 경계를 평활화합니다. 이 값은 사각형이 아닌 형태에만 적용됩니다. 안티에일리어싱을 활성화하면 형태를 그리는 데 추가 시간이 필요합니다.

데이터형: logical

출력 인수

모두 축소

출력 영상으로, 트루컬러 영상으로 반환됩니다.

확장 기능

버전 내역

R2014a에 개발됨

모두 확장