in models/feat_pool.py [0:0]
def __init__(self, class_num, sample_num=1500, feat_dim=512, mode='NPOS', device='cuda:0'):
self.class_num = class_num
self.sample_num = sample_num
self.feat_dim = feat_dim
self.device = device
self.class_ptr = torch.zeros((class_num,)).to(device)
self.queue = torch.zeros((class_num, sample_num, feat_dim)).to(device)
self.mode = mode
if mode == 'NPOS':
# Standard Gaussian distribution
assert faiss.StandardGpuResources
res = faiss.StandardGpuResources()
self.KNN_index = faiss.GpuIndexFlatL2(res, self.feat_dim)
self.K = sample_num // 3
self.sample_from = sample_num * 2
self.select = sample_num // 5
self.pick_nums = 1
self.ID_points_num = 10
elif mode == 'VOS':
self.sample_from = sample_num * 10
self.select = sample_num // 5
self.pick_nums = 10
self.ID_points_num = 1
else:
raise NotImplementedError(mode)