def read_gt_label(gt_label, Rtilt): cat_id = gt_label[0][2:-1] loc_gt_w = [float(gt_label[1]), float(gt_label[2]), float(gt_label[3])] loc_gt_w_tilt = np.dot(np.transpose(Rtilt), loc_gt_w) dim_gt_w= [float(gt_label[4])*2, float(gt_label[5])*2, float(gt_label[6])*2] # 3D object dimensions: x길이, y길이, z길이 rot_gt_w = float(gt_label[7]) # Rotation around Y-axis in camera coords. [-Pi; Pi] width = float(gt_label[10]) height = float(gt_label[11]) bbox2D_gt = [float(gt_label[8]), float(gt_label[9]), float(gt_label[8]) + width, float( gt_label[9]) + height] box_3d = compute_box_3d_sun_8(dim_gt_w, loc_gt_w, rot_gt_w, Rtilt) # 이제 3d bounding box를 image에 투영시킴 return cat_id, [loc_gt_w_tilt, dim_gt_w, rot_gt_w, bbox2D_gt], box_3d, loc_gt_w_tilt
# 'occluded': occluded, 'location': location_changed, 'rotation_y': rotation_y } #이미 rotation_y는 theta_c라서 # print("ann") # print(ann) ret['annotations'].append(ann) # if DEBUG and cat_id in class_final: if DEBUG: # EXT = [45.75, -0.34, 0.005] # calib[0][3] = 45.75 # calib[1][3] = -0.34 # calib[2][3] = 0.005 # img 보이기 print(cat_id) box_3d = compute_box_3d_sun_8(dim, location, rotation_y, Rtilt) print(dim, location, rotation_y, Rtilt) print(box_3d) box_2d = project_to_image( box_3d, calib) # 이제 3d bounding box를 image에 투영시킴 print('box_2d', box_2d) #이미지 보이기 c = np.cos(rotation_y) s = np.sin(rotation_y) image = draw_box_3d(image, box_2d) print("alpha:" + str(alpha)) '''