¿Qué es R-CNN? Un resumen rápido
Aprende sobre RCNN y su impacto en la detección de objetos. Cubriremos sus componentes clave, aplicaciones y su papel en el avance de técnicas como Fast RCNN y YOLO.

La detección de objetos es una tarea de visión artificial que puede reconocer y localizar objetos en imágenes o vídeos para aplicaciones como la conducción autónoma, la vigilancia y la imagenología médica. Los métodos anteriores de detección de objetos, como el detector Viola-Jones y el histograma de gradientes orientados (HOG) con máquinas de vectores de soporte (SVM), dependían de características diseñadas a mano y ventanas deslizantes. Estos métodos solían tener dificultades para detectar objetos con precisión en escenas complejas con múltiples objetos de diversas formas y tamaños.
Las redes neuronales convolucionales basadas en regiones (R-CNN) han cambiado la forma en que abordamos la detección de objetos. Es un hito importante en la historia de la visión artificial. Para entender cómo surgieron modelos como YOLOv8, primero debemos entender modelos como R-CNN.
Creada por Ross Girshick y su equipo, la arquitectura del modelo R-CNN genera propuestas de región, extrae características con una red neuronal convolucional (CNN) preentrenada, clasifica objetos y refina los cuadros delimitadores. Aunque pueda parecer intimidante, al final de este artículo tendrás una idea clara de cómo funciona R-CNN y por qué es tan influyente. ¡Echemos un vistazo!
Link to this section¿Cómo funciona R-CNN?#
El proceso de detección de objetos del modelo R-CNN implica tres pasos principales: generar propuestas de región, extraer características y clasificar objetos mientras se refieren sus cuadros delimitadores. Repasemos cada paso.

Fig 1. Cómo funciona R-CNN.
Link to this sectionPropuestas de región: la base de R-CNN#
En el primer paso, el modelo R-CNN analiza la imagen para crear numerosas propuestas de región. Las propuestas de región son áreas potenciales que podrían contener objetos. Se utilizan métodos como la búsqueda selectiva para observar varios aspectos de la imagen, como el color, la textura y la forma, dividiéndola en diferentes partes. La búsqueda selectiva comienza dividiendo la imagen en partes más pequeñas y, a continuación, fusionando las similares para formar áreas de interés más grandes. Este proceso continúa hasta generar unas 2000 propuestas de región.

Fig 2. Cómo funciona la búsqueda selectiva.
Estas propuestas de región ayudan a identificar todos los lugares posibles donde podría haber un objeto. En los pasos siguientes, el modelo puede procesar de forma eficiente las áreas más relevantes centrándose en ellas en lugar de en toda la imagen. El uso de propuestas de región equilibra la exhaustividad con la eficiencia computacional.
Link to this sectionExtracción de características de imagen: capturando los detalles#
El siguiente paso en el proceso de detección de objetos del modelo R-CNN es extraer características de las propuestas de región. Cada propuesta de región se redimensiona a un tamaño constante que la CNN espera (por ejemplo, 224x224 píxeles). El redimensionamiento ayuda a la CNN a procesar cada propuesta de manera eficiente. Antes de deformar, el tamaño de cada propuesta de región se amplía ligeramente para incluir 16 píxeles de contexto adicional alrededor de la región, proporcionando así más información circundante para una mejor extracción de características.
Una vez redimensionadas, estas propuestas de región se introducen en una CNN como AlexNet, que suele estar preentrenada en un conjunto de datos grande como ImageNet. La CNN procesa cada región para extraer vectores de características de alta dimensión que capturan detalles importantes como bordes, texturas y patrones. Estos vectores de características condensan la información esencial de las regiones. Transforman los datos brutos de la imagen en un formato que el modelo puede utilizar para un análisis posterior. La clasificación y localización precisas de los objetos en las siguientes etapas dependen de esta conversión crucial de la información visual en datos significativos.

