Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

3DSlicer exploration - versioning strategy #96

Open
2 tasks
maxradx opened this issue Jun 10, 2024 · 0 comments
Open
2 tasks

3DSlicer exploration - versioning strategy #96

maxradx opened this issue Jun 10, 2024 · 0 comments

Comments

@maxradx
Copy link

maxradx commented Jun 10, 2024

A feature from manual_correction script is to save a .json file to track records of annotator/segmentation process when a segmentation mask is created. Segmentation mask versions are also greatly managed by git.

However, manual segmentations / manual corrections are often performed without standard-of-procedures and by both medical imaging expert and non-expert (e.g. students). Even for expert-considered individuals, manual segmentation is laborious and subject to high variability: a radiology training curriculum is very different and far from a pixel/voxel annotation task! This has been shown to reveal a high variability in the ground-truth segmentation used for deep-learning models training. Another consideration is the lack of resources for performing manual segmentations.

In that context, some revision steps are often required to achieve the best consensus about how the lesion should be considered as input data for deep-learning model training. Managing versions with git has several advantages, but a limitation is the ability to easily display different versions at the same time. This could be useful in manual correction steps (e.g. correction from segmentation provided from a pre-existing segmentation model) or for revising an already completed annotation (e.g. by a student) and avoiding restarting manual segmentation from scratch.

3DSlicer exploration has been done with promising results.
As a matter of facts, it is possible from a 3DSlicer module to easily manage different version in display at the same time and select the one required to save.
Example video (visual only) of 3DSlicer versioning that can be achieved from python script.

TO DO:

  • Complete and release a first draft of 3DSlicer module extension available that includes an efficient and optimized versioning system.
  • Discuss with neuropoly team a consensual way of versioning. For example, we could run a shell script form a 3DSlicer that would upload a version and git add *, git commit -m "version XX", git push origin main for each version of segmentation masks. This is possible form slicer, but has to be done form the module being developed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants