Python script to produce synthetic images for object detection training
Budget: €30 – €250 EUR
This project consist in the development of a python script to produce synthetic images for object
detection training from a list of input images.
The idea is produce multiple variations of the input images with the objects to train, with different
positions, rotations and scales.
We will have 3 folders with images as inputs:
• Backgrounds: Different images to be used as backgrounds for the synthetic images. JPG
format.
• Object to train: Different images of the object that we whant to detect using object
detection. PNG format with transparency.
• Filling: Different images that we will use to compose the synthetic images with objects that
we do not want to detect.
The output will be a folder with JPG synthetic images and a folder with PNG masks to train object detection.
Minimum parameters that should include the python script:
• bg: path to the bacgrounds folder.
• object: path to the Objects to train folder.
• filling: path to the filling folder.
• output: path to the folder where we will save the output synthetic images produced.
• masks: path to the folder where we will save the output masks produced.
• name: of the object.
• n: total number of synthetic images that we want to produce.
• minrotation: minimum rotation that we will apply to the input images. By default -180
degrees.
• maxrotation: maximum rotation that we will apply to the input images. By default 180
degrees.
• Flip: Allow to flip the input images. True or false (by default true).
• minscale: minimum scale that we will apply to the input images. By default 0.8.
• maxscale: maximum scale that we will apply to the input images. By default 1.2.
• h: help.
• minobjects: minimum number of objects to include in the synthetic images. By default 1.
• maxobjects: maximum number of objects to include in the synthetic images. By default 3.
• size: size in pixels of the output images. 500 by the default (that will correspond to 500x500
pixels).
detection training from a list of input images.
The idea is produce multiple variations of the input images with the objects to train, with different
positions, rotations and scales.
We will have 3 folders with images as inputs:
• Backgrounds: Different images to be used as backgrounds for the synthetic images. JPG
format.
• Object to train: Different images of the object that we whant to detect using object
detection. PNG format with transparency.
• Filling: Different images that we will use to compose the synthetic images with objects that
we do not want to detect.
The output will be a folder with JPG synthetic images and a folder with PNG masks to train object detection.
Minimum parameters that should include the python script:
• bg: path to the bacgrounds folder.
• object: path to the Objects to train folder.
• filling: path to the filling folder.
• output: path to the folder where we will save the output synthetic images produced.
• masks: path to the folder where we will save the output masks produced.
• name: of the object.
• n: total number of synthetic images that we want to produce.
• minrotation: minimum rotation that we will apply to the input images. By default -180
degrees.
• maxrotation: maximum rotation that we will apply to the input images. By default 180
degrees.
• Flip: Allow to flip the input images. True or false (by default true).
• minscale: minimum scale that we will apply to the input images. By default 0.8.
• maxscale: maximum scale that we will apply to the input images. By default 1.2.
• h: help.
• minobjects: minimum number of objects to include in the synthetic images. By default 1.
• maxobjects: maximum number of objects to include in the synthetic images. By default 3.
• size: size in pixels of the output images. 500 by the default (that will correspond to 500x500
pixels).