The Rovio is essentially a webcam on wheels that can
be controlled by a computer through Wifi using simple
URLs. Contestants run programs on Linux or Mac laptops
to grab images from the cameras and control the robot.
The programs are written in the
Lush language, a
dialect of Lisp with an extensive image processing
library.
The purpose of this assignment was to find a tennis
ball, and push it through the goals. The tennis balls
are bright yellow and the goal posts are red, which
allows the use of color detection algorithms.
We had 8 teams of designers:
Hernel and Alec
Nina and Nate
Dmitri
Melanie and Alex
Stephen and Bill
Chris and John
Jason and Harry
Max and Michael
- OMG, where is the goal?
- You are a robot: what can you possibly mean by "OMG"?
- "Oh My Geeks".
- Woops, missed the ball
- Get out of my way, Ima gettin' that ball. Now where is
the goal again?
- Aww, the ball just missed the goal. I thought Ihad it in.
- That's what happens when you only see one goal post
in the field of view and you don't realize that you are
not seeing both of them. Ask your Designers Harry and Jason
to write a double post detector code.
- That shoe looked *exactly* like a tennis ball. I swear to
Geeks.
- OK, let me explain: if the goals are too far from each
other, I may not see both of them in my field of view,
so I keep turning. Unfortunately, I turned a bit too fast
and never got to see both goals on my first full turn.
Thankfully my Designers Chris and John were kind enough
to bring the posts closer to each other so I could see
both of them on my second turn.
- Hey, that was *my* ball
- It's mine now. Move out of the way you slowpoke.
- Admire this flawless, fast and smooth control of the ball.
- Yeah, sure: your Designer, Karol, is not an undergrad like ours.
He is a postdoc with a background in
theoretical physics.
- Perhaps, but you would go as fast if you kept grabbing
video frames instead of driving blind, and if you
compiled your Lush code to make it go faster.
- I keep orbiting the ball but I can't find the goal.
Oh wait, here it is! GOAAL! Time for a victory dance!
- Nope, that wasn't the goal
- Aww, chucks. It looked red to me.
- OK, I ran into the goal post, but the ball went in.
- I keep orbiting the ball, but where is that goal?
- It's that postdoc's robot again.
- If only I had started orbiting the ball to the left instead
of to the right, I would have found the goal a lot faster.
- Sometimes, I wish I could see red.
I'm too gentle for this game.
- Who increased my orbiting speed by a factor 10?
- I was soooo sure I was holding the ball between my wheels.
My designers Bill and Stephen must disappointed with me.
- Woohoo! my first goal!
- That first goal made my Designers Bill and Stephen
very happy and proud.
- OK, it took me some time, but I got the ball into the goal.
Hey, doing vision and image processing in interpreted
Lisp isn't that fast. Perhaps my Designers Nina and Nate
could compile my code to make it go faster....