Brève description de l'ensemble de données Voc

1. Comprendre les COV

Il s'agit d'un format d'ensemble de données - un ensemble de données au format VOC

Le PASCAL VOC Challenge (The PASCAL Visual Object Classes) est un défi de vision par ordinateur de classe mondiale.Le
PASCAL VOC Challenge comprend principalement les catégories suivantes :

  • Classification des images (Classification des objets)
  • Détection d'objet
  • Segmentation d'objet
  • Reconnaissance des actions (classification des actions), etc.

1.1 téléchargement du jeu de données voc

Maintenant, utilisez principalement deux versions de
l'adresse de lien voc, 2007 et 2012 : site Web officiel de voc ,
téléchargement de l'ensemble de données voc2007, navigateur
de téléchargement de l'ensemble de données voc2012 ou téléchargement Thunder (le plus rapide).

2. Structure du fichier VOC

Appuyez et maintenez enfoncée la touche Maj + bouton droit de la souris sous le dossier pour ouvrir le shell (VOC2012 par exemple)

VOCdevkit
    └── VOC2012
         ├── Annotations               所有的图像标注信息(XML文件)
         ├── ImageSets    
         │   ├── Action                人的行为动作图像信息
         │   ├── Layout                人的各个部位图像信息
         │   │
         │   ├── Main                  目标检测分类图像信息
         │   │     ├── train.txt       训练集(5717)
         │   │     ├── val.txt         验证集(5823)
         │   │     └── trainval.txt    训练集+验证集(11540)
         │   │
         │   └── Segmentation          目标分割图像信息
         │         ├── train.txt       训练集(1464)
         │         ├── val.txt         验证集(1449)
         │         └── trainval.txt    训练集+验证集(2913)
         │ 
         ├── JPEGImages                所有图像文件
         ├── SegmentationClass         语义分割png图(基于类别)
         └── SegmentationObject        实例分割png图(基于目标)

2.1 Annotations

Stockez les fichiers d'étiquettes au format xml, chaque xml correspond à une image en JPEGImage. Et chaque xml stocke les informations d'emplacement et de catégorie (C = 20) de chaque cible marquée, et la dénomination est généralement la même que l'image d'origine correspondante, et les points de coordonnées sont enregistrés au format (x, y). LabelImg peut être utilisé pour l'étiquetage et la visualisation.
analyse du fichier xml :

<annotation>  
    <folder>VOC2012</folder>                             
    <filename>2007_000392.jpg</filename> //文件名  
    <source>                             //图像来源(不重要)  
        <database>The VOC2007 Database</database>  
        <annotation>PASCAL VOC2007</annotation>  
        <image>flickr</image>  
    </source>  
    <size>                              //图像尺寸(长宽以及通道数)                        
        <width>500</width>  
        <height>332</height>  
        <depth>3</depth>  
    </size>  
    <segmented>1</segmented>            //是否用于分割(在图像物体识别中01无所谓)  
    <object>                            //检测到的物体  
        <name>horse</name>              //物体类别  
        <pose>Right</pose>              //拍摄角度  
        <truncated>0</truncated>        //是否被截断(0表示完整)  
        <difficult>0</difficult>        //目标是否难以识别(0表示容易识别)  
        <bndbox>                        //bounding-box(包含左下角和右上角xy坐标)  
            <xmin>100</xmin>  
            <ymin>96</ymin>  
            <xmax>355</xmax>  
            <ymax>324</ymax>  
        </bndbox>  
    </object>  
    <object>              //检测到多个物体  
        <name>person</name>  
        <pose>Unspecified</pose>  
        <truncated>0</truncated>  
        <difficult>0</difficult>  
        <bndbox>  
            <xmin>198</xmin>  
            <ymin>58</ymin>  
            <xmax>286</xmax>  
            <ymax>197</ymax>  
        </bndbox>  
    </object>  
</annotation> 

2.2 Ensembles d'images

  • Action Action du déposant
  • La mise en page stocke des données avec des parties du corps humain (tête, pieds, etc.)
  • Principales données de reconnaissance d'objet image
  • La segmentation peut être utilisée pour segmenter les données

