-
Notifications
You must be signed in to change notification settings - Fork 1
/
CreateMultiChannelIMag.txt
39 lines (35 loc) · 1.24 KB
/
CreateMultiChannelIMag.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import os
import imagej
import glob
from ij import IJ
from ij.plugin.frame import RoiManager
def run():
Ch0dir = '/Volumes/TRANSCEND/Claudia/LGR5SegmentationTraining/OriginalCh0/'
Ch1dir = '/Volumes/TRANSCEND/Claudia/LGR5SegmentationTraining/OriginalCh1/'
DoubleChdir = '/Volumes/TRANSCEND/Claudia/LGR5SegmentationTraining/DoubleChannelOriginal/'
Raw_path = os.path.join(originaldir, '*tif')
X = glob.glob(Raw_path)
axes = 'YX'
for fname in X:
print(fname)
IJ.open(fname);
imp = IJ.getImage()
Name = os.path.basename(os.path.splitext(fname)[0])
RoiName = roidir + Name + '.roi'
Roi = IJ.open(RoiName)
rm = RoiManager.getInstance()
if (rm==None):
rm = RoiManager()
rm.addRoi(Roi)
print(fname, RoiName)
if not rm:
print "Please first add some ROIs to the ROI Manager"
return
impMask = IJ.createImage("Mask", "8-bit grayscale-mode", imp.getWidth(), imp.getHeight(), imp.getNChannels(), imp.getNSlices(), imp.getNFrames())
IJ.setForegroundColor(255, 255, 255)
rm.runCommand(impMask,"Deselect")
rm.runCommand(impMask,"Fill")
rm.runCommand('Delete')
IJ.saveAs(impMask, '.tif', maskdir + Name);
imp.close();
run()