Estimación de velocidad con Ultralytics YOLO26 🚀
¿Qué es la estimación de velocidad?
La estimación de velocidad es el proceso de calcular la tasa de movimiento de un objeto dentro de un contexto determinado, empleado a menudo en aplicaciones de visión artificial. Usando Ultralytics YOLO26, ahora puedes calcular la velocidad de los objetos mediante el seguimiento de objetos junto con datos de distancia y tiempo, algo crucial para tareas como la vigilancia y el control del tráfico. La precisión de la estimación de velocidad influye directamente en la eficiencia y fiabilidad de diversas aplicaciones, lo que la convierte en un componente clave en el avance de los sistemas inteligentes y los procesos de toma de decisiones en tiempo real.
Watch: Speed Estimation using Ultralytics YOLO26
Para obtener información más detallada sobre la estimación de velocidad, consulta nuestra entrada de blog: Ultralytics YOLO for Speed Estimation in Computer Vision Projects
Ventajas de la estimación de velocidad
- Control de tráfico eficiente: La estimación precisa de la velocidad ayuda a gestionar el flujo del tráfico, mejorando la seguridad y reduciendo la congestión en las carreteras.
- Navegación autónoma precisa: En sistemas autónomos como los coches de conducción autónoma, una estimación fiable de la velocidad garantiza una navegación segura y precisa del vehículo.
- Seguridad de vigilancia mejorada: La estimación de velocidad en el análisis de vigilancia ayuda a identificar comportamientos inusuales o posibles amenazas, mejorando la eficacia de las medidas de seguridad.
Aplicaciones en el mundo real
| Transporte | Transporte |
|---|---|
![]() | ![]() |
| Estimación de velocidad en carretera usando Ultralytics YOLO26 | Estimación de velocidad en puente usando Ultralytics YOLO26 |
La velocidad es una estimación
La velocidad será una estimación y puede no ser completamente precisa. Además, la estimación puede variar según las especificaciones de la cámara y otros factores relacionados.
# Run a speed example
yolo solutions speed show=True
# Pass a source video
yolo solutions speed source="path/to/video.mp4"
# Adjust meter per pixel value based on camera configuration
yolo solutions speed meter_per_pixel=0.05Argumentos de SpeedEstimator
Aquí tienes una tabla con los argumentos de SpeedEstimator:
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
model | str | None | Ruta a un archivo de modelo Ultralytics YOLO. |
fps | float | 30.0 | Fotogramas por segundo utilizados para cálculos de velocidad. |
max_hist | int | 5 | Puntos históricos máximos a rastrear por objeto para cálculos de velocidad/dirección. |
meter_per_pixel | float | 0.05 | Factor de escala utilizado para convertir la distancia en píxeles a unidades del mundo real. |
max_speed | int | 120 | Límite de velocidad máximo en superposiciones visuales (utilizado en alertas). |
La solución SpeedEstimator permite el uso de parámetros de track:
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Especifica el algoritmo de seguimiento a utilizar, p. ej., bytetrack.yaml o botsort.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 solapadas. |
classes | list | None | Filtra los resultados por índice de clase. Por ejemplo, classes=[0, 2, 3] solo sigue las clases especificadas. |
verbose | bool | True | Controla la visualización de los resultados de seguimiento, proporcionando una salida visual de los objetos seguidos. |
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. |
Además, se admiten las siguientes opciones de 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 obtener información visual inmediata durante el desarrollo o las pruebas. |
line_width | int or None | None | Especifica el ancho de línea de las cajas delimitadoras. 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. Ofrece información sobre la certeza del modelo para cada detección. |
show_labels | bool | True | Muestra etiquetas para cada detección en el resultado visual. Proporciona una comprensión inmediata de los objetos detectados. |
Preguntas frecuentes
¿Cómo estimo la velocidad de un objeto usando Ultralytics YOLO26?
Estimar la velocidad de un objeto con Ultralytics YOLO26 implica combinar técnicas de detección de objetos y seguimiento. Primero, debes detectar objetos en cada fotograma usando el modelo YOLO26. Luego, realiza el seguimiento de estos objetos entre fotogramas para calcular su movimiento a lo largo del tiempo. Finalmente, utiliza la distancia recorrida por el objeto entre fotogramas y la tasa de fotogramas (frame rate) para estimar su velocidad.
Ejemplo:
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
video_writer = cv2.VideoWriter("speed_estimation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Initialize SpeedEstimator
speedestimator = solutions.SpeedEstimator(
model="yolo26n.pt",
show=True,
)
while cap.isOpened():
success, im0 = cap.read()
if not success:
break
results = speedestimator(im0)
video_writer.write(results.plot_im)
cap.release()
video_writer.release()
cv2.destroyAllWindows()Para más detalles, consulta nuestra entrada de blog oficial.
¿Cuáles son las ventajas de usar Ultralytics YOLO26 para la estimación de velocidad en la gestión del tráfico?
Usar Ultralytics YOLO26 para la estimación de velocidad ofrece ventajas significativas en la gestión del tráfico:
- Seguridad mejorada: Estima con precisión la velocidad de los vehículos para detectar excesos de velocidad y mejorar la seguridad vial.
- Monitoreo en tiempo real: Benefíciate de la capacidad de detección de objetos en tiempo real de YOLO26 para monitorear el flujo del tráfico y la congestión de manera efectiva.
- Escalabilidad: Despliega el modelo en diversas configuraciones de hardware, desde dispositivos de borde hasta servidores, garantizando soluciones flexibles y escalables para implementaciones a gran escala.
Para más aplicaciones, consulta las ventajas de la estimación de velocidad.
¿Se puede integrar YOLO26 con otros frameworks de IA como TensorFlow o PyTorch?
Sí, YOLO26 puede integrarse con otros frameworks de IA como TensorFlow y PyTorch. Ultralytics proporciona soporte para exportar modelos YOLO26 a varios formatos como ONNX, TensorRT y CoreML, asegurando una interoperabilidad fluida con otros frameworks de ML.
Para exportar un modelo YOLO26 al formato ONNX:
yolo export model=yolo26n.pt format=onnxAprende más sobre la exportación de modelos en nuestra guía de exportación.
¿Qué tan precisa es la estimación de velocidad con Ultralytics YOLO26?
La precisión de la estimación de velocidad usando Ultralytics YOLO26 depende de varios factores, incluyendo la calidad del seguimiento de objetos, la resolución y la tasa de fotogramas del video, y variables ambientales. Aunque el estimador de velocidad proporciona estimaciones fiables, puede que no sea 100% preciso debido a variaciones en la velocidad de procesamiento de fotogramas y la oclusión de objetos.
Nota: Ten siempre en cuenta el margen de error y valida las estimaciones con datos de la realidad (ground truth) cuando sea posible.
Para más consejos sobre cómo mejorar la precisión, consulta la sección Argumentos de SpeedEstimator.

