Interpretación detallada de TPH-YOLOv5 | Deje que los objetivos pequeños en las tareas de detección de objetivos no tengan dónde esconderse.
La detección de objetivos en escenas de disparos con drones es un tema candente en los últimos años. Dado que los UAV vuelan a diferentes altitudes, la escala del objetivo cambia mucho, lo que también supone una gran carga para la optimización del modelo. Además, cuando el dron vuela a alta velocidad y baja altitud, también provocará un desenfoque de movimiento de objetivos densos.
Figura 1 Objetivo pequeño y problema denso
Para resolver los dos problemas anteriores, este artículo propone TPH-YOLOv5. TPH-YOLOv5 agrega un cabezal de predicción a YOLOv5 para detectar objetivos a diferentes escalas. Luego, al explorar el potencial predictivo de la autoatención, se utiliza un cabezal de predicción transformador (TPH) para reemplazar el cabezal de predicción original. Al mismo tiempo, el autor también integró un modelo de atención de bloques convolucional (CBAM) para encontrar áreas de atención en escenas densas.
Para mejorar aún más TPH-YOLOv5, el autor también proporciona muchas estrategias útiles, como aumento de datos, pruebas de múltiples escalas, conjuntos de múltiples modelos y el uso de clasificadores adicionales.
Extensos experimentos con el conjunto de datos VisDrone2021 muestran que TPH-YOLOv5 tiene buen rendimiento e interpretabilidad en escenas de captura con drones. En el conjunto de datos de desafío de prueba DET, el resultado AP de TPH-YOLOv5 es 39,18, que es 1,81 más que el método SOTA anterior (DPNetV3). En el VisDrone Challenge 2021, TPH-YOLOv5 mejoró aproximadamente 7 en comparación con YOLOv5.
Las contribuciones de este artículo son las siguientes:
2 Resumen del trabajo preliminar 2.1 Expansión de datos
La importancia de la mejora de datos es principalmente expandir el conjunto de datos para que el modelo pueda obtener mejores resultados en diferentes entornos La imagen es más robusta.
La fotometría y la geometría son muy utilizadas por los investigadores. Para la fotometría, ajusta principalmente el tono, la saturación y el valor de la imagen. Cuando trabajamos con geometría, agregamos principalmente escalado, recorte, traslación, corte y rotación aleatorios.
Además de los métodos globales de mejora de píxeles anteriores, también existen algunos métodos únicos de mejora de datos. Algunos investigadores han propuesto métodos para combinar varias imágenes para mejorar los datos, como la combinación, el corte y el mosaico.
MixUp selecciona aleatoriamente dos muestras de las imágenes de entrenamiento para una suma ponderada aleatoria, y las etiquetas de las muestras también corresponden a la suma ponderada. A diferencia de los trabajos de enmascaramiento, que normalmente usan una máscara de cero píxeles para enmascarar una imagen, CutMix usa un área de otra imagen para cubrir el área enmascarada. Mosaic es una versión mejorada de CutMix. Unir cuatro imágenes enriquece enormemente el fondo del objeto detectado. Además, la normalización por lotes calcula las estadísticas de activación de cuatro imágenes diferentes en cada capa.
En el trabajo de TPH-YOLOv5, la mejora de datos combina principalmente MixUp, Mosaic y métodos tradicionales.
2.2 Método de integración multimodelo
Todos sabemos que el modelo de aprendizaje profundo es un método no lineal. Proporcionan mayor flexibilidad y pueden escalar según la proporción de datos de entrenamiento. Una desventaja de esta flexibilidad es que aprenden a través de un algoritmo de entrenamiento estocástico, lo que significa que son muy sensibles a los detalles de los datos de entrenamiento y pueden obtener un conjunto diferente de pesos cada vez que se entrenan, lo que resulta en predicciones diferentes. Esto trae muchos cambios al modelo.
Una forma eficaz de reducir la variación del modelo es entrenar varios modelos en lugar de uno solo y combinar las predicciones de estos modelos.
Según los diferentes modelos de detección de objetivos, existen tres métodos diferentes de cajas integradas: supresión no máxima (NMS), NMS suave y fusión de cajas ponderadas (WBF).
En el método NMS, si la superposición y la intersección sobre unión (IOU) de las cajas son mayores que un cierto umbral, se considera que pertenecen al mismo objeto. Para cada NMS objetivo, solo queda un cuadro con la mayor confianza para eliminar otros cuadros. Por lo tanto, el proceso de filtrado de cuadros depende de la elección de un único umbral de IoU, lo que tiene un fuerte impacto en el rendimiento del modelo.
Soft NMS es una ligera modificación de NMS, lo que hace que Soft NMS sea significativamente mejor que NMS tradicional en conjuntos de datos de referencia estándar como PASCAL VOC y MS COCO. En lugar de establecer completamente su confianza en 0 y eliminarla, establece una función de caída basada en la confianza del valor IoU del cuadro delimitador vecino.
WBF funciona de manera diferente a NMS. Tanto NMS como NMS suave excluyen algunos cuadros, mientras que WBF combina todos los cuadros para formar el resultado final. Por lo tanto, puede resolver todas las predicciones inexactas del modelo. Este artículo utiliza el modelo final integrado WBF y su rendimiento es significativamente mejor que el NMS.
2.3 Detección de objetos
Los detectores de objetos basados en CNN se pueden dividir en varios tipos:
Algunos detectores están especialmente diseñados para imágenes tomadas por drones, como RRNet , PENet, CenterNet, etc. Pero desde la perspectiva de los componentes, generalmente constan de dos partes: una es la columna vertebral basada en CNN para extraer características de la imagen y la otra es el cabezal de detección para predecir categorías y cuadros de objetivos.
Además, los detectores de objetivos desarrollados en los últimos años suelen insertar algunas capas entre la columna y la cabeza, a menudo llamado cuello del detector. A continuación, se presentan en detalle estas tres estructuras:
Perseverancia
Las redes troncales de uso común incluyen VGG, ResNet, DenseNet, MobileNet, EfficientNet, CSPDarknet53, Swin-Transformer, etc. , no son redes diseñadas por sí mismas. Porque estas redes han demostrado su sólida capacidad de extracción de características en problemas como la clasificación. Pero los investigadores también afinarán la columna para que sea más adecuada para tareas verticales específicas.
Cuello
Cuello está diseñado para utilizar mejor las funciones extraídas por Backbone. Los mapas de características extraídos de la columna vertebral se reprocesan y utilizan racionalmente en diferentes etapas. Normalmente, un cuello consta de varios caminos de abajo hacia arriba y varios caminos de arriba hacia abajo. El cuello de botella es un vínculo clave en el marco de detección de objetivos. Los primeros cuellos utilizaban bloques de muestra arriba y abajo. La característica de este método es que no existe una operación de agregación de capas de entidades como SSD, y sigue directamente el mapa de características de varios niveles detrás de la cabeza.
Los bloques de recogida de cuello más utilizados son: FPN, Panet, NAS-FPN, Biffn, ASFF, Sam. La esencia * * * de estos métodos es utilizar repetidamente varios muestreos ascendentes y descendentes, empalmes, sumas de puntos o productos escalares para diseñar estrategias de agregación. El mástil también tiene algunos bloques extra como SPP, ASPP, RFB, CBAM.
Head
Como red de clasificación, Backbone no puede completar la tarea de posicionamiento. Head es responsable de detectar la ubicación y categoría del objetivo a través del mapa de características extraído por Backbone.
Los cabezales magnéticos generalmente se dividen en dos tipos: detectores primarios y detectores secundarios.
Los detectores de dos etapas siempre han sido el método principal en el campo de la detección de objetivos, entre los cuales la serie RCNN es la más representativa. En comparación con los detectores de dos etapas, los detectores de una etapa predicen las categorías de cajas y objetos. El detector de primer nivel tiene ventajas obvias en cuanto a velocidad, pero su precisión es menor. Para detectores de primer nivel, los modelos más representativos son la serie YOLO, SSD y RetaNet.
3 Descripción general de TPH-yolov 53.1 yolov 5
Yolov5 tiene cuatro configuraciones diferentes, a saber, YOLOv5s, YOLOv5m, YOLOv5l y Yolo V5 x. En general, Yolo V5 usa CSPDarknet53 SPP como base. columna vertebral, PANet sirve como cuello y YOLO detecta la cabeza por separado. Para optimizar aún más toda la arquitectura. Debido a que es el detector de primer nivel más obvio y conveniente, los autores lo eligieron como base.
Figura 2 La arquitectura general de THP-YOLO V5
Al utilizar el conjunto de datos VisDrone2021 para entrenar el modelo, se descubrió que al utilizar la estrategia de mejora de datos (Mosaic y MixUp) , los resultados de YOLOv5x fueron mucho mejores que los de YOLOv5, YOLOv5m y YOLOV 5L, la diferencia del valor AP es mayor que 1,5. Aunque el costo computacional de entrenamiento del modelo YOLOv5x es mayor que el de los otros tres modelos, aún se elige YOLOv5x para lograr el mejor rendimiento de detección. Además, se ajustaron parámetros fotométricos y geométricos de uso común en función de las características de las imágenes capturadas por drones.
3.2 TPH-YOLOv5
El marco de TPH-YOLOv5 se muestra en la Figura 3. El YOLOv5 original se modificó para que fuera específico del conjunto de datos de VisDrone2021:
Figura 3 Cabezas previstas de objetos diminutos en la estructura del modelo TPH-YOLO V5
El autor contó el conjunto de datos de VisDrone2021 y descubrió que contiene muchos objetivos muy pequeños, por lo que se agregó un cabezal de predicción para detectar objetos pequeños. Combinada con los otros tres cabezales de predicción, la estructura de cuatro cabezales puede aliviar el impacto negativo de cambios drásticos en el tamaño objetivo. Como se muestra en la Figura 3, el cabezal de predicción agregado (Cabeza 1) se genera a partir de mapas de características de alta resolución de bajo nivel y es más sensible a objetos pequeños. Después de agregar un detector, el rendimiento de detección de objetos pequeños mejora enormemente, aunque aumentan los costos de computación y almacenamiento.
Módulo codificador Transformer
Figura 4 Grupo Transformer
El módulo codificador Transformer se utiliza para reemplazar algunos módulos de convolución y módulos de cuello de botella CSP en la versión original de YOLOv5. Su estructura se muestra en la Figura 4. En comparación con el módulo de cuello de botella original en CSPDarknet53, el autor cree que el módulo codificador Transformer puede capturar información global e información contextual rica.
Cada bloque codificador de transformador contiene 2 subcapas. La primera subcapa es la capa de atención de múltiples cabezales y la segunda subcapa (MLP) es la capa completamente conectada. Se utilizan conexiones residuales entre cada subcapa. El módulo codificador del transformador mejora la capacidad de capturar diferente información local. El potencial de la representación de características también se puede explotar mediante mecanismos de autoatención. En el conjunto de datos VisDrone2021, el bloque codificador Transformer tiene un mejor rendimiento en objetos de bloque de alta densidad.
Basado en YOLOv5, los autores solo aplicaron el bloque codificador del transformador en el encabezado para formar el encabezado de predicción del transformador (TPH) y el lado troncal. Porque la resolución del mapa de características al final de la red es baja. La aplicación de TPH a mapas de características de baja resolución puede reducir los costos computacionales y de almacenamiento. Además, al aumentar la resolución de la imagen de entrada, algunos bloques de TPH en las primeras capas se pueden eliminar opcionalmente para que el proceso de capacitación esté disponible.
Módulo de atención de bloques convolucionales (CBAM)
CBAM es un módulo de atención simple y eficaz. Es un módulo liviano que se puede conectar a la arquitectura CNN para entrenar de un extremo a otro. Dado un mapa de características, CBAM inferirá el mapa de atención a lo largo de las dos dimensiones independientes del canal y el espacio, y luego multiplicará el mapa de atención con el mapa de características de entrada para realizar una extracción de características adaptativa.
Figura 5 Mecanismo de atención CBAM
La estructura del módulo CBAM se muestra en la Figura 5. A través de los experimentos de este artículo, CBAM se integra en diferentes modelos de diferentes conjuntos de datos de clasificación y detección, y el rendimiento del modelo mejora enormemente, lo que demuestra la eficacia de este módulo.
En las imágenes de drones, las grandes áreas de cobertura siempre contienen elementos geográficos confusos. Usando CBAM, se pueden extraer áreas de atención para ayudar a TPH-YOLOv5 a resistir información confusa y concentrarse en objetos objetivo útiles.
Clasificador de autoformación
Después de entrenar el conjunto de datos VisDrone2021 con TPH-YOLOv5, pruebe el conjunto de datos de desarrollo de prueba y luego analice los resultados de los casos de fallas visuales para obtener TPH- YOLOv5 La conclusión es que la capacidad de posicionamiento es buena pero la capacidad de clasificación es pobre.
Los autores exploraron más a fondo la matriz de confusión que se muestra en la Figura 6 y observaron que la precisión de algunas clasificaciones estrictas era muy baja, como los triciclos y los triciclos con sombrilla.
Figura 6 Matriz de confusión de detección
Por lo tanto, el autor propone un clasificador autoentrenable. Primero, el conjunto de entrenamiento se construye recortando los cuadros delimitadores de verdad del terreno y cambiando el tamaño de cada parche de imagen a 64 × 64. Luego seleccione ResNet18 como red clasificadora. Los resultados experimentales muestran que con la ayuda del clasificador de autoformación, el valor AP de este método aumenta en aproximadamente 0,8 ~ 1,0.
4 experimentos y conclusiones
Al final, logramos una buena puntuación de 39,18 en el desafío del conjunto de pruebas, que es mucho más alta que la puntuación más alta de 37,37 en VisDrone2020.
Figura 9 tabla de resultados de la prueba