2025-10-29 21:27:29 +00:00

40 lines
1.3 KiB
Python
Executable File

#!/usr/bin/env python3
import os
import shutil
import json
import argparse
def parse_args():
parser = argparse.ArgumentParser()
parser.add_argument('--num-samples', '-n', type=int, default=100)
return parser.parse_args()
def main():
args = parse_args()
scan_samples = [x for x in os.listdir('data/samples') if 'scan-' in x]
scan_samples = sorted(scan_samples, reverse=True)
todo = args.num_samples
for scan in scan_samples:
if todo <= 0:
break
scan_dir = f'data/samples/{scan}'
md_file = f'data/samples/{scan}/metadata.json'
md = json.load(open(md_file))
scan_id = scan.split('-')[-1]
targetd = f'/data/emblem/dataset/pos/scans/{scan_id}'
if os.path.exists(targetd):
continue
if 'pos' in md['labels']:
full_sbs_jpg = f'{scan_dir}/full-sbs.jpg'
if os.path.exists(full_sbs_jpg):
os.makedirs(targetd, exist_ok=True)
print(f'Copying {full_sbs_jpg} => {targetd}/fullqrsbs.jpg')
shutil.copy(full_sbs_jpg, f'{targetd}/fullqrsbs.jpg')
print(f'Copying {md_file} => {targetd}/metadata.json')
shutil.copy(md_file, f'{targetd}/metadata.json')
todo -= 1
if __name__ == '__main__':
main()