Skip to content

Questions about tutorial: 3D Noise Nuclei segmentation #152

Description

@d33bs

Hello, thanks for providing and maintaining this tutorial repo! I was looking for a good open source example of 3D image processing in CellProfiler and came across the 3D Noise Nuclei segmentation tutorial here.

As a background, this tutorial dataset includes 4 3d images which are of shape: (T=1, C=1, Z=100, Y=258, X=258). Each image seems to contain about 5 objects. A cppipe file is included which can help process these images. I was able to run the pipeline to successfully create profiles using CellProfiler v4.2.8.

Data differences

I noticed that after running the cppipe on the source images I ended up with a CSV called MyExpt_RealsizeNuclei.csv which appeared to have nuclei features included. Based on some work with 2d data within CellProfiler I was somewhat surprised to find this file contained 400 rows (seemingly in alignment with z-slices but not total objects). See here: MyExpt_RealsizeNuclei.csv.

In making some slight changes to the cppipe file (see here) I was able to reduce this down to 20 rows (in alignment with the actual objects from the images - 5 per image). See here: MyExpt_RealsizeNuclei.csv.

Note: It looked like the tutorial cppipe file was created using CellProfiler v4.2.1, so there could be some differences in processing, but I wasn't sure exactly.

Question: what should we ideally expect for data output from the pipeline for this tutorial, given the data and goals? Mostly I wonder: should we expect 400 records of objects (1 per z-slice) or 20 records of objects (1 per actual object from the images).

Citations

How can we cite this repository and the related tutorial data I mention above? I didn't see any specifics on this but wanted to be sure to credit anyone involved.

Thanks for any help you can offer on both of these! And again, appreciate the effort which goes into maintaining this project - it's great!

Activity

  1. ErinWeisbart commented on Feb 9, 2026

    @ErinWeisbart
    Member

    Hi @d33bs !
    I'm not sure what's going on? I am not able to replicate what you describe.
    I just downloaded the tutorial and ran the included 3DNucleiPipelineComputeConsumingFinal.cppipe in CellProfiler 4.2.6 built and 4.28 source on Mac and it produced 20 rows as expected in MyExpt_RealsizeNuclei.csv. (There shouldn't be any appreciable differences between running the 4.2.1 pipeline in 4.26. or 4.2.8)

    I'll get a citation.cff up in the repo shortly. Thanks for your efforts to make sure that such projects are appropriately credited!

  2. ErinWeisbart commented on Feb 9, 2026

    @ErinWeisbart
    Member

    To directly answer your question, in CellProfiler for per-object .csv's (like MyExpt_RealsizeNuclei.csv) we always expect one row output per object.

  3. d33bs commented on Feb 18, 2026

    @d33bs
    Author

    Thanks @ErinWeisbart ! I'll keep an eye out for the citation information!

    I used 4.2.8 through a Linux-based Dockerfile running on MacOS (uploaded for reference here). I wonder if the discrepancy might have been caused by the CLI - I used it instead of the GUI to gather the resulting profiles. My command looked like: cellprofiler -c -r -p 3d-nuclei-profiling.cppipe -o output -i inputdata.

  4. ErinWeisbart commented on Feb 19, 2026

    @ErinWeisbart
    Member

    You found a CellProfiler bug 🐛 ! Headless should still respect that the images are 3D and it is not. I've filed an issue CellProfiler/CellProfiler#5125

  5. bethac07 commented on Feb 19, 2026

    @bethac07
    Member

    This is a weird CP4 corner case - in general, Metadata should not be used in "extract info from file headers" in CP4 for 3D images. Setting that to "No" fixes the issue in my hands, @d33bs can you confirm it also fixes in yours?

  6. d33bs commented on Feb 20, 2026

    @d33bs
    Author

    Thanks @ErinWeisbart for opening the new issue, hope things can be addressed!

    Thanks also @bethac07! I'd be glad to verify - do you happen to know which setting "extract info from file headers" corresponds to in the cppipe file? I'm not as familiar with that setting.

  7. bethac07 commented on Feb 23, 2026

    @bethac07
    Member

    If you can see if the pipeline in #182 fixes things, that will help!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions