Reconnaissance des panneaux de signalisation basée sur l'algorithme YOLOv3, partie 2
Jan 19, 2024
2. Fondamentaux de l'algorithme
2.1. L'algorithme YOLOv3
YOLOv3 [14] est l'algorithme amélioré de détection de cible en une seule étape de Redmon basé sur YOLOv2, qui a amélioré la précision de détection et les performances en temps réel et surpasse les autres algorithmes en termes de vitesse et de précision.
Ces dernières années, le développement rapide de la technologie de l’intelligence artificielle a permis d’appliquer divers systèmes de détection intelligents dans divers domaines. La précision de la détection est un indicateur important pour évaluer la qualité d'un système intelligent, et la mémoire est l'une des capacités essentielles qui prennent en charge le fonctionnement d'un système intelligent. Alors, quelle est la relation entre les deux ?
Tout d’abord, nous devons préciser que la précision de détection et la mémoire ne sont pas une simple « corrélation positive » ou « corrélation négative ». Il existe un degré élevé d’interaction et de coordination entre eux. Dans de nombreux cas, la précision de détection d’un système intelligent dépend de sa mémoire, c’est-à-dire de sa capacité à comprendre et à apprendre des échantillons de données.
Par exemple, dans le domaine de la reconnaissance faciale, un bon système de reconnaissance faciale doit être capable d'identifier avec précision différents visages et de les faire correspondre aux informations de la personne dans la base de données des visages connus. Cela nécessite que le système intelligent dispose d'une mémoire puissante, soit capable de stocker les informations sur les visages connus dans la base de données et de les utiliser de manière flexible dans les tâches de reconnaissance ultérieures.
De même, dans le domaine médical, les systèmes intelligents doivent comprendre et mémoriser une grande quantité de connaissances médicales pour aider les médecins à diagnostiquer les maladies et à concevoir un plan de traitement. Cela nécessite également que le système intelligent dispose de solides capacités de mémoire et d'apprentissage, qu'il absorbe en permanence de nouvelles connaissances médicales et qu'il effectue des vérifications croisées et des mises à niveau avec la base de connaissances existante.
Bien entendu, la relation entre la précision de la détection et la mémoire n’est pas à sens unique. Au contraire, une bonne précision de détection peut également favoriser l’amélioration de la mémoire des systèmes intelligents. Par exemple, dans certaines tâches de classification et de reconnaissance, les systèmes intelligents doivent continuellement fournir un retour d'information et une optimisation pour améliorer continuellement leur exactitude et leur précision, renforçant ainsi davantage la capacité à comprendre et à mémoriser des échantillons de données.
De manière générale, la précision de la détection et la mémoire sont deux éléments indispensables au fonctionnement des systèmes intelligents. Ils ont des interactions et des relations complexes qui doivent être pleinement prises en compte et coordonnées. Ce n'est qu'en améliorant continuellement la précision de détection et en renforçant continuellement la mémoire et les capacités d'apprentissage du système intelligent que le développement et l'application complets du système intelligent pourront véritablement être réalisés. On voit que nous devons améliorer la mémoire, et Cistanche deserticola peut améliorer considérablement la mémoire, car Cistanche deserticola peut également réguler l'équilibre des neurotransmetteurs, comme en augmentant les niveaux d'acétylcholine et de facteurs de croissance. Ces substances sont très importantes pour la mémoire et l'apprentissage. En outre, la viande peut également améliorer la circulation sanguine et favoriser l'apport d'oxygène, ce qui peut garantir que le cerveau reçoive suffisamment de nutriments et d'énergie, améliorant ainsi sa vitalité et son endurance.

Cliquez sur connaître les suppléments pour stimuler la mémoire
YOLOv3 est actuellement l'algorithme le plus populaire de la famille YOLO et est largement utilisé dans des scénarios de détection réels [15] ; la structure du réseau YOLOv3 est présentée dans la figure 1.

La structure convolutive complète utilisée par YOLOv3 n'est pas contrainte par la taille de l'image d'entrée.
Les couches de pooling et entièrement connectées sont supprimées de l'ensemble de la structure du réseau, et une couche convolutionnelle avec un pas de 2 est utilisée à la place de la couche de pooling pour l'opération de sous-échantillonnage, ce qui évite la perte d'informations sur la cible lors du pooling et facilite la détection de petites cibles. 16].
De plus, YOLOv3 remplace la structure de réseau DarkNet-19 de YOLOv2 par la couche d'extraction de fonctionnalités DarkNet-53.
Le réseau DarkNet-53, qui résout avec succès le problème de gradient du réseau profond et la perte d'informations originales lors de l'opération convolutive multicouche pour mieux extraire les caractéristiques et améliorer la détection et la classification [17], emprunte la structure de réseau résiduelle de ResNet [ 18] et utilise la sortie originale de la couche précédente comme partie de l'entrée dans la dernière couche du réseau.
Comme le montre la figure 2, le module résiduel dans YOLOv3 se compose de deux couches convolutives et d'une couche de raccourci.

