seblful / label-studio-yolov8-backend

ML backend for the Label Studio tool. The backend uses the YOLOv8 model for instance image segmentation or object detection.
56 stars 16 forks source link
instance-segmentation label-studio ml-backend object-detection

YOLOv8 ML backend for the Label Studio

YOLOv8 interactive ML-assisted labeling, facilitating faster annotation for image detection, instance image segmentation.

Tested against Label Studio 1.13.1.

Project Structure

Setup process

Before you begin:

1. Install Label Studio

Launch Label Studio. You can follow the guide from the official documentation or use the following commands:

If you're using local file serving, be sure to get a copy of the API token from Label Studio to connect the model.

2. Create a Label Studio project

Create a new project.

In the project Settings set up the Labeling Interface for image detection (RectangleLabels) or image segmentation (PolygonLabels).

3. Install label-studio-yolov8-backend

Download the Label Studio YOLOv8 backend repository.

   git clone https://github.com/seblful/label-studio-yolov8-backend.git
   cd label-studio-yolov8-backend

Configure parameters in .env file:

   LABEL_STUDIO_URL=<IPv4 Address> (check your ipconfig)
   LABEL_STUDIO_API_KEY=<Label Studio API token>
   TASK_TYPE=<segmentation> or <detection>

4. Start the servers

   docker compose up

5. Upload tasks

Upload images directly to Label Studio using the Label Studio interface.

6. Add model in project settings

From the project settings, select the Model page and click Connect Model.

Add the URL http://locallhost:9090 and save the model as an ML backend.

7. Label in interactive mode

To use this functionality, activate Auto-Annotation for drawing boxes.

Training

Model training is not included in this project. This will probably be added later.

Contributing

Contributions to this project are welcome. To contribute, please submit an issue or pull request.