© 2021 Strange Loop
Picasso's The Bull is a series of eleven prints showing his process of abstraction, step by step. Starting with a realistic image, he progressively deconstructs and compresses the bull into an abstract geometric form. Artists, mathematicians, and software developers alike have been captivated by Picasso's creative process.
How could we teach a computer to imitate this style? With neural style transfer? That method transfers color and texture, but preserves geometry, so it works better with Van Gogh's Starry Night than Picasso's Bulls. Picasso explained, "A picture used to be a sum of additions. In my case a picture is a sum of destructions."
We can approximate Picasso's "destructions" with a series of geometric transformations and image processing functions. We'll explore these techniques with Python code, using libraries like OpenCV, for open source computer vision.
We'll learn about the underlying mathematics, not through formulas in research papers and textbooks, but with code and visuals, in Jupyter Notebook. Jupyter enables us to experiment with interactive, animated output, and show our work step by step like Picasso.
We'll apply our transformations to generate new art inspired by Picasso's Bulls. The results will be far from perfect, but the mistakes are interesting!
Ryan aspires to be a Banjo Data Scientist: better at banjo than statisticians and software engineers, and better at stats and software than banjo players. He believes the way to be at the top of your field is to choose a very small field. His favorite software methodology is JDD (Joke-Driven Development). Ever since he first programmed LOGO turtles on an Apple IIe, he's loved mixing code, math, and art in interactive environments.