Just when you thought Kinect had the body tracking problem all sewn up, another approach promises to be cheaper and implementable using nothing but software and standard video cameras. The good news is that the software is open source, download-able and ready to go.

Predator is based on a machine learning algorithm and can track almost any object the user cares to select. All you have to do is provide an initial bounding box that includes the object to be tracked and the system then builds a model of what it looks like. The model is used to track the object as it changes its angle to the camera. Even if it leaves the frame and re-enters it at a new angle the software can detect it and track it again.

The algorithm and program are the creation of Zdenek Kalal as part of his PhD project. The software has now been released under a GPL open source licence. The Predator program is an implementation of the TDL algorithm which operates in real time but doesn't make use of a GPU or any special hardware to speed it up. The code is in C and based on MatLab. It also uses a single function from the OpenCV library and runs on Windows, Mac and Linux.

The really astonishing part is that the algorithm needs no training period. You show it the object you want to track and it learns what the object looks like as it performs the tracking.

You can see the algorithm in action in the video below and you have to agree that it is impressive.

What could the software be used for? Just think of the sort of applications the Kinect has been put to and now think that you can do more or less the same thing but without special hardware. There are also applications that it can be put to such as face tracking and face recognition that the Kinect's special hardware isn't good at. It is true that it isn't a complete body tracker, but extending it do this shouldn't be difficult.

There are, of course possible uses in security monitoring, robots, self-driving vehicles and .... well you finish the list! This is what AI is all about!

The story of pointer events and its API is a complicated and divisive one, but now that it is effectively a W3C standard browser makers should start to support it. The problem is that Apple won't and [ ... ]