Recherche de thèse | Méthode d'annotation de données dans la segmentation d'images

Avec l'approfondissement continu de l'exploration dans le domaine de l'intelligence artificielle, les transports ferroviaires et urbains à grande vitesse deviennent progressivement intelligents, et de plus en plus d'algorithmes de reconnaissance d'images sont appliqués à la navigation auxiliaire et à la conduite automatique. Dans des scénarios réels, les trains à grande vitesse seront confrontés à des situations extrêmes pendant la conduite, telles que des coulées de boue, des déraillements de voie, etc. La reconnaissance d'image est généralement utilisée pour juger de ces situations extrêmes. L'entraînement des algorithmes de reconnaissance d'images nécessite un grand nombre d'ensembles de données de haute qualité, en particulier des données de segmentation sémantique et d'annotation pour les algorithmes de segmentation d'images, et le coût d'acquisition est extrêmement élevé.

La segmentation et l'étiquetage sémantiques consistent à diviser et à classer les zones d'objets et utilisent généralement l'étiquetage de polygones pour étiqueter les contours de divers objets. À l'heure actuelle, il existe des inefficacités plus évidentes dans la manière d'étiqueter les polygones pour les contours des objets, et le coût de l'étiquetage manuel est trop élevé. Afin de contrôler le coût de l'étiquetage des données, l'amélioration de l'efficacité de l'étiquetage manuel des contours d'objets est la méthode la plus directe et la plus efficace.Il est très important de concevoir et de mettre en œuvre un outil d'étiquetage des données efficace.

Aujourd'hui, je vais partager un article sur la méthode d'annotation des données que j'ai vue.

 1. Vue d'ensemble

légèrement.

2 Présentation des problèmes d'étiquetage des données

légèrement.

3 Conception et mise en œuvre du système d'étiquetage des données

Ce chapitre propose une méthode pour améliorer l'efficacité de l'étiquetage manuel des contours d'objets, et conçoit et implémente un système d'étiquetage des données. Dans un premier temps, la conception de l'architecture du système d'étiquetage des données est réalisée ; ensuite, pour résoudre le problème du dessin manuel et de l'étiquetage des polygones, une méthode d'étiquetage rapide des contours d'objets à la souris est proposée, et appliquée au système ; enfin, la la copie globale est faite en utilisant les caractéristiques d'image continue de la vidéo / Ajuster la recherche et l'application de la méthode d'étiquetage des polygones.

3.1 Architecture du système

Ce système d'étiquetage adopte l'architecture B/S [6], le front-end utilise le framework React [7], le back-end utilise le framework Flask [8], la communication front-end utilise la bibliothèque Axios et la technologie SocketIO [9] , adopte le mode de séparation front-end et back-end, et utilise la relation Une base de données de type MySQL[10] stocke les données. Le frontal ou client comprend principalement la couche d'interface utilisateur et la couche de logique métier. La couche d'interface utilisateur est responsable de l'affichage de l'interface et de la visualisation des données, et fournit des fonctions interactives liées au travail d'étiquetage des données. La couche de logique métier est responsable de la réalisation de la logique métier du front - fin des opérations d'étiquetage, traitement des modifications de données et fourniture de fonctions pour communiquer avec le backend. Le backend, à savoir le côté serveur, comprend principalement une couche de logique métier et une couche d'accès aux données.La couche de logique métier fournit une interface au client, assure le traitement de la logique métier pour la réalisation des fonctions client et intègre des modules d'algorithmes de segmentation d'image. la couche d'accès aux données contrôle l'accès à la base de données. Opération, qui fournit des méthodes pour ajouter, supprimer, modifier et vérifier la couche de logique métier. La conception de l'architecture du système est illustrée à la figure 1.

 3.2 Conception de la méthode d'étiquetage rapide de la souris

Le système d'étiquetage de données orienté segmentation d'image peut prendre en charge l'utilisation de polygones pour étiqueter les contours d'objets. Actuellement, l'étiquetage de polygones purement manuel nécessite des points de marquage le long des contours d'objets. Pour les contours d'objets complexes, la difficulté et la complexité des points de marquage augmenteront de façon exponentielle. Afin de faciliter le contour de l'objet, ce système d'annotation propose un moyen d'annoter rapidement le contour de l'objet avec la souris : appuyez sur le bouton gauche de la souris et continuez à vous déplacer le long du contour de l'objet, et la position où la souris se déplace génère un polygone d'annotation.

