//Tracer_labelled_vs_unlabelled_on_single_stamped_surface_v1-0.txt //This macro is based on [Tracer_labelled_vs_unlabelled_on_tripple_stamped_surface_v1-0.txt] and [CFSE_labelled_vs_unlabelled_full_analyses_v3-0.txt] plus some additional code. //Most code comes from [Tracer_labelled_vs_unlabelled_on_tripple_stamped_surface_v1-0.txt], the generation of the stamped structure masks is reduced to a single stamp. //New features: //The code for cell masks generation was better in [Tracer_labelled_vs_unlabelled_on_tripple_stamped_surface_v1-0.txt] than in [CFSE_labelled_vs_unlabelled_full_analyses_v3-0.txt], therefore we adopted this macro. //The cell mask generation was updated with some additional code and basically to two additional imageCalculator steps //This macro analyses microscopy data from microcontact printing samples. //Two different cell types have been coincubated on the surface and can be distinguished through a cell tracker label (CFSE for example) or transfection with a fluorescent construct that has been given to one of the two beforehand. //Additionally the cells are stained for a molecule of interest (usually through immunolabelling after cell fixation.) //Written/tested during ImageJ version 1.46i; Fiji 64bit version; updated 22march2012 //Requirements: //image 1 should be the cell tracker channel (CFSE) (If possible record this image with quite some saturation in the cell bodies of positive cells, good separation between positive cell edges and negative cells is easier that way.) //image 2 should be signalling protein channel (SigProt) //image 3 should be the channel depicting the functionalized surface //These first three requirements can be easily changed by altering the numbers in the 'selectImage(xx)' steps //All images should be 8-bit images //Thresholds: //Thresholds are altered regularly and should be noted in the excel file. //Usual threshold values for 8-bit images taken with the Leica SP5 at 2048x2048 resolution //Brightness thld a determines which areas are and which are not stamped structures. //Number of erode steps h that determines the StSt edge thickness should be around 2 (depending on the lateral resolution of the image and the desired edge thickness) //Number of erode steps i that determines the Overlay edge thickness should be around 2 (depending on the lateral resolution of the image and the desired edge thickness; it's probably best to make this a copy of thld h) //Brightness thld j determines which objects are part of the 'Mask of All Cells Temporary'. //Size thld k removes holes in cells from (an inverted) 'Mask of All Cells Temporary'. //Size thld l is optional and can be removed by deleting five lines of code if noise levels in the SigProt channel are low. Thld l removes small artefacts attached to cells in the 'Mask of All Cells Temporary'. //Brightness thld m determines which objects are part of Tracer labelled cells (the CFSE Cell Mask). //Size thld n removes small artefacts attached to cells from the CFSE mask. //Size thld o removes large artefacts (not attached to cells) from the CFSE mask. //Size thld p removes small artefacts attached to cells from the Unlabelled cell mask that actually belong to Tracer labelled cells. //Size thld q removes large artefacts (not attached to cells) from the CFSE mask. //Size thld r removes some small artefacts attached to cells now counted as Tracer labelled cells that actually belong to Unlabelled cells. //Size thld # removes larger artefacts (not attached to cells) now counted as Tracer labelled cells that actually belong to Unlabelled cells. //Size thld % removes some small artefacts attached to cells now counted as Unlabelled cells that actually belong to Tracer labelled cells. //Size thld s sends larger artefacts (not attached to cells) that were incorrectly sent to the Near Unlabelled cell Mask back to the final Tracer (CFSE) labelled cell mask. //Final size thld of Tracer (CFSE) labelled cell mask y removes any leftover artefacts. //Final size thld of CFSE labelled cell mask z removes any leftover artefacts. //Step size t, used to generate the Stepwise Cluster masks, should be around 10. This threshold cannot simply be filled in but has to be subtracted a given number of times from 255 to get the lower brightness threshold. //Cluster size threshold u for the Stepwise Clusters should run from around 4 to 20 //Thld v (Mask of SmCl-v) should run from "Mask of SmCl-2" to around "Mask of SmCl-15" (this value will be different if step size t is not 10) (brightness thld of Stepwise Clusters) //Noise Thld w should be somewhere between 10 and 35 (noise thld of Find Maxima Clusters) //Cluster size threshold k for the Find Maxima Clusters should run from around 4 to 20 (determines the minimum and maximum sizes of clusters) //Results: //The test images at the end //show if large (pieces of) cells were left out of the cell masks //whether unlabelled cells are included in the Cell Tracer Mask //whether tracer labelled cells are included in the Unlabelled Cell Mask //The Quantification table shows the integrated area and integrated intensity of the sections described, including those of clusters //The Summary table shows the number of clusters and average cluster size and intensity using different masks. //Cut-off clusters are counted as whole clusters resulting in a larger cluster number than the actual cluster number when adding the numbers of the segmented masks. //Clusters on edges will nearly be always cut, this will lead to a relatively high number of clusters per surface area (clusters won't always fit on an edge.) These numbers are therefore overestimations. //Apply basic settings run("Set Scale...", "distance=0 known=1 pixel=1 unit=micron global"); run("Set Measurements...", "area mean standard modal min median redirect=None decimal=9"); //Generating stamped structure masks selectImage(3); run("Fire"); rename("StSt Channel"); run("Duplicate...", "title=[Inverted StSt Mask]"); run("Smooth"); //Stamped Structure Threshold a setThreshold(a, 255); run("Convert to Mask"); run("Open"); run("Invert"); run("Open"); run("Duplicate...", "title=[StSt Mask]"); run("Invert"); //StSt Edges run("Duplicate...", "title=[StSt Mask dialated]"); //number of dialate steps h for overlay edge h run("Dilate"); run("Dilate"); imageCalculator("Subtract create", "StSt Mask dialated","StSt Mask"); rename("Overlay Edge Mask"); selectWindow("Inverted StSt Mask"); run("Duplicate...", "title=[Inverted StSt Mask dialated]"); //number of dialate steps i for overlay edge i run("Dilate"); run("Dilate"); imageCalculator("Subtract create", "Inverted StSt Mask dialated","Inverted StSt Mask"); rename("StSt Edge Mask"); imageCalculator("Add create", "StSt Edge Mask","Overlay Edge Mask"); rename("Total Edge Mask"); selectWindow("Inverted StSt Mask dialated"); close(); selectWindow("StSt Mask dialated"); close(); //Generating temporary masks for all cells selectImage(2); run("Fire"); rename("SigProt Channel"); run("Duplicate...", "title=[Crude Cells]"); run("Smooth"); //Cell Threshold j setThreshold(j, 255); run("Convert to Mask"); run("Invert"); run("Open"); //Closing small holes of size k and smaller run("Analyze Particles...", "size=k-Infinity circularity=0.00-1.00 show=Masks"); run("Invert"); run("Open"); //Minimum cell size l. The next five lines of code can be deleted if little noise is present in the SigProt Channel run("Watershed"); run("Analyze Particles...", "size=l-Infinity circularity=0.00-1.00 show=Masks include"); run("Invert"); run("Open"); run("Invert"); rename("Mask of All Cells Temporary"); //Generating masks for Cell Tracer (CFSE) positive and Tracer negative cells selectImage(1); run("Fire"); rename("Tracer Channel"); run("Duplicate...", "title=[smooth Tracer]"); run("Smooth"); //Tracer Channel Cell Threshold m setThreshold(m, 255); run("Convert to Mask"); run("Open"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Masks include"); run("Invert"); run("Open"); run("Invert"); run("Watershed"); //Minimum cell size n (removes small artifacts) run("Analyze Particles...", "size=n-Infinity circularity=0.00-1.00 show=Masks"); run("Invert"); run("Open"); run("Invert"); //Minimum cell size o (removes large artifacts) run("Analyze Particles...", "size=o-Infinity circularity=0.00-1.00 show=Masks include"); imageCalculator("Subtract create", "Mask of All Cells Temporary","Mask of Mask of Mask of smooth Tracer"); run("Watershed"); //Minimum cell size p (removes small artefacts that are actually parts of Tracer labelled cells touching unlabelled cells) run("Analyze Particles...", "size=p-Infinity circularity=0.00-1.00 show=Masks"); run("Invert"); run("Open"); run("Invert"); //Minimum cell size q (removes large artifacts) run("Analyze Particles...", "size=q-Infinity circularity=0.00-1.00 show=Masks include"); rename("Mask of Unlabelled Cells Temporary"); imageCalculator("Subtract create", "Mask of All Cells Temporary","Mask of Unlabelled Cells Temporary"); run("Watershed"); //Minimum cell size r (size threshold of tracer labelled cell mask, small particles) run("Analyze Particles...", "size=r-Infinity circularity=0.00-1.00 show=Masks include"); run("Invert"); run("Open"); run("Invert"); //Minimum cell size # (size threshold of tracer labelled cell mask, large particles) run("Analyze Particles...", "size=#-Infinity circularity=0.00-1.00 show=Masks include"); rename("Near Mask of CFSE Cells"); imageCalculator("Subtract create", "Mask of All Cells Temporary","Near Mask of CFSE Cells"); run("Watershed"); //Minimum cell size % (size threshold of unlabelled cell mask, small particles) run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Masks include"); run("Invert"); run("Open"); run("Invert"); //Minimum cell size s (size threshold of unlabelled cell mask) run("Analyze Particles...", "size=s-Infinity circularity=0.00-1.00 show=Masks include"); rename("Near Mask of Unlabelled Cells"); imageCalculator("Subtract create", "Mask of All Cells Temporary","Near Mask of Unlabelled Cells"); //Minimum cell size y (final size threshold of tracer labelled cell mask) run("Analyze Particles...", "size=y-Infinity circularity=0.00-1.00 show=Masks"); rename("Mask of CFSE Cells"); imageCalculator("Subtract create", "Mask of All Cells Temporary","Mask of CFSE Cells"); //Minimum cell size z (final size threshold of unlabelled cell mask) run("Analyze Particles...", "size=z-Infinity circularity=0.00-1.00 show=Masks"); rename("Mask of Unlabelled Cells"); imageCalculator("Add create", "Mask of CFSE Cells","Mask of Unlabelled Cells"); rename("Mask of All Cells"); run("Duplicate...", "title=[Inverted Mask of All Cells]"); run("Invert"); //Generating Cluster Mask //Stepwise Clusters selectWindow("SigProt Channel"); run("Duplicate...", "title=[SmCl]"); run("Smooth"); run("Duplicate...", "title=[SmCl-1]"); run("Duplicate...", "title=[SmCl-2]"); run("Duplicate...", "title=[SmCl-3]"); run("Duplicate...", "title=[SmCl-4]"); run("Duplicate...", "title=[SmCl-5]"); run("Duplicate...", "title=[SmCl-6]"); run("Duplicate...", "title=[SmCl-7]"); run("Duplicate...", "title=[SmCl-8]"); run("Duplicate...", "title=[SmCl-9]"); run("Duplicate...", "title=[SmCl-10]"); run("Duplicate...", "title=[SmCl-11]"); run("Duplicate...", "title=[SmCl-12]"); run("Duplicate...", "title=[SmCl-13]"); run("Duplicate...", "title=[SmCl-14]"); run("Duplicate...", "title=[SmCl-15]"); run("Duplicate...", "title=[SmCl-16]"); run("Duplicate...", "title=[SmCl-17]"); run("Duplicate...", "title=[SmCl-18]"); run("Duplicate...", "title=[SmCl-19]"); run("Duplicate...", "title=[SmCl-20]"); //Set stepsize 't' by lowering the lower threshold of the subsequent SmCl Masks by the value t. The trhreshold of SmCl-1 should be from (255-o) to 255. //Set Stepwise Cluster size u in every analyze particle step. selectWindow("SmCl-1"); setThreshold((255-t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-2"); setThreshold((255-2t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-3"); setThreshold((255-3t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-4"); setThreshold((255-4t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-5"); setThreshold((255-5t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-6"); setThreshold((255-6t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-7"); setThreshold((255-7t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-8"); setThreshold((255-8t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-9"); setThreshold((255-9t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-10"); setThreshold((255-10t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-11"); setThreshold((255-11t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-12"); setThreshold((255-12t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-13"); setThreshold((255-13t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-14"); setThreshold((255-14t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-15"); setThreshold((255-15t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-16"); setThreshold((255-16t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-17"); setThreshold((255-17t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-18"); setThreshold((255-18t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-19"); setThreshold((255-19t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); selectWindow("SmCl-20"); setThreshold((255-20t), 255); run("Convert to Mask"); run("Analyze Particles...", "size=u-u' circularity=0.00-1.00 show=Masks"); //Set the minimum cluster threshold v by running the imagecalculator steps below from "Mask of SmCl-2" to "Mask of SmCl-v" //Delete imagecalculator steps "Mask of SmCl-v+1" to v' imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-2"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-3"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-4"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-5"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-6"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-7"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-8"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-9"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-10"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-11"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-12"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-13"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-14"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-15"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-16"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-17"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-18"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-19"); imageCalculator("Add", "Mask of SmCl-1","Mask of SmCl-20"); v' imageCalculator("AND create", "Mask of SmCl-1","Mask of All Cells"); rename("Stepwise Clusters"); selectWindow("SmCl-1"); close(); selectWindow("Mask of SmCl-1"); close(); selectWindow("SmCl-2"); close(); selectWindow("Mask of SmCl-2"); close(); selectWindow("SmCl-3"); close(); selectWindow("Mask of SmCl-3"); close(); selectWindow("SmCl-4"); close(); selectWindow("Mask of SmCl-4"); close(); selectWindow("SmCl-5"); close(); selectWindow("Mask of SmCl-5"); close(); selectWindow("SmCl-6"); close(); selectWindow("Mask of SmCl-6"); close(); selectWindow("SmCl-7"); close(); selectWindow("Mask of SmCl-7"); close(); selectWindow("SmCl-8"); close(); selectWindow("Mask of SmCl-8"); close(); selectWindow("SmCl-9"); close(); selectWindow("Mask of SmCl-9"); close(); selectWindow("SmCl-10"); close(); selectWindow("Mask of SmCl-10"); close(); selectWindow("SmCl-11"); close(); selectWindow("Mask of SmCl-11"); close(); selectWindow("SmCl-12"); close(); selectWindow("Mask of SmCl-12"); close(); selectWindow("SmCl-13"); close(); selectWindow("Mask of SmCl-13"); close(); selectWindow("SmCl-14"); close(); selectWindow("Mask of SmCl-14"); close(); selectWindow("SmCl-15"); close(); selectWindow("Mask of SmCl-15"); close(); selectWindow("SmCl-16"); close(); selectWindow("Mask of SmCl-16"); close(); selectWindow("SmCl-17"); close(); selectWindow("Mask of SmCl-17"); close(); selectWindow("SmCl-18"); close(); selectWindow("Mask of SmCl-18"); close(); selectWindow("SmCl-19"); close(); selectWindow("Mask of SmCl-19"); close(); selectWindow("SmCl-20"); close(); selectWindow("Mask of SmCl-20"); close(); //Find Maxima Clusters selectWindow("SmCl"); run("Smooth"); //Find Maxima Cluster noise Threshold w run("Find Maxima...", "noise=w output=[Maxima Within Tolerance]"); //Find Maxima Cluster size x run("Analyze Particles...", "size=x-x' circularity=0.00-1.00 show=Masks"); imageCalculator("AND create", "Mask of SmCl Maxima","Mask of All Cells"); rename("Find Maxima Clusters"); //Final cell cluster mask imageCalculator("Max create", "Stepwise Clusters","Find Maxima Clusters"); rename("Cell Clusters"); //Combining masks imageCalculator("AND create", "StSt Mask","Mask of Unlabelled Cells"); rename("Unlabelled Cells on StSt"); imageCalculator("AND create", "Inverted StSt Mask","Mask of Unlabelled Cells"); rename("Unlabelled Cells on Overlay"); imageCalculator("AND create", "StSt Edge Mask","Mask of Unlabelled Cells"); rename("Unlabelled Cells on StSt Edges"); imageCalculator("AND create", "Overlay Edge Mask","Mask of Unlabelled Cells"); rename("Unlabelled Cells on Overlay Edges"); imageCalculator("AND create", "Total Edge Mask","Mask of Unlabelled Cells"); rename("Unlabelled Cells on Total Edges"); imageCalculator("AND create", "StSt Mask","Mask of CFSE Cells"); rename("CFSE Cells on StSt"); imageCalculator("AND create", "Inverted StSt Mask","Mask of CFSE Cells"); rename("CFSE Cells on Overlay"); imageCalculator("AND create", "StSt Edge Mask","Mask of CFSE Cells"); rename("CFSE Cells on StSt Edges"); imageCalculator("AND create", "Overlay Edge Mask","Mask of CFSE Cells"); rename("CFSE Cells on Overlay Edges"); imageCalculator("AND create", "Total Edge Mask","Mask of CFSE Cells"); rename("CFSE Cells on Total Edges"); imageCalculator("AND create", "StSt Mask","Inverted Mask of All Cells"); rename("Empty StSt"); imageCalculator("AND create", "Inverted StSt Mask","Inverted Mask of All Cells"); rename("Empty Overlay"); imageCalculator("AND create", "StSt Edge Mask","Inverted Mask of All Cells"); rename("Empty StSt Edges"); imageCalculator("AND create", "Overlay Edge Mask","Inverted Mask of All Cells"); rename("Empty Overlay Edges"); imageCalculator("AND create", "Total Edge Mask","Inverted Mask of All Cells"); rename("Empty Total Edges"); //Clusters on sections imageCalculator("AND create", "Mask of Unlabelled Cells","Cell Clusters"); rename("Clusters in Unlabelled Cells"); imageCalculator("AND create", "Unlabelled Cells on StSt","Cell Clusters"); rename("Clusters in Unlabelled Cells on StSt"); imageCalculator("AND create", "Unlabelled Cells on Overlay","Cell Clusters"); rename("Clusters in Unlabelled Cells on Overlay"); imageCalculator("AND create", "Unlabelled Cells on StSt Edges","Cell Clusters"); rename("Clusters in Unlabelled Cells on StSt Edges"); imageCalculator("AND create", "Unlabelled Cells on Overlay Edges","Cell Clusters"); rename("Clusters in Unlabelled Cells on Overlay Edges"); imageCalculator("AND create", "Unlabelled Cells on Total Edges","Cell Clusters"); rename("Clusters in Unlabelled Cells on Total Edges"); imageCalculator("AND create", "Mask of CFSE Cells","Cell Clusters"); rename("Clusters in CFSE Cells"); imageCalculator("AND create", "CFSE Cells on StSt","Cell Clusters"); rename("Clusters in CFSE Cells on StSt"); imageCalculator("AND create", "CFSE Cells on Overlay","Cell Clusters"); rename("Clusters in CFSE Cells on Overlay"); imageCalculator("AND create", "CFSE Cells on StSt Edges","Cell Clusters"); rename("Clusters in CFSE Cells on StSt Edges"); imageCalculator("AND create", "CFSE Cells on Overlay Edges","Cell Clusters"); rename("Clusters in CFSE Cells on Overlay Edges"); imageCalculator("AND create", "CFSE Cells on Total Edges","Cell Clusters"); rename("Clusters in CFSE Cells on Total Edges"); //Applying masks on original pictures //Cell tracker channel imageCalculator("AND create", "Tracer Channel","Unlabelled Cells on StSt"); rename("Tracer Unlabelled Cells on StSt"); imageCalculator("AND create", "Tracer Channel","Unlabelled Cells on Overlay"); rename("Tracer Unlabelled Cells on Overlay"); imageCalculator("AND create", "Tracer Channel","Unlabelled Cells on StSt Edges"); rename("Tracer Unlabelled Cells on StSt Edges"); imageCalculator("AND create", "Tracer Channel","Unlabelled Cells on Overlay Edges"); rename("Tracer Unlabelled Cells on Overlay Edges"); imageCalculator("AND create", "Tracer Channel","Unlabelled Cells on Total Edges"); rename("Tracer Unlabelled Cells on Total Edges"); imageCalculator("AND create", "Tracer Channel","CFSE Cells on StSt"); rename("Tracer CFSE Cells on StSt"); imageCalculator("AND create", "Tracer Channel","CFSE Cells on Overlay"); rename("Tracer CFSE Cells on Overlay"); imageCalculator("AND create", "Tracer Channel","CFSE Cells on StSt Edges"); rename("Tracer CFSE Cells on StSt Edges"); imageCalculator("AND create", "Tracer Channel","CFSE Cells on Overlay Edges"); rename("Tracer CFSE Cells on Overlay Edges"); imageCalculator("AND create", "Tracer Channel","CFSE Cells on Total Edges"); rename("Tracer CFSE Cells on Total Edges"); imageCalculator("AND create", "Tracer Channel","Empty StSt"); rename("Tracer Empty StSt"); imageCalculator("AND create", "Tracer Channel","Empty Overlay"); rename("Tracer Empty Overlay"); imageCalculator("AND create", "Tracer Channel","Empty StSt Edges"); rename("Tracer Empty StSt Edges"); imageCalculator("AND create", "Tracer Channel","Empty Overlay Edges"); rename("Tracer Empty Overlay Edges"); imageCalculator("AND create", "Tracer Channel","Empty Total Edges"); rename("Tracer Empty Total Edges"); //Signalling Protein Channel imageCalculator("AND create", "SigProt Channel","Unlabelled Cells on StSt"); rename("SigProt Unlabelled Cells on StSt"); imageCalculator("AND create", "SigProt Channel","Unlabelled Cells on Overlay"); rename("SigProt Unlabelled Cells on Overlay"); imageCalculator("AND create", "SigProt Channel","Unlabelled Cells on StSt Edges"); rename("SigProt Unlabelled Cells on StSt Edges"); imageCalculator("AND create", "SigProt Channel","Unlabelled Cells on Overlay Edges"); rename("SigProt Unlabelled Cells on Overlay Edges"); imageCalculator("AND create", "SigProt Channel","Unlabelled Cells on Total Edges"); rename("SigProt Unlabelled Cells on Total Edges"); imageCalculator("AND create", "SigProt Channel","CFSE Cells on StSt"); rename("SigProt CFSE Cells on StSt"); imageCalculator("AND create", "SigProt Channel","CFSE Cells on Overlay"); rename("SigProt CFSE Cells on Overlay"); imageCalculator("AND create", "SigProt Channel","CFSE Cells on StSt Edges"); rename("SigProt CFSE Cells on StSt Edges"); imageCalculator("AND create", "SigProt Channel","CFSE Cells on Overlay Edges"); rename("SigProt CFSE Cells on Overlay Edges"); imageCalculator("AND create", "SigProt Channel","CFSE Cells on Total Edges"); rename("SigProt CFSE Cells on Total Edges"); imageCalculator("AND create", "SigProt Channel","Empty StSt"); rename("SigProt Empty StSt"); imageCalculator("AND create", "SigProt Channel","Empty Overlay"); rename("SigProt Empty Overlay"); imageCalculator("AND create", "SigProt Channel","Empty StSt Edges"); rename("SigProt Empty StSt Edges"); imageCalculator("AND create", "SigProt Channel","Empty Overlay Edges"); rename("SigProt Empty Overlay Edges"); imageCalculator("AND create", "SigProt Channel","Empty Total Edges"); rename("SigProt Empty Total Edges"); //Stamped Structure Channel imageCalculator("AND create", "StSt Channel","Unlabelled Cells on StSt"); rename("StSt Unlabelled Cells on StSt"); imageCalculator("AND create", "StSt Channel","Unlabelled Cells on Overlay"); rename("StSt Unlabelled Cells on Overlay"); imageCalculator("AND create", "StSt Channel","Unlabelled Cells on StSt Edges"); rename("StSt Unlabelled Cells on StSt Edges"); imageCalculator("AND create", "StSt Channel","Unlabelled Cells on Overlay Edges"); rename("StSt Unlabelled Cells on Overlay Edges"); imageCalculator("AND create", "StSt Channel","Unlabelled Cells on Total Edges"); rename("StSt Unlabelled Cells on Total Edges"); imageCalculator("AND create", "StSt Channel","CFSE Cells on StSt"); rename("StSt CFSE Cells on StSt"); imageCalculator("AND create", "StSt Channel","CFSE Cells on Overlay"); rename("StSt CFSE Cells on Overlay"); imageCalculator("AND create", "StSt Channel","CFSE Cells on StSt Edges"); rename("StSt CFSE Cells on StSt Edges"); imageCalculator("AND create", "StSt Channel","CFSE Cells on Overlay Edges"); rename("StSt CFSE Cells on Overlay Edges"); imageCalculator("AND create", "StSt Channel","CFSE Cells on Total Edges"); rename("StSt CFSE Cells on Total Edges"); imageCalculator("AND create", "StSt Channel","Empty StSt"); rename("StSt Empty StSt"); imageCalculator("AND create", "StSt Channel","Empty Overlay"); rename("StSt Empty Overlay"); imageCalculator("AND create", "StSt Channel","Empty StSt Edges"); rename("StSt Empty StSt Edges"); imageCalculator("AND create", "StSt Channel","Empty Overlay Edges"); rename("StSt Empty Overlay Edges"); imageCalculator("AND create", "StSt Channel","Empty Total Edges"); rename("StSt Empty Total Edges"); //Applying cluster masks on original Signalling Protein picture imageCalculator("AND create", "SigProt Channel","Clusters in Unlabelled Cells"); rename("SigProt Clusters in Unlabelled Cells"); imageCalculator("AND create", "SigProt Channel","Clusters in Unlabelled Cells on StSt"); rename("SigProt Clusters in Unlabelled Cells on StSt"); imageCalculator("AND create", "SigProt Channel","Clusters in Unlabelled Cells on Overlay"); rename("SigProt Clusters in Unlabelled Cells on Overlay"); imageCalculator("AND create", "SigProt Channel","Clusters in Unlabelled Cells on StSt Edges"); rename("SigProt Clusters in Unlabelled Cells on StSt Edges"); imageCalculator("AND create", "SigProt Channel","Clusters in Unlabelled Cells on Overlay Edges"); rename("SigProt Clusters in Unlabelled Cells on Overlay Edges"); imageCalculator("AND create", "SigProt Channel","Clusters in Unlabelled Cells on Total Edges"); rename("SigProt Clusters in Unlabelled Cells on Total Edges"); imageCalculator("AND create", "SigProt Channel","Clusters in CFSE Cells"); rename("SigProt Clusters in CFSE Cells"); imageCalculator("AND create", "SigProt Channel","Clusters in CFSE Cells on StSt"); rename("SigProt Clusters in CFSE Cells on StSt"); imageCalculator("AND create", "SigProt Channel","Clusters in CFSE Cells on Overlay"); rename("SigProt Clusters in CFSE Cells on Overlay"); imageCalculator("AND create", "SigProt Channel","Clusters in CFSE Cells on StSt Edges"); rename("SigProt Clusters in CFSE Cells on StSt Edges"); imageCalculator("AND create", "SigProt Channel","Clusters in CFSE Cells on Overlay Edges"); rename("SigProt Clusters in CFSE Cells on Overlay Edges"); imageCalculator("AND create", "SigProt Channel","Clusters in CFSE Cells on Total Edges"); rename("SigProt Clusters in CFSE Cells on Total Edges"); //Statistics //Retrieving surface areas selectWindow("Unlabelled Cells on StSt"); getStatistics(opp, mean); AreaULoSS= (opp*mean)/255 selectWindow("Unlabelled Cells on Overlay"); getStatistics(opp, mean); AreaULoO= (opp*mean)/255 selectWindow("Unlabelled Cells on StSt Edges"); getStatistics(opp, mean); AreaULoSE= (opp*mean)/255 selectWindow("Unlabelled Cells on Overlay Edges"); getStatistics(opp, mean); AreaULoOE= (opp*mean)/255 selectWindow("Unlabelled Cells on Total Edges"); getStatistics(opp, mean); AreaULoTE= (opp*mean)/255 selectWindow("CFSE Cells on StSt"); getStatistics(opp, mean); AreaCFSEoSS= (opp*mean)/255 selectWindow("CFSE Cells on Overlay"); getStatistics(opp, mean); AreaCFSEoO= (opp*mean)/255 selectWindow("CFSE Cells on StSt Edges"); getStatistics(opp, mean); AreaCFSEoSE= (opp*mean)/255 selectWindow("CFSE Cells on Overlay Edges"); getStatistics(opp, mean); AreaCFSEoOE= (opp*mean)/255 selectWindow("CFSE Cells on Total Edges"); getStatistics(opp, mean); AreaCFSEoTE= (opp*mean)/255 selectWindow("Empty StSt"); getStatistics(opp, mean); AreaESS= (opp*mean)/255 selectWindow("Empty Overlay"); getStatistics(opp, mean); AreaEO= (opp*mean)/255 selectWindow("Empty StSt Edges"); getStatistics(opp, mean); AreaESE= (opp*mean)/255 selectWindow("Empty Overlay Edges"); getStatistics(opp, mean); AreaEOE= (opp*mean)/255 selectWindow("Empty Total Edges"); getStatistics(opp, mean); AreaETE= (opp*mean)/255 selectWindow("Clusters in Unlabelled Cells"); getStatistics(opp, mean); ClusterAreaUL= (opp*mean)/255 selectWindow("Clusters in Unlabelled Cells on StSt"); getStatistics(opp, mean); ClusterAreaULoSS= (opp*mean)/255 selectWindow("Clusters in Unlabelled Cells on Overlay"); getStatistics(opp, mean); ClusterAreaULoO= (opp*mean)/255 selectWindow("Clusters in Unlabelled Cells on StSt Edges"); getStatistics(opp, mean); ClusterAreaULoSE= (opp*mean)/255 selectWindow("Clusters in Unlabelled Cells on Overlay Edges"); getStatistics(opp, mean); ClusterAreaULoOE= (opp*mean)/255 selectWindow("Clusters in Unlabelled Cells on Total Edges"); getStatistics(opp, mean); ClusterAreaULoTE= (opp*mean)/255 selectWindow("Clusters in CFSE Cells"); getStatistics(opp, mean); ClusterAreaCFSE= (opp*mean)/255 selectWindow("Clusters in CFSE Cells on StSt"); getStatistics(opp, mean); ClusterAreaCFSEoSS= (opp*mean)/255 selectWindow("Clusters in CFSE Cells on Overlay"); getStatistics(opp, mean); ClusterAreaCFSEoO= (opp*mean)/255 selectWindow("Clusters in CFSE Cells on StSt Edges"); getStatistics(opp, mean); ClusterAreaCFSEoSE= (opp*mean)/255 selectWindow("Clusters in CFSE Cells on Overlay Edges"); getStatistics(opp, mean); ClusterAreaCFSEoOE= (opp*mean)/255 selectWindow("Clusters in CFSE Cells on Total Edges"); getStatistics(opp, mean); ClusterAreaCFSEoTE= (opp*mean)/255 //Retrieving integrated densities //Cell tracker channel selectWindow("Tracer Unlabelled Cells on StSt"); getStatistics(opp, mean); IntDenTracerULoSS= (opp*mean) selectWindow("Tracer Unlabelled Cells on Overlay"); getStatistics(opp, mean); IntDenTracerULoO= (opp*mean) selectWindow("Tracer Unlabelled Cells on StSt Edges"); getStatistics(opp, mean); IntDenTracerULoSE= (opp*mean) selectWindow("Tracer Unlabelled Cells on Overlay Edges"); getStatistics(opp, mean); IntDenTracerULoOE= (opp*mean) selectWindow("Tracer Unlabelled Cells on Total Edges"); getStatistics(opp, mean); IntDenTracerULoTE= (opp*mean) selectWindow("Tracer CFSE Cells on StSt"); getStatistics(opp, mean); IntDenTracerCFSEoSS= (opp*mean) selectWindow("Tracer CFSE Cells on Overlay"); getStatistics(opp, mean); IntDenTracerCFSEoO= (opp*mean) selectWindow("Tracer CFSE Cells on StSt Edges"); getStatistics(opp, mean); IntDenTracerCFSEoSE= (opp*mean) selectWindow("Tracer CFSE Cells on Overlay Edges"); getStatistics(opp, mean); IntDenTracerCFSEoOE= (opp*mean) selectWindow("Tracer CFSE Cells on Total Edges"); getStatistics(opp, mean); IntDenTracerCFSEoTE= (opp*mean) selectWindow("Tracer Empty StSt"); getStatistics(opp, mean); IntDenTracerESS= (opp*mean) selectWindow("Tracer Empty Overlay"); getStatistics(opp, mean); IntDenTracerEO= (opp*mean) selectWindow("Tracer Empty StSt Edges"); getStatistics(opp, mean); IntDenTracerESE= (opp*mean) selectWindow("Tracer Empty Overlay Edges"); getStatistics(opp, mean); IntDenTracerEOE= (opp*mean) selectWindow("Tracer Empty Total Edges"); getStatistics(opp, mean); IntDenTracerETE= (opp*mean) //Signalling Protein Channel selectWindow("SigProt Unlabelled Cells on StSt"); getStatistics(opp, mean); IntDenSigProtULoSS= (opp*mean) selectWindow("SigProt Unlabelled Cells on Overlay"); getStatistics(opp, mean); IntDenSigProtULoO= (opp*mean) selectWindow("SigProt Unlabelled Cells on StSt Edges"); getStatistics(opp, mean); IntDenSigProtULoSE= (opp*mean) selectWindow("SigProt Unlabelled Cells on Overlay Edges"); getStatistics(opp, mean); IntDenSigProtULoOE= (opp*mean) selectWindow("SigProt Unlabelled Cells on Total Edges"); getStatistics(opp, mean); IntDenSigProtULoTE= (opp*mean) selectWindow("SigProt CFSE Cells on StSt"); getStatistics(opp, mean); IntDenSigProtCFSEoSS= (opp*mean) selectWindow("SigProt CFSE Cells on Overlay"); getStatistics(opp, mean); IntDenSigProtCFSEoO= (opp*mean) selectWindow("SigProt CFSE Cells on StSt Edges"); getStatistics(opp, mean); IntDenSigProtCFSEoSE= (opp*mean) selectWindow("SigProt CFSE Cells on Overlay Edges"); getStatistics(opp, mean); IntDenSigProtCFSEoOE= (opp*mean) selectWindow("SigProt CFSE Cells on Total Edges"); getStatistics(opp, mean); IntDenSigProtCFSEoTE= (opp*mean) selectWindow("SigProt Empty StSt"); getStatistics(opp, mean); IntDenSigProtESS= (opp*mean) selectWindow("SigProt Empty Overlay"); getStatistics(opp, mean); IntDenSigProtEO= (opp*mean) selectWindow("SigProt Empty StSt Edges"); getStatistics(opp, mean); IntDenSigProtESE= (opp*mean) selectWindow("SigProt Empty Overlay Edges"); getStatistics(opp, mean); IntDenSigProtEOE= (opp*mean) selectWindow("SigProt Empty Total Edges"); getStatistics(opp, mean); IntDenSigProtETE= (opp*mean) //Stamped Structure Channel selectWindow("StSt Unlabelled Cells on StSt"); getStatistics(opp, mean); IntDenStStULoSS= (opp*mean) selectWindow("StSt Unlabelled Cells on Overlay"); getStatistics(opp, mean); IntDenStStULoO= (opp*mean) selectWindow("StSt Unlabelled Cells on StSt Edges"); getStatistics(opp, mean); IntDenStStULoSE= (opp*mean) selectWindow("StSt Unlabelled Cells on Overlay Edges"); getStatistics(opp, mean); IntDenStStULoOE= (opp*mean) selectWindow("StSt Unlabelled Cells on Total Edges"); getStatistics(opp, mean); IntDenStStULoTE= (opp*mean) selectWindow("StSt CFSE Cells on StSt"); getStatistics(opp, mean); IntDenStStCFSEoSS= (opp*mean) selectWindow("StSt CFSE Cells on Overlay"); getStatistics(opp, mean); IntDenStStCFSEoO= (opp*mean) selectWindow("StSt CFSE Cells on StSt Edges"); getStatistics(opp, mean); IntDenStStCFSEoSE= (opp*mean) selectWindow("StSt CFSE Cells on Overlay Edges"); getStatistics(opp, mean); IntDenStStCFSEoOE= (opp*mean) selectWindow("StSt CFSE Cells on Total Edges"); getStatistics(opp, mean); IntDenStStCFSEoTE= (opp*mean) selectWindow("StSt Empty StSt"); getStatistics(opp, mean); IntDenStStESS= (opp*mean) selectWindow("StSt Empty Overlay"); getStatistics(opp, mean); IntDenStStEO= (opp*mean) selectWindow("StSt Empty StSt Edges"); getStatistics(opp, mean); IntDenStStESE= (opp*mean) selectWindow("StSt Empty Overlay Edges"); getStatistics(opp, mean); IntDenStStEOE= (opp*mean) selectWindow("StSt Empty Total Edges"); getStatistics(opp, mean); IntDenStStETE= (opp*mean) //Clusters selectWindow("SigProt Clusters in Unlabelled Cells"); getStatistics(opp, mean); ClusterIntDenSigProtUL= (opp*mean) selectWindow("SigProt Clusters in Unlabelled Cells on StSt"); getStatistics(opp, mean); ClusterIntDenSigProtULoSS= (opp*mean) selectWindow("SigProt Clusters in Unlabelled Cells on Overlay"); getStatistics(opp, mean); ClusterIntDenSigProtULoO= (opp*mean) selectWindow("SigProt Clusters in Unlabelled Cells on StSt Edges"); getStatistics(opp, mean); ClusterIntDenSigProtULoSE= (opp*mean) selectWindow("SigProt Clusters in Unlabelled Cells on Overlay Edges"); getStatistics(opp, mean); ClusterIntDenSigProtULoOE= (opp*mean) selectWindow("SigProt Clusters in Unlabelled Cells on Total Edges"); getStatistics(opp, mean); ClusterIntDenSigProtULoTE= (opp*mean) selectWindow("SigProt Clusters in CFSE Cells"); getStatistics(opp, mean); ClusterIntDenSigProtCFSE= (opp*mean) selectWindow("SigProt Clusters in CFSE Cells on StSt"); getStatistics(opp, mean); ClusterIntDenSigProtCFSEoSS= (opp*mean) selectWindow("SigProt Clusters in CFSE Cells on Overlay"); getStatistics(opp, mean); ClusterIntDenSigProtCFSEoO= (opp*mean) selectWindow("SigProt Clusters in CFSE Cells on StSt Edges"); getStatistics(opp, mean); ClusterIntDenSigProtCFSEoSE= (opp*mean) selectWindow("SigProt Clusters in CFSE Cells on Overlay Edges"); getStatistics(opp, mean); ClusterIntDenSigProtCFSEoOE= (opp*mean) selectWindow("SigProt Clusters in CFSE Cells on Total Edges"); getStatistics(opp, mean); ClusterIntDenSigProtCFSEoTE= (opp*mean) //Generating Table name = "[Quantification]"; run("Table...", "name="+name+" width=410 height=850"); print(name, "\\Headings:Part\tTotal Area\tIntegrated Density") print(name, "Tracer ULoSS" + "\t" + AreaULoSS + "\t" + IntDenTracerULoSS); print(name, "Tracer ULoO" + "\t" + AreaULoO + "\t" + IntDenTracerULoO); print(name, "Tracer ULoSE" + "\t" + AreaULoSE + "\t" + IntDenTracerULoSE); print(name, "Tracer ULoOE" + "\t" + AreaULoOE + "\t" + IntDenTracerULoOE); print(name, "Tracer ULoTE" + "\t" + AreaULoTE + "\t" + IntDenTracerULoTE); print(name, "Tracer CFSEoSS" + "\t" + AreaCFSEoSS + "\t" + IntDenTracerCFSEoSS); print(name, "Tracer CFSEoO" + "\t" + AreaCFSEoO + "\t" + IntDenTracerCFSEoO); print(name, "Tracer CFSEoSE" + "\t" + AreaCFSEoSE + "\t" + IntDenTracerCFSEoSE); print(name, "Tracer CFSEoOE" + "\t" + AreaCFSEoOE + "\t" + IntDenTracerCFSEoOE); print(name, "Tracer CFSEoTE" + "\t" + AreaCFSEoTE + "\t" + IntDenTracerCFSEoTE); print(name, "Tracer ESS" + "\t" + AreaESS + "\t" + IntDenTracerESS); print(name, "Tracer EO" + "\t" + AreaEO + "\t" + IntDenTracerEO); print(name, "Tracer ESE" + "\t" + AreaESE + "\t" + IntDenTracerESE); print(name, "Tracer EOE" + "\t" + AreaEOE + "\t" + IntDenTracerEOE); print(name, "Tracer ETE" + "\t" + AreaETE + "\t" + IntDenTracerETE); print(name, "SigProt ULoSS" + "\t" + AreaULoSS + "\t" + IntDenSigProtULoSS); print(name, "SigProt ULoO" + "\t" + AreaULoO + "\t" + IntDenSigProtULoO); print(name, "SigProt ULoSE" + "\t" + AreaULoSE + "\t" + IntDenSigProtULoSE); print(name, "SigProt ULoOE" + "\t" + AreaULoOE + "\t" + IntDenSigProtULoOE); print(name, "SigProt ULoTE" + "\t" + AreaULoTE + "\t" + IntDenSigProtULoTE); print(name, "SigProt CFSEoSS" + "\t" + AreaCFSEoSS + "\t" + IntDenSigProtCFSEoSS); print(name, "SigProt CFSEoO" + "\t" + AreaCFSEoO + "\t" + IntDenSigProtCFSEoO); print(name, "SigProt CFSEoSE" + "\t" + AreaCFSEoSE + "\t" + IntDenSigProtCFSEoSE); print(name, "SigProt CFSEoOE" + "\t" + AreaCFSEoOE + "\t" + IntDenSigProtCFSEoOE); print(name, "SigProt CFSEoTE" + "\t" + AreaCFSEoTE + "\t" + IntDenSigProtCFSEoTE); print(name, "SigProt ESS" + "\t" + AreaESS + "\t" + IntDenSigProtESS); print(name, "SigProt EO" + "\t" + AreaEO + "\t" + IntDenSigProtEO); print(name, "SigProt ESE" + "\t" + AreaESE + "\t" + IntDenSigProtESE); print(name, "SigProt EOE" + "\t" + AreaEOE + "\t" + IntDenSigProtEOE); print(name, "SigProt ETE" + "\t" + AreaETE + "\t" + IntDenSigProtETE); print(name, "StSt ULoSS" + "\t" + AreaULoSS + "\t" + IntDenStStULoSS); print(name, "StSt ULoO" + "\t" + AreaULoO + "\t" + IntDenStStULoO); print(name, "StSt ULoSE" + "\t" + AreaULoSE + "\t" + IntDenStStULoSE); print(name, "StSt ULoOE" + "\t" + AreaULoOE + "\t" + IntDenStStULoOE); print(name, "StSt ULoTE" + "\t" + AreaULoTE + "\t" + IntDenStStULoTE); print(name, "StSt CFSEoSS" + "\t" + AreaCFSEoSS + "\t" + IntDenStStCFSEoSS); print(name, "StSt CFSEoO" + "\t" + AreaCFSEoO + "\t" + IntDenStStCFSEoO); print(name, "StSt CFSEoSE" + "\t" + AreaCFSEoSE + "\t" + IntDenStStCFSEoSE); print(name, "StSt CFSEoOE" + "\t" + AreaCFSEoOE + "\t" + IntDenStStCFSEoOE); print(name, "StSt CFSEoTE" + "\t" + AreaCFSEoTE + "\t" + IntDenStStCFSEoTE); print(name, "StSt ESS" + "\t" + AreaESS + "\t" + IntDenStStESS); print(name, "StSt EO" + "\t" + AreaEO + "\t" + IntDenStStEO); print(name, "StSt ESE" + "\t" + AreaESE + "\t" + IntDenStStESE); print(name, "StSt EOE" + "\t" + AreaEOE + "\t" + IntDenStStEOE); print(name, "StSt ETE" + "\t" + AreaETE + "\t" + IntDenStStETE); print(name, "SigProt Cluster UL" + "\t" + ClusterAreaUL + "\t" + ClusterIntDenSigProtUL); print(name, "SigProt Cluster ULoSS" + "\t" + ClusterAreaULoSS + "\t" + ClusterIntDenSigProtULoSS); print(name, "SigProt Cluster ULoO" + "\t" + ClusterAreaULoO + "\t" + ClusterIntDenSigProtULoO); print(name, "SigProt Cluster ULoSE" + "\t" + ClusterAreaULoSE + "\t" + ClusterIntDenSigProtULoSE); print(name, "SigProt Cluster ULoOE" + "\t" + ClusterAreaULoOE + "\t" + ClusterIntDenSigProtULoOE); print(name, "SigProt Cluster ULoTE" + "\t" + ClusterAreaULoTE + "\t" + ClusterIntDenSigProtULoTE); print(name, "SigProt Cluster CFSE" + "\t" + ClusterAreaCFSE + "\t" + ClusterIntDenSigProtCFSE); print(name, "SigProt Cluster CFSEoSS" + "\t" + ClusterAreaCFSEoSS + "\t" + ClusterIntDenSigProtCFSEoSS); print(name, "SigProt Cluster CFSEoO" + "\t" + ClusterAreaCFSEoO + "\t" + ClusterIntDenSigProtCFSEoO); print(name, "SigProt Cluster CFSEoSE" + "\t" + ClusterAreaCFSEoSE + "\t" + ClusterIntDenSigProtCFSEoSE); print(name, "SigProt Cluster CFSEoOE" + "\t" + ClusterAreaCFSEoOE + "\t" + ClusterIntDenSigProtCFSEoOE); print(name, "SigProt Cluster CFSEoTE" + "\t" + ClusterAreaCFSEoTE + "\t" + ClusterIntDenSigProtCFSEoTE); //Analyse particle summary //Cluster analyses on a per cluster basis run("Set Measurements...", "area mean standard modal min median redirect=[SigProt Channel] decimal=9"); selectWindow("Stepwise Clusters"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Find Maxima Clusters"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Cell Clusters"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in Unlabelled Cells"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in Unlabelled Cells on StSt"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in Unlabelled Cells on Overlay"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in Unlabelled Cells on StSt Edges"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in Unlabelled Cells on Overlay Edges"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in Unlabelled Cells on Total Edges"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in CFSE Cells"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in CFSE Cells on StSt"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in CFSE Cells on Overlay"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in CFSE Cells on StSt Edges"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in CFSE Cells on Overlay Edges"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); selectWindow("Clusters in CFSE Cells on Total Edges"); run("Analyze Particles...", "size=0-Infinity circularity=0.00-1.00 show=Nothing clear summarize"); run("Set Measurements...", "area mean standard modal min median redirect=None decimal=9"); //Testing Cell Masks imageCalculator("AND create", "SigProt Channel","Inverted Mask of All Cells"); rename("Testing Inverted Mask of All Cells on SigProt Channel"); setThreshold(6, 255); imageCalculator("AND create", "Tracer Channel","Mask of CFSE Cells"); rename("Testing CFSE Mask on Tracer Channel"); run("Fire"); imageCalculator("AND create", "Tracer Channel","Mask of Unlabelled Cells"); rename("Testing Unlabelled Mask on Tracer Channel"); run("Fire"); //Closing some obsolete windows selectWindow("Crude Cells"); close(); selectWindow("Mask of All Cells"); close(); selectWindow("SmCl"); close();