SynthSeg
SynthSeg copied to clipboard
Usability improvements
Hi all, thanks for this repository. I am currently experimenting with it and noticed some things that adversely affect usability. These could be easy fixes on your end and might improve adoption:
- the installation instructions require the anaconda channel (or intensive manual effort installing cuda/cudnn). The anaconda channel is dangerous as people unknowingly using it may open up their institution for a lawsuit. Please adjust so that it only uses conda-forge channels. This could work something like this (not fully tested, might need to be refined):
- Create a .yml file with content like this:
name: synthseg channels: - conda-forge dependencies: - python=3.8 - pip - cudatoolkit=10.1 - cudnn=7.6 - numpy=1.23.5 - matplotlib=3.6.2 - nibabel=5.0.1 - protobuf=3.20.3 - h5py=2.10.0 - pip: - tensorflow-gpu==2.2.0 - keras==2.3.1conda env create -f synthseg_env.ymlfollowed byconda activate synthseg
- The prediction function given in the usage instructions only takes single files as input. One file takes about 10 minutes because graph compilation needs to be done each time. Please expose batch prediction by, for example, allowing folders as input and output argument
- the
predict()function supports predicting multiple files but the interface is unintuitive having to write all input and output filenames to a .txt file. Please allow to just pass lists - Even when doing batch prediction the inference is still quite slow and the GPU is barely used. There may be some headroom for improvements :-) I am trying to predict 1000 files and will have to wait all afternoon for this to be done
Thanks so much! Best, Fabian