insertShape

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

Описание

пример

RGB = insertShape(I,shape,position) возвращает изображение истинного цвета с 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 object. The axes object contains an object of type image.

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

свернуть все

Введите изображение, заданное в истинном цвете или 2D шкале полутонов.

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

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

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

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

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

[x1y1width1height1x2y2width2height2xMyMwidthMheightM]

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

'Line'

'Polygon'

'FilledPolygon'

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

[x11y11x12y12x21y21x22y22xM1yM1xM2xM2]

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

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

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

[x11y11x12y12x1Ly1Lx21y21x22y22x2Ly2LxM1yM1xM2yM2xMLyML]

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

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

Значение L может отличаться для каждого элемента ячеек. Например,

{[x1y1x2y2],[x1y1x2y2x3y3]}

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

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

[x1y1radius1x2y2radius2xMyMradiusM]

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

Аргументы name-value

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

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

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

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

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

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

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

Поддерживаемые цвета: 'blue', 'green', 'red'ГолубойПурпурный, 'black', 'black', и 'white'.

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

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

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

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

Типы данных: логический

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

свернуть все

Выходное изображение, возвращенное как изображение истинного цвета.

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

Введенный в R2014a