| import os |
| import zipfile |
| import gdown |
|
|
| |
| FILE_ID = '1wfoLkfZOxxEtuDyDSWCnAq-N8HZVKdQ1' |
| DEST_DIR = './data/SPOD_dataset' |
| ZIP_PATH = os.path.join(DEST_DIR, 'SPOD_30b_8c.zip') |
| EXTRACTED_PATH = os.path.join(DEST_DIR, 'SPOD_30b_8c') |
| CONFIG_PATH = './configs/_base_/datasets/hsi_detection.py' |
|
|
| os.makedirs(DEST_DIR, exist_ok=True) |
|
|
| |
| if not os.path.exists(ZIP_PATH): |
| url = f'[https://drive.google.com/uc?id={FILE_ID}'](https://drive.google.com/uc?id={FILE_ID}') |
| print(f'Downloading dataset from {url}...') |
| gdown.download(url, ZIP_PATH, quiet=False) |
| else: |
| print('Dataset zip already exists.') |
| |
| # Extract the dataset |
| if not os.path.exists(EXTRACTED_PATH): |
| print('Extracting dataset...') |
| with zipfile.ZipFile(ZIP_PATH, 'r') as zip_ref: |
| zip_ref.extractall(DEST_DIR) |
| else: |
| print('Dataset already extracted.') |
| |
| # Update config file |
| if os.path.exists(CONFIG_PATH): |
| with open(CONFIG_PATH, 'r') as f: |
| lines = f.readlines() |
| with open(CONFIG_PATH, 'w') as f: |
| for line in lines: |
| if line.strip().startswith('data_root'): |
| f.write(f"data_root = '{EXTRACTED_PATH}/'\n") |
| else: |
| f.write(line) |
| print(f'Updated {CONFIG_PATH} with dataset path.') |
| else: |
| print(f'Config file {CONFIG_PATH} not found!') |
| |
| print('Done.') |