RootNav 2 is a command line tool for the segmentation and analysis of root architectures in 2D. RootNav 2 is still maintained, please reach out if something doesn't work for you.
We are continuing to update RootNav 2 to make using it and training new models as simple as possible. New updates include:
- New logging features, you can use the
--debug
flag when training or analysing images to see much more detail on what is happening - Code improvements means RootNav 2 runs faster than ever.
- Updated all code to support the latest versions of PyTorch and other libraries, we have also removed the requirement for a few libraries that were no longer needed.
- With this update, the installation should be simpler, with only a few libraries needed to install. We have changed the installation guide to better adhere to the typical ways PyTorch are installed.
To install and run rootnav, you will need the following things:
- A clone of the code from github
- An installation of python
- Pytorch and associated libraries
- Other packages required by the software
If you wish to train your own models, you will also need:
- An Nvidia GPU (otherwise training will be very slow)
- Cuda drivers, and pytorch installed with cuda enabled
- Additional packages required by the software.
The following instructions assume you have installed python, and have compatible hardware if required. If you are not sure how to install python, we recommend using Anaconda, which can be downloaded here.
You will first need to download the code, either as a zip above, or by cloning the git repository (recommended):
git clone https://github.com/robail-yasrab/RootNav-2.0.git
Pytorch is responsible for the deep learning that runs within the Rootnav tool, during both inference and training. Pytorch is updated regularly, and we now recommend installing it following the instructions on the pytorch website.
The remaining dependencies can be installed using the requirements files in either the inference or training directories. If you're using pip, then the following will work in Linux:
cd RootNav-2.0/inference
pip install -r requirements.txt
You can perform the same thing in the training directory, if you need to train new models using RootNav. Library support in other operating systems is more complex, and as above we recommend using Anaconda. You may find Anaconda is also simplest in Linux as well.
The majority of users will want to run RootNav 2.0 on new images, in which case all the code you need is in the inference
folder. You can find more instructions in the inference README.
Training code may be found in the training folder. Instructions on training models are given in the training README. If you would like to collaborate on the development of new models for RootNav 2.0, please contact us.
Rootnav 2 is published in GigaScience. For enquiries please contact michael.pound@nottingham.ac.uk.
[1] Yasrab, R., Atkinson, J. A., Wells, D. M., French, A. P., Pridmore, T. P., & Pound, M. P. (2019), RootNav 2.0: Deep learning for automatic navigation of complex plant root architectures, GigaScience, 8(11), giz123.