Link to this sectionUltralytics Solutions: Aprovecha YOLO26 para resolver problemas del mundo real#
Ultralytics Solutions ofrece aplicaciones de vanguardia de modelos YOLO, proporcionando soluciones del mundo real como conteo de objetos, desenfoque y sistemas de seguridad, mejorando la eficiencia y la precisión en diversas industrias. Descubre el potencial de YOLO26 para implementaciones prácticas e impactantes.
![]()
Watch: How to Run Ultralytics Solutions from the Command Line (CLI) | Ultralytics YOLO26 🚀
Link to this sectionSoluciones#
Aquí tienes nuestra lista seleccionada de soluciones de Ultralytics que puedes usar para crear proyectos increíbles de visión artificial.
- Análisis: Realiza un análisis exhaustivo de datos para descubrir patrones y tomar decisiones informadas, aprovechando YOLO26 para analítica descriptiva, predictiva y prescriptiva.
- Cálculo de distancia: Calcula distancias entre objetos usando los centroides de los cuadros delimitadores en YOLO26, esencial para el análisis espacial.
- Mapas de calor: Utiliza mapas de calor de detección para visualizar la intensidad de los datos en una matriz, proporcionando información clara en tareas de visión artificial.
- Segmentación de instancias con seguimiento de objetos: Implementa segmentación de instancias y seguimiento de objetos con YOLO26 para lograr límites precisos y un monitoreo continuo.
- Inferencia en vivo con Streamlit: Aprovecha la potencia de YOLO26 para la detección de objetos en tiempo real directamente a través de tu navegador web con una interfaz Streamlit fácil de usar.
- Desenfoque de objetos: Aplica desenfoque de objetos usando YOLO26 para proteger la privacidad en el procesamiento de imágenes y vídeos.
- Conteo de objetos: Aprende a realizar conteo de objetos en tiempo real con YOLO26. Adquiere la experiencia para contar objetos con precisión en transmisiones de vídeo en directo.
- Conteo de objetos en regiones: Cuenta objetos en regiones específicas usando YOLO26 para una detección precisa en diversas áreas.
- Recorte de objetos: Domina el recorte de objetos con YOLO26 para la extracción precisa de objetos a partir de imágenes y vídeos.
- Gestión de aparcamientos: Organiza y dirige el flujo de vehículos en zonas de aparcamiento con YOLO26, optimizando la utilización del espacio y la experiencia del usuario.
- Gestión de colas: Implementa sistemas eficientes de gestión de colas para minimizar los tiempos de espera y mejorar la productividad usando YOLO26.
- Sistema de alarma de seguridad: Crea un sistema de alarma de seguridad con YOLO26 que active alertas al detectar nuevos objetos. Personaliza el sistema según tus necesidades específicas.
- Búsqueda por similitud: Habilita la recuperación inteligente de imágenes combinando incrustaciones de OpenAI CLIP con Meta FAISS, permitiendo consultas en lenguaje natural como "persona sosteniendo una bolsa" o "vehículos en movimiento".
- Estimación de velocidad: Estima la velocidad de objetos usando YOLO26 y técnicas de seguimiento, crucial para aplicaciones como vehículos autónomos y monitoreo de tráfico.
- Seguimiento de objetos en zona: Aprende a realizar el seguimiento de objetos dentro de zonas específicas de fotogramas de vídeo usando YOLO26 para un monitoreo preciso y eficiente.
- Mapeo de objetos VisionEye View: Desarrolla sistemas que imiten el enfoque del ojo humano en objetos específicos, mejorando la capacidad del ordenador para discernir y priorizar detalles.
- Monitoreo de entrenamientos: Descubre cómo monitorear entrenamientos usando YOLO26. Aprende a realizar el seguimiento y analizar diversas rutinas de ejercicios en tiempo real.
Link to this sectionArgumentos de las soluciones#
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
model | str | None | Ruta a un archivo de modelo YOLO de Ultralytics. |
region | list | '[(20, 400), (1260, 400)]' | Lista de puntos que definen la región de conteo. |
show_in | bool | True | Flag para controlar si se muestran los conteos de entrada en la transmisión de vídeo. |
show_out | bool | True | Flag para controlar si se muestran los conteos de salida en la transmisión de vídeo. |
analytics_type | str | 'line' | Tipo de gráfico, p. ej., line, bar, area o pie. |
colormap | int | cv2.COLORMAP_DEEPGREEN | Mapa de colores a usar para el mapa de calor. |
json_file | str | None | Ruta al archivo JSON que contiene todos los datos de coordenadas del aparcamiento. |
up_angle | float | 145.0 | Umbral de ángulo para la pose 'arriba'. |
kpts | list[int] | '[6, 8, 10]' | Lista de tres índices de puntos clave utilizados para monitorear entrenamientos. Estos puntos clave corresponden a articulaciones o partes del cuerpo, como hombros, codos y muñecas, para ejercicios como flexiones, dominadas, sentadillas y ejercicios abdominales. |
down_angle | int | 90 | Umbral de ángulo para la pose 'abajo'. |
blur_ratio | float | 0.5 | Ajusta el porcentaje de intensidad del desenfoque, con valores en el rango 0.1 - 1.0. |
crop_dir | str | 'cropped-detections' | Nombre del directorio para almacenar las detecciones recortadas. |
records | int | 5 | Recuento total de detecciones para activar un correo electrónico con el sistema de alarma de seguridad. |
vision_point | tuple[int, int] | (20, 20) | El punto donde la visión rastreará objetos y dibujará trayectorias usando la solución VisionEye. |
source | str | None | Ruta a la fuente de entrada (vídeo, RTSP, etc.). Solo utilizable con la interfaz de línea de comandos (CLI) de Solutions. |
figsize | tuple[int, int] | (12.8, 7.2) | Tamaño de la figura para gráficos analíticos como mapas de calor o gráficas. |
fps | float | 30.0 | Fotogramas por segundo utilizados para los cálculos de velocidad. |
max_hist | int | 5 | Máximos puntos históricos a rastrear por objeto para los cálculos de velocidad/dirección. |
meter_per_pixel | float | 0.05 | Factor de escala utilizado para convertir la distancia de píxeles a unidades del mundo real. |
max_speed | int | 120 | Límite máximo de velocidad en superposiciones visuales (utilizado en alertas). |
data | str | 'images' | Ruta al directorio de imágenes utilizado para la búsqueda por similitud. |
imgsz | int | 640 | Tamaño de la imagen de entrada para la inferencia del modelo. |
Solutions también admite algunos de los argumentos de track, incluidos parámetros como conf, line_width, tracker, model, show, verbose y classes.
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Especifica el algoritmo de seguimiento a utilizar. Opciones integradas: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.1 | Establece el umbral de confianza para las detecciones; valores más bajos permiten el seguimiento de más objetos, pero pueden incluir falsos positivos. |
iou | float | 0.7 | Establece el umbral de Intersection over Union (IoU) para filtrar detecciones superpuestas. |
classes | list | None | Filtra los resultados por índice de clase. Por ejemplo, classes=[0, 2, 3] solo rastrea las clases especificadas. |
verbose | bool | True | Controla la visualización de los resultados de seguimiento, proporcionando una salida visual de los objetos rastreados. |
device | str | None | Especifica el dispositivo para la inferencia (p. ej., cpu, cuda:0 o 0). Permite a los usuarios seleccionar entre CPU, una GPU específica u otros dispositivos de computación para la ejecución del modelo. |
Puedes usar show_conf, show_labels y otros argumentos mencionados para personalizar la visualización.
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
show | bool | False | Si es True, muestra las imágenes o vídeos anotados en una ventana. Útil para una retroalimentación visual inmediata durante el desarrollo o las pruebas. |
line_width | int or None | None | Especifica el ancho de línea de los cuadros delimitadores. Si es None, el ancho de línea se ajusta automáticamente según el tamaño de la imagen. Proporciona personalización visual para mayor claridad. |
show_conf | bool | True | Muestra la puntuación de confianza para cada detección junto a la etiqueta. Proporciona información sobre la certeza del modelo para cada detección. |
show_labels | bool | True | Muestra las etiquetas para cada detección en la salida visual. Proporciona una comprensión inmediata de los objetos detectados. |
Link to this sectionUso de SolutionAnnotator#
Todas las Soluciones de Ultralytics utilizan la clase independiente SolutionAnnotator, que extiende la clase principal Annotator, y tienen los siguientes métodos:
| Método | Tipo de retorno | Descripción |
|---|---|---|
draw_region() | None | Dibuja una región usando puntos, colores y grosor especificados. |
queue_counts_display() | None | Muestra los conteos de cola en la región especificada. |
display_analytics() | None | Muestra estadísticas generales para la gestión de aparcamientos. |
estimate_pose_angle() | float | Calcula el ángulo entre tres puntos en una pose de objeto. |
draw_specific_kpts() | np.ndarray | Dibuja puntos clave específicos en la imagen. |
plot_workout_information() | int | Dibuja un cuadro de texto etiquetado en la imagen. |
plot_angle_and_count_and_stage() | None | Visualiza el ángulo, el conteo de pasos y la etapa para el monitoreo de entrenamiento. |
plot_distance_and_line() | None | Muestra la distancia entre centroides y los conecta con una línea. |
display_objects_labels() | None | Anota cuadros delimitadores con etiquetas de clase de objeto. |
sweep_annotator() | None | Visualiza una línea de barrido vertical y una etiqueta opcional. |
visioneye() | None | Mapea y conecta los centroides de los objetos a un punto de "ojo" visual. |
adaptive_label() | None | Dibuja una etiqueta de fondo circular o rectangular en el centro de un cuadro delimitador (BBox). |
Link to this sectionTrabajar con SolutionResults#
Excepto en Similarity Search, cada llamada de Solución devuelve una lista de objetos SolutionResults.
- Para el conteo de objetos, los resultados incluyen
in_count,out_countyclasswise_count.
import cv2
from ultralytics import solutions
im0 = cv2.imread("path/to/img")
region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]
counter = solutions.ObjectCounter(
show=True, # display the output
region=region_points, # pass region points
model="yolo26n.pt", # model="yolo26n-obb.pt" for object counting with OBB model.
# classes=[0, 2], # count specific classes i.e. person and car with COCO pretrained model.
# tracker="botsort.yaml" # Choose trackers i.e "bytetrack.yaml"
)
results = counter(im0)
print(results.in_count) # display in_counts
print(results.out_count) # display out_counts
print(results.classwise_count) # display classwise_countEl objeto SolutionResults tiene los siguientes atributos:
| Atributo | Tipo | Descripción |
|---|---|---|
plot_im | np.ndarray | Imagen con superposiciones visuales como conteos, efectos de desenfoque o mejoras específicas de la solución. |
in_count | int | Número total de objetos detectados entrando en la zona definida en el flujo de vídeo. |
out_count | int | Número total de objetos detectados saliendo de la zona definida en el flujo de vídeo. |
classwise_count | Dict[str, int] | Diccionario que registra los conteos de entrada/salida de objetos por clase para análisis avanzados. |
queue_count | int | Número de objetos actualmente dentro de una cola o área de espera predefinida (adecuado para la gestión de colas). |
workout_count | int | Número total de repeticiones de entrenamiento completadas durante el seguimiento del ejercicio. |
workout_angle | float | Ángulo de la articulación o pose calculado durante el entrenamiento para la evaluación de la forma. |
workout_stage | str | Etapa actual del entrenamiento o fase de movimiento (p. ej., 'arriba', 'abajo'). |
pixels_distance | float | Distancia basada en píxeles entre dos objetos o puntos, p. ej., cuadros delimitadores. (Adecuado para el cálculo de distancia). |
available_slots | int | Número de plazas libres en un área monitoreada (adecuado para la gestión de aparcamientos). |
filled_slots | int | Número de plazas ocupadas en un área monitoreada. (Adecuado para la gestión de aparcamientos) |
email_sent | bool | Indica si se ha enviado correctamente un correo electrónico de notificación o alerta (adecuado para alarmas de seguridad). |
total_tracks | int | Número total de pistas de objetos únicas observadas durante el análisis de vídeo. |
region_counts | Dict[str, int] | Conteos de objetos dentro de regiones o zonas definidas por el usuario. |
speed_dict | Dict[str, float] | Diccionario por pista de velocidades de objetos calculadas, útil para el análisis de velocidad. |
total_crop_objects | int | Número total de imágenes de objetos recortadas generadas por la solución ObjectCropper. |
speed | Dict[str, float] | Diccionario que contiene métricas de rendimiento para el seguimiento y el procesamiento de la solución. |
Para obtener más detalles, consulta la documentación de la clase SolutionResults.
Link to this sectionUso de soluciones mediante CLI#
La mayoría de las Soluciones se pueden utilizar directamente a través de la interfaz de línea de comandos, incluyendo:
Count, Crop, Blur, Workout, Heatmap, Isegment, Visioneye, Speed, Queue, Analytics, Inference, Trackzone
Sintaxis
yolo SOLUTIONS SOLUTION_NAME ARGS
- SOLUTIONS es una palabra clave obligatoria.
- SOLUTION_NAME es una de:
['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye', 'region', 'security', 'parking']. - ARGS (opcionales) son pares personalizados
arg=value, tales comoshow_in=True, para anular la configuración predeterminada.
yolo solutions count show=True # for object counting
yolo solutions count source="path/to/video.mp4" # specify video file pathLink to this sectionContribuye a nuestras soluciones#
¡Agradecemos las contribuciones de la comunidad! Si dominas un aspecto particular de Ultralytics YOLO que aún no está cubierto en nuestras soluciones, te animamos a compartir tu experiencia. Escribir una guía es una forma estupenda de devolver algo a la comunidad y ayudarnos a hacer nuestra documentación más completa y fácil de usar.
Para empezar, lee nuestra Guía de contribución para obtener pautas sobre cómo abrir una Pull Request (PR) 🛠️. ¡Esperamos tus contribuciones!
¡Trabajemos juntos para hacer que el ecosistema de Ultralytics YOLO sea más robusto y versátil 🙏!
Link to this sectionFAQ#
Link to this section¿Cómo puedo usar Ultralytics YOLO para el conteo de objetos en tiempo real?#
Ultralytics YOLO26 se puede utilizar para el conteo de objetos en tiempo real aprovechando sus capacidades avanzadas de detección de objetos. Puedes seguir nuestra guía detallada sobre Conteo de objetos para configurar YOLO26 para el análisis de flujos de vídeo en directo. Simplemente instala YOLO26, carga tu modelo y procesa los fotogramas de vídeo para contar objetos de forma dinámica.
Link to this section¿Cuáles son los beneficios de usar Ultralytics YOLO para sistemas de seguridad?#
Ultralytics YOLO26 mejora los sistemas de seguridad al ofrecer detección de objetos en tiempo real y mecanismos de alerta. Al emplear YOLO26, puedes crear un sistema de alarma de seguridad que active alertas cuando se detecten nuevos objetos en el área de vigilancia. Aprende a configurar un Sistema de alarma de seguridad con YOLO26 para un monitoreo de seguridad robusto.
Link to this section¿Cómo puede Ultralytics YOLO mejorar los sistemas de gestión de colas?#
Ultralytics YOLO26 puede mejorar significativamente los sistemas de gestión de colas al contar y rastrear personas en colas con precisión, ayudando así a reducir los tiempos de espera y optimizar la eficiencia del servicio. Sigue nuestra guía detallada sobre Gestión de colas para aprender a implementar YOLO26 para un monitoreo y análisis de colas eficaz.
Link to this section¿Se puede utilizar Ultralytics YOLO para el monitoreo de entrenamiento?#
Sí, Ultralytics YOLO26 se puede utilizar eficazmente para monitorear entrenamientos mediante el seguimiento y análisis de rutinas de ejercicios en tiempo real. Esto permite una evaluación precisa de la forma y el rendimiento del ejercicio. Explora nuestra guía sobre Monitoreo de entrenamiento para aprender a configurar un sistema de monitoreo de entrenamiento basado en IA utilizando YOLO26.
Link to this section¿Cómo ayuda Ultralytics YOLO a crear mapas de calor para la visualización de datos?#
Ultralytics YOLO26 puede generar mapas de calor para visualizar la intensidad de los datos en un área determinada, resaltando regiones de alta actividad o interés. Esta característica es particularmente útil para comprender patrones y tendencias en diversas tareas de visión artificial. Obtén más información sobre la creación y el uso de Mapas de calor con YOLO26 para un análisis y visualización de datos completos.