Recuento de objetos en diferentes regiones usando Ultralytics YOLO 🚀
¿Qué es el recuento de objetos en regiones?
El recuento de objetos en regiones con Ultralytics YOLO26 implica determinar con precisión la cantidad de objetos dentro de áreas especificadas utilizando visión artificial avanzada. Este enfoque es valioso para optimizar procesos, mejorar la seguridad y aumentar la eficiencia en diversas aplicaciones.
Watch: Object Counting in Different Regions using Ultralytics YOLO26 | Ultralytics Solutions 🚀
Ventajas del recuento de objetos en regiones
- Precisión y exactitud: El recuento de objetos en regiones con visión artificial avanzada garantiza recuentos precisos y exactos, minimizando los errores que suelen asociarse al recuento manual.
- Mejora de la eficiencia: El recuento automatizado de objetos mejora la eficiencia operativa, proporcionando resultados en tiempo real y optimizando los procesos en diferentes aplicaciones.
- Versatilidad y aplicación: La versatilidad del recuento de objetos en regiones lo hace aplicable en diversos ámbitos, desde la fabricación y la vigilancia hasta la monitorización del tráfico, lo que contribuye a su gran utilidad y eficacia.
Aplicaciones en el mundo real
| Comercio minorista | Calles comerciales |
|---|---|
![]() | ![]() |
| Recuento de personas en diferentes regiones usando Ultralytics YOLO26 | Recuento de multitudes en diferentes regiones usando Ultralytics YOLO26 |
Ejemplos de uso
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
# Pass region as list
# region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]
# Pass region as dictionary
region_points = {
"region-01": [(50, 50), (250, 50), (250, 250), (50, 250)],
"region-02": [(640, 640), (780, 640), (780, 720), (640, 720)],
}
# Video writer
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("region_counting.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Initialize region counter object
regioncounter = solutions.RegionCounter(
show=True, # display the frame
region=region_points, # pass region points
model="yolo26n.pt", # model for counting in regions, e.g., yolo26s.pt
)
# Process video
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or processing is complete.")
break
results = regioncounter(im0)
# print(results) # access the output
video_writer.write(results.plot_im)
cap.release()
video_writer.release()
cv2.destroyAllWindows() # destroy all opened windowsEl módulo de recuento de regiones de Ultralytics está disponible en nuestra sección de ejemplos. Puedes explorar este ejemplo para personalizar el código y modificarlo para adaptarlo a tu caso de uso específico.
Argumentos de RegionCounter
Aquí tienes una tabla con los argumentos de RegionCounter:
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
model | str | None | Ruta a un archivo de modelo Ultralytics YOLO. |
region | list | '[(20, 400), (1260, 400)]' | Lista de puntos que definen la región de conteo. |
La solución RegionCounter permite el uso de parámetros de seguimiento de objetos:
| 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 los siguientes ajustes 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
¿Qué es el recuento de objetos en regiones especificadas usando Ultralytics YOLO26?
El recuento de objetos en regiones especificadas con Ultralytics YOLO26 implica detectar y contar el número de objetos dentro de áreas definidas mediante visión artificial avanzada. Este método preciso mejora la eficiencia y la exactitud en diversas aplicaciones como la fabricación, la vigilancia y la monitorización del tráfico.
¿Cómo ejecuto el script de recuento de objetos basado en regiones con Ultralytics YOLO26?
Sigue estos pasos para ejecutar el recuento de objetos en Ultralytics YOLO26:
-
Clona el repositorio de Ultralytics y navega hasta el directorio:
git clone https://github.com/ultralytics/ultralytics cd ultralytics/examples/YOLOv8-Region-Counter -
Ejecuta el script de recuento de regiones:
python yolov8_region_counter.py --source "path/to/video.mp4" --save-img
Para más opciones, visita la sección Ejemplos de uso.
¿Por qué debería usar Ultralytics YOLO26 para el recuento de objetos en regiones?
Usar Ultralytics YOLO26 para el recuento de objetos en regiones ofrece varias ventajas:
- Procesamiento en tiempo real: La arquitectura de YOLO26 permite una inferencia rápida, lo que la hace ideal para aplicaciones que requieren resultados de recuento inmediatos.
- Definición flexible de regiones: La solución te permite definir múltiples regiones personalizadas como polígonos, rectángulos o líneas para satisfacer tus necesidades específicas de monitorización.
- Soporte multiclase: Cuenta diferentes tipos de objetos simultáneamente dentro de las mismas regiones, proporcionando analíticas exhaustivas.
- Capacidades de integración: Integra fácilmente con sistemas existentes a través de la API de Python o la interfaz de línea de comandos de Ultralytics.
Explora beneficios más profundos en la sección Ventajas.
¿Cuáles son algunas aplicaciones del mundo real para el recuento de objetos en regiones?
El recuento de objetos con Ultralytics YOLO26 puede aplicarse a numerosos escenarios del mundo real:
- Analítica minorista: Cuenta clientes en diferentes secciones de la tienda para optimizar la distribución y el personal.
- Gestión del tráfico: Monitoriza el flujo de vehículos en segmentos de carretera o intersecciones específicos.
- Fabricación: Rastrea los productos que se mueven a través de diferentes zonas de producción.
- Operaciones de almacén: Cuenta los artículos del inventario en áreas de almacenamiento designadas.
- Seguridad pública: Monitoriza la densidad de multitudes en zonas específicas durante eventos.
Explora más ejemplos en la sección Aplicaciones del mundo real y la solución TrackZone para capacidades adicionales de monitorización basada en zonas.