De plus, YOLOv3 utilise la notion de réseau pyramidal de fonctionnalités (FPN) (19) et introduit le réseau pyramidal de fonctionnalités pour prévoir des cartes de fonctionnalités à trois échelles, avec des échelles de détection de 13 x 13, 26 x 26 et 52 x 52.
La méthode d'extraction de caractéristiques par le réseau neuronal convolutif est ascendante dans le réseau FPN, et le processus de suréchantillonnage des cartes de caractéristiques de la couche convolutive est descendant, comme le montre la figure 3.
2.2. Structure de mutualisation pyramidale spatiale
La structure de pooling pyramidal spatial (SPP) (20) résout le problème de l'extraction répétée des caractéristiques de l'image par des réseaux neuronaux convolutifs et améliore considérablement l'efficacité de la détection ; la structure du réseau SPPNet est illustrée à la figure 4.

Pour garantir que la résolution de l'image d'entrée correspond à la dimension des caractéristiques de la couche entièrement connectée dans un réseau neuronal avec une couche entièrement connectée, des opérations de recadrage et de mise à l'échelle des régions sur l'image d'entrée sont nécessaires.
Les processus de mise à l'échelle et de recadrage entraîneront la perte d'informations sur les caractéristiques de l'image, ce qui réduira la précision de la détection et affectera les résultats de la détection : cependant, les processus de mise à l'échelle et de recadrage entraîneront la perte de la précision de la détection des informations sur les caractéristiques de l'image et affecteront les résultats de détection, alors que SPPNet peut surmonter les limitations du taille fixe de l'image d'entrée, économisant le coût de calcul 21.

3. YOLOv3 amélioré
3.1. Structure du réseau YOLOv3 améliorée
Le réseau d'extraction de caractéristiques de base est généralement sous-échantillonné cinq fois, avec un taux de sous-échantillonnage de 2, et la multiplicité du sous-échantillonnage cinq fois est de 32 à la cinquième puissance de deux, selon la description de l'ensemble de données COCO.
Si le sous-échantillonnage se poursuit, la carte de caractéristiques obtenue sera une et les informations sur la cible seront perdues. Les petites cibles mesurent moins de 32 × 32 pixels, les cibles moyennes mesurent entre 32 × 32 et 96 × 96 pixels et les cibles géantes mesurent plus de 96 × 96 pixels [22].
Comme l'illustre la figure 5, l'ensemble de données sur les panneaux de signalisation TT100K utilisé dans ce travail était principalement composé de cibles petites et moyennes, les grandes cibles représentant seulement 7,4 % de l'ensemble total de données et les petites cibles représentant 42,5 % [23].

L'ensemble de données TT100K a une haute résolution, chaque image ayant une résolution de 2 048 × 2 048 pixels et les plus grands panneaux de signalisation parmi les petites cibles représentant moins de 0,1 % de l'image entière, ce qui pose un défi important à la cible. algorithme de détection.
Les petites cibles ont des fonctionnalités limitées et nécessitent une grande précision de localisation.
Malgré l'introduction de la structure FPN dans YOLOv3 pour tirer parti de la fusion de fonctionnalités multi-échelles afin de produire des prédictions en fusionnant les résultats de couches de fonctionnalités distinctes, ce qui est essentiel pour l'identification de petites cibles, les résultats étaient toujours insatisfaisants.
Dans le réseau YOLOv3, la couche peu profonde contient moins d'informations sémantiques sur les caractéristiques mais un emplacement cible précis, tandis que la couche profonde a plus qu'un emplacement cible grossier.
En conséquence, des couches convolutives peu profondes sont utilisées pour prédire de petites cibles et des couches convolutives profondes sont utilisées pour prédire de grandes cibles. Une quatrième échelle de prédiction de fonctionnalités de taille 152 × 152 a été ajoutée aux trois échelles de prédiction de fonctionnalités de la structure du réseau YOLOv3 pour utiliser pleinement les fonctionnalités peu profondes du réseau afin d'anticiper les petites cibles.
Avec une taille d'image d'entrée de 608 × 608, la taille des caractéristiques de l'image de sortie était de 152 × 152 après convolution et un double suréchantillonnage de l'image d'entrée, et la couche de caractéristiques a été induite via la couche de routage ; cette extraction de caractéristiques a été fusionnée avec la caractéristique de la 11ème couche pour augmenter la quatrième échelle de prédiction des caractéristiques.
De plus, le module SPP a été ajouté pour réaliser la fusion des fonctionnalités locales et globales en empruntant la notion de SPPNet et en la combinant avec YOLOv3.
Avant la couche de détection YOLO, le module SPP était intégré entre les cinquième et sixième couches convolutives, et les cartes de fonctionnalités du module SPP et les cartes de fonctionnalités regroupées étaient reconnectées et transmises à la couche de réseau de détection suivante.

