Anclaje más rápido RCNN

10

En el artículo de Faster RCNN cuando se habla de anclaje, ¿qué quieren decir con "pirámides de cuadros de referencia" y cómo se hace? ¿Significa esto que en cada uno de los puntos de anclaje W * H * k se genera un cuadro delimitador?

Donde W = ancho, H = altura yk = número de relaciones de aspecto * escalas numéricas

enlace al documento: https://arxiv.org/abs/1506.01497

BadProgrammer
fuente
Esta es una muy buena pregunta.
Michael R. Chernick

Respuestas:

10

Anclajes explicados

Anclas

(HfeaturemapWfeaturemap)(k)de ellos, pero corresponden a la imagen. Para cada ancla, el RPN predice la probabilidad de contener un objeto en general y cuatro coordenadas de corrección para mover y cambiar el tamaño del ancla a la posición correcta. Pero, ¿cómo tiene que ver la geometría de los anclajes con el RPN?

Las anclas aparecen realmente en la función de pérdida

Al entrenar el RPN, primero se asigna una etiqueta de clase binaria a cada ancla. A los anclajes con intersección sobre unión ( IoU ) solapados con un cuadro de verdad fundamental, más alto que cierto umbral, se les asigna una etiqueta positiva (del mismo modo, los anclajes con IoUs inferiores a un umbral dado se etiquetarán como negativos). Estas etiquetas se utilizan además para calcular la función de pérdida:

Función de pérdida de RPN

ppt

ingrese la descripción de la imagen aquí

x,y,w,x,xa,xy,w,h

También observe que los anclajes sin etiqueta no están clasificados ni reformados y el RPM simplemente los arroja fuera de los cálculos. Una vez que se hace el trabajo de la RPN y se generan las propuestas, el resto es muy similar a las R-CNN rápidas.

Mahan Fathi
fuente
@Fathi ¿Qué pasa si tenemos muchas clases? Hasta donde sé, en Fast R-CNN cada entrenamiento RoI se le asigna una clase de verdad básica. Entonces, ¿supongo que algo similar sucede aquí?
thanasissdr
@Fathi Estoy totalmente de acuerdo con lo que estás diciendo, así que supongo que estás de acuerdo conmigo. Me refiero a que los autores del artículo original para Faster R-CNN han usado solo dos clases (fondo / objeto) por simplicidad, tratando de explicar cómo funciona RPN, ¿verdad? Entonces, en lugar de tener solo dos clases, podría tener más de solo dos y supongo que podría tomar la conocida función de pérdida de entropía cruzada, ¿verdad?
thanasissdr
@thanasissdr La idea fundamental detrás de Faster R-CNN era que "cuando las redes neuronales son tan buenas en todo lo demás, ¿por qué no usarlas también para propuestas regionales?". Al comparar Fast R-CNN con R-CNN estándar, la única diferencia es que las propuestas de ROI, que nuevamente se realizan utilizando las mismas técnicas antiguas, por ejemplo, SelectiveSearch o EdgeBoxes, se asignan desde la imagen en bruto a las características convolucionales, y luego se envían a los FCs. De esta forma, se omite el proceso de avance de cada RoI a través de CNN.
Mahan Fathi
En F-R-CNN más rápido, el RPN aprende a proponer regiones apropiadas. Una vez que se realiza el RPN, el resto es similar a Fast R-CNN, y los FC clasifican y retroceden las propuestas.
Mahan Fathi
@thanasissdr Sí. Estamos en la misma página. Supongo que puede clasificar en RPN, pero eso sería innecesario ya que la red FC hace la clasificación nuevamente y no tiene dificultades para rechazar propuestas basura. También piense en la tubería, ¿cómo va a utilizar los puntajes de clasificación y cómo serían de ayuda? Mi posición final es, la clasificación (fondo / objeto) es una piedra angular en Faster R-CNN.
Mahan Fathi
1

Leí este periódico ayer y, a primera vista, también me resultó confuso. Después de volver a leer llegué a esta conclusión:

  • La última capa de la red original (ZF o VGG-16) sirve como entrada para la Red de Propuesta de Región y la agrupación de RoI. En el caso del VGG-16, esta última capa conv es a 7x7x512 (HxWxD).
  • Esta capa está asignada a una capa de 512 dimensiones con una 3x3capa conv. El tamaño de salida es 7x7x512(si se usa relleno).
  • Esta capa se asigna a una 7x7x(2k+4k)(por ejemplo 7x7x54) capa con una 1x1capa conv para cada uno de los kcuadros de anclaje.

Ahora, según la Figura 1 en el documento, puede tener una pirámide de imágenes de entrada (las mismas imágenes con una escala diferente), una pirámide de filtros (filtros de una escala diferente, en la misma capa) o una pirámide de cuadros de referencia. El último se refiere a los kcuadros de anclaje en la última capa de la red de propuestas de la región. En lugar de filtros con diferentes tamaños que se apilan uno encima del otro (el caso del medio), los filtros con un tamaño y una relación de aspecto diferentes se apilan uno encima del otro.

En resumen, para cada punto de anclaje ( HxWp 7x7. kEj. 9) Se utiliza una pirámide de cuadros de referencia ( p . Ej. ).

Pieter
fuente
pero, ¿qué es exactamente una caja de anclaje? ¿Es el propósito de cada cuadro de anclaje: usado como entrada al RPN para predecir un delta en el ancho y alto del cuadro de anclaje para cada cuadro de anclaje que se considera parte del primer plano?
BadProgrammer
El RPN predice tanto el cambio delta de la ubicación en primer plano como el puntaje de objetividad. Este último intenta predecir explícitamente si es de fondo o de primer plano (también vea la nota 3).
Pieter
¿Podría explicar cómo 3x3se traduce una capa conv 7x7? En el prototipo, dice que el relleno es 1 en la última capa VGG16.
Klik