MCPcopy Create free account
hub / github.com/Sin3DM/Sin3DM / pairwise_IoU_dist

Function pairwise_IoU_dist

evaluation/patch_utils.py:30–43  ·  view source on GitHub ↗

average pairwise 1-IoU for a list of 3D shape volume

(data_list: list)

Source from the content-addressed store, hash-verified

28
29
30def pairwise_IoU_dist(data_list: list):
31 """average pairwise 1-IoU for a list of 3D shape volume"""
32 avgv = []
33 for i in tqdm(range(len(data_list)), desc='Div'):
34 data_i = data_list[i]
35 intersect = torch.logical_and(data_i, data_list).sum(dim=(1, 2, 3))
36 union = torch.logical_or(data_i, data_list).sum(dim=(1, 2, 3))
37 iou_dist = 1.0 - intersect / union
38 mask = torch.ones_like(iou_dist, dtype=torch.bool)
39 mask[i] = False
40 iou_dist = iou_dist[mask]
41 avgv.append(torch.mean(iou_dist).item())
42 avgv = np.mean(avgv)
43 return avgv
44
45
46def extract_valid_patches_unfold(voxels: torch.Tensor, patch_size: int, stride=None):

Callers 1

eval_Div_given_pathsFunction · 0.85

Calls 1

tqdmFunction · 0.85

Tested by

no test coverage detected