Project Overview
In the past, young painters learned the techniques and procedures of painting from
the masters, emulating the master’s imprint in the making of their works.
For example,
Michelangelo created the Sistine Chapel with the help of many assistants who were able
to respect his vision and imitate the brushstrokes as accurately as an algorithm.
In fact,
the artist decided to initalize the development of a software called “VASARI”: an artificial intelligence capable of emulating the compositional process that precedes
Alessandro Giannì’s paintings. The software is named after Giorgio Vasari (1511-1574), the
most important art historian of all time.
Vasari was born from Alessandro Giannì’s need to find an alternative to human logic
to conceive his works. The software was developed in 2020 by UNBOOLEAN (Cosimo Mollica and me), a creative team that moves on the border between art and
engineering and focuses its research in the relationship between new technologies and
languages of contemporary art.
Let's talk tech
That was the main user flow: Writing keywords in the web app and choosing some parameters, it would get images from Google Images regarding the keyword and elaborate them using an AI Model with images transformations.
The technical architecture was split into different and isolated entities, to allow a better divide and conquer strategy, thus reducing complexity.
I started with the easy win, the front end. With a React Application - probably I could even use a lighter framework - I started building the firsts input that would get the keywords and a way to retrieve the image from the backend when it was ready.
Then I proceeded to finish up the API made with FastAPI in Python so that I could ask for an image, this was also very simple.
Now I have good communication between the frontend and backend, and just need to build the core logic to scrape the web for images and to build this result with AI and OpenCV.
Analyzing the artist's details, I started making different Python functions for every image tool that I needed. With Canny's Algorithm, I was able to identify the border of the images, with OpenCV pre-set models, I could identify objects like legs, heads, and whatever was necessary.
Everything was then handed to the Weight-nodes AI that would unify the images and get an Artist's like painting as an output. The model was uploaded on TensorFlow.