def _compute_targets(ex_rois, gt_rois):
"""Compute bounding-box regression targets for an image. The targets are scale invariance"""
ex_widths = ex_rois[:, 2] - ex_rois[:, 0] + cfg.EPS
ex_heights = ex_rois[:, 3] - ex_rois[:, 1] + cfg.EPS
ex_ctr_x = ex_rois[:, 0] + 0.5 * ex_widths
ex_ctr_y = ex_rois[:, 1] + 0.5 * ex_heights
gt_widths = gt_rois[:, 2] - gt_rois[:, 0] + cfg.EPS
gt_heights = gt_rois[:, 3] - gt_rois[:, 1] + cfg.EPS
gt_ctr_x = gt_rois[:, 0] + 0.5 * gt_widths
gt_ctr_y = gt_rois[:, 1] + 0.5 * gt_heights
targets_dx = (gt_ctr_x - ex_ctr_x) / ex_widths
targets_dy = (gt_ctr_y - ex_ctr_y) / ex_heights
targets_dw = np.log(gt_widths / ex_widths)
targets_dh = np.log(gt_heights / ex_heights)
targets = np.zeros((ex_rois.shape[0], 4), dtype=np.float32)
targets[:, 0] = targets_dx
targets[:, 1] = targets_dy
targets[:, 2] = targets_dw
targets[:, 3] = targets_dh
return targets
roidb.py 文件源码
python
阅读 29
收藏 0
点赞 0
评论 0
评论列表
文章目录