It is amazing to see that EYT is getting ready for the final presentation…
There is very little left to do on the software side, and weekend is getting ready for building the physical controller! (I call it ‘EYT columnHugger’)
A screenshot from the software is below. So what is new? Now three movies are displayed, which the user can switch between. Also, their eye tracking plots are displayed below them for easy comparison! Actually that is the point of all project; to see and experience the difference in eye movements among these movie scenes!.
I installed google analytics to see what people are interested in this blog, and I was amazed to see that there are a lot of people looking for a source code for eye tracking. I can totally understand the suffer and the pain these people are having, appreciate their future contribution to open source community, and here I claim the source code! Drop a comment if you find use it, find it interesting, or ridiculous, whatever…
I will post upcoming codes under this post I hope. Explanations can be found in the files.
here are the two videos from the dress rehearsal for JohnTrain! Everything worked fine, no quicktime problems, no delays… Frame rate is a little low, and we will see what to do with that.
Did you think the columns at ITP works for only supporting the drama department at 5th floor??
Nope, they are also the projection space for Eyes on You, Tarantino!
I made some tests on the columns to see the pattern projection would look like. First idea was to project it from ceiling with a regular angle, which looked so beautiful. However, in this case, user who will be interacting with the controller will be in front of the projection, and his shadow will drop on the wall. So I tried to set the projection right on top of the column, so I projected in a very acute angle. In this case, the focus gets lost on the top, and texts gets smiley-shaped (which I can fixed manually using processing). Gotta work on the focus thing…
After drawing that prototype, I was quite excited to be working on realizing the first part: visualization. In visualization, I used processing to plot the eye tracking data, and I also added the dialog from the movie next to each node (it is amazing to see how easy to find subtitles for a movie!). Then I picked up a projector from ER (God, don’t forget your blessings on our ER: Equiptment Room, ITP), and tried it on two columns!
In one of the tests, I put the projector right down the column, which resulted in lose of focus. In this case I need to decide where should be focused, and where should be blurry. As of Todd’s feedback, it should look made for purpose, otherwise it looks like we couldn’t align the projector well.
In the second test, I had the projector in front of the column (just a little angled). In this case, of course the focus was normal, but when a person needs to cross the projector in order to interact with the kiosk/screen. So his shadow will fall on the column. Thinking for ways….
While working on the visualization, I recorded some of my tries to document, so below you can find the related videos, which are somewhat interesting. Videos are in chronological order, so the last version is the belowest :)…
There are moments where you find the exact answer you are looking for for 4 months! Well, here it is, in the lead markings of my pencil in my notebook!
Basically, eye data is plotted along with the dialogs from the movie, on a column. Below, around the belt level, there is the kiosk part on which the movie’s current frame is projected. With buttons on the kiosk, user can go back/forth in the movie, which makes the projection on the column slide up/down.
It would be great if I can find the chance to use three projectors, so I can surround a column for three different movies.
check out the drawing, I am already excited to see how similar/different the final product will look like!
before building the prototypes for my project, I decided to work a little around the visualization of the eye tracking data in the physical space. I took a projector, tilted and keystoned a little. I have some ideas coming, but I am not sure how to wrap them up. Basically, having seen these line-graph-like visualizations on the floor, a person can hold a piece of what paper/cardboard (something that resembles a projector screen) on top of this curve, and start seeing the movie that the curve is related to. Moving the board forward/backward (or left or right, relatively) he can browse through the frames of the scene.
Some photos from my test is below.
I received my train set, with all that passion of the little boy having his Christmas gift, I set it up in front of the six screens. very romantic.. On the software side, things look like resolved in the video issue; Dano’s library looks OK for now, but knowing that the random quicktime crash still exists somewhere between the bits of the computer memory makes me a little anxious: Quicktime in processing is giving ‘access memory location’ error once in a while, and a lot of ITP brains (and obviously more from outside, as it can be seen in the processing forum) worked to resolve that issue. Bunch of little tweaks, and Dano’s library looks fine. (a very easy way to crash if you are obsessive: myMovie.play(); myMovie.play(); -> crash!!)
However, project successfully passed the first test last tuesday, when i presented my project to the class and the guest Burak Arikan, a Turkish fellow from MIT Media Labs. It was nice have some personal chat in Turkish :). My project was up, without any crash for more than 10 hours, which was quite acceptable.
For this class assignment, I created MouseMiles, which is an application that runs in background and calculates the miles and feet that your mouse travelled on the screen. It displays Growl notifications on desktop with the name of the city it would reach starting from New York City. Also the number of miles and feet are displayed once you reach a city.
Requires Growl to be installed on your MacOS X (tested on MacOS 10.4.10).