Monday, March 29, 2010

ViBe Background Extraction

Researchers at the University of Liege in Belgium have made a breakthrough in machine vision.  Background extraction is the separation of a "normal" background image from more interesting "new" pixels such as moving objects.

This new algorithm is very high performance and computationally efficient.  Unfortunately, it's completely patented, but a demo video and a paper describing the method are linked below.

O. Barnich and M. Van Droogenbroeck. ViBe: a powerful random technique to estimate the background in video sequences. In International Conference on Acoustics, Speech, and Signal Processing (ICASSP 2009), pages 945-948, April 2009. Available as a IEEE publication or on the University site.

Thursday, March 25, 2010

Inventor and 3D Printing Demo

Here's a time-lapse video I made demonstrating the Autodesk Inventor interface and 3D printing.  The model I'm making is a simple robot hand finger tip.  The total time, from conception to physical model, is about an hour.

Wednesday, March 24, 2010

RBT173 - Simple Simon Game

Here is another lab demonstration from some of my students in RBT173 - "Introduction to Micro-controllers."

The goal of the laboratory was to construct and program a simple breadboard "Simon" style game.  Some of the challenges of this lab were construction of input and output circuits, and generating a random sequence of light blinks.  The most challenging part of this lab for most students was recognizing user input and determining whether it matched the generated quiz sequence.

A hundred tiny feet...

This might be an awesome project for next semester's Mechatronics students.

The legs are based on Theo Jansen's designs.  You can get a good idea of how they work through this Actionscript Physics Engine simulation. My favorite "Strandbeest" is the Animaris Rhinoceros:

Saturday, March 13, 2010

64 Pixel Mario

Super Mario Bros on an 8x8 LED matrix from Chloe Fan on Vimeo.

Chloe Fan has blown our minds by showing that you only need 64 pixels to have a little fun with Super Mario Bros.
Via Make.

Wednesday, March 10, 2010

Kiva Robotics' Nutcracker

Cardboard Phone Robots

It's not word soup, it's an article at Wired.
 This is the kind of thing that I'd like to see students produce in the Physical Computing Studio (RBT307) course next semester.  Quick, dirty robots held together by hot glue and electrical tape.  The idea is that once we strip away the requirement of long-term durability, we can move quickly through design iterations, and learn a great deal about functional, physical design and manufacturing methods.

Iron Man 2

I. can. not. wait.

Tuesday, March 9, 2010

Old School Robotics

When I was growing up, I was destined to be an engineer.  I would go to the library and check out every book I could on robots - big picture books of robots, children's books on robots, even some academic books that I couldn't really understand as a child, but the diagrams and illustrations captivated me.  I was enchanted by the idea of building my own machine. 
Make has a short article on one of my favorites, and I'm now destined to spend the rest of my evening perusing the Old Robots website.

Monday, March 8, 2010

M3: Neony & Synchy

Baby Robots!

I'm 100% certain these will grow up to kill us all.

USB Oscilloscope on the cheap

Build your own tools!
This ATiny45-based dual channel oscilloscope is home-made, cheap and simple.  It doesn't capture at high sample rates, but it's neat nonetheless.

Design, source code and interface code available here.

Friday, March 5, 2010

Towards Smart Dust

A 9-cubic millimeter solar-powered sensor system developed at the University of Michigan is the smallest that can harvest energy from its surroundings to operate nearly perpetually. The U-M system’s processor, solar cells, and battery are all contained in its tiny frame, which measures 2.5 by 3.5 by 1 millimeters. It is 1,000 times smaller than comparable commercial counterparts.

RBT173 - Larsen Scanner

Here is a short video of some of my freshman students completed lab assignments.

This is an early laboratory assignment in a freshman-level course. The assignment takes the place of the typical "Hello World" blinking light program for micro-controllers. The course is RBT173: Introduction to Microcontrollers. We're using hand-built Arduino-compatible micro-controller boards and exploring all of their ins and outs with a series of weekly hardware / software labs culminating in the construction of a small mobile robot based on the board.

For more information, visit .

Gaagle Bot Indexes Your Home

A roomba-based manifestation of the Google search crawler.

Check it out with hardware details and source code at

Wednesday, March 3, 2010

Kohctpyktop: A logic design challenge

Feeling nostalgic for those frantic days in the digital design lab? Wish there were perhaps a game that put you in the place of an engineer, trying to design new ICs to meet the goals of some unspecified organization? Want to get your SI on? No idea what I am talking about?
Well then, let me introduce you to Kohctpyktop: engineer of the people, by Zachtronics Industries. It's the first game I've ever seen where you have to design integrated circuits as a challenge, sort of like pipe dream for electrical engineers.
Kohctpyktop via Make

OK GO - This too shall pass

Rocks my socks.

Monday, March 1, 2010

Expressive Telepresence with MIT's MeBot

A totally sweet little robot from Sigurdur Orn Adalgeirsson at MIT.

Sell your designs through BatchPCB!

BatchPCB is starting a new service where circuit designers can sell their boards through the BatchPCB Marketplace.

Mar 1, 2010

So you made a PCB design? Think others might benefit from it? Sell it! You can sell as many (or as few) designs as you want and can receive payment via check or paypal.

Does anyone remember "Batteries Not Included" ?

Built by SauliusS

Compressed Sensing - Getting something for nothing

Wired has an interesting article on the data-manipulation techniques that could lead to real Blade-Runner / CSI style image enhancement.

1 Undersample
A camera or other device captures only a small, randomly chosen fraction of the pixels that normally comprise a particular image. This saves time and space.

2 Fill in the dots
An algorithm called l1 minimization starts by arbitrarily picking one of the effectively infinite number of ways to fill in all the missing pixels.

3 Add shapes
The algorithm then begins to modify the picture in stages by laying colored shapes over the randomly selected image. The goal is to seek what’s called sparsity, a measure of image simplicity.

4 Add smaller shapes
The algorithm inserts the smallest number of shapes, of the simplest kind, that match the original pixels. If it sees four adjacent green pixels, it may add a green rectangle there.

5 Achieve clarity
Iteration after iteration, the algorithm adds smaller and smaller shapes, always seeking sparsity. Eventually it creates an image that will almost certainly be a near-perfect facsimile of a hi-res one.

I haven't seen the original paper, so I'm a little skeptical. I'd like to see what kind of error is incurred by this successive approximation.   How different is the reconstructed image from the original?  There are always limits to these things.

NASA's Golden Boy - Project M

IO9 has a great writeup on  NASA's Project M to send humanoid telerobots to the moon in lieu of human exploration.