Skip to content

supervisely-ecosystem/roboflow-to-sly

Repository files navigation

Convert and copy multiple Roboflow projects into Supervisely at once

OverviewPreparationHow To Run

GitHub release (latest SemVer) views runs

Overview

This application allows you to copy multiple projects from Roboflow instance to Supervisely instance, you can select which projects should be copied, labels and tags will be converted automatically. You can preview the results in the table, which will show URLs to corresdponding projects in Roboflow and Supervisely.

Preparation

ℹ️ NOTE: Every project in Roboflow MUST contain at least one version, otherwise it's impossible to export data from Roboflow. Learn more about Versions in Roboflow documentation.

In order to run the app, you need to obtain Private API key to work with Roboflow API. You can refer to this documentation to do it.

The API key should looks like this: qASymt32UTnQV1qABszF

Now you have two options to use your API key: you can use team files to store an .env file with or you can enter the API key directly in the app GUI. Using team files is recommended as it is more convenient and faster, but you can choose the option that is more suitable for you.

Using team files

You can download an example of the .env file here and edit it without any additional software in any text editor.
NOTE: you need to unzip the file before using it.

  1. Create a .env file with the following content: ROBOFLOW_API_KEY="qASymt32UTnQV1qABszF"
  2. Upload the .env file to the team files.
  3. Right-click on the .env file, select Run app and choose the Roboflow to Supervisely Migration Tool app.

The app will be launched with the API key from the .env file and you won't need to enter it manually. If everything was done correctly, you will see the following message in the app UI:

  • ℹ️ Connection settings was loaded from .env file.
  • ✅ Successfully connected to https://api.roboflow.com.

Entering credentials manually

  1. Launch the app from the Ecosystem.
  2. Enter the API key.
  3. Press the Connect to Roboflow button.

credentials

If everything was done correctly, you will see the following message in the app UI:

  • ✅ Successfully connected to https://api.roboflow.com.

NOTE: The app will not save your API key, you will need to enter it every time you launch the app. To save your time you can use the team files to store your credentials.

How To Run

NOTE: In this section, we consider that you have already connected to Roboflow instance and have the necessary permissions to work with it. If you haven't done it yet, please refer to the Preparation section.
So, here is the step-by-step guide on how to use the app:

Step 1: Select projects to copy
After connecting to the Roboflow instance, list of the projects will be loaded into the widget automatically. You can select which projects you want to copy to Supervisely and then press the Select projects button.

select_projects

Step 2: Take a look on list of projects
After completing the Step 1️⃣, the application will retrieve information about the projects from roboflow API and show it in the table. Here you can find the links to the projects in Roboflow, and after copying the projects to Supervisely, links to the projects in Supervisely will be added to the table too.

projects_table

Step 3: Press the Copy button
Now you only need to press the Copy button and wait until the copying process is finished. You will see the statuses of the copying process for each project in the table. If any errors occur during the copying process, you will see the error status in the table. When the process is finished, you will see the total number of successfully copied projects and the total number of projects that failed to copy.

copy_projects

finished

The application will be stopped automatically after the copying process is finished.

ℹ️ The app supports following Roboflow project types:

  • Object Detection
  • Classification
  • Instance Segmentation

Acknowledgement