| 37 | return area_i / (area_a[:, None] + area_b - area_i) |
| 38 | |
| 39 | def get_bbox(joint_img): |
| 40 | x_img, y_img = joint_img[:, 0], joint_img[:, 1] |
| 41 | xmin = min(x_img) |
| 42 | ymin = min(y_img) |
| 43 | xmax = max(x_img) |
| 44 | ymax = max(y_img) |
| 45 | |
| 46 | x_center = (xmin + xmax) / 2. |
| 47 | width = (xmax - xmin) * 1.2 |
| 48 | xmin = x_center - 0.5 * width |
| 49 | xmax = x_center + 0.5 * width |
| 50 | |
| 51 | y_center = (ymin + ymax) / 2. |
| 52 | height = (ymax - ymin) * 1.2 |
| 53 | ymin = y_center - 0.5 * height |
| 54 | ymax = y_center + 0.5 * height |
| 55 | |
| 56 | bbox = np.array([xmin, ymin, xmax - xmin, ymax - ymin]).astype(np.float32) |
| 57 | return bbox |
| 58 | |
| 59 | def get_bbox_filter(joint_img): |
| 60 | filtered_joint_img = joint_img[joint_img[:, 2] != 0] |