This page contains a Linux source tarball for a simple Gtk-based computer vision app: my wife is doing an art installation which requires objects to react to viewer presence, so I'm whomping up an app to do the job. In the spirit of "release early, release often", and in the hope that it might be useful/interesting to others, I'm releasing early development versions as I go along.
At the moment, the app is essentially just a Gtk wrapper around the "blobtracker" demo that comes with the "OpenCV" computer vision library donated to the open source world by Intel; the GUI lets one interactively try different pipeline processing modules and fiddle with their parameters.
Suggestions and comments welcome -- cynbe (at) cynbe (dot) us.
The blob tracker algorithm is designed to detect and track moving blobs in the field of view. The algorithm used is conceptually simple; in essence it:
Draws these ellipses in green by way of illustrating what the program thinks it is "seeing" in the scene. (Except that if it is configured to disciminated "anomalous" from "normal" blob motions, it draws the "anomalous" ellipses in red.)
This approach is simple, but can be sufficient to track moving hands or walking people in simple cases.
Hint: The current algorithm seems to actually work better at low camera resolution (160x120) than medium (320x240) or high (640x480): Not only can it process more frames per second, but hands and faces and such tend to come out as single blobs rather than breaking into multiple blobs. If you're using a Phillips webcam, you can use 'setpwc' to set resolution and frame rate.
Tarball download: Vision Apps
2009-06-24 note: The above tarball was written and tested against opencv-1.0.0. I have been told that it has some compile/link errors against opencv-1.1pre1. I will be releasing a totally rewritten and much expanded version of the app by the end of summer. (Currently it has some coredump issues, and I do not release code known to coredump.) In the meantime, please bear with me. You may see the new code in action at Sandy's Fan Club -- Cynbe
You may subscribe to the mailing list via the web interface.
Linux video resources
Selected computer vision papers.
Other open source computer vision apps.