Category: Projects

Tetris wall

Dear wife,

I agree to have the decoration you want everywhere in our new home. You can have all the furniture and appliances you want in the kitchen. I’m OK if all the shelves with my computer books are in the basement. OK too if you don’t want to see the file server in the living room. Agreed: I’ll put back Windows on your laptop. But …

But I absolutely want one wall painted like these:

Tetris wall 1

Tetris wall 2

Jean-Etienne 😉

Photos found on (without original credit). Other walls with Tetris can be found on Flickr.

Evolution of H1N1

I needed some data to test the pChart charting library so I decided to use WHO data about swine flu (in its weekly updates). The only issue I had was that the WHO started to collect data by country and changed to gather data by regional offices from July 27th, 2009 onwards. So graphs below are only by regional offices.

Evolution of A/H1N1 cases -

Evolution of A/H1N1 deaths -

For your information:

  • AFRO: WHO Regional Office for Africa
  • AMRO: WHO Regional Office for the Americas
  • EMRO: WHO Regional Office for the Eastern Mediterranean
  • EURO: WHO Regional Office for Europe
  • SEARO: WHO Regional Office for South-East Asia
  • WPRO: WHO Regional Office for the Western Pacific

I didn’t really see such graph on the web but there is the excellent FluTracker by Dr. Niman and a lot of information about the swine flu on Wikipedia. If you want to start interpreting these curves, you might be interested in reading squareCircleZ’s post about the H1N1 and the Logistic Equation.

A new home for IPGphor2reader

IPGphor2reader is a software meant to parse log (text) files resulting from an experiment with the IPGPhor and to plot graphs. I previously hosted it on my personal website and just moved it to Sourceforge, here. Amongst the various reasons for this move, I wanted the possibility for anyone to participate in the project and no hassle to manage this.

Slowly, slowly, most software on my website will be hosted on Sourceforge or

P.S. Obviously I chose the time where they are in the middle of a large scale site changes and upgrades so nothing is available for now (except the screenshot).

FOSDEM 2009 and Gemvid 0.6c

This year, I only went for the Saturday afternoon session of FOSDEM 2009, the Free and Open Source software developers’ European Meeting. Two years ago, I mentioned the general trend that more women were interested in free/open source software/movement and this trend continues. But this time, I also noticed some really cute babies … and my son Neel-Alexandre was one of them of course! Although he’s only 7-month-old, he was really interested in the FreeBSD, Linux and Firefox mascots (respectively a red daemon, Tux the penguin and a fox). You are never too young to taste the truth 😉

I also gave a lightning talk about Gemvid, my solution to monitor rats general activity. I tried to explain most biological information needed to understand the principles and I think people were really interested in this software, something with an application a bit different than the previous talks. I updated the Gemvid website and I uploaded the latest revision (0.6c) that was “analysing” the audience from my laptop during the talk. Finally, I also uploaded the presentation (PDF, 1.3Mb) and you can directly see it below.

See you next year, for the next version?

Baby movements during sleep

After a while, here is why I got a TV tuner for my Linux laptop, took screen captures and wrote a script to add a timestamp on pictures … I wanted to know how my (then 5-month-old) son was sleeping (his mom can be reassured: I was not planning to put electrodes on his scalp 😉 ).

Get the Flash Player to see this player.

var s1 = new SWFObject(“../videos/player.swf”,”ply”,”360″,”240″,”9″,”#FFFFFF”);

Following this, I had interesting discussions with my dad about sleep patterns in babies. It could also be interesting to hybridize what we did for Gemvid and this simple solution in order to be able to quantify human/baby movements during sleep. My little knowledge of OpenCV can then come in handy for the motion and pattern detection …

Some additional technical details : Video was made from 321 TV screen captures (1 every 2 minutes) and played back at 1 frame per second. It was converted with FFmpeg (LGPL) and the Flash player is JW FLV Media Player (CC by-nc-sa). Ok: Flash is not free.

Short script to add a timestamp on pictures

Here is a short script (1.6kb) to add a timestamp on all PNG pictures in a directory. It requires Python and the Python Image Library (PIL). In order to use it, modify some parameters in the beginning to suit your needs (images directory, font file and size, etc.) and launch ./ Here is a before/after example (size of pictures is reduced to fit in this blog):

Before/after example of adding a timestamp to a picture

Note 1: the font is not included in the script. Here, I used FreeSans which is a true free font (GNU GPL with font exception). It is available here (local copy, just the FreeSans font, 753kb).

Note 2: I chose to convert PNG images to JPG ones for 2 reasons. First, my capture script gives me PNG images (see previous posts). Second, I want to be able to copy all JPG pictures in a MJPEG movie. It shouldn’t be difficult to change the different file formats to suit your needs (ask me if you can’t do that).

Note 3: I guess this would also have been possible using a bash script and imagemagick, Perl or any other programming language 😉