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.

Remo can be called from code or used directly from the User Interface.

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 runs on Windows, Linux and Mac. It is written using Python and React.JS and uses a lightweight database to store metadata.


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


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

Simple workflow:

import remo

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

On fresh Ubuntu you may be needed to install gcc and python3-dev packages.

1. Pip install

You can install remo using pip, preferably in a conda environment.

pip install remo

When installed in a conda environment, remo will launch automatically when calling import remo.

About conda

Conda comes pre-installed with SQLlite binaries, and allows you to easily specify the right python version. If you install remo outside a conda environment, remo will check whether you have SQLlite binaries installed and install them otherwise.

2. Initialise

To complete the installation, run:

python -m remo_app init

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

3. Optional: separate python library

Remo comes pre-installed with remo-python library. Optionally, you can also install the python library in a separate Python 3.5+ environment.

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

Info

Remo is a web-server running on your local 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 SDK to facilitate calling remo from Python 3.5+ environments.


Launch remo

To launch the web app, run from command line:

python -m remo_app

Alternatively, if you have installed Remo in a conda environment, from python you can directly call import remo. This will check if the app is running, or launch it otherwise.

Remo will be served by default in its own Electron app. But you can also access it through your browser at localhost:8123


Support

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

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