Weird chain of coincidences

Posted: November 6, 2011 in Music

Here’s a weird coincidence: earlier roday I recalled a magician act from the 1980s. Some guy dressed in futuristic gear basically waving a false leg behind a sheet to the Peter Gunn tune. This passed as entertainment for an eight year old in the 80s. I thoght I would look him up online later but forgot.

Instead I started looking through an audio library and found a jazz violin piece in a 1930s dance hall style. It reminded me of the Jeeves and Wooster music. I remembered that the theme was written by Ann Dudley of Art of Noise fame, so I looked her up on Wikipedia. Then I saw that Art of Noise did a cover of Peter Gunn.

Searched to find that their cover of Peter Gunn was performed to by a magician called Rudy Coby. Ooooh…spooky.

The Jeeves and Wooster theme is pure awesome:

As is Anne Dudley and Art of Noise:

However, Rudy Coby was best left to memory:

…and shooting some Bieber outside of the school. The cops caught me, and this explains my recent absence from the world of blogging.

Actually, I took a little break because my inspiration had just about dried up. Working 70-hour weeks for three years does that to ya.

But I’m back, and I’ll keep posting about cool stuff that I make and do. Here’s one such thing:

This shows a comparison between two normalised sequences. The straighter and more diagonal the line, the closer the match. Dotted lines show periodic samples of time warping (note irregular spacing shows that warping has occurred in one direction or another). The difficulty here is making this understandable to a broad audience.

And another:

Here’s another sequence comparison, visualised differently. This time the graphs are overlaid (albeit offset) and time warping events are shown by the orange dots. If you can imagine a perfect match between two sequences, there would be no time warping and thus the orange lines would all be vertical. Add the overall ‘lengths’ of the orange lines and you get the 100% match ‘cost’. Now consider the above graph. The sum lengths of the orange lines indicate the ‘cost’ of the transformation. When comparing multiple queries against a single reference, the shortest ‘distance’ is the best match. Hey presto! Gesture recognition!

DTW graphing

Posted: September 4, 2011 in Dissertation, Kinect
Tags: , ,

I have made good progress in writing up some of the more mathematical aspects of my project. I’m having difficulty knowing at which level to pitch the work. I have to assume a reasonable mathematical understanding otherwise I’ll just burn up my word count describing simple principles. However, if I pitch it too highly then I could miss marks for not being explanatory enough. I’ll talk about this with my supervisor. After all, she’ll be marking the work, so it’s best to ask what she would like to see.

Needless to say, there will be lots of graphs. I’m trying to work out a good way of displaying multi-variate dataset comparisons on one graph. DTW works equally well with flat arrays or 2D arrays of data. This project uses 2D arrays because, firstly, we’re dealing with co-ordinates (i.e. data pairs, so I’m forces to use multi-variate data) but also because I’m tracking six joints, so I have 12 pieces of data per time frame.

I think I’ll show an aggregated view like this, but properly labelled. I’ll then extract a few individual columns and use a three-way plot of some description to show slopes, lines of least cost etc for several sequences (i.e. similar, dissimilar etc.).

It’s too late for this. The graph looks wrong somehow but I can’t see why. I’ll work it out tomorrow.

It’s three days since I somehow managed to get my KinectDTW project onto the SlashDot front page, and I’m still trying to get my head around the response. 220 release downloads and 60 grabbed the source from the repo. Ok, so far from Earth-shattering figures, but I think it shows healthy enthusiasm for what I’m trying to achieve here. That is to say I wanted to give people a tool to get them started with making their own Kinect-based gesture control systems.

I’ve had lots of feedback to, almost universally positive. And any detractors just don’t like Microsoft or the Kinect, nothing bad about the KinectDTW project itself. So the next challenge must be to become established in the community, rather than just a novelty factor. I’ve no idea how to do this, but I’ll work something out. A few well-placed links will be a good start, but then I will need to follow this up with improving the system, perhaps making it open-standards, and definitely by responding to feedback.

So if you’re yet to see it, check out It’s far from perfect, but that’s kind of the point: I’d love the community to pick this up and roll with it.

This evening I finally published the gesture recording and recognition project I’ve been working on. With the help of the Kinect community, especially a member who goes by the name of Rhemyst, we have produced a library which introduces developers to vector-based gesture recognition.

May of the approaches I’ve seen elsewhere use specific positional tracking to recognising gestures – i.e. tracking a hand and matching its movement profile against a series of coordinates or something. This is great, of course, and can actually offer very good recognition. But the Dynamic Time Warping approach is more flexible in that it can be very easily programmed by a novice. It’s great for rapid prototying and, with the help of the community, I hope this can grow into a production-capable recognition engine. It’s not quite there yet, though…

So what are you waiting for? Grab a copy of the first release of KinectDTW from Codeplex now!

Please share your recorded gestures and recognition parameters with the community so that we can all learn and benefit from your experience!


Another little piece of the jigsaw: controlling a WPF ScrollViewer (with added animated easing wizardry) using swipe gestures. Freakin’ yah!

Dear Scottish Power

Posted: July 22, 2011 in Uncategorized

Mr Steven Arnott
My freakin’ address
I’m not gonna show you this
Go away, internet

Account Number: 1234 5678 000
22 July 2011

Scottish Power
Freakin’ Solid Gold Towers or something
Somewhere in Scotland

Dear Scottish Power,
Thank you for your letter dated 18 July 2011 claiming that my account is in debit of £201.15 and that you require immediate payment. I am no longer a customer of Scottish Power, having closed my account in June 2011, so I am confused as to how additional charges can have been accrued since I stopped using your service.

On 25 June 2011 you sent me a settlement cheque of £199.58, which I duly banked, bringing my account balance to £0. However, on 12 July 2011 you sent me an ‘amended gas statement’ requesting that I pay an additional £78.60. Unfortunately (or perhaps fortunately) I had also ‘amended’ my Direct Debit to you by this time, i.e. cancelled it. Ok, so the previous balance was calculated with estimated usage figures, so I can accept that my actual usage may differ, so I will gladly pay this. Well, not gladly, but in good honour, you understand.

But £201.15? Where did this figure come from? Your strongly-worded and slightly threatening letter (18 July) gives no breakdown of how this figure was reached, and I am not inclined to pay it unless I am utterly convinced that I owe you this money. How did I come to use £122.55 of gas/electricity after I closed my account with you? Was it the magic pixies again? I don’t like magic. I admit that I watched the Harry Potter movies, but under duress, and mainly so I could keep an eye on how Hermione was coming along.

Do you have any idea what I could do with £122.55 (don’t reach for the calculator – this is the difference between the £78.60 that I owe you and the £201.15 that you are claiming)? I could, oh, I don’t know, feed the mouths of my starving children. Or buy a puffin. A PUFFIN. How cool would that be? I would be the envy of my lowly guillemot-owning friends.

I look forward to your equally sarcastic response.

Kind regards,

Steve Arnott

F:\My Dropbox\Scottish Power\Cram it up your arse, Scottish Power.docx