Looking outwards – Final Project

1. A new AR platform is desperately needed.

So I will likely be using Vuforia – Qualcomm’s AR platform. After talking with the lead developer at BigPlayAR, it seems like Vuforia is the clear winner, allowing me to work in Unity or in their own environment.

2. I will also be wrapping up some loose ends with the Processing implementation.

community

As Golan helped me discover, getting RGBD to work in Processing is a project that the community is just now tackling, so I likely will be forking this guy’s repo and pull requesting to create one dynamite implementation!

3. INSPIRATION

Geography-specific AR:

AR at MOMA:

AR Card Game:
This video autoplays so I made a link to it instead

Whimsical augmentation of a physical space:

Reinterpreting architecture from the perspective of the fantastic:

Another geo-augmentation

Marlena

01 Apr 2013

It’s become clear to me that I should spend some time thinking about making art concerning a topic that, due to recent events, has been haunting my mind for several months now: suicide. A friend of mine took his life a few months ago and I have a close family member who has inflicted self-harm and made threats of this nature. I have been pushing it aside for a long time and now would be a good opportunity to figure out exactly what I’m feeling and come to terms with it. I’ll do more research on past works soon–first I need to do some thinking of my own.

Elwin

01 Apr 2013

I’ve decided to take my “shy mirror” idea from project 3 to the next level for my capstone project. The comments that I received from fellow students really helped me to think a bit deeper about the concept and how far I could take this.

Development & Improvements

– Embed the camera behind the mirror in the center. This way the camera’s viewing angle will always rotate with the mirror and wouldn’t be restricted compared to a fixed camera with a fixed viewing angle like in my current design. Golan mentioned this in the comments and I had this idea earlier before, but the idea kind of got lost during the building process. This time I would definitely want to try out this method and probably purchase some acrylic mirror from Acrylite-Shop instead of the mirror I bought from RiteAid.

– Golan also mentioned using the standard OpenCV face tracker. I wasn’t aware that the standard library had a face tracking option. This is definitely something I will try out, since the ofxFaceTracker was lagging for some reason.

– Trajectory planning for smoother movement. At the moment I’m just sending out a rotational angle to the servo, hence the quick motion to a specific location.

– I always had the idea that this would be a wall piece. I think for the capstone project, I would be able to pull it off if I plan it in advance and arrange a space and materials to actually construct a wall for it. Also, the current mount is pretty ghetto and built last minute. For the capstone version, I would try to hide the electronics and spend more time creating and polishing a casing for the piece.

Personality

This would be the major attraction. Apart from further developing the points above, I’ve received a lot of feedback about creating more personality for the mirror. I think this is a very interesting idea and something I would like to pursue of the capstone version.

In the realm of the “shy mirror”, I could create and showcase several personalities based on motion, speed and timing. For example:
– Slow and smooth motion to create a shy and innocent character
– Quicker and smooth motion for scared (?)
– Quick and jerky to purposely neglect your presence like giving you the cold shoulder
– Quick and slow to ignore
These are now very quick ideas, but I would need to define them more in-depth.

Someone also mentioned adding motion of roaming around slowly in the absence of a face, and becomes startled when it finds one. I think that’s a great idea and it would really help in creating a character.

References / Inspiration

Pinokio


I think this is the most recent and well-known project showcasing personality in an inanimate object. The lamp really takes on a character and tries to interact with the person (although the person’s interaction with the lamp is a bit exaggerated). I could definitely take some notes from the motion and try to incorporate that into my mirrors.

(In)Security Camera // Silvia Ruzanka


This piece is already 10 years old! I like how it uses a security camera and reverses its purpose. The motion is a bit jerky though and personally I think the placement of the camera is too high. It’s weird when the camera is pointing upwards. It cuts of the interactions between the user and the camera. Perhaps that was the purpose of it…

Audience // Chris O’Shea


Reminds of meerkats following and staring at you. Really great how the number of mirrors creates a character as a whole. I don’t think it would have succeeded with only 1 or a couple of mirrors. Something to keep in mind when I’m developing my idea further

Michael

01 Apr 2013

1) Meng’s Pepper’s Ghost project

Pepper's Ghost

Meng’s interaction project was what originally got me thinking about my capstone.  Her work involved visualizing different maps in three dimensions using a small Pepper’s Ghost apparatus.  The Pepper’s Ghost illusion works by projecting an image onto an angled piece of glass, which causes it to appear to float in space.  Meng’s map layers and images could be viewed simultaneously by changing one’s viewing angle.  I like the idea of being able to peer around layers and data to see what lies beneath or behind it, and I would like to incorporate this idea into my capstone.  I think that the Pepper’s Ghost apparatus may not be the best suited tool for this, though, and I hope to find a way of interacting with layered data on a two-dimensional screen.

 

