def segment_image(im, parameter_object):
dims, rows, cols = im.shape
image2segment = np.dstack((rescale_intensity(im[0],
in_range=(parameter_object.image_min,
parameter_object.image_max),
out_range=(0, 255)),
rescale_intensity(im[1],
in_range=(parameter_object.image_min,
parameter_object.image_max),
out_range=(0, 255)),
rescale_intensity(im[2],
in_range=(parameter_object.image_min,
parameter_object.image_max),
out_range=(0, 255))))
felzer = felzenszwalb(np.uint8(image2segment),
scale=50,
sigma=.01,
min_size=5,
multichannel=True).reshape(rows, cols)
props = regionprops(felzer)
props = np.array([p.area for p in props], dtype='uint64')
return fill_labels(np.uint64(felzer), props)
评论列表
文章目录