Next steps: Poisson matting

Returning from SIGGRAPH, I'm wondering what to do next. I'm interested in doing a Poisson matting implementation because it seems like such utter magic. Consider, for instance, Zebediah's hair. It's incredibly fine and blond and wispy. What if I wanted to put a background of flying toasters behind him, instead of the Cyndi's House of Pancakes furniture? Creating the mask for his hair would be incredibly difficult, especially that flyaway bit up on top. Heck, even just getting a mask for all the little wrinkles in his overalls would be a labor of love. (I'd have to really want to put flying toasters behind him.

Poisson matting can do the masking properly, algorithmically, magically. We could put flying toasters behind Zeb, or art from In the Night Kitchen, that classic of somnambulant.baking. See? It's magic.

Two other papers, GrabCut and Lazy Snapping, both by Microsoft Research, address the same problem, I think. (Sorry, no links yet) Now, how about I write a plugin to something that creates the mats via Poisson matting, GrabCutting, and Lazy Snapping? That would be hot. I love doing two-dimensional image processing. This could be programming that I enjoy, programming that gets me out of bed in the morning, or at least keeps me up late at night. I just hope I can handle the math.


giving and receiving

I've been thinking lately about what I contribute to my co-workers and what I ask of them. I definitely ask my co-workers for a lot of things: audio-visual stuff from the audio-visual guy, tablet pc admin from the tablet pc admin expert, tons of technical requests from from t-staff (our general sysadmins)... and it ocurred to me to ask myself, how much do I help them? My responsibilities are fairly fluid; the areas in which I'm the go-to person are consumer & professional graphics applications, anything mac-related, online communties, and web stuff. People don't need to go-to me much, though.

I just saw my cel ringing with a call from the Brown exchange. It was one of my co-workers, asking for help with iChat, so that one of the Brown professors could sit in on a thesis defense in Utah tomorrow. I didn't want to answer the phone at first, but then I remembered that it's part of my job to answer my goddamn phone, especially during working hours on a travel day when I'm just sitting here waiting for a shuttle. When I realized that a) my co-worker was uncomfortable with using the new-to-him technology, and b) I would be back in town for the defense, I said, "I'll take care of it. I'll be there, I'll make sure that it happens. It's my problem." That was being a good co-worker. I'm glad I was asked to help, and it's an easy solution: iChat is incredibly easy to use, and incredibly reliable. It's kind of funny that it intimidates my co-worker, who has a masters degree and regularly works in virtual reality, but I can understand being nervous about using a new operating system to make sure that a professor can attend one of his student's PhD defenses. Call it a win-win situation.

Now, I need to keep looking for other ways to be helpful to my co-workers, and remember to keep doing so, all the time. s


Best of SIGGRAPH: display and input technologies

There are as many SIGGRAPH's as there are attendees, but here's the best of my SIGGRAPH, for display and input technologies.

High Dynamic Range displays are a new display technology which produce a larger color gamut by adding a secondary light source to the standard pixel grid. Mitsubishi had an amazing desktop LED-backlit LCD which gives extremely high-brightness. In Emerging Technologies, there was a demonstration from Sunnybrook Tech and UBC with an even brighter backlit LCD. It really glowed.

The Barco I-Wall is an amazingly bright projection display. I didn't think projection displays could get that bright, especially not in the moderate indoor lighting of the siggraph show floor. Apparently this uses DLP technology, which I don't yet understand. I would love to see Brown upgrade the Cave projectors to these.

Sound Flakes, an installation in Emerging Technologies, was a fun, calm, and pleasant experience. Several faucets dripped both water and colored sillhouettes of stars, dots, frogs, leaves into a small wading pool. A large red spoon could scoop up the glyphs; when it picked up a glyph, the tone associated with that color would sound. The pool/faucet/spoon combination became a serendipitous musical instrument.

I fell in love with the Spaceball, a six-degree-of-freedom controller. The spaceball has been around for at least a decade, but the graphics hardware is finally fast enough to make the interaction feel extremely nuanced. Nuanced, nuanced, nuanced. 6DOF means that I can control x, y, and z translation as well as x, y, and z rotation, also known as pitch, roll, and yaw. I experimented with using the Spaceball for camera and object control in 3ds max, and I was in love. They are priced fairly affordably, somewhere in the $300 range I think.


something's about to happen

There are some talks I could go to tomorrow, because my flight isn't until 4, but I think what I really need to do is go to a bookstore/cafe and just write. There are things I need to figure out. It's bedtime, now, and I shouldn't go into it, and by the time I get back to Providence, it will be time to fall asleep in a major way.

Learning Maya seems to be a necessity. Mel scripting. I think I annoyed the author of a book on Mel scripting; I was trying to get a complete understanding of how Maya and Mel fit together, what audience they're for, what the end products are. This is how I can learn, yes? Asking lots of people who know things lots of questions, and incorporating what they know into my knowledge. So today I was learning about Maya and jobs in effects.

What if I think of my next few months of work as making a demo reel, and learning skills for my resume? Well, the problem there is that I need to be simultaneously doing a good job at my job. It could all go together -- it would be nice if it did: I could do good work, learning new skills, producing good work as work and work qua demo reel. All of this targeting... switching jobs within the next year.

My main goals, as I currently understand them:

  1. Maintain and improve my health, especially emotional and physical health

  2. Be near Zeb and Isaac and Dan and Mel. Be part of their family. Be a good aunt to Zeb. What's the boundary between "extended family" and just "family?"

  3. Become financially stable: out of debt, have a secure income and health insurance, regularly contribute to long-term savings

Those are the goals. Tomorrow, I figure out how to get there.



I'm having predictable and in fact predicted spasms of uncertainty and confusion about my career.

Just had a wonderful dinner with Michael Kowalski, whose life story is a cross between Horatio Alger, Thomas Merton, and Michelangelo. In about 1994 he decided that he wanted to work as a computer graphics programmer, despite being a beginning computer user. He put himself through the intro computer science curriculum at Brown, and eventually earned a masters in CS at Brown. He was a co-author on a SIGGRAPH paper, or maybe several, and his work was on the cover of the proceedings one year -- the Dr. Seuss-ish non-photorealistic rendering of a dandelion-ish flower on a green field with a blue sky. Now he works at Rhythm & Hues on Maya plugins, Houdini plugins, and proprietary effects software. I asked him why he learned Maya, and he said that it was because he felt like he needed something concrete to point to, a concrete skill to help in the job market. This seems very savvy. Based on what I saw people asking for at SIGGRAPH, I'm going to leave 3ds max behind and start working with Maya instead.

Michael gave me some badly needly encouragement and perspective. I have built a decent framework for eBooks (my research) which I now think should perhaps be called "PolyBooks." (More on that later.) He pointed out that I have a strong intuition for computing... I think there is something ineffable, but good, about my relationship to computing, software engineering, user interface design, graphics, and art.

Like Michael, I need something concrete to point to. I need a demo reel.