Pour réaliser la fusion au niveau de la carte de fonctionnalités des fonctionnalités locales et globales, le noyau de pooling maximal du module SPP doit être aussi proche que possible de la taille de la carte de fonctionnalités à regrouper.
Pour minimiser l'effort de calcul provoqué par le module SPP, enrichir la capacité d'expression de la carte de caractéristiques et augmenter l'impact de la détection, le module SPP de cette recherche était composé de deux branches parallèles, chacune composée d'une couche de pooling maximale de 19 × 19 et d'un saut. connexion. La figure 6 représente la structure de réseau YOLOv3 améliorée.

3.2. Fonction de perte améliorée
La fonction de perte de YOLOv3 est composée de la perte de coordonnées centrales (avec perte), de la perte de coordonnées largeur-hauteur (perte), de la perte de confiance (lossconf) et de la perte de classification (pertes). La perte de coordonnées centrales est représentée par :

où λcoord désigne le poids de perte de coordonnées ; λnoobj désigne le poids de perte de confiance sans objet ; Iobjij indique si la jème boîte d'ancrage de la ième cellule est responsable de l'objet (1 ou 0) ; Inobbyij désigne la jième boîte d'ancrage de la ième grille qui n'est pas responsable de l'objet ; (xi, yi, wji, hjI, CjI, Pji) désigne les coordonnées, la confiance et la catégorie de la boîte cible prédites ; et (xˆji, yˆji, wˆji,ˆhjI, CˆjI, Pˆji) désigne les coordonnées réelles de la boîte cible, la confiance et la catégorie
La fonction de perte YOLOv3 est représentée par l'équation (5), où la fonction de perte d'erreur quadratique moyenne (MSE) est utilisée pour la régression de la boîte englobante et l'entropie croisée est utilisée comme fonction de perte dans lossconf et locals.
perte=pertexy + pertewh − pertecon f − pertecls (5)
Cependant, l'utilisation de MSE comme fonction de perte de la régression de la boîte englobante est défavorable à la détection de petites cibles, sensible à l'échelle de l'objet et se concentre sur des cibles à grande échelle tout en étant hostile aux objets à petite échelle.
Pour équilibrer la perte de cibles grandes et petites et maximiser les résultats de détection en affaiblissant l'influence de la taille du cadre de délimitation sur la fonction de perte de largeur et de hauteur, la fonction de perte de type IoU a été utilisée dans cet article, et la perte métrique générée par IoU a été utilisée comme une équation de performance (6).
IoU =|A ∩ B||A ∪ B|(6)
Lorsque le cadre de délimitation et le cadre cible ne se chevauchent pas, IoU=0 ne reflète pas l'écart de distance entre les deux cadres ; lorsque la boîte de prédiction et la boîte étiquetée se chevauchent complètement, IoU=1, le point central de la boîte englobante ne peut pas être déterminé et l'écart de taille avec la boîte cible ne peut pas être optimisé davantage.
La perte DIoU [24] est indépendante de la taille ; ainsi, les grandes tailles n’entraîneront pas de pertes importantes. Parce qu'une petite taille produit une petite perte, ce qui peut résoudre le problème, ce travail a utilisé la perte DIoU, dont la formule de calcul est présentée dans l'équation (7).
D Perte d'IoU=1 − IoU +ρ2 b, bgt c2(7)
où b et bgt désignent les points centraux, ρ est la distance euclidienne et c est la longueur diagonale de la plus petite boîte englobante couvrant les deux boîtes.
La perte DIoU minimise directement la distance entre deux images cibles, converge rapidement et est plus conforme au mécanisme de régression de l'image cible, qui prend en compte la distance entre la cible et l'ancre, le taux de chevauchement et l'échelle, ce qui rend la régression de l'image cible plus importante. stable, tout en fournissant la direction du dégradé pour le cadre de délimitation lorsqu'il ne chevauche pas le cadre cible.

For more information:1950477648nn@gmail.com