De nombreux points continus seront générés pendant le mouvement de la souris, et les coordonnées de ces points seront enregistrées comme données d'origine. Ces points continus forment une courbe. Si tous les points sont affichés sur l'interface, il y aura trop de points décrivant le contour, et les données à maintenir sont trop importantes. Il n'est pas réaliste d'éditer un grand nombre de points fixes, et la plupart des sommets ne produiront pas d'étiquettes.effets positifs. Par conséquent, il est nécessaire de filtrer les points de coordonnées et de conserver le moins possible de points de coordonnées pour marquer un contour d'objet plus complet et plus précis.

Pour résumer, le schéma de conception se résume comme suit : appuyez sur le bouton gauche de la souris et ne le relâchez pas, déplacez la souris le long du contour de l'objet et démarrez le processus d'étiquetage rapide. Au cours de ce processus, chaque point de coordonnées de le mouvement de la souris est collecté et stocké dans la collection de manière ordonnée. Relâchez le bouton gauche de la souris lorsque la souris a fini de dessiner le contour de l'objet, et le processus d'étiquetage rapide se termine, et tous les points de l'ensemble de points de coordonnées ordonnés collectés sont filtrés selon une certaine valeur de tolérance, et un nouvel ensemble de points de coordonnées ordonnés est obtenu après filtrage. Il s'agit du point de coordonnées du polygone formé par la souris pour marquer rapidement le contour de l'objet, et utiliser ces points pour dessiner le polygone marqué sur L'interface.

Selon le schéma de conception préliminaire ci-dessus, il doit être mis en œuvre dans ce système d'étiquetage et affiné dans les schémas de conception plus spécifiques suivants. Tout d'abord, l'opération de glissement du bouton gauche de la souris déclenchera l'opération de déplacement de la zone de dessin, donc définissez un bouton d'activation pour la fonction d'étiquetage rapide de la souris. Lorsque la fonction d'étiquetage rapide de la souris est activée, elle entrera dans l'état d'étiquetage rapide et désactiver l'opération de déplacement de la zone de dessin. Ensuite, lorsque la fonction d'annotation rapide de la souris est activée, l'événement glisser du bouton gauche de la souris doit être enregistré, y compris les événements "glisser déplacer" et "glisser fin". Dans la fonction de rappel de l'événement glisser "glisser déplacer", collectez les coordonnées du point de déclenchement et enregistrez-les dans la collection spécifiée ; dans la fonction de rappel de l'événement glisser fin "glisser fin", traitez les coordonnées dans la collection pour obtenir le filtré Après la collection de , remplacez le polygone dessiné par la collection d'origine. De cette manière, un polygone pouvant décrire le contour de l'objet est affiché sur l'interface. Enfin, lorsque la fonction d'étiquetage rapide de la souris n'est pas nécessaire, cliquez sur le bouton d'activation pour annuler la fonction d'étiquetage rapide, quitter l'état d'étiquetage rapide et reprendre l'opération de déplacement de la zone de dessin. Dans cette opération, l'événement de glissement précédemment enregistré doit être supprimé, de sorte que Entrez l'état par défaut du système d'étiquetage.

3.3 Conception globale de la méthode de copie/ajustement du polygone d'étiquette

Lorsque la source de données étiquetée est la vidéo, le module de prétraitement filtrera un ensemble d'images à trame continue. De toute évidence, il existe une relation continue entre ce groupe d'images. Cependant, lors de l'étiquetage manuel, cette relation n'est pas utilisée. L'étiquetage manuel de chaque image d'image n'est pas efficace. Sur la base de la continuité entre les images de cadre, les objets dans deux images de cadre consécutives ont également une continuité, et les positions et tailles des polygones marqués correspondants sont également similaires. Par conséquent, une idée est proposée : copier le polygone étiqueté du cadre d'images précédent dans le cadre d'images consécutif suivant, puis ajuster le polygone dans son ensemble pour qu'il corresponde à l'objet. Sur la base des idées ci-dessus, un procédé de copie/ajustement du polygone marqué dans son ensemble est proposé.

Selon l'analyse ci-dessus, la méthode globale de copie/ajustement est conçue en détail et raffinée dans les trois points de fonction suivants :

1) Copiez l'intégralité du polygone d'annotation ;

2) Déplacez tout le polygone marqué ;

3) Redimensionnez l'ensemble du polygone de dimension.

