def test_ZnSphereCodecRec(self): dim = 16 r2 = 6 codec = faiss.ZnSphereCodecRec(dim, r2) # print("nv=", codec.nv) for i in range(codec.nv): c = np.zeros(dim, dtype='float32') codec.decode(i, swig_ptr(c)) code = codec.encode_centroid(swig_ptr(c)) assert code == i
def test_ZnSphereCodec_encode_centroid(self): dim = 8 r2 = 5 ref_codec = faiss.ZnSphereCodec(dim, r2) codec = faiss.ZnSphereCodecRec(dim, r2) # print(ref_codec.nv, codec.nv) assert ref_codec.nv == codec.nv s = set() for i in range(ref_codec.nv): c = np.zeros(dim, dtype='float32') ref_codec.decode(i, swig_ptr(c)) code = codec.encode_centroid(swig_ptr(c)) assert 0 <= code < codec.nv s.add(code) assert len(s) == codec.nv