ensemble d'entraînement et ensemble de test

  • train.txt L'ensemble d'entraînement
    est le nom de l'image sans suffixe. Prenez train.txt comme exemple, il est divisé en deux colonnes, la première colonne est le nom de l'image tel que 00012 ; la deuxième colonne est -1 et 1, -1 signifie que la cible n'apparaît pas dans l'image correspondante, et 1 signifie qu'il apparaît.
  • jeu de validation val.txt
  • ensembles de formation et de validation trainval.txt

2.3 Images JPEG

Toutes les images, y compris les images d'entraînement et de test,
un total de 17125 images
insérez la description de l'image ici

2.4 Classe de segmentation

2.5 Objet de segmentation

3. Tâche de détection de cible

Comment utiliser les données du jeu de données pour la détection de cible ?

  1. Lisez d'abord le fichier txt dans VOC2012\ImageSets\Main
  • xxx_train L'ensemble d'entraînement de la classe xxx
  • Ensemble de validation de la classe xxx_val xxx
  • Ensembles de formation et de validation xxx_trainval pour la classe xxx
  1. Dans VOC2012\Annotations,
    recherchez le fichier d'annotation correspondant (.xml) sous le dossier Annotations via l'index.
  2. Recherchez ensuite l'image correspondante dans le dossier JPEGImages via le champ du nom de fichier dans le fichier d'annotation. Par exemple, le champ de nom de fichier dans le fichier 2007_000323.xml est 2007_000323.jpg, puis le fichier 2007_000323.jpg se trouve dans le dossier JPEGImages.

4. Tâche de segmentation sémantique

Comment utiliser le jeu de données pour les tâches de segmentation sémantique ?

  1. Lire le fichier txt correspondant dans VOC2012\ImageSets\Segmentation
  └── Segmentation          目标分割图像信息
        ├── train.txt       训练集(1464)
        ├── val.txt         验证集(1449)
        └── trainval.txt    训练集+验证集(2913)

  1. Trouvez l'image correspondante dans VOC2012\JPEGImages
  2. Trouvez l'image d'annotation correspondante (png) dans VOC2012\SegmentationClass

Notez que lorsque l'image étiquetée correspondante (.png) dans la segmentation sémantique est lue par la fonction Image.open() de PIL, la valeur par défaut est le mode P, qui est une image monocanal. La valeur de pixel à l'arrière-plan est 0 et la valeur de pixel au bord de la cible est de 255 (la zone avec une valeur de pixel de 255 est généralement ignorée pendant l'apprentissage), et la zone cible est remplie en fonction des informations d'index de catégorie de la cible, telle que l'indice cible correspondant à une personne est 15, donc la valeur de pixel de la zone cible est remplie avec 15.

5. Tâche de segmentation d'instance

Notez que lorsque l'image étiquetée correspondante (.png) dans la segmentation d'instance est lue par la fonction Image.open() de PIL, la valeur par défaut est le mode P, qui est une image monocanal. La valeur de pixel à l'arrière-plan est 0 et la valeur de pixel au bord de la cible ou de la zone à ignorer est de 255 (la zone avec une valeur de pixel de 255 est généralement ignorée pendant l'apprentissage). Ensuite, recherchez le fichier xml correspondant dans le dossier Annotations. Après avoir analysé le fichier xml, vous obtiendrez les informations de chaque cible, et la valeur en pixels de chaque cible dans le fichier d'annotation correspondant (.png) est organisée selon l'ordre du cibles dans le fichier xml. . Comme le montre la figure ci-dessous, le numéro de série de chaque cible dans le fichier xml correspond à la valeur en pixels de la cible dans le fichier d'annotation (.png).

6. Correspondance entre l'indice de catégorie et le nom

{
    
    
	"background": 0,
    "aeroplane": 1,
    "bicycle": 2,
    "bird": 3,
    "boat": 4,
    "bottle": 5,
    "bus": 6,
    "car": 7,
    "cat": 8,
    "chair": 9,
    "cow": 10,
    "diningtable": 11,
    "dog": 12,
    "horse": 13,
    "motorbike": 14,
    "person": 15,
    "pottedplant": 16,
    "sheep": 17,
    "sofa": 18,
    "train": 19,
    "tvmonitor": 20
}

Blog de référence : Lien : Référence

Je suppose que tu aimes

Origine blog.csdn.net/qq_43718758/article/details/128065362
conseillé
Classement