The piece allows the viewer and the machine to enter a visual dialog through the language of closed loop doodles. It captures the interactive spirit of cybernetic in a modern framework and combines beautiful ideas from math and generative coding with technologies, such as high performance computing and Artificial intelligence.
🧠 → Live demo ← 🤖
Creative AI Symposium @ Hula Slides
In 1953 Gordon Pask, built the first “Musicolour” system, a sound-actuated interactive light show. Musicolour was designed to cooperate with human performers, rather than autonomously generate “aesthetically valuable output”.
There was no fixed mappings between sounds and lights: these were developed through the interaction of the musicians with Musicolour. There is reciprocal feedback between Musicolour and the performers: “The machine is designed to entrain the performer and to couple him into the system”.
The same concepts are present in this piece and presented in a more modern setting, generating shapes from positions, rather than light from sound.
Not everyone is born with incredible drawing skills but everyone at one point or another has let their mind wander while doodling on a piece of paper. How can we allow a person and a machine to interact in this simple yet fun creative effort?
Can we find a generative mechanism to explore the vast space of doodles? An unexpected ally can be found in the Inverse Fourier Transform. This beautiful mathematical procedure and a pillar of modern engineering, allows us to turn a signal that varies in frequency into into one that varies in space.
Starting with a series of frequencies we can synthesize a 2D shape out of it. All we have to do is to generate a series of random circles spinning at different speeds and connect them to form an intricate spirograph. We can see an example of this procedure in the following sketch.
https://editor.p5js.org/Lapo/full/fyYLRLmsu
If speeds are chosen such that each circle completes a full turn at the same time, the arm is going to be in the same position it started from, thus closing our little doodle.
Each of the N circles is described by a speed, size and direction of rotation (3 numbers) which means that each doodle is described by 3N numbers which we can sample at random from any desired distribution.
While it can be fun to just relax and follow the tireless work of this little doodle maker, wouldn’t it be even more fun to take part in this exploration?
Let’s add some controls to this little machine.
How can we naturally and effectively interact with this machine? Our hands have several joints (large space of possible configurations) and are quite skilled (usually) at fine and precise movements.
Luckily, nowadays AI is well within the reach of everyone. For our project we can use Google’s ML solution Mediapipe to access computer vision from our browser. This allows us to leverage the interactive nature of the browser through creative coding libraries such as the awesome p5.js .
To allow the viewer to interact with the sketch we use Mediapipe’s Hand detection model