Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def test_load_and_predict():
model_path = path_model3d()
model = StarDist3D(None, name=model_path.name, basedir=str(model_path.parent))
img, mask = real_image3d()
x = normalize(img,1,99.8)
prob, dist = model.predict(x, n_tiles=(1,2,2))
assert prob.shape == dist.shape[:3]
assert model.config.n_rays == dist.shape[-1]
labels, _ = model.predict_instances(x)
assert labels.shape == img.shape[:3]
stats = matching(mask, labels, thresh=0.5)
assert (stats.fp, stats.tp, stats.fn) == (0, 30, 21)
return model, labels
def test_load_and_predict():
model_path = path_model2d()
model = StarDist2D(None, name=model_path.name, basedir=str(model_path.parent))
img, mask = real_image2d()
x = normalize(img,1,99.8)
prob, dist = model.predict(x, n_tiles=(2,3))
assert prob.shape == dist.shape[:2]
assert model.config.n_rays == dist.shape[-1]
labels, polygons = model.predict_instances(x)
assert labels.shape == img.shape[:2]
assert labels.max() == len(polygons['coord'])
assert len(polygons['coord']) == len(polygons['points']) == len(polygons['prob'])
stats = matching(mask, labels, thresh=0.5)
assert (stats.fp, stats.tp, stats.fn) == (1, 48, 17)
def test_acc(img):
prob = edt_prob(img)
dist = star_dist(img, n_rays=32, mode="cpp")
coord = dist_to_coord(dist)
points = non_maximum_suppression(coord, prob, prob_thresh=0.4)
img2 = polygons_to_label(coord, prob, points, shape=img.shape)
m = matching(img, img2)
acc = m.accuracy
print("accuracy {acc:.2f}".format(acc=acc))
assert acc > 0.9