Remo: images and annotations management for Computer Vision

Remo is a web-application for managing and visualising images and annotations.

It was developed for data scientists, engineers and ML researchers to facilitate the exploration, sharing and management of datasets and annotations for Computer Vision.

Use Remo to:

  • visualise and inspect datasets, annotations and predictions
  • search and organise images by classes or tags
  • visualise statistics like # objects per class
  • quickly annotate your images

Remo can be called from code or used as a standalone application.

It runs on Windows, Linux and Mac, and it can be embed in Jupyter Notebook or Google Colab.

Under the hood, Remo it's written using Python and React.JS, and relies on a PostgreSQL database to store metadata.


Here is a video showcasing how to explore a dataset's annotations and predictions, including tagging a bad prediction and re-annotating an image.

You can also try the online demo here.

Python commands

Here is an example of using the Python library to:

  • create a dataset
  • visualise it
  • visualise statistics on annotations
  • call the annotation tool

all in an interactive fashion, within a Jupyer notebook.

Simple workflow:

import remo

# if running on jupyter, remo will embedded within the notebook!

# create dataset
my_dataset = remo.create_dataset(name = 'open images test',
                            urls = [""],
                            annotation_task="Object detection")

# list existing datasets                

# browse the dataset


# view stats

# annotate

Quick Installation

Remo is compatible with Python 3.6+ and runs on Linux, macOS and Windows. The latest releases are available in our pypy project page or in our Docker Hub page.

Below we present some quick steps to install Remo.

Install using pip

1. Run pip install

pip install remo
2. Initialize

python -m remo_app init

This will download some needed additional packages and create a folder .remo in your home directory. By default, this is the location where Remo looks for its remo.json configuration file.

For installation on Google Colab, the initialization step needs an additional flag: python -m remo_app init --colab. You can read more here.

3. Launch remo

To launch the web app, run from command line:

python -m remo_app

Remo will be served by default in its own Electron app. But you can also access it through your browser or embed it in a Jupyter Notebook.

Install using Docker

Follow these quick steps to install Remo using Docker. For more options, you can refer to the Remo Docker installation page.

  1. Download docker-compose.yml
  2. Make sure you are using the latest tag available in our Docker Hub.
  3. Run the following from the same directory where the file lives:
        docker-compose up -d
  4. Access Remo by browsing to http://localhost:8123/

Optional: separate python library

When installing Remo, you also automatically install the remo-python library. Optionally, you can install the python library in a separate Python 3.5+ environment and use it to interface with Remo app.

# First activate your Python work environment
pip install remo-python

About Remo

Remo is a web-server running on your local or server machine. Once Remo is running, you can call it from code in most programming languages through the REST API. We provide an open source Python library to call Remo from Python 3.5+ environments.

Command Line Interface

If you installed Remo with Pip, you can also call Remo from your command line, doing python -m remo_app and using the following options:

  (no command)          - start server and open the default frontend
  no-browser            - start server

  init [options]        - initialize settings and download additional packages
    --colab             - specify installation on Google Colab
    --remo-home <dir>   - set custom remo home dir location.
                          Default location: ~/.remo,
                          on Colab default location: /gdrive/My Drive/RemoApp
    --token <token>     - set registration token, if you have one

  kill                  - kill running remo instances
  open                  - open the Electron app
  remove-dataset        - delete datasets
  delete                - delete all the datasets and metadata
  backup                - create database backup

  --version             - show remo version
  --help                - show help info


In case you need support or want to give us some precious feedback, you can get in touch with us on our discuss forum.

For any other query, you can also to write to us at hello AT remo DOT ai