40 lines
1.3 KiB
Python
Executable File
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()
|