How to measure average intensity of selected particles in the stack


#1

Hello. How is it possible to measure average intensities of all labeled particle in the stack (average value for each slice per all particles per slice)? I have a stack and a binary image of a labeled particles. I can go to option of “Anazlyze particles” where I can label these particles and make them appear in the ROI manager, and then I can go to a stack and choose in ROI manager “Show All”. This operation shows all labeled particles appeared in a stack. Then in ROI manager I go to “More”, choose “Multi Measure”. Then I go to “Image”, “Stacks”, “Plot Z-axis Profile”. However this operation somehow shows me a plot average intensities per entire slice (not of labeled particles)? Is there a way how I can get plot with average intensities of labeled particles only?


#2

Yes, this is possible however, only with a workaround using the macro language.

You can read the results you measured in the results table into an array
a1 = newArray();
for (i=0;i<nResults;i++){
a1 = Array.concat(a1,getResult(“Mean”, i));
}

and then using
Plot.create(“Title”, “X-axis Label”, “Y-axis Label”, xValues, yValues)
omitting the xValues will result in a plot you desire.

Plot.create(“Average intensity”, “ROI #”, “Means”, a1)

This should work
Joost