Pour le premier point de fonction "copier tout le polygone marqué", ce système propose deux méthodes de copie, à savoir "copier tout dans l'image courante" et "copier tout dans l'image suivante". Un menu d'options s'affiche pour l'annotateur à choisir. Le polygone d'annotation copié dans l'image actuelle se trouve à l'origine à la même position que les graphiques d'annotation d'origine et ils se chevaucheront, ce qui rendra impossible la distinction entre les sélections. Par conséquent, les graphiques d'annotation copiés sont conçus pour être décalés de 5 pixels par rapport à la en bas à droite, ce qui est pratique pour le personnel d'annotation pour distinguer et sélectionner, comme le montre la figure 2 Show. Le polygone d'annotation copié dans l'image suivante conserve la même position et la même taille que le polygone d'annotation d'origine.

 Pour le deuxième point de fonction "déplacer tout le polygone d'annotation", ce système le réalise en enregistrant l'événement glisser pour tout le polygone d'annotation, et en enregistrant les événements "glisser déplacer" et "glisser fin" pour tout le polygone d'annotation. Dans la fonction de rappel de l'événement "glisser déplacer", les coordonnées des sommets du polygone glissé sont calculées en temps réel et mises à jour sur le polygone affiché pour réaliser l'effet du mouvement en temps réel du polygone suite au glissement ; dans le rappel de l'événement "drag end", obtenez les coordonnées des sommets du polygone actuel et mettez-les à jour dans le modèle de données pour que les coordonnées du polygone dans le modèle de données soient cohérentes avec les coordonnées du polygone affichées sur l'interface.

Afin d'éviter les conflits avec l'opération de déplacement de la zone marquée, l'état global du polygone de déplacement est ajouté. Utilisez la touche de raccourci M pour activer l'état global du polygone en mouvement et enregistrez l'événement de glissement pour le polygone conformément à la discussion ci-dessus. À ce stade, vous ne pouvez pas modifier un seul sommet du polygone, ni ajuster la taille, la largeur, et la hauteur du polygone dans son ensemble. Lorsque la souris se déplace sur le polygone d'étiquetage, le polygone d'étiquetage actuel est rempli de manière translucide avec la couleur de la classe. Cet affichage en surbrillance indique à l'étiqueteur que le polygone d'étiquetage actuel peut être déplacé dans son ensemble ; lorsque la souris s'éloigne du polygone d'étiquetage, la la couleur de remplissage semi-transparente disparaît et la couleur de remplissage actuelle du polygone est transparente.

Lorsque le polygone marqué affiche une couleur de remplissage semi-transparente, cela signifie que le polygone peut être glissé et déplacé. Appuyez sur le bouton gauche de la souris sur le polygone sans le relâcher, déplacez la souris, et le polygone suivra le mouvement en temps réel selon à la position de déplacement de la souris. Relâchez le bouton gauche de la souris. Le mouvement du polygone se termine et la position actuelle correspond à la nouvelle position du polygone. Comme le montre la figure 3, le polygone en pointillés correspond à la position du polygone avant le déplacement et la position actuelle correspond à la position du polygone avant le déplacement. polygone en trait plein est la position du polygone après le mouvement.

 Prenons comme exemple le mouvement du sommet (x0, y0) sur la figure 3, selon les distances horizontales et verticales Δx, Δy, les nouvelles coordonnées (x1, y1)=(x0+ Δx, y0+Δy). Pour le troisième point de fonction "redimensionner tout le polygone d'annotation", ce système permet à l'annotateur de faire glisser le point de réglage pour ajuster la taille de tout le polygone d'annotation en fournissant des points de réglage, ce qui est similaire à la réalisation de la fonction de polygone mobile global. Points d'ajustement Enregistrez l'événement de glissement, les détails ne seront pas répétés, vous pouvez vous référer à la description de l'événement de glissement d'enregistrement de polygone entier.

