Well, the subject says it all. I’m grouping images according to metadata and each group is then projected. Is there any way I can retrieve the number of images that go into each group? (well, I could do a sum and an average projection and then divide, I guess… but is there anything simpler?)
Thanks very much
If you look in the “Groups” module, it will show you; if you need to access this after-the-fact in the output Image spreadsheet, this info is also accessible by looking at the max of each group’s “GroupIndex”.
Thanks for your reply (I was wondering if there was a way to feed the number directly instead of having to run a query in between pipelines).
Can you bit elaborate you query? My understanding from the earlier message is that you want a number of images that are grouped together based on your metadata. If so, this is what earlier reply says.
But you had mentioned that you want to feed the number directly, where you want to feed what number?
Fujfilm Wako Automation (Consultant)
When I average images (say, for shading correction) the whole set runs on one worker only, so it takes a huge amount of time.
What I wanted to do was to break down the work, say averaging by rows of a 96-well plate (in which case I use all workers), then putting those averages together. But because not all wells in a row may be used, I wanted to see if I could find an easy way of getting that number in order to scale the final average correctly.
Of course, I can pre-calculate than number or get it from a query, but since CP does calculate that number internally, I wanted to see if there was a way of retrieving it.
Thanks very much
If my understanding is correct, you are looking for the average for the number of images it has been computed based on your illumination calculation.
First with respect to number of images is that based on your grouping, i.e if want all wells in row then you might have to group them accordingly i.e. based on rows
With respect to average values I am not sure if your could get the numbers, but you can save the averaged image from your illumination function. Just a screen shot here,
“calculate function for each image …” option can compute for each individual image (which will be time consuming) or group of images or entire image dataset. In your case, you can group your images & chose first cycle (may be)
“Retain the average image…” if you chose yes you could save the averaged image using “SaveImages” module.
Anyways, it might be worth looking at this paper,
Fujifilm Wako Automation (Consultant)
Image CSV or database table, for each group (which each group is a row, in your hypothetical experiment here), you’ll have a
GroupNumber and a
GroupIndex, and the maximum of the
GroupIndex for each
GroupNumber is the number of images in that row.
All that being said, unless your rows all contain WILDLY divergent numbers of images, going for a weighted average vs a simple average is probably overkill in this use case, though I should say “hypothetically” because internally even for 384 well plates, we just deal with the slowness to get a single worker to average all images in a plate.
I’d recommend downsampling before running CIC then upscaling after CIC/before saving as a speedup over batching by rows , but YMMV.