Training deep neural networks with synthetic images
The present disclosure discloses a system and a method. The system and the method generate, via a deep neural network, a first synthetic image based on a simulated image, generate a segmentation mask based on the synthetic image, compare the segmentation mask with a ground truth mask of the synthetic image, update the deep neural network based on the comparison, and generate, via the updated deep neural network, a second synthetic image based on the simulated image.
1. A system comprising a computer including a processor and a memory, the memory including instructions such that the processor is programmed to:
generate, via a deep neural network, a first synthetic image based on a machine-generated simulated image;
generate a segmentation mask based on the synthetic image;
compare the segmentation mask with a ground truth mask of the synthetic image;
update the deep neural network based on the comparison; and
generate, via the updated deep neural network, a second synthetic image based on the simulated image.
2. The system of claim 1 , wherein the processor is further programmed to:
compare, via a Siamese neural network, the segmentation mask with the ground truth mask.
3. The system of claim 1 , wherein the simulated image depicts a plurality of objects.
4. The system of claim 3 , wherein the segmentation mask comprises a binary mask that classifies similar objects of the plurality objects as a single instance.
5. The system of claim 1 , wherein the simulated image is generated by a gaming engine.
6. The system of claim 1 , wherein the deep neural network comprises a deconvolutional neural network.
7. The system of claim 1 , wherein the processor is further programmed to:
determine a contrastive loss based on the comparison; and
update the deep neural network based on the contrastive loss.
8. The system of claim 1 , wherein the processor is further programmed to:
update at least one weight associated with a neuron of the deep neural network.
9. The system of claim 1 , wherein the processor is further programmed to:
evaluate the second synthetic image; and
generate a prediction indicative of whether the second synthetic image is machine-generated or is sourced from a real data distribution.
10. The system of claim 9 , wherein the processor is further programmed to:
generate feedback based on the prediction; and
update at least one weight associated with a neuron of the deep neural network when the prediction indicates that the second synthetic image is machine-generated.
11. The system of claim 9 , wherein the processor is further programmed to:
evaluate the second synthetic image via a convolutional neural network.
12. A method comprising:
generating, via a deep neural network, a first synthetic image based on a machine-generated simulated image;
generating a segmentation mask based on the synthetic image;
comparing the segmentation mask with a ground truth mask of the synthetic image;
updating the deep neural network based on the comparison; and
generating, via the updated deep neural network, a second synthetic image based on the simulated image.
13. The method of claim 12 , further comprising:
comparing, via a Siamese neural network, the segmentation mask with the ground truth mask.
14. The method of claim 12 , wherein the simulated image depicts a plurality of objects.
15. The method of claim 14 , wherein the segmentation mask comprises a binary mask that classifies similar objects of the plurality of objects as a single instance.
16. The method of claim 12 , wherein the simulated image is generated by a gaming engine.
17. The method of claim 12 , wherein the deep neural network comprises a deconvolutional neural network.
18. The method of claim 12 , further comprising:
determining a contrastive loss based on the comparison; and
updating the deep neural network based on the contrastive loss.
19. The method of claim 12 , further comprising:
updating at least one weight associated with a neuron of the deep neural network.
20. The method of claim 12 , further comprising:
evaluating the second synthetic image; and
generating a prediction indicative of whether the second synthetic image is machine-generated or is sourced from a real data distribution.