Fig 3. Extraer características de una propuesta de región utilizando AlexNet.
Link to this sectionClasificación de objetos: identificación de objetos detectados#
El tercer paso consiste en clasificar los objetos dentro de estas regiones. Esto significa determinar la categoría o clase de cada objeto encontrado dentro de las propuestas. Los vectores de características extraídos pasan entonces por un clasificador de aprendizaje automático.
En el caso de R-CNN, se suelen utilizar máquinas de vectores de soporte (SVM) para este fin. Cada SVM está entrenada para reconocer una clase de objeto específica analizando los vectores de características y decidiendo si una región determinada contiene una instancia de esa clase. Esencialmente, para cada categoría de objeto, hay un clasificador dedicado que comprueba cada propuesta de región en busca de ese objeto específico.
Durante el entrenamiento, los clasificadores reciben datos etiquetados con muestras positivas y negativas:
- Muestras positivas: regiones que contienen el objeto objetivo.
- Muestras negativas: regiones sin el objeto.
Los clasificadores aprenden a distinguir entre estas muestras. La regresión del cuadro delimitador refina aún más la posición y el tamaño de los objetos detectados ajustando los cuadros delimitadores propuestos inicialmente para que se ajusten mejor a los límites reales del objeto. El modelo R-CNN puede identificar y localizar con precisión los objetos combinando la clasificación y la regresión del cuadro delimitador.

Fig 4. Un ejemplo de regresión del cuadro delimitador. (fuente: towardsdatascience.com)
Link to this sectionPoniéndolo todo junto: refinando las detecciones con NMS#
Tras los pasos de clasificación y regresión del cuadro delimitador, el modelo a menudo genera múltiples cuadros delimitadores superpuestos para el mismo objeto. Se aplica la supresión no máxima (NMS) para refinar estas detecciones, manteniendo los cuadros más precisos. El modelo elimina los cuadros redundantes y superpuestos aplicando NMS y manteniendo solo las detecciones con mayor confianza.
NMS funciona evaluando las puntuaciones de confianza (que indican la probabilidad de que un objeto detectado esté realmente presente) de todos los cuadros delimitadores y suprimiendo los que se superponen significativamente con los cuadros de mayor puntuación.

Fig 5. Un ejemplo de supresión no máxima. (fuente: towardsdatascience.com)
Aquí tienes un desglose de los pasos en NMS:
- Ordenación: Los cuadros delimitadores se ordenan por sus puntuaciones de confianza en orden descendente.
- Selección: Se selecciona el cuadro con la puntuación más alta y se eliminan todos los cuadros que se superponen significativamente (según la intersección sobre la unión, IoU) con él.
- Iteración: Este proceso se repite para el siguiente cuadro con mayor puntuación y continúa hasta que todos los cuadros hayan sido procesados.
En resumen, el modelo R-CNN detecta objetos generando propuestas de región, extrayendo características con una CNN, clasificando objetos y refinando sus posiciones con la regresión del cuadro delimitador, y utilizando la supresión no máxima (NMS) manteniendo solo las detecciones más precisas.
Link to this sectionR-CNN es un hito en la detección de objetos#
R-CNN es un modelo emblemático en la historia de la detección de objetos porque introdujo un nuevo enfoque que mejoró enormemente la precisión y el rendimiento. Antes de R-CNN, los modelos de detección de objetos luchaban por equilibrar la velocidad y la precisión. El método de R-CNN de generar propuestas de región y utilizar CNN para la extracción de características permite una localización e identificación precisas de objetos dentro de las imágenes.
R-CNN abrió el camino a modelos como Fast R-CNN, Faster R-CNN y Mask R-CNN, que mejoraron aún más la eficiencia y la precisión. Al combinar el aprendizaje profundo con el análisis basado en regiones, R-CNN estableció un nuevo estándar en el campo y abrió posibilidades para diversas aplicaciones en el mundo real.
Link to this sectionTransformando la imagenología médica con R-CNN#
Un caso de uso interesante de R-CNN es en la imagenología médica. Los modelos R-CNN se han utilizado para detectar y clasificar diferentes tipos de tumores, como tumores cerebrales, en escaneos médicos como resonancias magnéticas y tomografías computarizadas. El uso del modelo R-CNN en la imagenología médica mejora la precisión diagnóstica y ayuda a los radiólogos a identificar neoplasias en una etapa temprana. La capacidad de R-CNN para detectar incluso tumores pequeños y en etapa temprana puede marcar una diferencia significativa en el tratamiento y pronóstico de enfermedades como el cáncer.

