Bug #3092
open
Individual Curation: Pyradiomics
Added by Andrew Miller 22 days ago.
Updated 1 day ago.
Description
After opening a patient, trying to run Pyradiomics results in a dialogue box for 'create nrrd file' and then the following error message:
Error calling Python override of QThread::run(): <class 'KeyError'> 0 <traceback object at 0x77c136ae2140>
Traceback (most recent call last):
File "/home/andrewm/OnkoDICOM/src/View/PyradiProgressBar.py", line 38, in run
ct_file = dcmread(self.filepaths0, force=True)
~~~~~~~~~~~~^^^
KeyError: 0
Exception ignored in atexit callback: <cyfunction _unregister_py_extension_types at 0x77c2d5b51560>
Traceback (most recent call last):
File "pyarrow/types.pxi", line 6113, in pyarrow.lib._unregister_py_extension_types
File "pyarrow/types.pxi", line 2357, in pyarrow.lib.unregister_extension_type
File "pyarrow/error.pxi", line 92, in pyarrow.lib.check_status
pyarrow.lib.ArrowKeyError: No type extension with name arrow.py_extension_type found
Segmentation fault
OnkoDICOM does not crash.
- Assignee set to Andrew Miller
Please Note
The Pyradiomics function PyRad2PyRadSR in Batch Processing does work.
The Pyradiomics export function PyRadSR2CSV in Batch Processing also works.
When running Pyradiomics radiomics feature extraction interactively (rather than in batch mode), the software crashed with an internal error if the loaded dataset lacked CT image slices. No results were produced.
The software now correctly identifies the patient from whichever DICOM data is available (CT images, RT Structure Set, or any other loaded dataset), aligning with the logic already used by the working batch processing path. The Pyradiomics calculations themselves are unchanged — only the patient identification step was corrected.
andrewm@andrew-nucboxm7ultra:~$ cd OnkoDICOM/
andrewm@andrew-nucboxm7ultra:~/OnkoDICOM$ source .venv/bin/activate
(.venv) andrewm@andrew-nucboxm7ultra:~/OnkoDICOM$ git checkout deps-safe-batch-20260214
Already on 'deps-safe-batch-20260214'
Your branch is up-to-date with 'origin/deps-safe-batch-20260214'.
(.venv) andrewm@andrew-nucboxm7ultra:~/OnkoDICOM$ python main.py
PDPI: 87.65603948940262
Multithreading with maximum 16 threads
2026-06-19 15:13:23,931 - WARNING - The PN component length (65) exceeds the maximum allowed length of 64.
Error calling Python override of QThread::run(): <class 'KeyError'> 'rtss' <traceback object at 0x7667ba358280>
Traceback (most recent call last):
File "/home/andrewm/OnkoDICOM/src/View/PyradiProgressBar.py", line 38, in run
rtss_path = self.filepaths['rtss']
~~~~~~~~~~~~^^^^^^^^
KeyError: 'rtss'
This is the output when I run the Export PyRadiomics command from the folder with down arrow icon at the top right. When I clear the nrrd advisory box, the program is still running.
When running the BCAA910312C34903D1EBB87F16B383E2 dataset (see Files), attempting to generate PyRadionics prouced the following error messgae AND termination:
Error calling Python override of QThread::run(): <class 'KeyError'> 'rtss' <traceback object at 0x7667c0c26580>
Traceback (most recent call last):
File "/home/andrewm/OnkoDICOM/src/View/PyradiProgressBar.py", line 38, in run
rtss_path = self.filepaths['rtss']
~~~~~~~~~~~~^^^^^^^^
KeyError: 'rtss'
QThread: Destroyed while thread is still running
Aborted (core dumped) python main.py
Also available in: Atom
PDF