Hacker News new | past | comments | ask | show | jobs | submit login
3D camera using WebGL (airtightinteractive.com)
108 points by neel8986 on Feb 8, 2013 | hide | past | favorite | 20 comments



Link to the accompanying blog post for people like me who can't test it right now:

http://www.airtightinteractive.com/2012/08/webcammesh-demo/


Very fun. The "map brightness to Z" trick would seem to be too simplistic, but it totally fooled me into thinking this was doing some kind of crazy computer vision trick. I'm almost sad now that I read that detail; now it sounds easy to implement. :(

I will say, though, that I hate the mouse UI: you can't use relative offsets to make changes on a device that might disappear form one edge of your control and reappear on any other. It's very confusing to the user. Please use a drag for that.


>The "map brightness to Z" trick would seem to be too simplistic, but it totally fooled me into thinking this was doing some kind of crazy computer vision trick.

That got me wondering about what sort of tricks might be out there.

For human users, you could use a face detection algorithm to find faces in the image and then place smoothed face meshes (or even just blobs) under them, and you'd have a fake depth-camera that would be pretty convincing until someone put their hand up.

Googling around, I found that there's a lot of research being done in depth inference from video. This paper: http://people.csail.mit.edu/celiu/pdfs/ECCV12-autostereo.pdf is particularly impressive, although given their one minute/frame benchmarks, we'll be waiting 15 years or so before Moore's law can bring this technique to a JS demo.


I tried it sat with a lamp behind me. The result was slightly trippy: https://dl.dropbox.com/u/3723930/Me.png


You might want to extinguish your hair! =)


Mind blown.


Not going to work well with non-caucasians. oops.


Really great demo, quite effective! It's a nice trick using various kinds of noise. The visible mesh hides some of the innaccuracy, and the Perlin noise is a nice way to provide some motion to show the depth. Here's a quick video of me frozen in the white carbonite wall behind me: http://vine.co/v/bn3JJA7bX5d


Fun. Some years ago I wrote a Processing hack with almost the same name and intent, but the effect is different (I rebuild a wireframe based on the points recognized in the image).

A demo: http://vimeo.com/8297993 Source code: https://github.com/hcarvalhoalves/processing-cammesh


It's a shame it can't utilise my actual 3D stereoscopic webcam. I wonder if they'll add support for using multiple webcams?


Shine a flash light on your face (possibly from your smartphone) and watch what happens.


Yea, for a second I thought this might be doing structure from motion. A simple rotation of the map and look at the source says otherwise.

Nice hack though. Can't wait to see some real CV with WebGL.


Seems like mainline Firefox doesn't support this yet, but Chrome does.

It was interesting using Manycam to use the area around my mouse pointer as the video source and let it do the effect to itself recursively.


Awesome, the "fake Kinect" effect is pulled off really well!


I love it. Although it reenforces that I have sunken eyes.


Very very impressive. Good job!!!! Thanks for sharing.


Never thought I could terrify myself so.


Looks fantastic!


Really cool!


Nothing happens. All I see is a "Please allow camera access.", even after I allow it.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: