comparison permutate_axis.py @ 3:7e7215e721af draft default tip

planemo upload for repository https://github.com/BMCV/galaxy-image-analysis/tree/master/tools/permutate_axis/ commit 2286a6c9da88596349ed9d967c51541409c0a7bf
author imgteam
date Mon, 13 Nov 2023 22:11:38 +0000
parents 91e255c78eb5
children
comparison
equal deleted inserted replaced
2:91e255c78eb5 3:7e7215e721af
1 import argparse 1 import argparse
2 import sys
3 import warnings 2 import warnings
3
4 import numpy as np 4 import numpy as np
5 import skimage.io 5 import skimage.io
6 import skimage.util 6 import skimage.util
7
7 8
8 def permutate_axis(input_image_path, output_image_path, axis, permutate): 9 def permutate_axis(input_image_path, output_image_path, axis, permutate):
9 images = [] 10 images = []
10 raw_image = skimage.io.imread(input_image_path, plugin='tifffile') 11 raw_image = skimage.io.imread(input_image_path, plugin='tifffile')
11 for i in permutate: 12 for i in permutate:
12 # TODO generalise 13 # TODO generalise
13 if axis == 0: 14 if axis == 0:
14 a_slice = raw_image[i] 15 a_slice = raw_image[i]
15 elif axis == 1: 16 elif axis == 1:
16 a_slice = raw_image[:,i] 17 a_slice = raw_image[:, i]
17 elif axis == 2: 18 elif axis == 2:
18 a_slice = raw_image[:,:,i] 19 a_slice = raw_image[:, :, i]
19 elif axis == 3: 20 elif axis == 3:
20 a_slice = raw_image[:,:,:,i] 21 a_slice = raw_image[:, :, :, i]
21 elif axis == 4: 22 elif axis == 4:
22 a_slice = raw_image[:,:,:,:,i] 23 a_slice = raw_image[:, :, :, :, i]
23 images.append(np.expand_dims(a_slice, axis)) 24 images.append(np.expand_dims(a_slice, axis))
24 25
25 res = np.concatenate(images, axis) 26 res = np.concatenate(images, axis)
26 with warnings.catch_warnings(): 27 with warnings.catch_warnings():
27 warnings.simplefilter("ignore") 28 warnings.simplefilter("ignore")
28 res = skimage.util.img_as_uint(res) #Attention: precision loss 29 res = skimage.util.img_as_uint(res) # Attention: precision loss
29 skimage.io.imsave(output_image_path, res, plugin='tifffile') 30 skimage.io.imsave(output_image_path, res, plugin='tifffile')
31
30 32
31 if __name__ == "__main__": 33 if __name__ == "__main__":
32 parser = argparse.ArgumentParser() 34 parser = argparse.ArgumentParser()
33 parser.add_argument('input_file', type=argparse.FileType('r'), help='input file') 35 parser.add_argument('input_file', type=argparse.FileType('r'), help='input file')
34 parser.add_argument('out_file', type=argparse.FileType('w'), help='out file (TIFF)') 36 parser.add_argument('out_file', type=argparse.FileType('w'), help='out file (TIFF)')