diff --git a/fiji_script_vertical_combination.py b/fiji_script_vertical_combination.py index a05ed9d..bd4980e 100644 --- a/fiji_script_vertical_combination.py +++ b/fiji_script_vertical_combination.py @@ -1,89 +1,89 @@ #@String parameter_file from ij import IJ, ImagePlus from ij.io import Opener, FileSaver from ij.plugin import RGBStackMerge, StackCombiner, Resizer from ij.process import ImageConverter from ij.plugin import Resizer, ZProjector, ImageCalculator import json #import file paths json_file = open(parameter_file,'r') text = json_file.read() files = json.loads(text) json_file.close() #Instanciate necessary classes opener = Opener() RGB_stack_merge = RGBStackMerge() stack_combiner = StackCombiner() resizer = Resizer() ic = ImageCalculator() z_proj = ZProjector() #Open images unregistered_GC6s_info = opener.getTiffFileInfo(files['output_dir']+'/GC6s_preprocessed.tif') unregistered_GC6s_imp = opener.openTiffStack(unregistered_GC6s_info) -unregistered_tdTom_info = opener.getTiffFileInfo(files['output_dir']+'/GC6s_preprocessed.tif') +unregistered_tdTom_info = opener.getTiffFileInfo(files['output_dir']+'/tdTom_preprocessed.tif') unregistered_tdTom_imp = opener.openTiffStack(unregistered_tdTom_info) registered_GC6s_info = opener.getTiffFileInfo(files['GC6s_registered']) registered_GC6s_imp = opener.openTiffStack(registered_GC6s_info) registered_tdTom_info = opener.getTiffFileInfo(files['tdTom_registered']) registered_tdTom_imp = opener.openTiffStack(registered_tdTom_info) vector_info = opener.getTiffFileInfo(files['vectors_out']) vector_imp = opener.openTiffStack(vector_info) #Convert fluorescence images to 32-bit and adjust brightness IJ.run(unregistered_GC6s_imp,"32-bit","slices") IJ.run(registered_GC6s_imp,"32-bit","slices") IJ.run(unregistered_tdTom_imp,"32-bit","slices") IJ.run(registered_tdTom_imp,"32-bit","slices") IJ.run(unregistered_GC6s_imp, "Enhance Contrast", "saturated=0.35"); IJ.run(registered_GC6s_imp, "Enhance Contrast", "saturated=0.35"); IJ.run(unregistered_tdTom_imp, "Enhance Contrast", "saturated=0.35"); IJ.run(registered_tdTom_imp, "Enhance Contrast", "saturated=0.35"); IJ.run(vector_imp, "Enhance Contrast", "saturated=0.35"); #Remove first frame from registered and unregistered stacks IJ.run(unregistered_GC6s_imp, "Delete Slice", "") IJ.run(registered_GC6s_imp, "Delete Slice", "") IJ.run(unregistered_tdTom_imp, "Delete Slice", "") IJ.run(registered_tdTom_imp, "Delete Slice", "") #Upsample to resolution of vector image IJ.run(unregistered_GC6s_imp, "Size...", "width=%d height=%d depth=%d interpolation=None" % (vector_imp.getWidth(),vector_imp.getHeight(),vector_imp.getStackSize())) IJ.run(registered_GC6s_imp, "Size...", "width=%d height=%d depth=%d interpolation=None" % (vector_imp.getWidth(),vector_imp.getHeight(),vector_imp.getStackSize())) IJ.run(unregistered_tdTom_imp, "Size...", "width=%d height=%d depth=%d interpolation=None" % (vector_imp.getWidth(),vector_imp.getHeight(),vector_imp.getStackSize())) IJ.run(registered_tdTom_imp, "Size...", "width=%d height=%d depth=%d interpolation=None" % (vector_imp.getWidth(),vector_imp.getHeight(),vector_imp.getStackSize())) #Convert all images to RGB unregistered_merged_channels_imp = RGBStackMerge.mergeChannels([unregistered_tdTom_imp, unregistered_GC6s_imp, None],False) registered_merged_channels_imp = RGBStackMerge.mergeChannels([registered_tdTom_imp, registered_GC6s_imp, None],False) IJ.run(unregistered_merged_channels_imp, "RGB Color", "slices") IJ.run(registered_merged_channels_imp, "RGB Color", "slices") IJ.run(vector_imp, "RGB Color", "slices") #Combine image into one (stacked on top of each other) two_combined_stack = stack_combiner.combineVertically(unregistered_merged_channels_imp.getStack(), vector_imp.getStack()) three_combined_stack = stack_combiner.combineVertically(two_combined_stack, registered_merged_channels_imp.getStack()) #Save result file_saver_combined_image = FileSaver(ImagePlus('combined',three_combined_stack)) file_saver_combined_image.saveAsTiffStack(files['column_out']) ##Calculate baseline average intensity #n = unregistered_GC6s_imp.getStackSize() #unregistered_GC6s_avg_imp = z_proj.run(unregistered_GC6s_imp,"avg") #registered_GC6s_avg_imp = z_proj.run(registered_GC6s_imp,"avg") #unregistered_tdTom_avg_imp = z_proj.run(unregistered_tdTom_imp,"avg") #registered_tdTom_avg_imp = z_proj.run(registered_tdTom_imp,"avg") # #dF_imp = ic.run("Subtract create 32-bit stack", unregistered_GC6s_imp, unregistered_GC6s_avg_imp) #dF_over_F_imp = ic.run("Divide create 32-bit stack", dF_imp,unregistered_GC6s_avg_imp)