Mercurial > repos > imgteam > colorize_labels
diff colorize_labels.py @ 0:0afb17e107ff draft
planemo upload for repository https://github.com/BMCV/galaxy-image-analysis/tree/master/tools/colorize_labels commit ffedf4e17ecbb226657ccf8472b0572532e9aa8a
author | imgteam |
---|---|
date | Tue, 12 Mar 2024 23:00:45 +0000 |
parents | |
children | 43c80f3c3b60 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/colorize_labels.py Tue Mar 12 23:00:45 2024 +0000 @@ -0,0 +1,43 @@ +import argparse + +import numpy as np +import skimage.io +import skimage.util +import superdsm.render + + +def color_hex_to_rgb_tuple(hex): + if hex.startswith('#'): + hex = hex[1:] + return ( + int(hex[0:2], 16), + int(hex[2:4], 16), + int(hex[4:6], 16), + ) + + +if __name__ == '__main__': + + parser = argparse.ArgumentParser() + parser.add_argument('input', type=str) + parser.add_argument('--bg_label', type=int) + parser.add_argument('--bg_color', type=str) + parser.add_argument('--cmap', type=str, default='hsv') + parser.add_argument('--seed', type=int) + parser.add_argument('--output', type=str) + args = parser.parse_args() + + im = skimage.io.imread(args.input) + im = np.squeeze(im) + assert im.ndim == 2 + + im_colorized = superdsm.render.colorize_labels( + labels=im, + bg_label=args.bg_label, + cmap=args.cmap, + bg_color=np.divide(color_hex_to_rgb_tuple(args.bg_color), 255), + shuffle=args.seed, + ) + + im_colorized = skimage.util.img_as_ubyte(im_colorized) + skimage.io.imsave(args.output, im_colorized)