Отобразите формы на изображении, видео или облаке точек
showShape(___, задает опции с помощью одного или нескольких аргументов пары "имя-значение". Например, 'Name,Value)Color', 'yellow'задает цвет отображенных форм как желтый.
Считайте изображение в рабочую область.
I = imread('visionteam1.jpg');Создайте детектор людей совокупных функций канала (ACF).
detector = peopleDetectorACF()
detector =
acfObjectDetector with properties:
ModelName: 'inria-100x41'
ObjectTrainingSize: [100 41]
NumWeakLearners: 2048
Обнаружьте людей в изображении.
[bboxes,scores] = detect(detector,I);
Отобразите изображение с помеченным прямоугольником, включая связанный счет обнаружения, вокруг каждого обнаруженного человека.
figure imshow(I) labels = "person:"+scores; showShape('rectangle',bboxes,'Label',labels)

Считайте данные об облаке точек в рабочую область.
ptCloud = pcread('teapot.ply');Отобразите данные об облаке точек.
figure pcshow(ptCloud) xlabel('X') ylabel('Y') zlabel('Z')
Задайте кубоид и отобразите его в зеленом с непрозрачностью 0.5.
pos = [0.3753 0 1.65 6 4 3 0 0 0]; showShape('cuboid',pos,'Color','green','Opacity',0.5)

Считайте данные об облаке точек в рабочую область.
ptCloud = pcread('teapot.ply');Задайте вращение матричное и 3-D преобразование, чтобы вращать облако точек и связанный кубоид, 5 градусами.
rot = 5; R = [ cosd(rot) sind(rot) 0 0; ... -sind(rot) cosd(rot) 0 0; ... 0 0 1 0; ... 0 0 0 1]; tform = affine3d(R);
Вычислите представленные пределы X и Y облака точек, чтобы гарантировать, что облако точек не отсекается во время вращения.
pcLimits = abs([ptCloud.XLimits ptCloud.YLimits]); maxLimit = max(pcLimits);
Добавьте дополнительную маржу в график препятствовать тому, чтобы кубоид был отсечен во время вращения.
margin = 1; maxLimit = maxLimit + margin; xlimits = [-maxLimit maxLimit]; ylimits = [-maxLimit maxLimit]; zlimits = ptCloud.ZLimits;
Создайте проигрыватель для визуализации облака точек.
player = pcplayer(xlimits,ylimits,zlimits);
Настройте подписи по осям проигрывателя.
xlabel(player.Axes,'X (m)'); ylabel(player.Axes,'Y (m)'); zlabel(player.Axes,'Z (m)');
Задайте кубоид вокруг облака точек.
cuboidPosition = [0.3753 0 1.65 6 4 3 0 0 0];
Задайте выходное представление для вращения кубоида. Используйте те же пределы в качестве проигрывателя так, чтобы кубоид не был отсечен. Затем отобразите вращаемое облако точек и кубоид.
gridSize = [1 1 1]; ref = imref3d(gridSize,xlimits,ylimits,zlimits); for i = 1:round((360/rot)) % Rotate point cloud. ptCloud = pctransform(ptCloud,tform); % Rotate the cuboid. cuboidPosition = bboxwarp(cuboidPosition,tform,ref); % Show rotated point cloud data. view(player,ptCloud) % Show rotated cuboid. showShape('cuboid',cuboidPosition, ... 'Parent',player.Axes, ... 'Color','green', ... 'Opacity',0.5) % Use drawnow to synchronize point cloud and shape visualization. drawnow end

shape — Тип формы'line' | 'rectangle' | 'cuboid' | 'polygon' | 'circle'Тип формы в виде вектора символов. Вектором может быть 'line'прямоугольник, 'cuboid, 'polygon', или 'circle'.
Типы данных: string
position — Положения и размеры формПоложения и размеры форм, заданных согласно типу форм, описанных в этой таблице.
| Boundingbox | Описание |
|---|---|
| Выровненный осью прямоугольник |
Заданный в пикселе координирует как M-by-4 числовая матрица со строками формы [x y w h], где:
|
| Вращаемый прямоугольник |
Заданный в пространственных координатах как M-by-5 числовая матрица со строками формы [xctr yctr xlen ylen yaw], где:
|
| Кубоид |
Заданный в пространственных координатах как M-by-9 числовая матрица со строками формы [xctr yctr zctr xlen ylen zlen xrot yrot zrot], где:
Рисунок показывает, как эти значения определяют положение кубоида.
|
Circle | Заданный в пространственных координатах как M-by-3 числовая матрица со строками формы [xctr yctr radius], где:
|
| Заданный в пространственных координатах как P-by-2 матрица, в которой каждая строка [x y] конечная точка или 1 2P вектором из последовательных конечных точек от [x 1 y 1 x 2 y 2 … x P x P].
Чтобы задать несколько линий, которые содержат различные количества конечных точек, можно использовать формат массива ячеек, описанный для многоугольника. |
Polygon | Заданный в пространственных координатах как M-by-1 массив ячеек, в котором каждая ячейка содержит L-by-2 матрица [x y] местоположения вершины или 1 2L вектором из последовательных местоположений вершины формы [x 1, y 1, x 2, y 2, … x L, y L], где:
|
Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
Color', 'yellow'задает цвет отображенных форм как желтый.'Label' — Метка Shape[] (значение по умолчанию) | скаляр | M - вектор элемента | M - массив ячеек из символьных векторов элементаСформируйте метку в виде разделенной запятой пары, состоящей из 'Label' и или скаляр, M - вектор элемента или M - массив ячеек из символьных векторов элемента.
Если вход является скалярным значением, то функция применяет то же самое значение как метка к каждой форме. Если входом является M - векторный массив элемента или массив ячеек, то функция применяет каждое значение к соответствующей форме, с помощью порядка, в котором формы заданы к функции. M является количеством форм, заданных к функции.
'Color' — Цвет формыlines(1) (значение по умолчанию) | один или несколько триплетов RGB | одно или несколько названий цвета или коротких названий цветаЦвет формы в виде разделенной запятой пары, состоящей из 'Color' и один или несколько триплетов RGB, или одно или несколько названий цвета или коротких названий цвета. Чтобы использовать тот же цвет для всех форм, задайте сингл (MATLAB ColorSpec) название цвета или один триплет RGB.
Чтобы использовать различный цвет для каждой формы, задайте M - векторный массив элемента или массив ячеек названий цвета или M-by-3 числовая матрица, в которой каждой строкой является триплет RGB. M является количеством форм, заданных к функции.
'Opacity' — Непрозрачность заливки формы (значение по умолчанию) | M - вектор элемента из значений в области значений [0 1]Непрозрачность формы заполняет в виде разделенной запятой пары, состоящей из 'Opacity' и M - вектор элемента из числовых значений в области значений [0 1]. Чтобы использовать ту же непрозрачность для всех форм, задайте скалярное значение непрозрачности. Для полностью непрозрачной заливки формы, набор 'Opacity' к 1.
'Parent' — Выведите осиgca (значение по умолчанию) | Axes графический объектВыведите оси в виде разделенной запятой пары, состоящей из 'Parent' и графический объект Свойств осей графика.
'LineColor' — Цвет границы'auto' (значение по умолчанию) | один или несколько триплетов RGB | одно или несколько названий цвета или коротких названий цветаЦвет границы в виде разделенной запятой пары, состоящей из 'Color' и один или несколько триплетов RGB, или одно или несколько названий цвета или коротких названий цвета. Чтобы использовать тот же цвет для всех границ, задайте сингл (MATLAB ColorSpec) название цвета или один триплет RGB.
Чтобы использовать различный цвет для каждой формы, задайте M - векторный массив элемента или массив ячеек названий цвета или M-by-3 числовая матрица, в которой каждой строкой является триплет RGB. M является количеством форм, заданных к функции.
'LineWidth' — Ширина границы'auto' (значение по умолчанию) | положительное скалярное целое число | M - вектор элемента из положительных значенийШирина границы в пикселях в виде разделенной запятой пары, состоящей из 'LineWidth' и положительное скалярное целое число или M - вектор элемента из положительных скалярных целых чисел. Чтобы использовать ту же ширину линии для всех форм, задайте положительное скалярное целое число. В противном случае задайте M - вектор элемента из положительных целых чисел, где M является количеством форм, заданных к функции.
'LineOpacity' — Непрозрачность границы заливки формы (значение по умолчанию) | M - вектор элемента из значений в области значений [0 1]Непрозрачность границы формы заполняет в виде разделенной запятой пары, состоящей из 'Opacity' и M - вектор элемента из числовых значений в области значений [0 1]. Чтобы использовать ту же непрозрачность для границы всех форм, задайте скалярное значение непрозрачности. Для полностью непрозрачной границы, набор 'Opacity' к 1.
'LabelTextColor' — Цвет текста метки'black (значение по умолчанию) | один или несколько триплетов RGB | одно или несколько названий цвета или коротких названий цветаЦвет текста метки в виде разделенной запятой пары, состоящей из 'Color' и один или несколько триплетов RGB, или одно или несколько названий цвета или коротких названий цвета. Чтобы использовать тот же цвет для текста всех меток, задайте сингл (MATLAB ColorSpec) название цвета или один триплет RGB.
Чтобы использовать различный цвет для текста каждой метки, задайте M - векторный массив элемента или массив ячеек названий цвета или M-by-3 числовая матрица, в которой каждой строкой является триплет RGB. M является количеством меток, заданных к функции.
'LabelOpacity' — Пометьте непрозрачность (значение по умолчанию) | M - вектор элемента из значений в области значений [0 1]Пометьте непрозрачность в виде разделенной запятой пары, состоящей из 'Opacity' и M - вектор элемента из числовых значений в области значений [0 1]. Чтобы использовать ту же непрозрачность для всех меток, задайте скалярное значение непрозрачности. Для полностью непрозрачной метки, набор 'Opacity' к 1.
'LabelFont' — Пометьте шрифт'Helvetica' (значение по умолчанию) | 'FixedWidth' | поддерживаемый шрифтПометьте шрифт в виде разделенной запятой пары, состоящей из 'LabelFont' и 'FixedWidth' или шрифт, который поддерживает ваша система. Чтобы отобразить и распечатать текст правильно, необходимо выбрать шрифт, который поддерживает система. Если вы выбираете неподдерживаемый шрифт, функция возвращает ошибку. Если вы задаете 'FixedWidth', функция использует шрифт, заданный FixedWidthFont свойство объекта Root Properties. Шрифт фиксированной ширины использует значение get(0,'FixedWidthFontName') .
'LabelFontSize' — Пометьте размер шрифта (значение по умолчанию) | положительная скалярная величинаПометьте размер шрифта в модулях точки в виде разделенной запятой пары, состоящей из 'LabelFontSize' и положительная скалярная величина.
imshow | insertMarker | insertObjectAnnotation | insertObjectMask | insertShape | insertText | pcplayer | pcshow
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.