Fig 6. Detección de tumores cerebrales utilizando R-CNN.
El modelo R-CNN puede aplicarse a otras tareas de imagenología médica además de la detección de tumores. Por ejemplo, puede identificar fracturas, detectar enfermedades de la retina en escaneos oculares y analizar imágenes pulmonares para detectar afecciones como neumonía y COVID-19. Independientemente del problema médico, la detección temprana puede conducir a mejores resultados para los pacientes. Al aplicar la precisión de R-CNN en la identificación y localización de anomalías, los proveedores de atención médica pueden mejorar la fiabilidad y la velocidad de los diagnósticos médicos. Con la detección de objetos simplificando el proceso de diagnóstico, los pacientes pueden beneficiarse de planes de tratamiento oportunos y precisos.
Link to this sectionLas limitaciones de R-CNN y sus sucesores#
Aunque es impresionante, R-CNN tiene ciertos inconvenientes, como una alta complejidad computacional y tiempos de inferencia lentos. Estos inconvenientes hacen que el modelo R-CNN no sea adecuado para aplicaciones en tiempo real. Separar las propuestas de región y las clasificaciones en pasos distintos puede dar lugar a un rendimiento menos eficiente.
A lo largo de los años, han aparecido varios modelos de detección de objetos que han abordado estas preocupaciones. Fast R-CNN combina las propuestas de región y la extracción de características de la CNN en un solo paso, acelerando el proceso. Faster R-CNN introduce una red de propuestas de región (RPN) para agilizar la generación de propuestas, mientras que Mask R-CNN añade la segmentación a nivel de píxel para detecciones más detalladas.

Fig 7. Comparación de R-CNN, Fast R-CNN, Faster R-CNN y Mask R-CNN.
Casi al mismo tiempo que Faster R-CNN, la serie YOLO (You Only Look Once) comenzó a avanzar en la detección de objetos en tiempo real. Los modelos YOLO predicen cuadros delimitadores y probabilidades de clase en una sola pasada a través de la red. Por ejemplo, Ultralytics YOLOv8 ofrece una precisión y velocidad mejoradas con características avanzadas para muchas tareas de visión artificial.
Link to this sectionConclusiones clave#
R-CNN cambió las reglas del juego en la visión artificial, demostrando cómo el aprendizaje profundo puede cambiar la detección de objetos. Su éxito inspiró muchas ideas nuevas en el campo. Aunque han surgido modelos más nuevos como Faster R-CNN y YOLO para solucionar los fallos de R-CNN, su contribución es un hito enorme que es importante recordar.
A medida que la investigación continúe, veremos modelos de detección de objetos aún mejores y más rápidos. Estos avances no solo mejorarán la forma en que las máquinas entienden el mundo, sino que también conducirán al progreso en muchas industrias. ¡El futuro de la detección de objetos parece emocionante!
¿Quieres seguir explorando sobre IA? ¡Forma parte de la comunidad de Ultralytics! Explora nuestro repositorio de GitHub para ver nuestras últimas innovaciones en inteligencia artificial. Echa un vistazo a nuestras soluciones de IA que abarcan diversos sectores como la agricultura y la fabricación. ¡Únete a nosotros para aprender y avanzar!






