【celeba】-数据集的介绍
CelebA 数据集在 MTCNN 中的使用
1 数据集结构
CelebA_副本/
├── Anno/
│ ├── list_bbox_celeba.txt # 边界框
│ ├── list_landmarks_celeba.txt # 5 关键点
│ ├── list_attr_celeba.txt # 40 属性
│ └── identity_CelebA.txt # 身份
├── Img/
│ ├── img_celeba_original/ # 202 599 张 JPG(已解压)
│ └── img_align_celeba/ # 202 599 张 JPG(对齐后)
└── Eval/└── list_eval_partition.txt # 训练 / 验证 / 测试划分
2 标注格式
2.1 边界框
格式:image_id x_1 y_1 width height
示例:000001.jpg 95 71 226 313
2.2 关键点
格式:image_id lefteye_x lefteye_y righteye_x righteye_y nose_x nose_y leftmouth_x leftmouth_y rightmouth_x rightmouth_y
示例:000001.jpg 165 184 244 176 196 249 194 271 266 260
2.3 属性
40 个二进制标签(1 / -1)。
首图示例:无胡茬、拱形眉、有吸引力、无眼袋、不秃头、无刘海……
3 在 MTCNN 中的使用
3.1 样本划分
- 正样本:IOU > 0.7,轻微偏移 ±20 %
- 部分样本:0.3 < IOU ≤ 0.7,中等偏移 ±100 %
- 负样本:IOU < 0.1,大幅偏移 ±200 %
3.2 网络输入尺寸
- P-Net:12×12
- R-Net:24×24
- O-Net:48×48
3.3 训练数据格式
每行:image_path cls offset_x1 offset_y1 offset_x2 offset_y2
3.4 损失函数
- 分类:BCE
- 回归:MSE
- 总损失:α × cls_loss + (1-α) × offset_loss
4 对齐 vs 原始图像
特征 | 原始野生图像 | 对齐裁剪图像 |
---|---|---|
多样性 | 角度、光照、遮挡丰富 | 统一居中、大小一致 |
训练适用性 | 适合 MTCNN 训练 | 易过拟合 |
用途 | 训练 | 标准化测试 |
5 代码验证
- 属性:未使用(
list_attr_celeba.txt
未被读取)。 - 关键点:代码中全部注释掉,输出设为 0。
- 路径:原始设计指向
img_celeba.7z\img_celeba
,现改为
CelebA_副本/Img/img_celeba_original/img_celeba/
(已解压)。
6 最终配置
- 训练数据:使用原始野生图像并通过数据增强制造样本。
- 路径修改:将
img_path
指向解压后的原始图像目录。