目录
经典的图像分类算法及其训练的对应的数据集
以下是一些经典的图像分类算法和它们通常使用的训练数据集:
-
LeNet-5:
- 训练数据集: MNIST
-
AlexNet:
- 训练数据集: ImageNet
-
VGGNet:
- 训练数据集: ImageNet
-
GoogLeNet (Inception):
- 训练数据集: ImageNet
-
ResNet:
- 训练数据集: ImageNet
-
DenseNet:
- 训练数据集: ImageNet
-
MobileNet:
- 训练数据集: ImageNet
-
EfficientNet:
- 训练数据集: ImageNet
这些算法在训练时通常使用ImageNet数据集,这是一个大规模的图像分类数据集,包含超过一千个类别的图像。但是,这些算法也可以应用于其他数据集,并通过微调(fine-tuning)或迁移学习来适应特定的任务或领域。此外,还有一些专门针对特定任务或数据集设计的图像分类算法,如SqueezeNet、ShuffleNet等。
经典的图像分割算法及其训练的对应的数据集
以下是一些经典的图像分割算法和它们通常使用的训练数据集:
-
U-Net:
- 训练数据集: Medical Segmentation Decathlon (MSD)、ISBI Challenge、Cityscapes等医学或城市场景分割数据集。
-
FCN (Fully Convolutional Networks):
- 训练数据集: PASCAL VOC、ADE20K、Cityscapes等数据集。
-
SegNet:
- 训练数据集: CamVid、Cityscapes等数据集。
-
DeepLab:
- 训练数据集: PASCAL VOC、COCO、ADE20K、Cityscapes等数据集。
-
Mask R-CNN:
- 训练数据集: COCO、Cityscapes、LVIS (Large Vocabulary Instance Segmentation)等数据集。
-
PSPNet (Pyramid Scene Parsing Network):
- 训练数据集: ADE20K、Cityscapes等数据集。
这些算法在训练时通常使用多个数据集,其中一些常用的数据集如PASCAL VOC、COCO、ADE20K、Cityscapes等。这些数据集涵盖了不同领域和场景的图像,并提供了相应的分割标注。此外,根据特定任务的需求,研究人员和团队也可能创建自己的数据集来训练图像分割算法。
经典的目标检测算法及其训练的对应的数据集
以下是一些经典的目标检测算法及其通常使用的训练数据集:
-
R-CNN (Region-based Convolutional Neural Networks):
- 训练数据集: PASCAL VOC、MS COCO、ImageNet等数据集。
-
Fast R-CNN:
- 训练数据集: PASCAL VOC、MS COCO、ImageNet等数据集。
-
Faster R-CNN:
- 训练数据集: PASCAL VOC、MS COCO、ImageNet等数据集。
-
YOLO (You Only Look Once):
- 训练数据集: PASCAL VOC、MS COCO、ImageNet等数据集。
-
SSD (Single Shot MultiBox Detector):
- 训练数据集: PASCAL VOC、MS COCO、ImageNet等数据集。
-
RetinaNet:
- 训练数据集: MS COCO、ImageNet等数据集。
-
Mask R-CNN:
- 训练数据集: MS COCO、Cityscapes、LVIS (Large Vocabulary Instance Segmentation)等数据集。
-
EfficientDet:
- 训练数据集: MS COCO、PASCAL VOC、Open Images等数据集。
这些算法在训练时通常使用多个数据集,其中一些常用的数据集如PASCAL VOC、MS COCO、ImageNet等。这些数据集提供了大量的图像和相应的目标标注,用于训练目标检测算法。此外,一些特定领域的目标检测算法可能使用针对该领域的数据集,如自动驾驶领域的KITTI数据集等。此外,还有一些研究人员和团队会创建自己的数据集来满足特定任务或领域的需求。
ImageNet数据集
ILSVRC的全称是ImageNet Large Scale Visual Recognition Challenge,即ImageNet大规模视觉识别挑战赛。 ILSVRC使用ImageNet的一个子集,总共有大约120万个训练图像,50,000个验证图像,以及150,000个测试图像;1000类别标记。 ImageNet 数据集和ILSVRC 竞赛大大促进了计算机视觉技术, 乃至深度学习的发展, 在深度学习的浪潮中占有举足轻重的地位。
文件树形式的ImageNet:
- ILSVRC2012
|- train
| |- n01440764
| | |- n01440764_10026.JPEG
| | |- n01440764_10027.JPEG
| | |- ...
| |
| |- n01443537
| | |- n01443537_10042.JPEG
| | |- n01443537_10074.JPEG
| | |- ...
| |
| |- ...
|
|- val
| |- ILSVRC2012_val_00000001.JPEG
| |- ILSVRC2012_val_00000002.JPEG
| |- ...
|
|- ILSVRC2012_train_ground_truth.txt
|- ILSVRC2012_validation_ground_truth.txt
VOC数据集
VOC(Visual Object Classes)数据集是一个广泛使用的计算机视觉数据集,用于目标检测、图像分类和图像分割等任务。它最初由PASCAL(Pattern Analysis, Statistical Modeling and Computational Learning)项目创建,并以PASCAL VOC数据集的形式发布。
VOC数据集具有以下特点和特点:
-
目标类别多样性:VOC数据集涵盖了20个常见的目标类别,包括人、车、动物、家具等,适用于多种应用场景。
-
大规模图像集合:VOC数据集包含大量图像,涵盖了多个年份,如VOC2007、VOC2012和VOC2017等。每个年份的数据集都包含了数千张图像。
-
标注信息丰富:VOC数据集中的每张图像都配有详细的标注信息,标注包括目标的位置边界框、类别标签和图像分割的掩码等。
-
训练、验证和测试划分:VOC数据集提供了明确的训练、验证和测试划分,使得研究者和开发者能够进行模型的训练、调优和评估。
-
评估标准:VOC数据集使用平均精确度(mAP)作为目标检测任务的主要评估指标。mAP综合考虑了目标检测算法在不同类别上的准确性和召回率,为算法的性能提供了综合评估。
VOC数据集在计算机视觉研究和开发中广泛应用,成为评估目标检测、图像分类和图像分割算法性能的基准数据集。它为研究人员和从业者提供了一个共同的数据集,促进了算法的比较和进一步的发展。同时,VOC数据集也为学术界和工业界的算法开发提供了一个实际的数据集,用于训练和部署计算机视觉模型。
VOCdevkit/
├── VOC2007/
│ ├── Annotations/ # 包含目标位置和类别的XML标注文件
│ ├── ImageSets/
│ │ ├── Main/ # 包含训练、验证和测试图像的文件列表
│ │ │ ├── train.txt # 训练图像列表
│ │ │ ├── val.txt # 验证图像列表
│ │ │ └── test.txt # 测试图像列表
│ ├── JPEGImages/ # 包含原始图像的JPEG文件
│ └── SegmentationClass/ # 包含图像分割任务的类别标签
├── VOC2012/
│ ├── Annotations/
│ ├── ImageSets/
│ │ ├── Main/
│ │ │ ├── train.txt
│ │ │ ├── val.txt
│ │ │ └── test.txt
│ ├── JPEGImages/
│ └── SegmentationClass/
└── VOC2017/
├── Annotations/
├── ImageSets/
│ ├── Main/
│ │ ├── train.txt
│ │ ├── val.txt
│ │ └── test.txt
├── JPEGImages/
└── SegmentationClass/
PASCAL VOC数据集
PASCAL VOC(Visual Object Classes)数据集是一个经典的计算机视觉数据集,用于目标检测、图像分类和图像分割等任务。它最早由PASCAL项目创建并维护,旨在提供一个公开的、标准化的数据集,以促进计算机视觉算法的研究和比较。
PASCAL VOC数据集的主要版本包括PASCAL VOC 2005、PASCAL VOC 2006、PASCAL VOC 2007、PASCAL VOC 2008、PASCAL VOC 2009和PASCAL VOC 2010等。其中,PASCAL VOC 2007和PASCAL VOC 2012是最常用和广泛引用的版本。
以下是PASCAL VOC数据集的主要特点和特点:
-
目标类别丰富:PASCAL VOC数据集包含多种常见目标类别,如人、车、动物、家具等。不同版本的数据集包含的类别数量略有差异,但通常涵盖20个左右的类别。
-
大规模图像集合:PASCAL VOC数据集提供大量的图像样本供研究使用。每个版本的数据集都包含数千张图像,覆盖了各种场景和视角。
-
详细的标注信息:PASCAL VOC数据集的图像都有详细的标注信息,包括目标的位置边界框、类别标签和图像分割的掩码等。这些标注信息对于训练和评估计算机视觉算法非常重要。
-
训练、验证和测试划分:PASCAL VOC数据集提供了明确的训练、验证和测试划分,以便研究者和开发者可以在相同的数据集上进行模型的训练、调优和评估。
-
评估标准:PASCAL VOC数据集使用平均精确度(mAP)作为目标检测任务的主要评估指标。mAP综合考虑了算法在不同类别上的准确性和召回率,为算法的性能提供了综合评估。
PASCAL VOC数据集在计算机视觉领域被广泛应用,成为评估目标检测、图像分类和图像分割算法性能的重要基准数据集。它为研究人员和从业者提供了一个公共的基准,有助于算法的比较、验证和改进。同时,PASCAL VOC数据集也推动了计算机视觉算法的发展和应用,对于培养和推动相关技术的发展起到了重要的推动作用。
VOCdevkit/
├── VOC2007/
│ ├── Annotations/ # 包含目标位置和类别的XML标注文件
│ ├── ImageSets/
│ │ ├── Main/ # 包含训练、验证和测试图像的文件列表
│ │ │ ├── aeroplane_train.txt
│ │ │ ├── aeroplane_val.txt
│ │ │ ├── aeroplane_test.txt
│ │ │ ├── ...
│ │ ├── Segmentation/ # 包含图像分割任务的文件列表
│ │ │ ├── train.txt
│ │ │ ├── val.txt
│ │ │ ├── test.txt
│ │ │ ├── ...
│ ├── JPEGImages/ # 包含原始图像的JPEG文件
│ └── SegmentationClass/ # 包含图像分割任务的类别标签
├── VOC2012/
│ ├── Annotations/
│ ├── ImageSets/
│ │ ├── Main/
│ │ │ ├── aeroplane_train.txt
│ │ │ ├── aeroplane_val.txt
│ │ │ ├── aeroplane_test.txt
│ │ │ ├── ...
│ │ ├── Segmentation/
│ │ │ ├── train.txt
│ │ │ ├── val.txt
│ │ │ ├── test.txt
│ │ │ ├── ...
│ ├── JPEGImages/
│ └── SegmentationClass/
└── VOC2017/
├── Annotations/
├── ImageSets/
│ ├── Main/
│ │ ├── aeroplane_train.txt
│ │ ├── aeroplane_val.txt
│ │ ├── aeroplane_test.txt
│ │ ├── ...
│ ├── Segmentation/
│ │ ├── train.txt
│ │ ├── val.txt
│ │ ├── test.txt
│ │ ├── ...
├── JPEGImages/
└── SegmentationClass/
Cityscapes数据集
Cityscapes数据集是一个用于场景理解和自动驾驶研究的大规模计算机视觉数据集。该数据集专注于城市驾驶场景,提供了高分辨率的图像、语义分割标注、实例分割标注和像素级标注。Cityscapes数据集的目标是推动自动驾驶、智能交通系统和城市规划等领域的研究和发展。
以下是Cityscapes数据集的主要特点和特点:
-
场景多样性:Cityscapes数据集涵盖了来自德国和其他欧洲城市的街景图像。数据集中包含各种不同的城市场景,包括城市街道、交通标志、行人、车辆等。
-
大规模高分辨率图像:Cityscapes数据集提供了大量高分辨率的图像样本。图像的分辨率为1024x2048像素,捕捉了细节丰富的城市场景。
-
详细的标注信息:Cityscapes数据集提供了精确的标注信息,包括语义分割、实例分割和像素级标注。语义分割标注将图像中的每个像素分配到不同的类别,实例分割标注进一步将每个目标实例分割出来,而像素级标注提供了每个像素的细粒度标注。
-
多任务学习:Cityscapes数据集支持多任务学习,包括语义分割、实例分割和像素级标注。这使得研究人员可以同时进行不同的场景理解任务,提高模型的多样性和鲁棒性。
-
评估标准:Cityscapes数据集使用交并比和交并比分数作为语义分割和实例分割任务的主要评估指标。这些评估指标可以量化模型在像素级别和目标级别上的准确性和完整性。
Cityscapes数据集在自动驾驶、智能交通系统和城市规划等领域的研究中被广泛应用。它提供了一个丰富的、真实的城市场景数据集,有助于训练和评估算法在复杂城市环境中的性能。通过使用Cityscapes数据集,研究人员可以开发出更准确、鲁棒和适应性强的场景理解算法,为未来智能交通和城市规划的发展做出贡献。
- cityscapes
- gtFine
- train
- 城市名称
- gtFine_labelIds.png (语义分割标注,每个像素的类别标签)
- gtFine_instanceIds.png (实例分割标注,每个像素的实例标签)
- gtFine_polygons.json (实例分割标注,每个实例的多边形边界)
- val
- 城市名称
- gtFine_labelIds.png
- gtFine_instanceIds.png
- gtFine_polygons.json
- test
- 城市名称
- gtFine_labelIds.png
- gtFine_instanceIds.png
- gtFine_polygons.json
- leftImg8bit
- train
- 城市名称
- 城市名称_图像编号_leftImg8bit.png (原始图像)
- val
- 城市名称
- 城市名称_图像编号_leftImg8bit.png
- test
- 城市名称
- 城市名称_图像编号_leftImg8bit.png
gtFine
文件夹包含语义分割和实例分割的标注信息,分为训练集(train
)、验证集(val
)和测试集(test
)。在每个集合中,标注文件按城市名称进行组织,对于每个城市,有对应的语义分割标注文件(gtFine_labelIds.png
)和实例分割标注文件(gtFine_instanceIds.png
)。此外,每个城市还有一个对应的实例分割的多边形边界文件(gtFine_polygons.json
)。
leftImg8bit
文件夹包含原始的RGB图像,同样按训练集、验证集和测试集以及城市名称进行组织。每个城市文件夹中的图像文件以城市名称_图像编号_leftImg8bit.png
的格式命名。
这样的文件树结构使得Cityscapes数据集的图像和标注信息可以按照城市进行组织和访问,方便了数据的使用和处理。
CoCo数据集
COCO(Common Objects in Context)数据集是一个广泛使用的大规模计算机视觉数据集,用于目标检测、图像分割、关键点检测等任务。COCO数据集旨在提供一个丰富的、多样化的场景,包括各种常见和复杂的对象,以推动计算机视觉算法的研究和发展。
以下是COCO数据集的主要特点和特点:
-
多样性的目标类别:COCO数据集涵盖了80个不同的目标类别,包括人、动物、交通工具、家具等。这些目标类别涵盖了广泛的日常物体和场景,使得COCO数据集在多样性和复杂性方面具有优势。
-
大规模图像集合:COCO数据集包含了超过10万张图像样本,涵盖了各种场景和视角。这些图像具有高分辨率,并且包含了丰富的背景和上下文信息。
-
详细的标注信息:COCO数据集的图像都有详细的标注信息,包括目标的位置边界框、类别标签、图像分割的掩码和关键点的位置等。这些标注信息对于训练和评估计算机视觉算法非常重要。
-
多任务学习:COCO数据集支持多任务学习,包括目标检测、图像分割和关键点检测等任务。这使得研究人员可以同时进行不同的视觉任务,提高模型的多功能性和适应性。
-
评估标准:COCO数据集使用平均精确度(mAP)作为目标检测和图像分割任务的主要评估指标。mAP综合考虑了算法在不同类别上的准确性和召回率,为算法的性能提供了综合评估。
COCO数据集在计算机视觉领域被广泛应用,成为评估目标检测、图像分割和关键点检测等算法性能的重要基准数据集。它提供了一个公开、大规模且丰富多样的数据集,促进了计算机视觉算法的进步和创新。同时,COCO数据集也为研究人员和从业者提供了一个标准的基准,用于比较不同算法的性能和效果。
- coco
- annotations
- instances_train.json (训练集目标检测标注文件)
- instances_val.json (验证集目标检测标注文件)
- person_keypoints_train.json (训练集关键点检测标注文件)
- person_keypoints_val.json (验证集关键点检测标注文件)
- captions_train.json (训练集图像描述标注文件)
- captions_val.json (验证集图像描述标注文件)
- images
- train2017 (训练集图像文件夹)
- 图像文件1.jpg
- 图像文件2.jpg
- ...
- val2017 (验证集图像文件夹)
- 图像文件1.jpg
- 图像文件2.jpg
- ...
- test2017 (测试集图像文件夹)
- 图像文件1.jpg
- 图像文件2.jpg
- ...
- testdev2017 (测试开发集图像文件夹)
- 图像文件1.jpg
- 图像文件2.jpg
- ...
annotations
文件夹包含了不同任务的标注文件,包括目标检测的训练集和验证集标注文件(instances_train.json
和instances_val.json
),关键点检测的训练集和验证集标注文件(person_keypoints_train.json
和person_keypoints_val.json
),以及图像描述的训练集和验证集标注文件(captions_train.json
和captions_val.json
)。
images
文件夹包含了图像数据集,分为训练集(train2017
)、验证集(val2017
)和测试集(test2017
)。每个集合中的图像文件按照命名规则进行命名,例如图像文件1.jpg
,图像文件2.jpg
等。
此外,COCO数据集还包含一个名为testdev2017
的测试开发集图像文件夹,用于算法测试和开发,但没有对应的标注文件。
这样的文件树结构使得COCO数据集的图像和标注信息可以方便地组织和访问,为算法的训练、评估和测试提供了便利。
MS COCO数据集
MS COCO(Microsoft Common Objects in Context)和COCO(Common Objects in Context)实际上是同一个数据集,只是在文献和讨论中常常使用不同的缩写方式。
COCO数据集最初由Microsoft团队创建和发布,因此被称为MS COCO或COCO数据集。"MS"代表Microsoft,用于强调数据集的来源。COCO数据集的全称是Microsoft Common Objects in Context,而"COCO"则是其简称。
因此,无论是提到MS COCO还是COCO数据集,它们指的都是同一个广泛使用的大规模计算机视觉数据集,用于目标检测、图像分割、关键点检测和图像描述等任务。它具有丰富多样的场景、多样性的目标类别和详细的标注信息,成为计算机视觉算法研究和评估的重要基准数据集。
ADE20K数据集
ADE20K(ADE20K Scene Parsing Challenge)数据集是一个用于场景解析(Scene Parsing)任务的大规模图像数据集。它旨在推动计算机视觉领域对细粒度场景理解的研究和发展。
以下是ADE20K数据集的主要特点和特点:
-
大规模的场景图像:ADE20K数据集包含超过20,000张图像样本,这些图像覆盖了多样的场景,包括室内和室外、城市和乡村等不同环境。这使得数据集在场景多样性方面具有优势。
-
细粒度的语义标签:每张图像在ADE20K数据集中都有详细的像素级语义标签,涵盖了超过150个不同的语义类别,包括物体、材料和场景等。这些标签提供了对场景中各个像素的详细语义信息。
-
挑战性的场景解析任务:ADE20K数据集的目标是对图像进行像素级别的场景解析,即将每个像素分配到其对应的语义类别中。这是一个具有挑战性的任务,需要对图像进行精细的语义理解和分割。
-
竞赛和评估:ADE20K数据集还举办了ADE20K Scene Parsing Challenge,吸引了全球的研究者参与。参与者使用ADE20K数据集进行算法训练和评估,并提交他们的场景解析结果。这推动了算法的发展,并提供了一个标准的基准用于比较不同算法的性能。
ADE20K数据集在场景解析任务和语义分割研究中被广泛应用。它提供了一个丰富多样的场景图像集合和细粒度的语义标签,为研究人员和从业者提供了一个重要的资源。通过在ADE20K数据集上开展研究,可以推动场景理解算法的发展,并促进对复杂场景中语义信息的深入理解。
- ADE20K
- images
- training (训练集图像文件夹)
- 图像文件1.jpg
- 图像文件2.jpg
- ...
- validation (验证集图像文件夹)
- 图像文件1.jpg
- 图像文件2.jpg
- ...
- testing (测试集图像文件夹)
- 图像文件1.jpg
- 图像文件2.jpg
- ...
- annotations
- training (训练集标注文件夹)
- 标注文件1.png
- 标注文件2.png
- ...
- validation (验证集标注文件夹)
- 标注文件1.png
- 标注文件2.png
- ...
images
文件夹包含了ADE20K数据集的图像数据。它包括三个子文件夹:training
(训练集图像文件夹)、validation
(验证集图像文件夹)和testing
(测试集图像文件夹)。每个子文件夹中包含了相应集合的图像文件,命名为图像文件1.jpg、图像文件2.jpg等。
annotations
文件夹包含了ADE20K数据集的标注信息。同样地,它也包括了三个子文件夹:training
(训练集标注文件夹)、validation
(验证集标注文件夹)和testing
(测试集标注文件夹)。每个子文件夹中包含了相应集合的标注文件,命名为标注文件1.png、标注文件2.png等。这些标注文件是像素级别的语义标签图像,与对应的图像文件一一对应。
通过这样的文件结构,ADE20K数据集的图像和标注信息可以方便地组织和访问,为场景解析任务的训练、评估和测试提供了便利。
LVIS数据集
LVIS(Large Vocabulary Instance Segmentation)数据集是一个大规模的实例分割数据集,用于推动目标检测和实例分割算法在多类别和多实例场景中的研究和发展。
以下是LVIS数据集的主要特点和特点:
-
大规模的实例分割数据集:LVIS数据集包含超过120,000张图像样本,涵盖了不同场景和多样的目标类别。与其他数据集相比,LVIS数据集具有更大的实例数目和更丰富的类别多样性。
-
多类别目标检测和实例分割:LVIS数据集注重多类别目标检测和实例分割任务。数据集中的目标类别超过1,000个,涵盖了常见的物体、动物、交通工具等多个类别。这使得LVIS数据集在多样性和挑战性方面具有优势。
-
详细的实例注释:LVIS数据集的图像都有详细的实例注释信息,包括每个实例的边界框、类别标签和像素级别的分割掩码。这些注释信息对于训练和评估目标检测和实例分割算法非常重要。
-
高质量的评估标准:LVIS数据集提供了一套高质量的评估指标,包括目标检测任务的关键点重叠率(Keypoint Overlap)和实例分割任务的平均精确度(mAP)。这些评估指标能够全面评估算法在多类别和多实例场景中的性能。
-
挑战和竞赛:LVIS数据集举办了LVIS Challenge,吸引了全球的研究者参与。挑战任务包括目标检测、实例分割和关键点检测,鼓励研究人员提出创新的算法和技术。
LVIS数据集为目标检测和实例分割算法研究提供了一个丰富多样的数据集,具有大规模的实例数目和多样的目标类别。通过在LVIS数据集上进行研究,可以推动算法在多类别和多实例场景中的发展,并提供一个公开的基准用于比较不同算法的性能和效果。
- LVIS
- images
- train (训练集图像文件夹)
- 图像文件1.jpg
- 图像文件2.jpg
- ...
- val (验证集图像文件夹)
- 图像文件1.jpg
- 图像文件2.jpg
- ...
- test (测试集图像文件夹)
- 图像文件1.jpg
- 图像文件2.jpg
- ...
- annotations
- lvis_v0.5_train.json (训练集标注文件)
- lvis_v0.5_val.json (验证集标注文件)
- lvis_v1_val.json (用于挑战的验证集标注文件)
LVIS数据集的图像文件存储在images
文件夹下的不同子文件夹中。train
文件夹包含训练集图像文件,val
文件夹包含验证集图像文件,test
文件夹包含测试集图像文件。每个子文件夹中都包含一系列的图像文件,例如图像文件1.jpg、图像文件2.jpg等。
注释文件存储在annotations
文件夹中。lvis_v0.5_train.json
是训练集的标注文件,lvis_v0.5_val.json
是验证集的标注文件,lvis_v1_val.json
是用于挑战评估的验证集的标注文件。这些标注文件以JSON格式存储,包含了每个图像的实例注释信息,包括边界框、类别标签和分割掩码等。
通过这样的文件树结构,LVIS数据集的图像和标注信息可以方便地组织和访问,为目标检测和实例分割算法的训练、评估和测试提供了便利。