Ajout de l'état d'ajustement de la taille globale du polygone. Utilisez la touche de raccourci R pour activer l'état d'ajustement global de la taille du polygone. À ce stade, vous ne pourrez pas modifier un seul point du polygone, ni déplacer le polygone en tant que Cliquez sur le polygone à ajuster avec le bouton gauche de la souris pour activer la fonction d'ajustement global du polygone, dessinez la boîte englobante et les points d'ajustement selon la boîte englobante P(x, y, w, h), comme indiqué dans Figure 4, qui indique que le polygone courant peut être redimensionné dans son ensemble.

 Enregistrez l'événement de glissement pour le point d'ajustement. Le point d'ajustement sur le côté de la boîte englobante est un point d'ajustement unidirectionnel et le point d'ajustement sur le sommet de la boîte englobante est un point d'ajustement bidirectionnel. Le point de réglage au milieu des côtés supérieur et inférieur ne prend en charge que le glissement vers le haut et vers le bas pour ajuster la hauteur du polygone. Le point de réglage au milieu de la gauche et de la droite ne prend en charge que le glissement vers la gauche et vers la droite, qui est utilisé pour ajuster la largeur du polygone. Les points de réglage bidirectionnels sur les sommets permettent de faire glisser vers le haut, le bas, la gauche et la droite pour ajuster la hauteur et la largeur du polygone en même temps. Prenez comme exemple le fait de faire glisser le point de réglage supérieur gauche pour modifier la taille du polygone pour déduire et calculer les coordonnées des sommets du polygone.

Faites glisser le point de réglage supérieur gauche de la boîte englobante pour ajuster la taille du polygone dans son ensemble, comme illustré à la figure 5. En supposant que la largeur d'ajustement vers la gauche est Δx et que la largeur d'ajustement vers le haut est Δy, alors la boîte englobante ajustée P (x , y , w ,h )=(x-Δx, y-Δy, w+Δx, h+Δy), avec des sommets de polygone (x0 , y0) comme exemple, le sommet ajusté est (x0 ,y0 ), et il est évident que x0 = x0-Δx, y0 est calculé comme indiqué dans la formule (1).

 4 Application du système

Cet article classe la scène de conduite ferroviaire à grande vitesse. La scène habituelle est la voie normale. Les rails, les garde-corps, les trains, les montagnes, etc. sont marqués et les étiquettes de classification sont marquées pour obtenir l'ensemble de données marqué pour entraîner la reconnaissance d'image. algorithme. Comme le montre la figure 6, ce système d'étiquetage étiquette la scène de conduite du train à grande vitesse.

La reconnaissance d'images [11] pour les scènes de conduite ferroviaire à grande vitesse a une signification pratique lors de catastrophes naturelles ou de pannes extrêmement particulières, telles que des coulées de boue. Déraillement de voie, etc. Si ces situations peuvent être identifiées à l'avance, des mesures peuvent être prises à temps pour réduire les pertes humaines et les dommages aux installations.

 5. Expérience du système et analyse des résultats

5.1 Expérience d'étiquetage rapide à la souris

Dans l'expérience, 30 annotateurs ont été sélectionnés pour marquer les contours du même lot d'objets désignés en utilisant respectivement deux méthodes de marquage de points et de marquage rapide à la souris.

Pour la première annotation, 30 annotateurs ont utilisé la méthode des points de marquage pour annoter 54 objets spécifiés dans 30 images annotées. Pour le deuxième étiquetage, 30 étiqueteurs ont utilisé la souris pour étiqueter rapidement, et les objets d'étiquetage étaient les mêmes que le premier étiquetage.

Afin de comparer les données des deux annotations ci-dessus de manière plus intuitive, le temps passé par le personnel d'annotation sous les deux méthodes d'annotation est affiché sous la forme d'un histogramme, comme le montre la figure 7. Afin de refléter l'amélioration de l'efficacité de l'utilisation de la méthode rapide de la souris, le pourcentage d'amélioration de l'efficacité de chaque personne est calculé et affiché sous la forme d'un diagramme de dispersion, comme illustré à la figure 8.

 On peut voir sur la figure 7 que, dans les mêmes conditions d'autres conditions d'étiquetage, le temps d'étiquetage de chaque étiqueteur utilisant la méthode d'étiquetage rapide de la souris est inférieur au temps d'étiquetage de l'étiquetage ponctuel. D'après l'analyse de la figure 8, on peut voir que l'efficacité de l'étiquetage de 76,7 % du personnel a augmenté de plus de 10 %, et l'efficacité de l'étiquetage de 100 % du personnel a été améliorée, et l'efficacité de l'étiquetage a augmenté de une moyenne de 11,6 %, ce qui indique que cette méthode peut améliorer efficacement l'efficacité de l'étiquetage.

5.2 Expérience globale de copie/ajustement du polygone d'étiquette

Dans l'expérience, 30 annotateurs ont été sélectionnés pour effectuer un marquage ponctuel et un marquage global de copie/ajustement sur le même véhicule avec une trajectoire de mouvement continu spécifiée dans 30 images marquées.

