viscircles
Crear círculo
Sintaxis
Descripción
viscircles(
dibuja círculos con centers
,radii
)centers
y radii
especificados en los ejes actuales. Puede utilizar la función imfindcircles
para encontrar los centros y los radios de los círculos de una imagen.
viscircles(___,
utiliza argumentos de nombre-valor para especificar propiedades adicionales de los círculos.Name=Value
)
devuelve un identificador, h
= viscircles(___)h
, para dibujar círculos.
Ejemplos
Dibujar líneas alrededor de los círculos claros y oscuros de una imagen
Lea una imagen en el área de trabajo y muéstrela en pantalla.
A = imread('circlesBrightDark.png');
imshow(A)
Defina el alcance del radio.
Rmin = 30; Rmax = 65;
Encuentre todos los círculos claros de la imagen que se encuentran dentro del rango de radio.
[centersBright, radiiBright] = imfindcircles(A,[Rmin Rmax],'ObjectPolarity','bright');
Encuentre todos los círculos oscuros de la imagen que se encuentran dentro del rango de radio.
[centersDark, radiiDark] = imfindcircles(A,[Rmin Rmax],'ObjectPolarity','dark');
Dibuje líneas azules alrededor de los bordes de los círculos claros.
viscircles(centersBright, radiiBright,'Color','b');
Dibuje líneas de rayas rojas alrededor de los bordes de los círculos oscuros.
viscircles(centersDark, radiiDark,'LineStyle','--');
Borrar los ejes antes de trazar los círculos
La función viscircles
no borra los ejes objetivo antes de trazar los círculos. Para eliminar los círculos que se han trazado previamente en unos ejes, utilice la función cla
. Para ilustrarlo, este ejemplo crea una nueva figura y, después, hace un bucle, por lo que se dibuja un conjunto de círculos con cada iteración, lo que borra los ejes cada vez.
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
Argumentos de entrada
centers
— Coordenadas de los centros de los círculos
Matriz numérica de dos columnas
Coordenadas de los centros de los círculos, especificadas como una matriz numérica de dos columnas. Las coordenadas x de los centros de los círculos se encuentran en la primera columna y las coordenadas y, en la segunda.
radii
— Radios de los círculos
número positivo | vector columna
Radios de los círculos, especificados como número positivo o vector columna de números positivos de la misma longitud que centers
. Cuando radii
es un número positivo, viscircles
dibuja todos los círculos con el mismo radio. Cuando radii
es un vector columna, viscircles
dibuja cada círculo centers(j,:)
con el radio radii(j)
correspondiente.
Argumentos de par nombre-valor
Especifique pares de argumentos opcionales como Name1=Value1,...,NameN=ValueN
, donde Name
es el nombre del argumento y Value
es el valor correspondiente. Los argumentos de nombre-valor deben aparecer después de otros argumentos. Sin embargo, el orden de los pares no importa.
Ejemplo: viscircles(centers,radii,Color="b")
especifica los bordes del círculo azul utilizando el nombre corto del color azul.
En las versiones anteriores a la R2021a, utilice comas para separar cada nombre y valor, y encierre Name
entre comillas.
Ejemplo: viscircles(centers,radii,"Color","b")
especifica los bordes del círculo azul utilizando el nombre corto del color azul.
EnhanceVisibility
— Aumentar los círculos dibujados con funcionalidades de contraste para mejorar la visibilidad
true
o 1
(predeterminado) | false
o 0
Aumente los círculos dibujados con funcionalidades de contraste para mejorar la visibilidad, especificada como un valor lógico o numérico 1
(true
) o 0
(false
). Si establece el valor en true
, viscircles
dibuja un círculo de contraste debajo el círculo de color.
Tipos de datos: logical
Color
— Color del límite
"red"
(predeterminado) | Triplete RGB | Código de color hexadecimal | Nombre del color | Nombre corto del color
Color del límite, especificado como triplete RGB, código de color hexadecimal, nombre del color o nombre corto del color.
Si desea un color personalizado, especifique un triplete RGB o un código de color hexadecimal.
Un triplete RGB es un vector de tres filas cuyos elementos especifican las intensidades de los componentes rojo, verde y azul del color. Las intensidades deben estar en el intervalo
[0,1]
; por ejemplo,[0.4 0.6 0.7]
.Un código de color hexadecimal es un vector de caracteres o un escalar de cadena que empieza con un símbolo de almohadilla (
#
) seguido de tres o seis dígitos hexadecimales, que pueden ir desde0
hastaF
. Los valores no distinguen entre mayúsculas y minúsculas. Por lo tanto, los códigos de color"#FF8800"
,"#ff8800"
,"#F80"
y"#f80"
son equivalentes.
Como alternativa, puede especificar algunos colores habituales por su nombre. En esta tabla se enumeran las opciones de color con nombre, los tripletes RGB equivalentes y los códigos de color hexadecimales.
Nombre del color | Nombre corto | Triplete RGB | Código de color hexadecimal | Apariencia |
---|---|---|---|---|
"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" | No se aplica | No se aplica | No se aplica | Sin color |
Aquí están los tripletes RGB y los códigos de color hexadecimales para los colores por defecto que MATLAB® utiliza en muchos tipos de trazados.
Triplete RGB | Código de color hexadecimal | Apariencia |
---|---|---|
[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" |
Ejemplo: viscircles(centers,radii,Color="r");
Ejemplo: viscircles(centers,radii,Color="green");
Ejemplo: viscircles(centers,radii,Color=[0 0 1]);
Ejemplo: viscircles(centers,radii,Color="#FF8800");
LineStyle
— Estilo de línea del borde del círculo
"-"
(predeterminado) | "--"
| ":"
| "-."
| "none"
Estilo de línea del borde del círculo, especificado como cualquier especificador de línea de la tabla siguiente.
Estilo de línea | Descripción | Línea resultante |
---|---|---|
"-" | Línea sólida |
|
"--" | Línea de rayas |
|
":" | Línea de puntos |
|
"-." | Línea de puntos y rayas |
|
"none" | Sin línea | Sin línea |
LineWidth
— Anchura del borde del círculo
2
(predeterminado) | número positivo
Anchura del borde del círculo, especificada como número positivo. La anchura de la línea se expresa en puntos, en la que cada punto equivale a 1/72 de pulgada.
Tipos de datos: double
Argumentos de salida
Historial de versiones
Introducido en R2012aR2022b: Acepta radii
escalares
viscircles
acepta un valor escalar para el argumento radii
. Cuando radii
es un escalar, viscircles
dibuja todos los círculos con el mismo radio.
Consulte también
Image Viewer | visboundaries
| imfindcircles
| circles2mask
| imdistline
| drawcircle
Comando de MATLAB
Ha hecho clic en un enlace que corresponde a este comando de MATLAB:
Ejecute el comando introduciéndolo en la ventana de comandos de MATLAB. Los navegadores web no admiten comandos de MATLAB.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)