2) GigaPan Time Machine and Solar Dynamics Observatory

SDO image

Time Machine is a project out of the CREATE Lab that allows users to view and create zoomable time-lapse videos.  Similar to the GigaPan project, very high resolution interactions are made possible on even modest internet connections because of smart fetching of tiled data.  The project has created time-lapse videos from photos of plants growing to data from the Landsat and Modus satellites and images of the sun from the Solar Dynamics Observatory.  I’m particularly entranced by the time lapse of the sun.  It’s amazing to see solar flares that dance across the surface of the sun and arc over spaces large enough to fit several earths inside.  It’s also possible to explore images of the sun taken from different wavelengths, allowing for visualizations of not only visible light, but also the infrared and ultraviolet spectra and the magnetosphere.  Unfortunately switching between these fixed spectra is the only digital interaction in Time Machine (meaning that only one frequency can be viewed at a time), which means that it is hard to draw connections between activity at one frequency versus another, even though the behavior varies wildly.  I would like to create a way of viewing multiple layers at once, either combined or displayed separately but in a way which allows a viewer to see events in at least two different frequencies at once.

 

3) Panamap

panamap 2  Panamap 1

This company uses a patented process to create physical maps that change the information they show depending on the angle at which they are viewed.  Three different layers can be seen on a single map.  My understanding of the technology is that it is very similar to the little plastic animated cards that show simple movements (such as a dinosaur walking) when the card is tilted back and forth.  What’s interesting to me about this project is that it suggests one method of interaction to view a multi-layered map (tilting up and down).  I want to think about similar ways to manipulate and view layers, especially digital ones on either a fixed screen or a tablet.  Again, there might be an idea here which could help me visualize multiple frequencies of sun imagery.

 

4) Minecraft Dynamic Map

Screen Shot 2013-04-01 at 5.23.01 PM

Of course I had to post at least one thing about Minecraft.  This site shows a dynamically-updated view of a fairly well-populated Minecraft server map, including day/night lighting and player positions.  The map is zoomable to a fairly extreme degree, which lets the user find and discover all of the various buildings and settlements that different groups of players have formed over time. Some of them seem abandoned, while others are almost always occupied.  Maps of Minecraft worlds aren’t particularly unique, but the fluid way in which this one is explorable and the fact that it updates itself constantly is new to me.  I would like to incorporate the ability to stream fresh data into my final project in some capacity.

Anna

01 Apr 2013

For my capstone, I’m pretty sure I’d like to carry forward my Interactivity project, Imisphyx IV, and turn it into something a bit more interesting. That said, this is going to be a tricky post — because honestly I probably wouldn’t be trying to build what I have in mind if I’d ever seen anything in the space that really satisfied me. In fact, my own project probably won’t either. Call me picky.

I’m running with the notion that this post will continue to expand as a poke around the space and make new discoveries. For starters, though, here are a few things related to my concept that sit peacefully in my brain.

Nonlinear tangible storytelling of a Jorge Luis Borges (also highly nonlinear) story.

Augmented Shadow from Joon Y Moon on Vimeo. (Thanks to John G. for suggesting this one!)

Arcanes from Ugo Bagnarosa on Vimeo

Neurofiction (A present from Can!)

Sam

01 Apr 2013

For my capstone project, I intend to continue with my Interactive project on visualizing lambda calculus and actually make an interactive lambda calculus editor. To that end, I have researched a few approaches to code visualization.

To Dissect a Mockingbird – David C. Keenan

Graphical_lambda26

Keenan is one of the few people who have also undertaken the project of visualizing lambda calculus; however, the representations he has created become overly complex very quickly. Because of his adherence to the most pedantic definition of lambda calculus syntax (in which all abstractions take only one argument), the graphics become cluttered with containing lines. Additionally, the structure of his diagrams do not differ significantly from textual representations: they evaluate horizontally, largely sequentially, when in fact the strength of a graphical representation is that it frees us to engage with the lambda calculus in a nonlinear manner.

Blockly – Google

sample

Blockly is a tool developed by Google to make programming similar to fitting together pieces of a puzzle. This seems to be a common approach to visual programming, which frequently has drawbacks. The usefulness of the tool is constrained by the fact that the blocks all have to be defined, and this requires writing text-based code, and it also induces a jarring switch between the visual programming environment and the textual. Because of these limitations, the plug-together style is one that I intend to avoid for the most part. However, these projects to strike at the necessity of abstraction in a visual programming language. It will be important to be able to collapse elements within the lambda calculus editor, to avoid being overwhelmed in a complex program. Block-based visual editors are often designed from this standpoint, and incorporating that use pattern should improve the quality of my user experience.

