Page tree
Skip to end of metadata
Go to start of metadata

Cytomine-Python-Client and utilities include basic functions to import/export data. Basically, these functions perform http requests to web services exposed by a Cytomine server.

Cytomine-DataMining includes algorithms and applications (for image classification, segmentation, and interest point detection, see description here) that rely Cytomine Python Client and utilities.

The Cytomine-Python-client and  Cytomine-Python-DataMining packages are already installed together with other Cytomine components using our regular Docker installation. These algorithms can be executed from the Cytomine-WebUi (see user guide). Indeed, following the standard installation procedure, algorithms are installed locally in the software_router docker container and we use RabbitMQ to send messages from Cytomine-WebUi/Cytomine-Core to the corresponding docker container. You can have access to algorithm code and logs here:

sudo docker-enter software_router
cd /software_router/algo/   ;; code
cd /software_router/algo/logs/  ;; execution logs
cd /software_router/algo/models/  ;; models built by algorithms


However, you might be interested to install Cytomine-DataMining package on another computer without the core server components and run them through regular command lines (e.g. to make some tests to access another Cytomine remote server, to extend our algorithms, to make your own algorithms and test them, ...).

To do so, you need to follow these instructions.


Here are instructions to install and test the Python packages:

1. Python environment with miniconda

First, setup a Python environment using Miniconda installer  (basically: get the installer script, run it, add the anaconda binary directory to your PATH variable), e.g.:

./ -b -p $HOME/miniconda2
export PATH="$HOME/miniconda2/bin:$PATH"
conda create -n cytomine python=2.7 shapely opencv scikit-learn pillow joblib
source activate cytomine

In order to avoid having to update you path everytime you come back on you machine, you might want to append the export command (line 2) at the end of the ~/.bashrc file and then run:

source ~/.bashrc

2. Cytomine-python-client and Cytomine-python-datamining


sudo apt-get install git
sudo apt-get install g++

2.1 Get Cytomine Python Client & utilities from our source repository

Clone cytomine python client

mkdir Cytomine/ ; cd Cytomine/
git clone
cd Cytomine-python-client/

Install the basic Cytomine client with basic functions to communicate with the Cytomine-Core (it will install this package into anaconda subdir):

cd client/
python build
python install
cd ..

Install the some Cytomine utilities  (it will install this package into anaconda subdir):

cd utilities/
python build
python install
cd ..
cd ..

2.2 Get Cytomine DataMining from our source repository

Install the Datamining Cytomine client with our machine learning algorithms:

git clone

2.3 Install pyxit (located in cytomine-datamining/algorithms/pyxit/)

Install pyxit:

cd $HOME/Cytomine/Cytomine-python-datamining/cytomine-datamining/algorithms/pyxit/
python build
python install

3. SLDC workflow

If you want to install the SLDC (Segment-Locate-Dispatch-Classify) workflow, follow the installation instructions here.


4. Install Groovy and Cytomine-Java-Client

The segmentation_prediction and object_finder applications are using Groovy scripts (union4.groovy) and the Cytomine-Java-Client to perform local unions of geometries.

These are located in the lib/ subdirectory of the repository. If you plan to use these applications, you therefore need to install Groovy and update the

lib/Cytomine-client-java.jar  (or include it in your PATH) with the latest one from our repository.

sudo apt-get install groovy 

Instructions to use

Our application examples (for classification, segmentation, landmark detection) are located in cytomine-applications/

In general, you need first to add the software to Cytomine-Core (once), then you can add (associate) this software to your project(s) using the file in each subdirectory.

Then you can test it using the bash file in each subdirectory (e.g. in classification_validation/ subdirectory).

Important note: Because our analysis algorithms use the pyxit, client, and utilities code, each time you modify some parts of this code, you'll have to "build" and "install" these changes on your computer using python commands (they will install your new packages into the local anaconda directory). 














  • No labels