DATID-3D / pose_estimation /check_pose.py
gwang-kim's picture
u
f12ab4c
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')