Handling channels with different Z stacks in cellProfiler

Hi,
I’m new to cellProfiler and trying to analyse a 2-channel assay on well plates where a Hoechst channel is imaged in a single plane, while a lipid stain is imaged in 6 planes. I aim to create a maxIp of the lipid stain and compare it to the Hoechst channel for each FOV. The metadata correctly assigns well, field, Z-plane and channel, but I’m not sure how to define the namesAndTypes in this case. if I use the channels I get an error due to the different number of images in each channel.
I’ve tried searching this forum and elsewhere and could not understand how to go about defining it.
Do I have to do it as a two pipeline analysis where the first one just produces the maxIp and the other does the measurements?

This sounds like the best approach for resolving a mix of 2D and 3D images, the initial projection pipeline should only need to run the projection itself and then save out the resulting image.

Thanks for the quick reply. I have 6 planes per field per well. how do I define it correctly for the makeProjection module? is it in the NamesAndTypes or in Groups?
sorry for the noob questions.

Are the planes in the same image file? If they are, use the “Extract from image file headers” option in the Metadata module to pull out the frames. In either case you’ll want to use the Groups module to combine the correct planes together.

each image is separate. the filenames contain all the metadata required to sort them out. So I’m using the channel to choose all the images within Z planes, but I’m not sure what is the correct way to define them such that makeProjection will correctly process them.
I’m trying to follow the procedure in the help menu but can’t seem to find the “Image set matching method” option.
I’m using cellProfiler 3.0.0.

Do you have multiple channels that need projection?

In NamesAndTypes you need to associate each channel with a name. Matching method is at the bottom of the module, but won’t appear if you only have 1 channel (there is no matching to do). Within Groups you need to find a metadata key which splits each z stack. You then run MakeProjection with your desired projection method, followed by a SaveImages module. Set the SaveImages module to save on the “Last Cycle” so that it combines data for each group.

Hope that makes sense

Yes, I only have a single channel that needs projecting so makes perfect sense. I grouped according to well and field so there are 6 images per group. if the make projection than uses the groups than it should work. Thanks for your help!

I’ve encountered another obstacle. I can’t seem to assign the well and field numbers to be appended to the file names of the projection since it looks for those in the filenames and not in the groups, and the filename isn’t metadata based.

You should be able to add metadata tags to the file name by using the “Append a suffix” option in SaveImages and right-clicking on the resulting text box to choose which metadata field you need. Is that what you’ve tried?

Hi, that’s what I did but I got another error because I did not include a prefix. I misunderstood the prefix to mean a string that comes before the filename instead of taking the filename from the NamesAndTypes.
now everything works perfectly! thanks for all your help.