Visualizing information has been a fascination of mine for a long time. Obsessions with mapping and designing seem to go hand-in-hand where having a truly meaningful design is derived from the data through a set of rules. In interactive design, I love defining a few rules and letting the data build a visualization that tells a story no one would have ever thought of.
Time In Place is an interactive data visualization exploring computer vision recognition of activity in our physical space. I teamed up with the genius scientist Mario Rosasco, to set out and build a visualization that would show us the physical activity at a given location using only publicly accessible web-cam image data. This required us to develop a motion tracking program that would define people and cars in a video feed and then give us accurate data that could be used to help define the illustration. Imagining it was one thing, actually pulling it of was an incredibly challenging endeavor.
To start, I developed a design language that used collected information from my own activity. We knew that since this visualization would show activity throughout the day, we wanted a clock to be our canvas. A 24HR circular clock is silly so we stuck with the traditional 12HR one and simply defined AM and PM as red and blue respectfully. The undulating waves of color represents activity as it relates to the previous day. When a colored wave reaches further out from the median ring, this represents more activity than the previous day at this same time. When the color is faded and expands within, less activity than the previous day.
Not being content with a static data visualization, we set out to make it interactive. In fact, it's been running for over 3 years now on a server somewhere, which allows you to spin the clock back to, oh say, New Years Eve 2012 and see what the denizens of Capitol Hill Seattle were up to. In most cases, we can safely assume a predicted spike of activity on a Friday night. A simple yet rewarding affirmation that our system and visualization does indeed work as expected. Check it out for yourself on the site.
Behind the Scenes, this project works on a custom program which utilizes public traffic camera data to extract it's data. A motion detection program was created that would filter out people and cars from other general noise such as blowing trees and moving clouds. Once we've restricted the data to people and cars, we define this as activity. The more we count and the more it moves, the more activity. A simple yet effective processes for the purposes of this project.
The illustration above shows the raw camera data as it watches for changes and begins to track those changes. An image is extracted and then compared to other images just moments before and after to build an effective activity data set.
Once this data is collected from the raw camera feed and motion is detected, we quantize the results and graph them around a radial ring mimicking that of a standard clock face. Above and below you can see a sequence of examples explaining how we graph the data set over a clock face. It's rather simple really. A typical area graph is the basis for this visualization. We've cut the graph in half giving us 48 hours of data by simply comparing current data with data from 24 hours prior.
We overlap the area graph to set the AM and PM graphs. The darker color simply shows us all the data without obstruction. After this, we wrap it around a ring and voila! the clock graph.