Deci-AI / super-gradients

Easily train or fine-tune SOTA computer vision models with one open source training library. The home of Yolo-NAS.
https://www.supergradients.com
Apache License 2.0
4.59k stars 510 forks source link

Is it possible to train from multiple data directory? #890

Closed hardikdava closed 1 year ago

hardikdava commented 1 year ago

Hello, i am curious for new yolo nas model. I am new to super gradient. Is it possible to train a model on custom dataset which are prepared in yolov5/8 format specially in multiple directories?

dagshub[bot] commented 1 year ago

Join the discussion on DagsHub!

Louis-Dupont commented 1 year ago

Hi @hardikdava!

When you say multiple directory, do you mean different for train/val and images/labels (which is the default yolov5/8 format) ?

        data_dir
        ├── train
        │   ├── images
        │   │      ├─ 0001.jpg
        │   │      ├─ 0002.jpg
        │   │      └─ ...
        │   └── labels
        │          ├─ 0001.txt
        │          ├─ 0002.txt
        │          └─ ...
        └── val
            ├── images
            │      ├─ 434343.jpg
            │      ├─ 434344.jpg
            │      └─ ...
            └── labels
                   ├─ 434343.txt
                   ├─ 434344.txt
                   └─ ...

We support this case and showcase how to do it in our demo notebooks.

Or do you mean something less common, where you would want to use images/labels from 2 different folders each (train_part_1/images + train_part_2/images), like in the following:

        data_dir
        ├── train_part_1
        │   ├── images
        │   │      ├─ 0001.jpg
        │   │      ├─ 0002.jpg
        │   │      └─ ...
        │   └── labels
        │          ├─ 0001.txt
        │          ├─ 0002.txt
        │          └─ ...
        └── train_part_2
            ├── images
            │      ├─ 434343.jpg
            │      ├─ 434344.jpg
            │      └─ ...
            └── labels
                   ├─ 434343.txt
                   ├─ 434344.txt
                   └─ ...

This case is not supported out of the box, but you can simply create a 3rd folder that would concatenate both into the same structure as the first case, and then use the code provided in our demo notebooks.

If it's something else, feel free to show the structure of the dataset you are talking about :)

hardikdava commented 1 year ago

Thank you for your reply @Louis-Dupont . I want to train as per second option (train_part_1/images + train_part_2/images). I will accumulate all the data then try to run it. But thank you for your reply again.