More selected projects

An Invitation To Share

An interactive program that allows the willing user a glimpse into normally unshared and unseen dance rehearsal notes and footage. 

Created in response to growing concerns in the digital dance community regarding dance artists unwillingness to share data from their pieces.

produced by: Amy Cartwright

This piece was created as a response to a discussion that arose at CDare’s Digital Echoes conference on 10th March.

Many of the dance artists in attendance expressed their desire to share data, however struggled with the implications of this. A major concern was that if they share data from their rehearsals or performances, there is nothing stopping someone from using it and interpreting it in a way that is very far from the original intention. Dance is difficult to copyright and even harder to claim ownership of. Both of these things create a desire for secrecy around the creative process and a lack of trust.

How then can we encourage this openness and trust within the dance world? This question leads me to think about the open source movement in software. The community trust and sharing that exists in this movement is something that we in the dance world can look towards as a model for our own needs. If this existed in dance more artists may be willing to share their data (which of course can be extended to rehearsal notes, video anything used in the creative process of for inspiration). Another important thing to note is willingness. The artists have to be willing to try, have to be willing to trust.

In this piece the user enters into the space in front of the screen and is faced with their own image. Nothing happens. If they persist and show curiosity and a willingness to discover they will start seeing snippets of rehearsal notes. Eventually they are able to wipe away their own image completely and see footage of rehearsals. This footage contains everything from very early movement creation to snippets of final rehearsals. All of the parts of the creative process that an audience are not usually invited to see.

The longer the user is willing to interact with the piece the more information they will receive. The catch is if the user wants to receive this information they must keep moving, for almost as soon as something is revealed to them it begins to fade away and be replaced once more by their own image. They are constantly in the way and must be willing to work hard to engage fully.

How does it work?

The program is written in OpenFrameworks and Arduino with OpenCV and DLib face tracker. It started with the Webcam Piano example from week 12 and also uses a function from the 05-Video-05-VideoCameraSynth example from Mastering Open Frameworks – Creative Coding Demystified Pg. 131 which I have adapted.

I added a Boolean to the DLib face tracker addon which allows me to track if a face is detected or not. When a face is detected this Boolean is set to true starting the program. A counter begins to increment and at a set time a serial message is sent to the Arduino IDE turning the lights on and the first function runs. This function uses pixel arrays to offset the colors of the film playing underneath along the x axis enabling you to see the faint outline of text. This continues for a set amount of time after which the second function is activated. The second function uses frame differencing to allow the user to wipe away their own image and see the film running below. When this function is activated the volume is turned on and the user can hear the track used in the performance as well as the conversation of the dancers in rehearsal.

So long as there is a face detected the program will continue to run. If a face is no longer detected the program will wait 3 seconds before the Boolean is set to false and it waits for a new user to re start it.

Future Possibilities

I did originally consider having the underlying film show lines of pure data from the rehearsals. The dancer’s movement data, rehearsal location etc. However, I did not have time to collate this information. This will be my next step. I would also eventually like to create a version of this program that loads the users real time data into the background and so when they wipe away their own image it is their movement data that they are presented with.

Ideally when this piece is exhibited it should be shown with large stage lights and a slightly more theatrical setup (see sketch below). This equipment was not available to me at this time but will be considered for future showings. 

Earlier Prototypes

Rough sketch of initial setup

20170412_182521 (1)20170412_182521 (1)


Testing out the DLib face tracker

Screen Shot 2017-04-12 at 21.01.30Screen Shot 2017-04-12 at 21.01.30


Set up for video demo

  • All footage comes from private rehearsals of a recent performance.
  • Mastering Open Frameworks: Creative Coding Demystified - Denis Perevalov