Kinect Hand Tracking

It’s very unique that a single camera can essentially do two things. It’s far from perfect but it’s still a joy to work with. The Xbox Kinect is actually two cameras put together. A “traditional” RGB camera and an infrared camera assembled side by side. Due to the assembly of the camera, what you see in one lens is not the same as the other due to a parallax effect where the cameras are not displaying the exact same image. Most notably a less than 1 cm gap between the two cameras.

What makes this unique is the ability of the kinect to detect depth via the IR camera. As the kinect projects infrared light, this can be seen by the IR camera and return values that measure depth or distance of an object in front of it.

For the first week in Computational Cameras is to work with the depth camera and see what things we can do with it.

Based on the OpenNI framework and using the Processing library we are able to track our hand with the Kinect as seen with the red dot.

Notice that when my hand turns black, the Kinect is technically, unable to see my hand. The dot follows my right hand even when I put it down and extend my left hand. However I can pick up the dot with my left and pass it on.

What if we use a shape?

For this example I decided to use a katamari.

I decided to use an SVG file instead of the traditional image file due to it’s ability to keep it’s resolution when scaled. I assume the properties are the same when using the PImage command as well.

It was simple enough to call the katamari into the sketch and behaves the same way as the dot. But seeing the katamari in gray isn’t fun. So I activated the RGB camera and put them side by side.

Notice on how the image goes beyond the frame of the IR camera but still visible in the entire sketch.

And by putting the two together. I seems like magic! I wish this was real that the katamari would roll up the mess in my room.

Next up. I want to put more objects that I can interact with and manipulate in multiple screens.

Motor Kits

Tamiya Motor kits

Over the winter break I was able to procure these at a hobby shop in the Bay Area. I’ve worked with Tamiya kits since I was in grade school and have found the quality of their kits reliable and efficient.

Upon coming back to New York for the Spring term I decided to assemble one of these kits.’

Tamiya Motor kits

So I’ve learned that motors are either really easy to use of a pain to live with. You either have too much power or not enough torque. Some solutions vary to either getting a bigger motor or something else completely different like a stepper motor.

The Tamiya 6-Speed Gearbox High efficiency is not like a gear box for a car which you can vary the step by moving the gears. In this kit you can move the gears but it would require the disassembly of the entire apparatus.

So let’s begin. In kit comes a variety og gears, a motor, casing, and various parts to interface the motor to a variety of projects.

Tamiya Motor kits

These particular Tamiya kits comes from the Philippines and Japan.

Tamiya Motor kits

The data sheet comes with steps in English and Japanese on how to assemble the kit to the desired ratios. I selected to assemble option E which turns the gears at 19.9 revolutions per minute.

I’ve assembled the motor and will post pictures soon and where I plan to use the motor.

Graffiti Can at the ITP Winter Show

graffiti-15345

The response has been amazing! Thank you to everyone who came on the first day of the show. Images saved by the graffiti can project can be seen here. The last day of the show is today. Come visit us in the dark room and enjoy a lot of great projects by the students of ITP.

http://www.flickr.com/photos/mdelamerced/sets/72157628482669167/

PCOMP Final final project

After numerous revisions it’s finally finished.

physical computing

More or less. Working with small parts is very difficult especially with 30 gauge wire which is barely a thread and breaks easily which is one of the main problems I encountered with this project.

physical computing

The code is working great. But I may have crossed some wires that make the white array and yellow array stay on all the time. But the effect is there. I’m at a point where I don’t want to touch it anymore for fear that it may not work by noon today. I am honestly not satisfied with my work but the important part is I learned a lot with this project in terms of building and fabrication which I really need to work on.

Right now it’s all packed up in a box for transportation to the ITP floor. Thank you for a wonderful experience in Physical Computing.

physical computing

Information display – ICM Finals

A far cry from what I made for the midterms, I think this would be better on another surface other than my computer screen.

So I’ve been able to parse the weather API of Yahoo and the AP headline feeds for news. Using two XML parsing codes is a bit challenging. There’s something in the flickr API that isn’t jist working for me so each image is manually assigned to each weather condition set by Yahoo.

 

This was the original weather midterm project with no data and just computer drawn images.

This is the raw AP headline feed experiment that I merged with my earlier code.

I think that this information lives outside of our mobile phones and screen but instead it should be around us. I had a last minute inspiration on the subway ride home that I wish this was projected on the window of the train so I know what’s going on above ground.

I wanted to project this on a surface with a kinect camera looking at it at the same time where it would give the false impression of gesture control. But doing certain gestures on the projected surface, it would either refresh the news data or change the weather location.

I think I’ll work on this some more during the break. Code to be posted soon.

PCOMP Final final project

After numerous revisions it’s finally finished.

physical computing

More or less. Working with small parts is very difficult especially with 30 gauge wire which is barely a thread and breaks easily which is one of the main problems I encountered with this project.

physical computing

The code is working great. But I may have crossed some wires that make the white array and yellow array stay on all the time. But the effect is there. I’m at a point where I don’t want to touch it anymore for fear that it may not work by noon today. I am honestly not satisfied with my work but the important part is I learned a lot with this project in terms of building and fabrication which I really need to work on.

Right now it’s all packed up in a box for transportation to the ITP floor. Thank you for a wonderful experience in Physical Computing.

physical computing

Transistor Lab

Very last minute, I’ve gotten to the transistor lab while stuck working on my final project.

physical computing

PCOMP Finals update

Dropped Processing. Dropped Temp sensor. Long live the Ultrasonic sensor.

I gave in and picked up the ultrasonic sensor. A quick jab at the library and pasted the same values I had for the temp and got it working.

PCOMP UPDATE

I initially used a central ground to reduce the cabling and copper tape to for the wiring. This was a mess. I switched to a thinner wire which meant re-soldering everything.

PCOMP UPDATE

Disaster strikes! A part of my arcylic falls off. Crazy glue to the rescue.

The good thing is that it works. Sort of.

PCOMP UPDATE

Still a way to go but a lot closer now.

PCOMP UPDATE

PCOMP UPDATE

CommLab: Web Final Proposal

 

I’d like to expand my choose your own adventure game into the text based adventure games of the early personal computing age. Much like Mystery House which took me a lot of hours to complete and even got the help of my entire family since this was on the Apple IIe, our first computer in 1983.

I’d render the text on just a plain black background and see if it will work using a CSS stylesheet and text input.

The story would be a mystery for the player to solve. More to come.

ICM Finals

I’ve decided to expand my midterm project for ICM by using real data this time.

Thanks to NYU Professor Dan Shiffman’s Yahoo Weather API code I had somewhere to begin with. Going through the Yahoo API wasn’t that hard and neither was parsing the data from the XML feed. I did however wanted to find locations outside the US since the original code is based on using ZIP for location. A newer version of the Yahoo Weather API uses their own WOEID which includes places outside the US but the syntax is not as easy as just entering the zip code.

I didn’t want to figure out how to map the entire WOEID database for this project so I selected a few cities for me.

I wanted to work with the flickr API as well into integrating photos appropriate to the weather condition but it wasn’t being cooperative. I ended up tagging the weather pattern data to images manually. None of the images are locally stored. This causes a bit of a slowdown but makes the file smaller.

Figures are in Farenheit.

Stuff I still like to add, conform the images to the location and weather pattern. Add a clothing suggestion. Ability to change location without having to enter the code manually for every city you want to check. Add  video for some reason or another.

Follow

Get every new post delivered to your Inbox.