Pour la première annotation, 30 annotateurs ont utilisé la méthode du marquage ponctuel pour annoter les objets cibles dans 30 images. Pour la deuxième annotation, 30 annotateurs peuvent utiliser la méthode globale de copie/ajustement pour aider à l'annotation ponctuelle afin d'annoter les objets cibles dans les 30 images.

Afin de comparer les données des deux annotations ci-dessus de manière plus intuitive, le temps passé par le personnel d'annotation sous les deux méthodes d'annotation est affiché sous la forme d'un histogramme, comme le montre la figure 9. Afin de refléter l'amélioration de l'efficacité de l'utilisation de la méthode globale d'étiquetage de copie/ajustement, le pourcentage d'amélioration de l'efficacité de chaque personne est calculé et affiché sous la forme d'un diagramme de dispersion, comme illustré à la Figure 10.

 On peut voir sur la figure 9 que, dans les mêmes conditions d'autres conditions d'étiquetage, le temps d'étiquetage de chaque étiqueteuse utilisant la méthode d'étiquetage globale de copie/ajustement pour l'étiquetage auxiliaire est inférieur à celui de l'utilisation uniquement de la méthode d'étiquetage par dessin de points. À partir de la figure 10, on peut voir que l'efficacité de l'étiquetage de 90 % du personnel a augmenté de plus de 28 %, et l'efficacité de l'étiquetage a augmenté en moyenne de 29,7 %, ce qui indique que cette méthode peut améliorer efficacement l'efficacité de l'étiquetage.

6 Résumé

Cet article se concentre principalement sur la faible efficacité de l'étiquetage manuel des contours d'objets, dans le but d'améliorer l'efficacité de l'étiquetage manuel des contours d'objets, et propose deux méthodes d'étiquetage : l'étiquetage rapide à la souris et l'étiquetage global par copie/ajustement des polygones, qui sont appliqués à le système d'étiquetage des données. conclusion comme ci-dessous.

L'influence de la méthode d'étiquetage rapide de la souris sur l'efficacité de l'étiquetage est étudiée, et la méthode d'étiquetage rapide de la souris peut améliorer la vitesse de l'étiquetage manuel grâce à des expériences, ce qui peut permettre d'améliorer l'efficacité de l'étiquetage. La méthode d'étiquetage rapide de la souris améliore l'efficacité de 11,6 % en moyenne par rapport à la méthode d'étiquetage ponctuel.

L'effet de la copie/ajustement global de la méthode du polygone d'annotation sur l'efficacité de l'annotation est étudié, et l'expérience prouve que la copie/ajustement global de la méthode du polygone d'annotation peut améliorer l'efficacité de l'annotation des annotateurs. La méthode globale du polygone d'étiquetage de copie/ajustement réduit le temps d'étiquetage de 29,7 % en moyenne par rapport à la méthode d'étiquetage du point de dessin.

7 Références

légèrement.

Les étudiants intéressés peuvent se rendre à Zhiwang pour télécharger ce document.


Source de l'article : Zhang Yue, Wang Xiaoyi, Li Juan. Système d'annotation de données pour la segmentation d'images [J]. Railway Communication Signal Engineering Technology (RSCE) , 2022,19(11)


En ce qui concerne la partie segmentation sémantique, je voudrais recommander une plate-forme de vision artificielle domestique - Coovally, qui est une plate-forme de vision artificielle qui comprend un processus complet de modélisation de l'IA, une gestion de projet d'IA et une gestion du déploiement du système d'IA. Le cycle de développement peut être raccourci de plusieurs mois à quelques jours, et le développement, l'intégration, les tests et la vérification des solutions de vision IA peuvent être accélérés. Contribuez à améliorer les capacités de développement de logiciels de pile d'IA de l'entreprise, afin que les systèmes d'IA avancés puissent être popularisés à moindre coût et plus rapidement. "Emballez ses propres capacités d'IA" pour que le personnel de l'entreprise puisse les utiliser, afin de réaliser "apprendre aux gens à pêcher". À l'heure actuelle, Coovally a couvert plusieurs domaines d'application, y compris l'inspection de la qualité de la fabrication, la surveillance des catastrophes géologiques, la surveillance des équipements de l'industrie électrique, le diagnostic des maladies médicales spéciales, le transport intelligent, les parcs intelligents, etc.

La solution d'étiquetage des données de Coovally résout les problèmes de l'entreprise et peut être confiée à Coovally pour compléter la détection des coulées de boue et des déraillements.

Je suppose que tu aimes

Origine blog.csdn.net/Bella_zhang0701/article/details/128114625
conseillé
Classement