Spaces:
Runtime error
Runtime error
import argparse | |
import h5py | |
import os | |
import numpy as np | |
import json | |
from tqdm import tqdm | |
def main(params): | |
imgs = json.load(open(params['input_json'], 'r')) | |
imgs = imgs['images'] | |
N = len(imgs) | |
if params['fc_input_dir'] is not None: | |
print('processing fc') | |
with h5py.File(params['fc_output']) as file_fc: | |
for i, img in enumerate(tqdm(imgs)): | |
npy_fc_path = os.path.join( | |
params['fc_input_dir'], | |
str(img['cocoid']) + '.npy') | |
d_set_fc = file_fc.create_dataset( | |
str(img['cocoid']), data=np.load(npy_fc_path)) | |
file_fc.close() | |
if params['att_input_dir'] is not None: | |
print('processing att') | |
with h5py.File(params['att_output']) as file_att: | |
for i, img in enumerate(tqdm(imgs)): | |
npy_att_path = os.path.join( | |
params['att_input_dir'], | |
str(img['cocoid']) + '.npz') | |
d_set_att = file_att.create_dataset( | |
str(img['cocoid']), | |
data=np.load(npy_att_path)['feat']) | |
file_att.close() | |
if __name__ == "__main__": | |
parser = argparse.ArgumentParser() | |
parser.add_argument('--input_json', required=True, help='input json file to process into hdf5') | |
parser.add_argument('--fc_output', default='data', help='output h5 filename for fc') | |
parser.add_argument('--att_output', default='data', help='output h5 file for att') | |
parser.add_argument('--fc_input_dir', default=None, help='input directory for numpy fc files') | |
parser.add_argument('--att_input_dir', default=None, help='input directory for numpy att files') | |
args = parser.parse_args() | |
params = vars(args) # convert to ordinary dict | |
print('parsed input parameters:') | |
print(json.dumps(params, indent=2)) | |
main(params) |