Skip to content

Troubleshooting

David Bouget edited this page Aug 8, 2025 · 5 revisions

Where to look

To identify and narrow down the root causes of a problem with the Raidionics-Slicer plugin, please have a look at potential error messages visible either inside the Python console of 3D Slicer or inside the Logging window of the plugin (both are indicated by red arrows in the image).

Issue-tracking

Docker

1. Docker setup

Make sure your local Docker installation is correct by clicking on the Test! button inside the Docker Settings section. You should get a popup window with the Docker status.

test-docker-installation

2. Docker permissions

You should ensure Docker has the right permissions: either you do not need to be admin on your machine, or you can "unlock" Docker.

2.1 Linux

  • In a terminal, you can perform the following check: docker image list

  • If Docker needs sudo permissions to run, you will see a similar print:
    permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Head "http://%2Fvar%2Frun%2Fdocker.sock/_ping": dial unix /var/run/docker.sock: connect: permission denied

  • In a terminal, running the following should list the available Docker images: sudo docker image list

  • Solution:

    • Ensure a docker group exists: getent group docker
    • Add your user to the docker group: sudo usermod -aG docker ${USER}
    • Completely log your user off the machine for the group permission to be properly in place.

2.2 Windows

To come.

2.3 macOS

Same as Linux?

3. Docker image

For the plugin to run properly, the appropriate Docker image must be manually downloaded locally on the computer (cf. Installation steps), as all processing happens inside this Docker image. The current image is: dbouget/raidionics-rads-v1.3.0-py39-cpu. When a segmentation or reporting process is started, a similar Docker call line should be visible at the top of the Logging section (cf. image).

docker-image-started

4. Docker image verification

In case of issue from the Docker image itself, the following test can be performed locally.

  • Download the test resources here.

  • Extract the downloaded data and copy the folder name (i.e., </path/to/TestCase-Docker>).

  • In a terminal, please run the following, after updating the </path/to/TestCase-Docker> to where you extracted the data (e.g., /home/dbouget/Desktop/TestCase-Docker):
    docker run -v </path/to/TestCase-Docker>:/workspace/resources -t -i --ipc=host --user $(id -u) dbouget/raidionics-rads:v1.3-py39-cpu -c /workspace/resources/data/rads_config.ini -v debug

5. Docker settings

If the previous step succeeded, running the Docker image 3DSlicer should work. However, if the process stops along the way, in the Logging window something similar should show:

08/08/2025 10.27 ; root ; INFO ; LOG: Segmentation - Runtime: 60.34918236732483 seconds.
08/08/2025 10.27 ; root ; INFO ; LOG: Segmentation - Inference - End (2/4)
08/08/2025 10.27 ; root ; INFO ; LOG: Segmentation - Reconstruction - Begin (3/4)
08/08/2025 10.27 ; root ; DEBUG ; Reconstructing predictions.
08/08/2025 10.27 ; root ; DEBUG ; Resampling predictions with probabilities.

It indicates that the memory use inside the Docker image was too big and the image was then stopped before the end. As a sanity check, you can try using another input MR scan than it smaller (look at the size in MB on disk). Alternatively, inside the Docker Desktop app > Settings > Resources, the memory limit should be increased.

Raidionics

At this stage, any Docker-related compatibility issue has been ruled out, and potential issues will be stemming from the various processing steps occurring inside the Raidionics backend.
The following image illustrates the content of the Logging section when a process runs successfully, with a long list of DEBUG and INFO logs. In case of problems, WARNING and ERROR logs will be issued instead, which can be linked as description when reporting the issue.

correct-logging-illustration