def test_bbox_search(img): prob = edt_prob(img) dist = star_dist(img, n_rays=32, mode="cpp") coord = dist_to_coord(dist) nms_a = non_maximum_suppression( coord, prob, prob_thresh=0.4, verbose=False, max_bbox_search=False) nms_b = non_maximum_suppression( coord, prob, prob_thresh=0.4, verbose=False, max_bbox_search=True) check_similar(nms_a, nms_b)
def test_types(img, n_rays): mode = "cpp" gt = star_dist(img, n_rays=n_rays, mode=mode) for dtype in (np.int8, np.int16, np.int32, np.uint8, np.uint16, np.uint32): x = star_dist(img.astype(dtype), n_rays=n_rays, mode=mode) print( "test_stardist2D (mode {mode}) for shape {img.shape} and type {dtype}" .format(mode=mode, img=img, dtype=dtype)) check_similar(gt, x)
def test_cpu_gpu(img, n_rays, grid): print(tuple(s//g for s, g in zip(img.shape, grid))) rays = Rays_GoldenSpiral(n_rays) with Timer(f"stardist {img.shape} {n_rays} rays - CPU"): s_cpp = star_dist3D(img, rays=rays, grid=grid, mode="cpp") with Timer(f"stardist {img.shape} {n_rays} rays - GPU"): s_ocl = star_dist3D(img, rays=rays, grid=grid, mode="opencl") check_similar(s_cpp, s_ocl) return s_cpp, s_ocl
def test_types(img, n_rays, grid): mode = "cpp" rays = Rays_GoldenSpiral(n_rays) gt = star_dist3D(img, rays=rays, grid=grid, mode=mode) for dtype in (np.int8, np.int16, np.int32, np.uint8, np.uint16, np.uint32): x = star_dist3D(img.astype(dtype), rays=rays, grid=grid, mode=mode) print("test_stardist3D (mode {mode}) for shape {img.shape} and type {dtype}".format(mode =mode, img = img, dtype = dtype)) check_similar(gt, x)
def test_bbox_search_old(img): from stardist.geometry.geom2d import _polygons_to_label_old, _dist_to_coord_old from stardist.nms import _non_maximum_suppression_old prob = edt_prob(img) dist = star_dist(img, n_rays=32, mode="cpp") coord = _dist_to_coord_old(dist) points_a = _non_maximum_suppression_old(coord, prob, prob_thresh=0.4, verbose=False, max_bbox_search=False) points_b = _non_maximum_suppression_old(coord, prob, prob_thresh=0.4, verbose=False, max_bbox_search=True) img2_a = _polygons_to_label_old(coord, prob, points_a, shape=img.shape) img2_b = _polygons_to_label_old(coord, prob, points_b, shape=img.shape) check_similar(points_a, points_b) check_similar(img2_a, img2_b)
def test_cpu_gpu(img, n_rays, grid): rays = Rays_GoldenSpiral(n_rays) s_cpp = star_dist3D(img, rays=rays, grid=grid, mode="cpp") s_ocl = star_dist3D(img, rays=rays, grid=grid, mode="opencl") check_similar(s_cpp, s_ocl)
def test_cpu_gpu(img, n_rays): s_cpp = star_dist(img, n_rays=n_rays, mode="cpp") s_ocl = star_dist(img, n_rays=n_rays, mode="opencl") check_similar(s_cpp, s_ocl)