Visual Lambda – Viktor Massalogin

visuallambda

Visual Lambda is another take on the problem of creating a graphical lambda calculus environment. Like Keenan, Massalogin focuses in his work more on evaluation of lambda expressions and less on composition. Visual Lambda also appears to prefer a left-to-right orientation and does not compress abstractions for simplicity. It also does not seem clear how the user should interpret the diagram to understand the lambda expressions. Thus I can see that presenting information clearly, particularly to those who have never worked with lambda calculus before, will likely be a challenge in future work with graphical lambda calculus.

Patt

31 Mar 2013

As a mechanical engineer, I really really want to work with hardware for this final project. I really want to get my hands dirty and machine something. Now that I am a little more familiar with Max/MSP, I am excited to use it for my final project. As someone who loves to explore new places, I was amazed to recently find out that my friend has never been to a lot of places in Pittsburgh even though he’s about to graduate in less than two months. It has never occurred to me that a good number of CMU students live in ‘CMU’ but not in ‘Pittsburgh’. I think Pittsburgh has a lot of potential, definitely a perfect city for college students. I have grown to love this city more and more every year, and I want people to feel the same way.

For this final project, I want to make something that maps the different places you go to in this city. I am thinking about making a wall map or a box, carved out a ‘map’ of Pittsburgh (does not have to be the exact map of the city, but shows different places like restaurants/museums/tourist attractions), and install LED lights. A GPS will track a place you have been, and lights will go off at that specific place.

The layout and the details of the map might change, but this is just a general idea of what I want to do. Here are some projects that will help me get started.

https://www.creativeapplications.net/arduino-2/no-place-like-home-a-pair-of-shoes-that-will-always-guide-you-home/

http://goodnightlamp.com/

https://www.creativeapplications.net/maxmsp/skube-tangible-interface-to-last-fm-spotify-radio/

http://www.etsy.com/listing/105605355/pittsburgh-pennsylvania-city-map-art?ref=sr_gallery_35&ga_search_query=cartography&ga_view_type=gallery&ga_ship_to=US&ga_search_type=all

http://www.designsponge.com/2010/09/pittsburgh-city-guide.html

 

Kyna

31 Mar 2013

Solar2 –

This game was recommended to us by Nathan during our critique. It’s a very interesting game with a really unique mechanic. You play as an asteroid that gains mass over time, although no specific instructions are ever given to you. The idea of learning through playing and acting really appeals to me and I hope that it’s something we can pull off in Small Bones. While our game will certainly not be as elegant as Solar2, I hope that we can emulate the same learning techniques that it employs so well.

LIMBO –

Along the same vein of instructionless games, LIMBO is a very unique puzzle game with simple mechanics used in interesting ways. The game only allows for movement and an all-purpose interaction button. Done entirely in monochrome silhouettes, LIMBO is a very dark game that does a very good job of making you feel alone. While I don’t necessarily want Small Bones to reflect the same darkness that LIMBO does, I’d very much like to emulate its wordless teaching and ingenious use of a simple mechanic for extremely varied gameplay.

Canabalt –

This was one of the games mentioned in the comments during our critique. While it’s similar to Small Bones in that it’s a runner, it’s quite fast-paced and much more reaction based than I think Small Bones will ever be. However, I really liked the two-player aspect to this game, and how it became somewhat of a race between the players. It seems like the terrain is randomly generated so that the track is infinite, and I wonder if someday we could implement two-player in Small Bones. We’d have to work on the mechanic a bit, since right now it definitely wouldn’t work for two players, but I think having to race/cooperate with only a finite number of skeletons could be really interesting.

Joshua

31 Mar 2013

Robb and I were talking about generating fractalish heat sinks which seems like a neat idea in situations the heat sink is to be passive (no fans are used to create flow over the heat sink). There are a ton of gorgeous branching phenomena in nature: diffusion limited-aggregation, vasculogenesis and angiogenesis (blood vessesl growth), plant growth, hele-shaw flow, dielectric breakdown, watershed formation, coral growth, etc.

Some of these systems actually solve engineering problems similar to that of transferring heat effectively. Coral colonies, for example, must balance various factors like fluid flow, particle capture and light exposure. Blood vessels networks allow oxygen to diffuse to every cell in a tissue while also not requiring too much resistance to blood flow.  These competing factors are solved by systems that grow rather algorithmically: there is no intelligent controller directing the growth process. Instead many simple agents following simple algorithms which interact to create complex adaptive forms.

