Explora la mecánica de los detectores de objetos de dos etapas, centrándote en las propuestas de regiones y la clasificación. Descubre por qué los modelos modernos como Ultralytics son ahora líderes.
Los detectores de objetos de dos etapas son una sofisticada clase de arquitecturas de aprendizaje profundo (DL) utilizadas en la visión por ordenador para identificar y localizar elementos dentro de una imagen. A diferencia de sus homólogos de una sola etapa, que realizan la detección en una única pasada, estos modelos dividen la tarea en dos fases distintas: propuesta de región y clasificación de objetos. Este enfoque bifurcado se creó para dar prioridad a la alta precisión de localización, lo que ha hecho que estos detectores sean históricamente significativos en la evolución de la inteligencia artificial (IA). Al separar el «dónde» del «qué», los detectores de dos etapas suelen alcanzar una precisión superior, especialmente en objetos pequeños u ocultos, aunque esto suele tener como contrapartida un aumento de los recursos computacionales y una latencia de inferencia más lenta.
La arquitectura de un detector de dos etapas se basa en un flujo de trabajo secuencial que imita la forma en que un humano podría escrutar cuidadosamente una escena.
Entre los ejemplos más destacados de esta arquitectura se encuentran la familia R-CNN, concretamente Faster R-CNN y Mask R-CNN, que han marcado la pauta en los benchmarks académicos durante varios años.
Es útil distinguir los modelos de dos etapas de los detectores de objetos de una sola etapa, como el detector Single Shot MultiBox (SSD) y laYOLO Ultralytics . Mientras que los modelos de dos etapas dan prioridad a la precisión procesando las regiones por separado, los modelos de una sola etapa enmarcan la detección como un único problema de regresión, asignando los píxeles de la imagen directamente a las coordenadas del cuadro delimitador y a las probabilidades de clase.
Históricamente, esto creaba una disyuntiva: los modelos de dos etapas eran más precisos pero más lentos, mientras que los modelos de una sola etapa eran más rápidos pero menos precisos. Sin embargo, los avances modernos han difuminado esta línea. Los modelos de última generación, como YOLO26, utilizan ahora arquitecturas de extremo a extremo que rivalizan con la precisión de los detectores de dos etapas, al tiempo que mantienen la velocidad necesaria para la inferencia en tiempo real.
Debido a su énfasis en la precisión y la capacidad de recuperación, los detectores de dos etapas suelen ser los preferidos en escenarios en los que la seguridad y el detalle son más críticos que la velocidad de procesamiento bruta.
Si bien los detectores de dos etapas sentaron las bases para una visión de alta precisión, los desarrolladores modernos suelen utilizar modelos avanzados de una sola etapa que ofrecen un rendimiento comparable con flujos de trabajo de implementación significativamente más sencillos. Ultralytics simplifica el entrenamiento y la implementación de estos modelos, gestionando de manera eficiente los conjuntos de datos y los recursos informáticos.
El siguiente Python muestra cómo cargar y ejecutar la inferencia utilizando un flujo de trabajo moderno de detección de objetos con
ultralytics, logrando resultados de alta precisión similares a los enfoques tradicionales de dos etapas, pero con mayor
eficiencia:
from ultralytics import YOLO
# Load the YOLO26 model, a modern high-accuracy detector
model = YOLO("yolo26n.pt")
# Run inference on an image to detect objects
results = model("https://ultralytics.com/images/bus.jpg")
# Process results (bounding boxes, classes, and confidence scores)
for result in results:
result.show() # Display the detection outcomes
print(result.boxes.conf) # Print confidence scores