insertShape

Вставка фигур в изображение или видео

Описание

пример

RGB = insertShape(I,shape,position) возвращает изображение truecolor с shape вставлен. Изображение входа, I, может быть либо труколором, либо полутоновым изображением. Фигуры рисуются путем перезаписи пиксельных значений.

пример

RGB = insertShape(___,Name,Value) использует дополнительные опции, заданные одним или несколькими Name,Value аргументы в виде пар.

Примеры

свернуть все

Прочтите изображение.

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,'FilledPolygon',{pos_triangle,pos_hexagon},...
    'Color', {'white','green'},'Opacity',0.7);

Отобразите изображение.

imshow(RGB);

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

Входные параметры

свернуть все

Входное изображение, заданное в truecolor или 2-D полутоновом цвете.

Типы данных: single | double | int16 | uint8 | uint16

Тип формы, заданный как вектор символов. Вектор может быть, 'Rectangle', 'FilledRectangle', 'Line', 'Polygon', 'FilledPolygon', 'Circle', или 'FilledCircle'.

Типы данных: char

Положение формы, заданное в соответствии с типом формы, описанным в таблице.

ФормаПоложениеПример
'Rectangle'
'FilledRectangle'
Для одного или нескольких прямоугольников задайте матрицу M -на 4, где каждая строка задает прямоугольник как[xywidthheight].

[x1y1width1height1x2y2width2height2xMyMwidthMheightM]

Два прямоугольника, M = 2

'Line'

'Polygon'

'FilledPolygon'

Для одной или нескольких отсоединенных линий задайте матрицу M-на-4, где каждый четырехэлементный вектор ,[x1y1x2y2], описывает линию с конечными точками.

[x11y11x12y12x21y21x22y22xM1yM1xM2xM2]

Полилиния всегда содержит (L -1) количество сегментов, потому что первая и последняя вершины не соединяются .

Две линии, M = 2

Для одной или нескольких полилиний или многоугольников с таким же количеством вершин задайте M L матрицу -by-2, где каждая строка является вектором,[x1y1x2y2...xLyL], последовательных расположений вершин, представляющих полилинию или многоугольник с L количеством вершин.

[x11y11x12y12x1Ly1Lx21y21x22y22x2Ly2LxM1yM1xM2yM2xMLyML]

Два многоугольника с равным количеством вершин, M = 2, L = 5

Для одной или нескольких полилиний или многоугольников с неравным числом вершин задайте массив ячеек M -на-1, где каждая камера содержит матрицу L -на-2 [x, y] вершин или вектор L 1 на 2,[x1y1x2y2...xLyL], последовательных расположений вершин.

Значение L может быть разным для каждого элемента камеры. Для примера,

{[x1y1x2y2],[x1y1x2y2x3y3]}

Два многоугольника с неравным числом вершин, M = two polygons, one with 5 vertices and one with 4 vertices2

'Circle'
'FilledCircle'
Матрица M -by-3, где каждая строка является вектором, задающим окружность как[xyradius]. [xy] координаты представляют центр окружности.

[x1y1radius1x2y2radius2xMyMradiusM]

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'Color', 'yellow' задает желтый цвет для цвета формы.

Ширина линии границы формы, заданная в пикселях, как положительное скалярное целое число. Это свойство применяется только к 'Rectangle', 'Line', 'Polygon', или 'Circle' фигуры.

Типы данных: uint8 | uint16 | int16 | double | single

Цвет формы, заданный как разделенная разделенными запятой парами, состоящая из 'Color'и либо вектор символов, массив ячеек из вектора символов или матрица. Можно задать другой цвет для каждой формы или один цвет для всех форм.

Чтобы задать цвет для каждой формы, задайте Color в массив ячеек из векторов цветовых символов или матрицу M -by-3 M количеством значений цвета RGB (красного, зеленого и синего).

Чтобы задать один цвет для всех форм, задайте Color либо к цветному вектору символов, либо к вектору [R G B]. Вектор [R G B] содержит красное, зеленое и синее значения.

Поддерживаемые цвета: 'blue', 'green', 'red', 'cyan', 'magenta', 'black', 'black', и 'white'.

Типы данных: cell | char | uint8 | uint16 | int16 | double | single

Непрозрачность заполненной формы, заданная как разделенная запятыми пара, состоящая из 'Opacity'и скалярное значение в области значений [0 1]. The Opacity свойство применяется для FilledRectangle, FilledPolygon, и FilledCircle фигуры.

Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Сглаживайте ребра формы, заданные как разделенная разделенными запятой парами, состоящая из 'SmoothEdges'и логическое значение true или false. A true значение позволяет сглаживающему фильтру сглаживать ребра формы. Это значение применяется только к непрямоугольным формам. Для включения сглаживания требуется дополнительное время для рисования фигур.

Типы данных: logical

Выходные аргументы

свернуть все

Выходное изображение, возвращенный как изображение truecolor.

Расширенные возможности

.
Введенный в R2014a