Remo is a web-based application to organize, annotate and visualize Computer Vision datasets.
It has been designed to be your team's private platform to manage images, in an end-to-end fashion.
Use Remo to:
access your datasets from one place, avoiding scattered files and keeping data secure locally
quickly annotate your images. We designed our annotation tool from the ground-up
build better datasets and models, by exploring in depth your Images and Annotations data
collaborate with your team, accessing the same data remotely
Remo runs on Windows, Linux, Mac or directly in Google Colab Notebooks. It can also be served on a private server for team collaboration, or embedded in Jupyter Notebooks.
This repo is the open source repo for the Remo python library. To access the docs and try the online demo: https://remo.ai
Integration from code
- Easily visualize and browse images, predictions and annotations
- Flexibility in slicing data, without moving it around: you can create virtual train/test/splits, have data in different folders or even select specific images using tags
- Allows for a more standardized code interface across tasks
- Faster annotation thanks to an annotation tool we designed from the ground-up
- Manage annotation progress: organize images by status (to do, done, on hold) and track % completion
- One-click edits on multiple objects: rename or delete all the objects of a class, duplicate sets of annotation
Supported formats: Polygons, Bounding boxes, Image labels and Tags.
Multiple import and export formats (CoCo, Pascal, CSV, etc). Convenient import and export options (skip images without annotations, append file paths, label encoding, etc)
Read more here: https://remo.ai/docs/annotation-formats/
- Centralized access to your data - link directly to your images, in whatever folder they are
- Easily query your data, searching by filename, class, tag
- Immediately visualize aggregated statistics on your datasets
- Manage mupltiple versions of your annotations using Annotation Sets
Remo python library
You can see example of usage of the library in our documentiation or in the examples folder:
|Intro Notebook||Intro to Remo-Python notebook||-|
|Uploading annotations||Upload Annotations and Predictions Tutorial notebook||-|
|PyTorch Image Classification using Remo||PyTorch Image Classification notebook|
|PyTorch Object Detection using Remo||PyTorch Object Detection Notebook|
- In a Python 3.6+ environment:
pip install remo
This will install both the Python library and the remo app.
- Initialise config:
python -m remo_app init
To launch Remo, run
python -m remo_app.
To call Remo from python once you have a server running, use
To read more about installation and other features, visit remo.ai
:tada: What's new
1-Sep-2020: Added tutorial on Remo for PyTorch Object Detection
:gift: What we are working on next
- Tighter integration with PyTorch
- Ability to split datasets in train vs test
- Ability to store and inspect models' performance in remo
:bug: Get in touch
If you have any issues around the library, feel free to open an issue in the repo.
For anything else, you can write on our discuss forum.
:raising_hand: For contributors
The library is organized in 3 main layers:
- domain objects, such as datasets
We exepect the end user to use mainly the SDK layer and domain objets.
API is responsible for low level communication with the server. It mostly returns raw data.
SDK doesn't access backend endpoints directly, rather it uses the
API layer for that. This layer knows about domain objects,
so instead of raw data, it returns domain objects.
Domain objects keeps entity information and knows about the
SDK layer. Most functions are simple short-hands for sdk methods.
This layer doesn't know anything about
Functions which are responsible to open the UI on a specific page use the
Functions which return always only one object, present the name of that object in singular form.
get_image(id) - returns one image
Functions which might return multiple objects use the plural form of that object
get_images() - may return multiple images