I have successfully run the vanilla docker and the SlicerMonai. Server communicated and found the apps etc (I didn’t try to execute it). Now I am modifying the docker to do your requested changes to make it work with my data organized in the way requested above (labelmaps are in labels/final and have the identical name and format as the corresponding volumes).
-
I ran the docker to map this directory which was mapped as /workspace/murat_data
sudo docker run -it --rm --gpus all --ipc=host --net=host -v $PWD:/workspace/murat_data projectmonai/monailabel:latest bash
-
Then I download the deepedit_multilabel apps to the docker via command
monailabel apps --download --name deepedit_multilabel --output /workspace/apps/
-
Then I edit the main.py in the /workshape/apps/deepedit_multilabel to match my label incides:
self.label_names = {
"left lung": 1,
"cranial lobe": 2,
"middle lobe": 3,
"caudal lobe": 4,
"accessory lobe": 5,
"left kidney": 6,
"right kidney": 7,
"stomach wall": 8,
"stomach lumen": 9,
"medial lobe of liver": 10,
"left lobe of liver ": 11,
"right lobe of liver": 12,
"caudate lobe of liver": 13,
"left adrenal": 14,
"right adrenal": 15,
"rectum": 16,
"bladder": 17,
"left ventricle": 18,
"right ventricle": 19,
"left thymic rudiment": 20,
"right thymic rudiment": 21,
"third ventricle": 22,
"mesencephalic vesicle": 23,
"fourth ventricle": 24,
"cerebral aqueduct": 25,
"left lateral ventricle": 26,
"right lateral ventricle": 27,
"right olfactory bulb": 28,
"left olfacotory bulb": 29,
"right thalamus ": 30,
"left thalamus": 31,
"right hypothamalus ": 32,
"left hypothalmus": 33,
"right septal area": 34,
"left septal area": 35,
"left neopallial cortex abd amygdala": 36,
"right neopallial cortex and amygdala": 37,
"right striatum": 38,
"left striatum ": 39,
"right ventricular zone": 40,
"left ventricular zone": 41,
"pons": 42,
"background ": 0,
}
- Then I run the server via the command:
monailabel start_server --app /workspace/apps/deepedit_multilabel/ --studies /workspace/murat_data/
which gives me an error about indentations. I created these with the tabs, but apparently it is not right. and also in some cases we have very different labels. I don’t think it makes too much sense to hard code these to the code itself. Can I request a revision such that the labels are read as like a parameter file, like csv or a json at the run time, so that we can possibly run multiple copies of multilabel for different tasks with minimal revision.
Our plan is to deploy this application for a number of biologists that will be using multilabel deepedit for different segmentations tasks. So that kind of flexibility will be important.