Release 1.0.2 available
Version 1.0.2 of the Scene application binaries and source code are available for download. This release includes a new Source menu that allows selecting a camera or a video file as input. Also available are 32 bit and 64 bit windows binaries and new VS 2010 projects. Depending on the computer resources, the image resolution, and the background model employed, the 64 bit application can show a significant increase in performance compared to the 32 bit version.
Thanks for the feedback from the people who are using Scene!
Scene is an open source multiplatform computer vision framework that performs background subtraction and object tracking using recently published algorithms based on neural networks and fuzzy classification rules. It was mainly designed as a toolkit for the rapid development of interactive art projects that explore dynamics of complex environments (for example public spaces).
This framework is developed by Laurence Bender at the Laboratorio de Arte Electrónico e Inteligencia Artificial of the Universidad Nacional de Tres de Febrero in Caseros, province of Buenos Aires, Argentina, as part of the Electronic Arts research program.
The Scene GUI is a standalone application with a simple user interface which implements the widespread TUIO protocol, originally designed by the reacTIVision project for transmitting the state of tangible objects and multi-touch events on a table surface.
For each detected foreground object, Scene sends a TUIO cursor message and a TUIO blob message to the client application. The cursor message carries the center of mass position, velocity and acceleration values. The blob message carries the bounding box position, size, velocity and acceleration values, and the area of the blob. Each blob is assigned a unique session ID, which allows the simultaneous identification and tracking of several objects.
The framework includes a set of client projects
for several programming languages, which serve as a starting point for
the development of interactive applications. They are basically extensions to the existing TUIO 1.0 clients that also handle TUIO blobs, and include a SceneBlob class that simplifies object tracking and analysis. Example clients
are available for the languages Java and Processing. See the downloads section.
The Scene application presently runs and compiles under the
Windows operating system, both 32 bit and 64 bit versions. Ports to Mac OS and Linux are
planned for the future. Under Windows it supports any capture source with
a proper WDM driver, such as USB, USB2, FireWire and DV cameras. The Scene 1.0.2 binaries download also includes a video file for testing the program (thanks Rui Penha).
Before starting the Scene application make sure you have a supported camera connected to your system, or an existing video defined in the XML Configuration file. When running, the application GUI shows three video windows: the source image, the background model image, and a binary image with the tracked object blobs.
A group of option buttons below the source video window indicate whether to draw the center of mass position, the blob bounding box and the blob session ID in the source and tracking video windows. Below the tracking video window there are two sliders that adjust the minimum and maximum areas of the detected blobs, relative to the video image size.
The Source menu allows the user to select a connected camera or a video file as the image input for Scene. When a camera is selected the item 'Camera Options' is enabled. Selecting this option, or pressing 'Ctrl-O', shows a system dialog that allows the adjustment of the available camera parameters.
The Model menu allows the user to select one of the five background models implemented at present. Pressing 'Ctrl-T' selects the training option, which sets the background model to the current source image. When a model is selected, its name and a group of sliders that allow the configuration of its parameters appear in the lower right quadrant of the GUI. A more detailed description of the models and their parameters can be found in the BG Models section.
In releases prior to Scene 1.0.2 the camera options can be modified by selecting
'Camera Options' in the File menu, or by pressing 'Ctrl-O'.
XML Configuration File
Common settings can be edited within the file "Scene.xml".
The <camera width="320" height="240" /> XML tag sets the image size of the captured video when using a camera as the input source.
As of Scene 1.0.2 the application allows video files as input sources. The XML tag <video file="myvideo.avi" /> defines the path to the file. In order to correctly reproduce videos, the necessary codecs must be previously installed in the system.
The Scene application usually sends the TUIO messages
to port 3333 on localhost (127.0.0.1). You can change this setting
by editing the XML tag <tuio host="127.0.0.1" port="3333">.
The remaining XML tags store program parameters that are set
in the Scene GUI. These tags are usually not edited by the user and
are automatically updated when closing the application or changing the
The source distribution includes a Visual Studio 2005 project as well as all the necessary libraries
and headers (wxWidgets, DirectShow). In addition, Scene 1.0.2 source code includes Visual Studio 2010 projects for the 32 bit and 64 bit applications. The projects should build
right away without any additional configuration. See the downloads section.
To the reacTIVision project for inspiration, great code, and help with the speech.
To the wxWidgets project for making multiplatform GUI development a breeze.
To the CCV project for their graphic interface design.
This program is free software; you can redistribute it and/or modify
This program is distributed in the hope that it will be useful,
You should have received a copy of the GNU General Public License