Создайте круг
viscircles(___,
аргументы пары "имя-значение" использования, чтобы задать дополнительные свойства кругов.Name,Value
)
возвращает указатель, h
= viscircles(___)h
, к нарисованным кругам.
Считайте изображение в рабочую область и отобразите его.
A = imread('circlesBrightDark.png');
imshow(A)
Задайте область значений радиуса.
Rmin = 30; Rmax = 65;
Найдите все яркие круги в изображении в области значений радиуса.
[centersBright, radiiBright] = imfindcircles(A,[Rmin Rmax],'ObjectPolarity','bright');
Найдите все темные круги в изображении в области значений радиуса.
[centersDark, radiiDark] = imfindcircles(A,[Rmin Rmax],'ObjectPolarity','dark');
Проведите синие линии вокруг ребер ярких кругов.
viscircles(centersBright, radiiBright,'Color','b');
Проведите красные пунктирные линии вокруг ребер темных кругов.
viscircles(centersDark, radiiDark,'LineStyle','--');
viscircles
функция не очищает целевые оси прежде, чем построить круги. Чтобы удалить круги, которые были ранее построены в оси, используйте cla
функция. Чтобы проиллюстрировать, этот пример создает новую фигуру и затем циклы, чертя набор кругов с каждой итерацией, очищая оси каждый раз.
figure colors = {'b','r','g','y','k'}; for k = 1:5 % Create 5 random circles to display, X = rand(5,1); Y = rand(5,1); centers = [X Y]; radii = 0.1*rand(5,1); % Clear the axes. cla % Fix the axis limits. xlim([-0.1 1.1]) ylim([-0.1 1.1]) % Set the axis aspect ratio to 1:1. axis square % Set a title. title(['k = ' num2str(k)]) % Display the circles. viscircles(centers,radii,'Color',colors{k}); % Pause for 1 second. pause(1) end
centers
— Координаты центров кругаКоординаты центров круга, заданных как P
- 2
матрица, такая как полученный из imfindcircles
. x - координаты центров круга находятся в первом столбце и y - координаты находятся во втором столбце. Координаты могут быть целыми числами (любого числового типа) или значения с плавающей точкой (типа double
или single
).
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
radii
— Круговые радиусыКруговые радиусы, заданные как вектор-столбец, такие как возвращенный imfindcircles
. Значение радиуса в radii(j)
соответствует кругу с центральными координатами centers(j,:)
. Значения radii
могут быть неотрицательные целые числа (любого числового типа) или значения с плавающей точкой (типа double
или single
).
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
viscircles(centers,radii,'Color','b')
задает синие круговые ребра, с помощью короткого названия цвета синего.'EnhanceVisibility'
— Увеличьте нарисованные круги с контрастированием функций, чтобы улучшить видимостьtrue
(значение по умолчанию) | false
Увеличьте нарисованные круги с контрастированием функций, чтобы улучшить видимость, заданную как логическое значение true
или false
. Если вы устанавливаете значение к true
, затем viscircles
рисует контрастирующий круг ниже цветного круга.
Типы данных: логический
'Color'
— Цвет контура'red'
(значение по умолчанию) | триплет RGB | шестнадцатеричный цветовой код | название цвета | короткое название цветаЦвет контура, заданного как триплет RGB, шестнадцатеричный цветовой код, название цвета или короткое название цвета.
Для пользовательского цвета задайте триплет RGB или шестнадцатеричный цветовой код.
Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]
; например, [0.4 0.6 0.7]
.
Шестнадцатеричный цветовой код является вектором символов или скаляром строки, который запускается с символа хеша (#
) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0
к F
. Значения не являются чувствительными к регистру. Таким образом, цветовые коды '#FF8800'
, '#ff8800'
, '#F80'
, и '#f80'
эквивалентны.
Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.
Название цвета | Краткое название | Триплет RGB | Шестнадцатеричный цветовой код | Внешний вид |
---|---|---|---|---|
'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' | Не применяется | Не применяется | Не применяется | Нет цвета |
Вот являются триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию использованием MATLAB® во многих типах графиков.
Триплет RGB | Шестнадцатеричный цветовой код | Внешний вид |
---|---|---|
[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' |
Пример: viscircles(centers,radii,'Color','r');
Пример: viscircles(centers,radii,'Color','green');
Пример: viscircles(centers,radii,'Color',[0 0 1]);
Пример: viscircles(centers,radii,'Color','#FF8800');
'LineStyle'
— Стиль линии кругового ребра'-'
(значение по умолчанию) | '--'
| ':'
| '-.'
| 'none'
Стиль линии кругового ребра, заданного как разделенная запятой пара, состоящая из 'LineStyle'
и любой спецификатор линии в приведенной ниже таблице.
Стиль линии | Описание | Получившаяся линия |
---|---|---|
'-' | Сплошная линия |
|
'--' | Пунктирная линия |
|
':' | Пунктирная линия |
|
'-.' | Штрих-пунктирная линия |
|
'none' | Никакая линия | Никакая линия |
'LineWidth'
— Ширина кругового ребра
(значение по умолчанию) | положительное числоШирина кругового ребра, заданного положительное число. Ширина линии выражается в точках, где каждая точка равняется 1/72 дюйма.
Типы данных: double
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.