Generating Diverse and Realistic Datasets for Computer Vision Training