def anchor_preds(self, preds, train_anchor_inds, image_offset): """ Get predictions for the training indices :param preds: [batch_size, IM_SIZE/16, IM_SIZE/16, A, 6] :param train_anchor_inds: [num_train, 4] indices into the predictions :return: class_preds: [num_train, 2] array of yes/no box_preds: [num_train, 4] array of predicted boxes """ assert train_anchor_inds.size(1) == 4 tai = train_anchor_inds.data.clone() tai[:, 0] -= image_offset train_regions = gather_nd(preds, tai) class_preds = train_regions[:, :2] box_preds = train_regions[:, 2:] return class_preds, box_preds
def anchor_preds(self, preds, train_anchor_inds, image_offset): """ Get [1536,2] scores and [1536,4] deltas from [6*37*37*20,6] 1536 location bases are provided by train_anchor_inds :param preds: [batch_size, IM_SIZE/16, IM_SIZE/16, A, 6] :param train_anchor_inds: [nusm_train, 4] indices into the predictions :return: class_preds: [num_train, 2] array of yes/no box_preds: [num_train, 4] array of predicted boxes """ assert train_anchor_inds.size(1) == 4 #ipdb.set_trace() tai = train_anchor_inds.data.clone() tai[:, 0] -= image_offset train_regions = gather_nd(preds, tai) class_preds = train_regions[:, :2] box_preds = train_regions[:, 2:] return class_preds, box_preds