| import os | |
| import yaml | |
| def fix_yaml_paths(yaml_path): | |
| with open(yaml_path, 'r') as f: | |
| data = yaml.safe_load(f) | |
| dataset_dir = os.path.dirname(os.path.abspath(yaml_path)) | |
| # Use absolute path as root | |
| data['path'] = dataset_dir | |
| # Since only 'train' exists, use it for validation too so training doesn't fail | |
| data['train'] = "train/images" | |
| data['val'] = "train/images" | |
| # Remove test if it doesn't exist to avoid warnings | |
| if 'test' in data: | |
| del data['test'] | |
| with open(yaml_path, 'w') as f: | |
| yaml.dump(data, f) | |
| print(f"Fixed paths in {yaml_path}") | |
| print("Using 'train' for both training and validation.") | |
| if __name__ == "__main__": | |
| fix_yaml_paths("datasets/nbl_dataset/data.yaml") | |