science hack day

Last weekend I took part in the first Dutch Science Hack Day in Eindhoven. I had posted my idea on the forum and was hoping for a nice group of experts to work with. The idea was to create a mood enhancer. When you’re sad it could help you be become happy again. When your happy you could help others who are sad to improve their mood or support them. It will consist of a) mood detection, b) mood changing, c) mood sharing.

On the forum one participant, Siddhesh (PhD student TU/e), had already expressed his interest. After I’d introduced my idea I was joined by Leonid and Huang-Ming both students at industrial design at the TU/e and Ketan also a PhD student at the TU/e. We were later joined by Iwan an interior architect. So we had a nice mixed group from different countries.

I was pleasantly surprised at how swiftly we decided on the use case and technologies to be used. Everybody was very eager to start to work and do so in their field of expertise. We decide to use two hardware sensors (heart-rate and skin conductance) to provide the level of arousal and one on-line software sensor, face.com, that uses portraits to classify moods. The heart-rate sensor was already finished because we could reuse it from another project by Leonid and Huang-Ming but there was still a lot of work to be done.

For output we wanted to do something with light and sound as they are the least obtrusive when you’re working. We wanted to work with a physical object to display the mood and also enhance it and to use Twitter to share moods. We had difficulty to decide if the visualisation should just be personal feedback or should also display a friends’ status. As time was limited we decided on just feedback. The application moved from enhancement to awareness of moods which was enough for just one weekend.

I took on the task of implementing the valance through the face.com API. It would all have to be done in 24 hours so that was pretty challenging. Registering at face.com was easy. The API was pretty straight forward and only later I discovered the it could not just detect smiling or not smiling but a whole set of moods: happy/sad/angry/surprised/neutral value and confidence, based on the expression of the person in the the photo. There’s was also a lot of other info to be gotten from the image using the faces.detect method, the accuracy of the results was surprising, even under less favourable light circumstances. The main hurdle was uploading an image for face.com and keeping it in sync with the rest of the application. In the end we used the local Dropbox folder to store the web cam captures and letting Dropbox sync with the web version, the URL and file name are used in the face.com request.

The others worked on building the Galvanic Skin Response sensor, the lamp object and the integration of the heart-rate sensor and software for the new purpose.

We used Processing as the main language to read the values from the sensors, connect to the web and drive the output. The sensors write their current values to a file separate and one script reads all the sensor input to generate a visual output, change the colour and position of the lamp and change the sound.

The main application shows a changing, interactive landscape of lines and circles. The   amount of arousal the corresponding valence determine:

  • The position and colour of the circle. When you click on a circle the web cam image and heart-rate value is shown, allowing you to trace back how you felt during the day.
  • The position of and colour of the light object
  • The sound being played

Iwan made a nice presentation and we were finished just in time. The presentation went well and the jury picked our design as the best in Overall happy living category! That was just the icing on the cake of great and inspiring weekend.

Science Hack Day Eindhoven 2012 winners compilation from M.A.D. ART on Vimeo.

Being one of the winners we also presented at the Internet of Things event at the High Tech campus in Eindhoven.

MADlab kindly supplied me with an artist residency to cover expenses.

yesterday

I’m being challenged at the moment. Yesterday (and a little earlier) I noticed that my heart-rate belt was having problems. So I reckoned it was a good idea to replace the battery. After I’d replaced it the watch couldn’t find the belt anymore. So I couldn’t do any measuring of the heart-rate. So today, as soon as the shop opened (which unluckily was not until 13.00 hours) I went to a Runnersworld shop to see if they could help me. The guy was very patient and tried out all kinds of things in a methodical way. But in the end we had to concluded that the belt was broken. I had to buy a new one. It’s my third belt in seven months! That’s really bad considering the watch and belt cost me 400+ euros… But of course I feared most for my project so I spend another 80 euros on a new belt but at least now the project is running again.

Which, I must say, is becoming a bit of a burden. I moved to another house. It’s so noisy! I woke up from the neighbours walking around at 5 am. Everything they do makes a hell of a noise. It’s almost as if they’re in my house. In the new house there were no plates, no knives and no matches. It’s difficult to cook when there’s no fire… The evening shop was open so I could buy matches and I got the knives and plates from the other houses. But it’s a draggggggggggg… It seems that everything that can go wrong goes wrong.

And I just miss Internet so much. I’m here at a friends studio to post to my blog (by the way the last time I worked on that blog my IP address was blocked by the server so I couldn’t work on any of my sites) and now there is a ‘limited connection’ == no connection. And that’s another of the many things that go wrong with this project. I hope this isn’t a foreboding of the new year because then this year will be hell.

I’ve also discovered I’m not too keen on Amsterdam. Or maybe I just don’t like big cities. I wanted to go for a walk last night but I just couldn’t go anywhere. It’s all bricks and concrete. Or it to scary to walk alone at night. I did go out because for a second I thought I was going crazy. I bought myself a beer on way back.
The new house I’m staying in is designed like a little museum. It has all kind of stuff from the ‘Northeners’. It’s cute and it’s more luxurious then the nature theme house I was earlier but it’s very present. It takes up a lot of space and attention and that’s hard when there’s so much work to do.

Well, that’s about it, hopefully next post will be more cheerful.

Power cut

As I was collecting the data this morning (it’s Christmas) there was a power cut. It was in a large part of the estate and may be a large part of town. I rang the alarm number and they said the cut would last till 1 pm… Luckily the batteries of my laptop were charged so I could upload the pictures and GPS log. Cool stuff, batteries :)

Last night was the first night to try out the electrode gel. It worked like a charm! The belt felt very solid around my chest so I didn’t use the medical tape. That was very nice for my skin. The gel itself is neutral and doesn’t give me any skin problems. So for the first time I recorded a whole night.

Eureka!

Right, I’ve just discovered how the gaps in the picture series appear. When there’s not enough light to take a picture the camera makes a long low beep. I thought that was just a warning but now I’ve discovered that it just fails to take a picture. So for yesterday I managed to complete the series without gaps. The only problem there was yesterday was the Suunto watch. It didn’t find the heart-rate belt because the batteries were low. I tried to replace them but couldn’t. I had to go back to the shop to have it fixed. So I only could start measuring at 10 o’clock. That was a bit of a shame.

Kinky looking electrode gel

Kinky looking electrode gel

From the user group I got a reply for my questions on how to continue measuring the heart-rate during the night. I have to use electrode gel. I ordered it Monday and it arrived today. It looks funny. Unfortunately it’s only for two nights in Breda. I hope it works. Tonight I only measured till 0.30… It will be for Amsterdam as well when it works. A problem is that I will have different durations in measurement time. I hadn’t thought about that. I will have to find a programmatic solution for that. As I want to compare the rates at the same time in different places.

Animated

Yesterday I continued working on the heart-beat graph. I’ve managed to animate it. The speed of the animations varies with your cursor position. The speed ranges from 1000 milliseconds to 1 millisecond. When the animation goes faster the string of dots seems to be alive, like some snake like creature. Fascinating to watch.

The dots are 15 pixels apart. For my test file with 20 hours of data the heart-beat graph has a width of 107374 pixels! Flash is pretty powerful to caculate this image in less than a second, amazing.

As for the data collection. I’ve slept a night with the belt fastened by broad strips of medical tape. It worked till 7 am, which is an improvement but still not perfect. I’ve posted the question at a user group and hope to get some tips for improving this.

ps. My lowest heart-rate was 34 bpm this night! The lowest I ever measured.