Chrysalis Cam – Using Open Source to Open Minds

The kids in Room 3 had a problem, all of the caterpillars that went into the pupa stage of their metamorphosis were emerging when the students were out of the classroom.

The solution was to setup a laptop with a web camera programmed to take a snapshot of a waiting chrysalis once every minute. These images were stitched together into a time-lapse which captured the butterfly emerging in this video.

Feel free to skip over rest of the content in this article as what is of interest will vary greatly between viewers – but I wanted to present the whole story in one location in case it is useful to others who are studying similar processes.

The Lesson

Before getting into the detail of the ‘how’ the project was done, it was fascinating to watch the kids go through the journey of:

  • Identifying the problem of missing the butterflies emerging
  • Strategising what they could do to overcome the issue
  • Discarding ideas which were unworkable
  • Agreeing on using the computer / webcam
  • Thinking about what other things time-lapse would be useful for

From this discussion, we got great buy-in to the idea of having the computer and camera taking photos and, (more importantly for a class of five years olds), the understanding that to make a good video at the end of the project, the equipment would need to be left alone.


The Video

The Images

Given the video quality, I’ve also pulled the more relevant snaps from the image stream which you can see below:

How it all came together

This may not be the most efficient way of doing things, but it used spare equipment and presented no cost (other than my time) – both of which are significant drivers when dealing with an overstretched, underfunded educational system.


  • Laptop (loaded with Ubuntu 10.10)
  • External Webcam with Tripod

Software & Scripts*:

  • Camorama (Webcam viewer)
  • A couple of BASH scripts
  • A couple of cron jobs to run the scripts at the right time.

On the notebook, ensure that the webcam, and video manipulation software is installed and configured to take a still image once every minute.

apt-get install camorama ffmpeg

Create script #1* to move these images into a date specific folder, and rename with a timestamp.

Create script #2* to rename all the files from the day into consecutively numbered images, then run ffmpeg to stitch the images together into your time-lapse video

Create two cron jobs, one to start the image rename script starting at midnight and the second to start the rename and stitch script

* Full details of the commands and scripts I used will be posted in a separate article which I will link to from here.

All in all, a lot of fun for a very small investment in time.



, , , ,