Skip to content

Fix for NamesAndTypes incorrectly relabeling 3D objects from an image#95

Merged
bethac07 merged 1 commit intomasterfrom
issues/#4505
Mar 8, 2022
Merged

Fix for NamesAndTypes incorrectly relabeling 3D objects from an image#95
bethac07 merged 1 commit intomasterfrom
issues/#4505

Conversation

@callum-jpg
Copy link
Collaborator

Tentative fix for CellProfiler/CellProfiler#4505

When loading objects from a 3d image, NamesAndTypes relied on a method (specifically, get_image_volume in core _objects_image.py) that labelled planes individually using convert_image_to_objects and stacked the result. As some cells can be present in one plane but not others, this led to differences in labelling for the same cell between planes. By removing the label recalculations, the original segmentation is preserved.

@DavidStirling , is there some particular scenario this original fix was trying to solve? We note that planes are converted from int64 to int32 here, which we have preserved, so wondered if theres some particular case we are overlooking here. Could it also be that convert_image_to_objects was called to help deal with missing objects, similar to CellProfiler/CellProfiler#4485?

@DavidStirling
Copy link
Member

@callum-jpg Sorry I missed this! I don't think it's originally my code but came over from the main repo during the core split.

I expect that the intention was to handle missing label values. I'm sure that there will now be far more efficient ways to achieve the same thing as the utility function convert_image_to_objects does, for now perhaps adapting that to natively handle 3D would be a reasonable solution.

@bethac07 bethac07 merged commit ad2aa6b into master Mar 8, 2022
@bethac07 bethac07 deleted the issues/#4505 branch March 8, 2022 16:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants