change_dir.py 1.2 KB

123456789101112131415161718192021222324252627
  1. import argparse
  2. # -------------------------------------------------------------------------------------------------------------------- #
  3. # 设置
  4. parser = argparse.ArgumentParser(description='更改yolo格式数据集train.txt和val.txt中图片的路径')
  5. parser.add_argument('--data_path', default=r'D:\dataset\ObjectDetection\voc', type=str, help='|数据根目录所在目录|')
  6. parser.add_argument('--change_dir', default=r'D:\dataset\ObjectDetection\voc', type=str, help='|将路径中目录换成change_dir|')
  7. args = parser.parse_args()
  8. args.train_txt = args.data_path + '/train.txt'
  9. args.val_txt = args.data_path + '/val.txt'
  10. args.txt_change = args.change_dir + '/image'
  11. # -------------------------------------------------------------------------------------------------------------------- #
  12. # 程序
  13. def change_dir(txt):
  14. with open(txt, 'r')as f:
  15. label = f.readlines()
  16. label = [args.txt_change + _.split('image')[-1] for _ in label]
  17. with open(txt, 'w')as f:
  18. f.writelines(label)
  19. if __name__ == '__main__':
  20. change_dir(args.train_txt)
  21. change_dir(args.val_txt)
  22. print(f'| 已更改train.txt和val.txt中的图片根路径为:{args.change_dir} |')