在 YOLO 的 data.yaml
配置文件中,训练图像路径前加 ../
是为了表示相对路径。
相对路径的含义
../
表示返回当前目录的上一级目录。- 这种路径配置方式使得项目结构更加灵活,方便在不同环境下迁移项目。
为什么使用相对路径?
- 灵活性:使用相对路径可以避免硬编码绝对路径,使得项目在不同机器或目录结构下更容易复用。
- 可移植性:如果项目需要在不同的计算机或环境中运行,使用相对路径可以减少因路径变化带来的问题。
示例
假设你的项目结构如下:
yolovX/
├── configs/
│ └── data.yaml
├── data/
│ └── datasets/
│ └── custom/
│ ├── images/
│ │ ├── train/
│ │ └── val/
│ └── labels/
│ ├── train/
│ └── val/
└── ...
在 data.yaml
文件中,你可以这样配置:
yaml
train: ../data/datasets/custom/images/train # 训练图像路径
val: ../data/datasets/custom/images/val # 验证图像路径
nc: 2
names: ['cat', 'dog']
解释
../
表示从configs
目录返回到yolovX
项目根目录。- 然后从根目录进入
data/datasets/custom/images/train
目录,找到训练图像。
总结
使用相对路径(如 ../
)是为了让项目结构更加灵活和可移植。你可以根据项目的实际目录结构调整路径配置,确保路径指向正确。