Navigation
Powered by Squarespace
Sidebar

Hi! I'm Shaheeb.  Here are some things I'm working on.  You may find a better description of my projects here.  If you think these are interesting, or want to chat about something you are working on, why don't you drop me a line here.

I'd love to get your feedback on these thoughts, so talk to me!

 

Entries in darpa (1)

Tuesday
Nov082011

A quick note about Hu Moments (re: DARPA Shredder Challenge)

Kat Scott from the SimpleCV/Ingenuitas team was gracious enough to share some feedback with me on my use of the SimpleCV package and approach to the Shredder Challenge.  Not surprisingly, she and her colleagues have had their own thoughts on how to tackle the puzzles, and I for one am eagerly looking forward to their attempts.

Kat (very diplomatically!) confirmed my comment that shape matching would not work, and then very kindly shared some specific technical information on why.   

"Your approach is a good first start, but unfortunately the Hu moment is not going to work in this situation. The Hu moment is a measure of the image moment, which is kinda like a moment in physics. Basically a moment describes how much work you have to do to get something to spin. Round things have less of a moment and spin easily, long things are a lot more difficult to spin. Moments are actually a good way to match things that are similar shapes, but not to align edges that are a like puzzel pieces."

Kat also forwarded a video of a simplified visual explanation of the math behind the Hu moments that illustrates how robust the calculations are in identifying a particular image, regardless of transformations applied to it:  http://www.youtube.com/watch?v=O-hCEXi3ymU 

Personally, I found that while the video definitely drove the point home, Kat's simple, straightforward explanation was key for me in understanding the nature of this feature.

I hope this little bit sets off a light bulb or two for others, as it did for me.  At the moment, my thinking on the first puzzle has turned to collision detection; the type you might be familiar with if you've played any old-school platform scroller arcade game.  These games determined when two polygons intersected each other, and I think the principle should apply to determine whether two puzzle pieces in the shredder challenge are a good fit.

My latest homework is to understand the Separating Axis Theorem and see if I can develop an approach based on this concept.