There are many researchers in the field of computational biology and physics who are simulating these behaviors in order to understand the systems better.  In doing so they are actually solving engineering problems and creating rather aesthetic visualizations/models.  I think some of these projects could be imitated to make some neat art/engineering stuff. Like fractal heat sinks.

Angiogenesis: An Adaptive Dynamic Biological Patterning Problem 

check out the video here


This paper describes how a simulation of angiogenesis (the formation of blood vessel networks from already existing blood vessles) was built to mimic the growth and adaptation of real systems.  Basically a diffusing chemical dubbed vascular endothelial growth factor, VEGF, is released by tissue that is starved of oxygen (called hypoxic tissue).  When the concentration of VEGF around an existing vessels exceeds a critical value a new vessels sprouts and wiggles about randomly searching for a vessel with a little feeler.  When it finds one it fuses and blood begins to flow.  Vessels change there diameter according to internal pressure, viscous stresses and chemical signals released by other vessels. Vessels are also allowed to migrate in space due to forces exerted by other vessels.  The entire simulation is pretty impressive and combines many different details of blood vessel growth and operation.  The overall idea, however, is pretty simple: vessels grow randomly in areas of low oxygen and update there positions and sizes based on physical forces.  The result is surprisingly blood-vessel like.  It would be awesome, but a little daunting, to try to simplify this simulation and run it in three dimensions.  The basic idea could be modified for the case of heat transfer.  Perhaps the blood could be hot, and the goal would be to supply heat to all parts of a given area or volume. Really cold regions would release a diffusing growth factor. Of course the way heat transfer occurs is not the same as oxygen gas.

Nervous System Hyphae Lamps

So maybe combine nervous-system’s approach with the angiogenesis simulation? This is probably way to complex for a month’s worth of work…

Frac Therm

These guys realized that making a hierarchical fractal-like structure for a network of tubes causes a more even pressure distribution in the longer tubes and requires less pressure despite its increased surface area.  This is ideal for solar panels for heating fluid.  In a way, there approach is exactly what I was imagining a combination of the above two simulations.  Maybe this could be used in situations where the aesthetic properties of fractal-like networks could be appreciated by humans.  Maybe refrigerators could have visible heat sinks, or radiators would escape the confines of perforated sheet-metal enclosures.  Anyway I think this approach could be applied to heat-sinks and 3D printed/cast.  Perhaps the best direction for this project would be a 3D diffusion-limited algorithm with a post-processing algorithm to thicken branches for structural reasons.  Heat sinks, however do not just want lots of surface area.  They also need to ‘breath;’ air needs to be able to flow around them. Maybe imitating corals would be good? Or perhaps lungs (except the flow is inverted; outside the structure instead of within).

Yvonne

31 Mar 2013

Sketch your Game: Ideas/Research
“Sketch the levels for your game.”
My capstone project will be a continuation of my second project on interactivity. I am dropping the floor switches and wall projection in order to scale my project down to a size more appropriate to the act of sketching. My current goal is to create a game rig where an individual can sit, place a piece of paper on the table, sketch, and then have the characters projected directly onto the drawn image. I’m still trying to figure out a good method of character control, but at this point I am leaning toward a generic game controller.

I’m also tossing around different ideas. Perhaps certain symbols can be drawn that a character or the AI can interact with in special ways? I.E. death traps and portals. Also, I need to work on my AI. Being very new to programming (second semester of Processing), I’m not exactly sure where to start. The ghosts were programmed, admittedly, in a very stupid way. It would be nice to give them a bit more intelligence, I would prefer that their movements become more unexpected and challenging to interact with.

[edited April 02, 2013]

SketchSynth

This is very similar to what I want to do. Basically you sketch something (in this case, a GUI), the computer recognizes the sketched forms, a projector maps additional information, and a camera reads your motions for interactivity and feedback.

Scratch
http://scratch.mit.edu/projects/archmage/9397
An interesting project. You basically sketch your own game. Walls, death traps, goals etc. Then you play your game. It doesn’t have the physical sketching part, but the general idea is similar to what I am going for. Maybe I’ll have different icons you can sketch that perform different things, kind of like the buttons/checkboxes/scrollbars on SketchSynth. …..Death traps!

Augmented Reality Project using BuildAR and Sketchup


In this project the computer recognizes certain symbols and letters. It responds by generating objects which you see on the computer screen. Pretty much like Reactables, except the physical tokens have an obvious meaning (the letters C A R generate a car). This is going back to my idea of being able to sketch certain icons and have the computer respond.