def run_rw(img, mask, mu, sigma): S = Segmentation(img.get_data(), mask=mask, mu=mu, sigma=sigma, ngb_size=NGB_SIZE, beta=BETA) prior, gamma = config_random_walker(S.ext_field(), BETA) q = random_walker(mask, prior, gamma) S.ppm[mask] = q return S
def init_laplace(img, mask, mu, sigma): S = Segmentation(img.get_data(), mask=mask, mu=mu, sigma=sigma, ngb_size=NGB_SIZE, beta=BETA) prior, gamma = config_random_walker(S.ext_field(), BETA) q = random_walker(mask, prior, gamma) if BINARIZE: S.ppm[mask] = binarize_ppm(q) else: S.ppm[mask] = q return S
def run_naive(img, mask, mu, sigma): S = Segmentation(img.get_data(), mask=mask, mu=mu, sigma=sigma, ngb_size=NGB_SIZE, beta=BETA) field = S.ext_field() S.ppm[mask] = (field.T / field.sum(1)).T return S