Undergrad Projects

Research

MIT has a great program called the "Undergraduate Research Oportunities Program" or urop for short. I've taken advantage of this in three of my four years here at the 'tvte, first working for Eric Klopfer and Mitchell Resnick on Starlogo, then with Brian Whitman, Youngmoo Kim, and Barry Vercoe on a couple of machine listening projects, and finally with Erik Sudderth, Alex Ihler, and Bill Freeman on NBP hand-tracking.

Nonparametric Belief Propogation

(I swiped this from the official NBP website)

Accurate visual detection and tracking of 3D articulated objects is a challenging problem with applications in human-computer interfaces, motion capture, and scene understanding. We have used NBP to develop a tracking algorithm which exploits the statistical structure of a kinematic hand model to improve robustness and efficiency.

We describe the hand using 16 rigid bodies constrained by revolute joints (top left). The tracking algorithm uses NBP to search for 3D configurations whose projections match image-based edge and color cues (top right). Given a single frame, NBP propagates information about likely configurations of each finger to infer overall hand position. Our graphical model of hand dynamics (lower right) allows NBP to track hand motion through image sequences. Two result videos (lower left) show projections of the marginal position estimates produced by our tracker. Note that the "Grasping" sequences shows some robustness to self-occlusion.

For further details, additional results, and references, please see our technical report presented at the 2004 CVPR Workshop on Generative Model Based Vision.

Little Keychain Sound Box

In the summer and fall of 2002 I worked in the Music, Mind, and Machine group at the MediaLab. One of the projects I worked on was an attempt at piano transcription using so-called analysis-by-synthesis. The idea was that we'd record a midi-controlled piano playing training sequences and then use that information to transcribe new sequences. It well enough to transcribe chords it had been trained on, but its representation pushed it into an as yet unsolved combinatorial vortex. Every chord to be recognized must be trained individually, taking 5-10 seconds. 2^88 chords are possible on the piano, although almost all of them never occur. I don't know how many chords actually do, but since this can't generalize to chord inversions or different octaves, there are still too many to train individually.

I'll get the code up soon, but there's a poster for you to look at in the mean time. It's a good example of how to use the Java Sound classes, if nothing else. Watch out for the magic numbers in selecting devices, they were hard-coded for the particular setup I had in the medialab's studio.

Similarity Matrices

Another project I worked on with Brian and Youngmoo was an attempt to find structure in songs from only auditory data. I picked songs from the Beatle's "White Album" because they have a very nice verse-chorus-verse-etc. structure to them. This project made it to the pretty pictures stage, but couldn't get much past it.


Lucy in the Sky With Diamonds

If you want to view the postscript files but can't, get the latest .exe of GhostScript from Gnu

Classes

So far I've taken three classes with big final projects, here are the results, final presentations, etc.

Analyzing Sabar Strokes

I did this project for Barry Vercoe's 21M.566, "Audio Processing by People and Machines" in the fall of 2003. Since I played in MIT's Sabar ensemble Rambax and I'm interested in listening and acoustics and all of that, I thought it might be a worthwhile pedagogic exercise to analyze evolution of a sabar drum's spectrum over the course of its being tuned.

Take a look at the slides for the presentation and I'll even throw in the scripts I used to make the pictures. I apologize in advance for their poor naming and documentation, I was in a hurry.

Electronic Speckle Pattern Interferometry

To fulfill my General Institvte Requirement for a lab class, I took 6.161, "Modern Optics Project Lab" in the fall of 2003. While researching the acoustics of drums for the project above, I stumbled across some very cool pictures of vibrating drums taken using TV Holography, or Electronic Speckle Pattern Interferometry (ESPI). For my final project in optics lab, I decided to use the same technique to analyze the vibrations of a simple rubber membrane. Take a look at the slides most notable for their pretty pictures. The report contains the same pretty pictures and some more explanation.

Antichess

My final project for 6.170 in the spring of 2003. I wrote the GUI among other parts, and Jesse Lacika, Yogishwar Maharaj, and Andrew Francis wrote the rest. First, get the jar. If you're running linux "java -jar antichess.jar". If you're running windows, double click on it.

Starlogo

My first urop, during the whole of my freshman year, was for the Starlogo project, also at the MediaLab. Starlogo simulates single-instruction multiple-data "turtles" on a 2D grid. These turtles are programmed with a logo-like language, designed to be easy enough to teach to elementary school students. I noticed that there was a lot of code repetition in similar models and wrote a graphical tool for the program allowing easy selection and customization of common methods.

Music

I'm much more of a performer than a composer, but I have taken a few composition classes at MIT, and if you really want to hear what I made, it's listed below. What you really want to do is to check me out playing Bari sax in the Festival Jazz Ensemble, or playing sabar in Rambax.

For my "Jazz Composition" class, I wrote four pieces:

For "Harmony and Counterpoint II" I wrote a theme and variations, which you can hear or see.

Note:

If you want to view the postscript files but can't, get the latest .exe of GhostScript from Gnu

You could even check out my high school work

mr-pc.org updated 11.26.2006
Copyright (c) 2004-8 Michael I Mandel