In plain words: They gathered over 600,000 web logos and trained an image generator that competes against a checker, adding labels from grouping similar images so it doesn't just churn out the same design. It produced varied, believable logos and set top image-quality scores on a standard test set.
Abstract
Designing a logo for a new brand is a lengthy and tedious back-and-forth process between a designer and a client. In this paper we explore to what extent machine learning can solve the creative task of the designer. For this, we build a dataset -- LLD -- of 600k+ logos crawled from the world wide web. Training Generative Adversarial Networks (GANs) for logo synthesis on such multi-modal data is not straightforward and results in mode collapse for some state-of-the-art methods. We propose the use of synthetic labels obtained through clustering to disentangle and stabilize GAN training. We are able to generate a high diversity of plausible logos and we demonstrate latent space exploration techniques to ease the logo design task in an interactive manner. Moreover, we validate the proposed clustered GAN training on CIFAR 10, achieving state-of-the-art Inception scores when using synthetic labels obtained via clustering the features of an ImageNet classifier. GANs can cope with multi-modal data by means of synthetic labels achieved through clustering, and our results show the creative potential of such techniques for logo synthesis and manipulation. Our dataset and models will be made publicly available at https://data.vision.ee.ethz.ch/cvl/lld/.
Alexander Sage, Eirikur Agustsson, Radu Timofte, Luc Van Gool
arXiv:1712.04407 · cs.CV, cs.LG, stat.ML · submitted Dec 12, 2017
abstract · pdf · html
Has anybody ever tried to use features of the logos (number of shapes, shape size, position, color, curvature, shape parents/children, etc.) instead of raw pixel data to train GANs?
Here comes the shameless plug :
ImageTracer is a simple raster image tracer and vectorizer that outputs SVG, 100% free, Public Domain.
Available in JavaScript (works both in the browser and with Node.js), "desktop" Java and "Android" Java:
https://github.com/jankovicsandras/imagetracerjs
https://github.com/jankovicsandras/imagetracerjava
https://github.com/jankovicsandras/imagetracerandroid