medium_logo

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.


Demo

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 on jupyter, you have remo embedded within the notebook
remo.set_viewer('jupyter')

# create dataset
my_dataset = remo.create_dataset(name = 'open images test',
                            urls = ["https://remo-scripts.s3-eu-west-1.amazonaws.com/open_images_sample_dataset.zip"],
                            annotation_task="Object detection")

# list existing datasets                
remo.list_datasets()

# browse the dataset
my_dataset.view()

my_dataset.list_images()

# view stats
my_dataset.view_annotation_statistics()

# annotate
my_dataset.view_annotate()

Installation

Remo is compatible with Python 3.6+ and runs on Linux, macOS and Windows. The latest remo releases are available over pip.

1. Pip install

You can install remo using pip.

pip install remo

2. Initialise

To complete the installation, run:

python -m remo_app init

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

For installation on Google Colab, you would have to run instead python -m remo_app init --colab. You can read more here.

3. 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.


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.

Command Line Interface

You can use 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
  Options:
    --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

Support

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