def load_im_data(path, roi_entry,
target_size=None, dim_ordering='default'):
if pil_im is None:
raise ImportError('Could not import PIL.Image. '
'The use of `array_to_img` requires PIL.')
im = pil_im.open(path)
if roi_entry['flipped']:
im = im.transpose(pil_im.FLIP_LEFT_RIGHT)
im = im.convert('RGB')
# substract pixel means
#im = preprocess_input(im, dim_ordering)
gt_inds = np.where(roi_entry['gt_classes'] != 0)[0]
gt_boxes = np.empty((len(gt_inds), 5), dtype=np.float32)
#resize im to match with network input
if target_size == None:
target_size = (224,224)
w, h = im.size
s_w = float(target_size[0]) / float(w)
s_h = float(target_size[1]) / float(h)
gt_boxes[:, 0] = roi_entry['boxes'][gt_inds, 0]*s_w
gt_boxes[:, 2] = roi_entry['boxes'][gt_inds, 2]*s_w
gt_boxes[:, 1] = roi_entry['boxes'][gt_inds, 1]*s_h
gt_boxes[:, 3] = roi_entry['boxes'][gt_inds, 3]*s_h
gt_boxes[:, 4] = roi_entry['gt_classes'][gt_inds]
im = im.resize(size=target_size, resample=pil_im.BILINEAR)
return im, gt_boxes
评论列表
文章目录