File size: 1,337 Bytes
f12ab4c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
import numpy as np
import scipy.io
def euler2rot(euler):
sin, cos = np.sin, np.cos
phi, theta, psi = euler[0], euler[1], euler[2]
R1 = np.array([[1, 0, 0],
[0, cos(phi), sin(phi)],
[0, -sin(phi), cos(phi)]])
R2 = np.array([[cos(theta), 0, -sin(theta)],
[0, 1, 0],
[sin(theta), 0, cos(theta)]])
R3 = np.array([[cos(psi), sin(psi), 0],
[-sin(psi), cos(psi), 0],
[0, 0, 1]])
R = R1 @ R2 @ R3
return R
import json
import os
from glob import glob
import sys
temp_folder = sys.argv[1]
output_folder = sys.argv[2]
import shutil
pose_template = np.load('util/pose_template.npy')
glob_names= sorted(glob('%s/cropped_images/*.png'%(temp_folder)))
for name_all in glob_names:
if os.path.isfile('%s/cropped_images/cameras.json'%(temp_folder)):
with open('%s/cropped_images/cameras.json'%(temp_folder), 'r') as file:
labels = json.load(file)#['labels']
predict_pose = labels
name = os.path.basename(name_all)[:-4]
pose= np.array(predict_pose[name+'.png']['pose']).reshape(16)
pose_template[:16] = pose
np.save('%s/'%(output_folder)+name+'.npy',pose_template)
shutil.copy('%s/cropped_images/'%(temp_folder)+name+'.png','%s/'%(output_folder)+name+'.png')
|