Comments (9)
Working after the latest fixes!
from spinalcordtoolbox.
Oh, oops! My apologies, I definitely skimmed. Thank you for the correction. I'll update the script accordingly, then. :)
from spinalcordtoolbox.
Script updated! Please try redownloading the course data by running:
sct_download_data -d sct_course_data -o {path_to_working_directory}
from spinalcordtoolbox.
I believe the corrected label was not picked up because the manual_correction.py does not add -manual
anymore. Instead, the corrected label is named derivatives/labels/sub-05/anat/sub-05_acq-MTon_MTS_seg.nii.gz
(ie without -manual
). The label provenance is tracked in the JSON sidecar.
The reason why we do not use the -manual
suffix anymore is described in this issue:
- no -manual suffix is used - to be in line with our convention, we do not use the -manual suffix anymore -- the information about the label provenance is stored in the JSON sidecar
To fix this issue, we can:
- update the SCT course
process_data.sh
to not add-manual
when looking for the labels underderivatives/labels
(lines 52 and 77 insct_course_data/multi_subject/process_data.sh
) - modify manual_correction.py to include
-manual
again
from spinalcordtoolbox.
I would go with "1", if not too late @joshuacwnewton
from spinalcordtoolbox.
It's not too late! (I named the sct_tutorial_data
release with the general name "SCT-Course-20231120". This means that as long as we continue to use this name, no updates are needed on SCT's end, which means that any changes to sct_tutorial_data
will not block SCT v6.1.)
- update the SCT course
process_data.sh
to not add-manual
when looking for the labels underderivatives/labels
(lines 52 and 77 insct_course_data/multi_subject/process_data.sh
)
Right now, the script relies on the "-manual" suffix to distinguish between normal segs and corrected segs. Based on the above info, it seems that we would need to change the script to instead look for the presence of a .json
sidecar file? (Presuming that non-corrected segs will NOT have the sidecar file.)
from spinalcordtoolbox.
Based on the above info, it seems that we would need to change the script to instead look for the presence of a .json sidecar file?
No, I think the difference between a manual and an automatic segmentation is the physical location of the file: a manually corrected file would be located under derivatives/.../
. @valosekj can confirm
from spinalcordtoolbox.
Based on the above info, it seems that we would need to change the script to instead look for the presence of a .json sidecar file?
No, I think the difference between a manual and an automatic segmentation is the physical location of the file: a manually corrected file would be located under
derivatives/.../
. @valosekj can confirm
Exactly! The automatically generated files (e.g., by sct_deepseg
) are located in the output/data_processed
folder, while the manually corrected files are stored under derivatives/labels/
.
So, I believe that the only modification of the process_data.sh
script is to remove -manual
from lines 52 and 77.
from spinalcordtoolbox.
Also working on my end-- thank you for the fix! ❤️
from spinalcordtoolbox.
Related Issues (20)
- `RuntimeError: PytorchStreamReader` when running `sct_deepseg` on contrast agnostic model HOT 4
- `sct_deepseg -task seg_spinal_rootlets_t2w` raises `unexpected keyword argument 'perform_everything_on_device'` error HOT 3
- Output softseg from MONAI inference is not in the range `[0, 1]` HOT 4
- Update contrast-agnostic model to 2.4 HOT 1
- Mask creation is no more required for cropping
- Provide better instructions when Windows username contains spaces HOT 3
- macOS runners take an inconsistent amount of time to run, sporadically triggering the `-h` profiling test
- FileNotFoundError: when using `type=im` with `algo=centermassrot` HOT 6
- Indicate deepseg model HOT 1
- Is `line_angle()` still available in QC for looking at HOG performance? HOT 2
- Improve angle estimation for slicewise registration
- Replace deepseg MS lesion seg model
- `ValueError`: `module://matplotlib_inline.backend_inline is not a valid value` when running SCT scripts in Jupyter notbooks HOT 11
- Cannot checkout a release HOT 5
- Reuse of warping field should not happen if SCT version evolved HOT 2
- Label-based transformation during template registration is wrong HOT 14
- `sct_deepseg` models trained with nnUNet can be implemented in 3D Slicer HOT 1
- Using -set-sform-to-qform not making the changes in the image HOT 2
- Implementation of pre trained nnUNet sct_deepseg models on Slicer
- Deprecate `sct_deepseg_{sc,lesion,gm}` and move the models to `sct_deepseg`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spinalcordtoolbox.