Skip to content

Ostrich: Review of Flash/ Motion Capture Cursor

September 30, 2009

Ostrich is a set of ActionScript classes made freely available by its creator Dan Zen at . It allows you to create a cursor in flash that you can move by moving in front of your webcam and much more. With the incorporation of Ostrich Buttons, it is possible to trigger Events when movement occurs on a button on screen.  Active areas and cursor sensitivity can also be altered along with a few of other others. My view of the ease of use is skewed by the fact that I am new to ActionScript, but I found after reading through some of the coding for the Ostrich classes (which is complex, but less complicated than you would imagine motion capture to be).

The performance of Ostrich was really cool, but at the same time, I had initially anticipated more from it before I got to use it. In a world with technologies that have been developed for year, I had thought that motion capture would be highly accurate and have a level of recognition and intelligence. It was definitely capable of recognizing motion, and I was able to move around the cursor in flash, but Ostrich was also easily confused. For example, imagine motioning when someone is moving around behind you, it will not differentiate your motions for things around you: if more than one motion is occurring, how will the cursor decide where to go? It kind of ends up in the middle.

Accuracy is kind of an issue too. I found it easier, the further away from the camera I was (therefore I was smaller on the screen). Trying to keep the rest of you body still helps too. It I was trying to focus in on a certain point, I would make a small motion with my hand, like making a motion that looked like imitating a birds beak (I believe that is how Ostrich got its name). I preferred to wiggle my finger a little to get more accuracy.

Knowing how Ostrich works helps you work with it. It starts off by blurring the webcam image and saturating the colours a bit; this improves performance. It then detects colour change between frames. Anywhere that the colour did not change appears black and anywhere the colour has changed (when something moves on the screen) it has a certain colour. Anywhere there is that colour, a rectangle is drawn around it. The cursor position is related to that rectangle. Is of course happens behind the scenes, all that will be seen of it is the cursor produced and a stream from your webcam. Ostrich Cursor takes it a step further; this is best illustrated with an example.

Imagine you are using Ostrich Cursor. You are moving your finger around to move the cursor in flash. What you may not realize is that when you move you finger, you usually move your arm a bit. The rectangle created from this motion will go around your arm too. Ostrich assumes this and uses it to its advantage. If you are in the center of the screen and point to it’s right side, your finger will be in the upper right section of the rectangle made. So ostrich will put the cursor at the top right corner of the rectangle. Similarly, pointing to the left side of the screen will make the cursor be in the top left corner of the rectangle. If you point in the middle, so does the cursor.

Overall, Ostrich offers a lot…for FREE! It’s worth a try, and if you get create, you can do some really cool stuff. I made a crane move around on my screen! check out my post on it. I think with some tweaking, Ostrich could take things even farther. I’ve been thinking of ideas, involving using a set colour to track and other things that are still a little advanced for me, but seem realistic. Another time..another time.

See the project I made with Ostrich:

Read about how I used Ostrich:

No comments yet

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: