Currently undergoing or interested in an object recognition or computer vision project using deep learning, for example with YOLO? You might find yourself in a situation in which your data is too scarce or lacks diversity, be it in represented environments or lighting conditions. This might be due to a lack of funds, time, or gathering more images could simply be impossible. In any case, KIADAM might be the solution for you.
By pasting image of the objects you want to recognize onto backgrounds of your choice, and combining it with the latest data augmentation image processing techniques, it will allow you to massively improve the quantity, quality and diversity of your data and thus the quality of your predictions.
If you want to start generating your own datasets, we recommend you to follow our comprehensive tutorial down below.
Create a configuration
To get started head out to the tool page and log in. Click on configuration and then New. Choose a name and then click Create
Change the General Settings to your liking
You can then select your options, such as the number and size of the images that will be generated, how many suitcases will be in each image and what you Training / Testing / Validation split will be.
You can also set the size of your objects relative to the image and the % of images that will contain only the backgrounds and no objects.
Here is what our General Settings section looked like in this example.
Upload Images
Take photos of the object you want to recognize from every angle, more is better.
You can then upload these images in the next section, by clicking add Images and then the upload button. You can upload several images at once.
Crop your Images
Curious about what to do when a rectangular crop is not enough? Check out our blog post on the subject
It is then recommended to crop the images to have only the suitcase and not the background. Click on the crop icon
Select the suitcase
Then click "crop" and after "Upload Croppings".
Afterwards, you can delete the original image by clicking on the trashbin, as we will not need it in this example
Do this for every image. Then, click "go to labeling"
Label your Images
Here, type in the class to which the image belongs, in this case "suitcase". Do so for every image.
You can use the down arrow key to autocomplete the selection and go to the next image with enter.
Upload your Backgrounds
Learn more about how to choose your backgrounds here
We can then select the backgrounds. Try to use backgrounds that are representative of the environments the object you want to detect will be in. To simulate this, we used pictures of the apartment as background, which you can download here. The procedure to upload backgrounds is the same as earlier.
If you don't know for sure in which environments your object will be, we recommend you to use a varied collection of backgrounds to be prepared for every opportunity. We have prepared such a collection here
Choose your data augmentations techniques
Now for the final step, we can select the transformations that will be applied during generation. Try to pick transformations that will mimic the variations encountered in real life as closely as possible. This is a determining factor in the precision of the model.
You can apply transformations :
Only to the Object
Only to the Background
To both at the same time
Do no hesitate to try several combinations and see what sticks.
Here are the transformations we used in this case.
Start generating
All done ! You can now click "Go to Datasets, and then generate.