Category Archives: Int Programming

Progress on GPS visualization project for the data workshop

See: data workshop

I wanted to get a feeling for the data so I started off by creating a quick and dirty Processing sketch that visualizes the location data recorded with AntiMap. I used Unfolding Maps, a very complete and well-made library for using maps inside Processing. Here is a screenshot.

That felt very static, and the core of my concept is how walking brings the city to life. I wanted to see how it would look like if I animated the trail, showing only a part of it. I also cleaned up the code a bit so it would be a bit easier to work with. This is the result:

Visualization of GPS data, iteration 1 from Bert Balcaen on Vimeo.

It draws a circle for each location. The circles grow and gradually become more transparent. It’s simple but interesting: it brings the data to life.

Cristobal suggested to use the map colors for the trail. I really like that idea, so I thought that would be a good next step. Here’s a video:

Visualization of GPS data, iteration 2 from Bert Balcaen on Vimeo.

However, at the moment I’m stuck on how to pick the right colors. The Unfolding library uses the GLGraphics for drawing maps, making the whole thing fast by using OpenGL. It also makes some basic things more complicated. For example: it seems that the get() function to find a color’s pixel doesn’t work as it should. I think some sort of offset is applied.

Also posted in Bert Balcaen, Students, Workshop | Tagged | Comments closed

Visualizing skateboarding

Skataviz – Prototype from Design I/O on Vimeo.

iPhone tied to skateboard, records location and orientation. Custom software written in openFrameworks processes the data. It’s smart enough to detect tricks. I wonder how they managed to map the location data to the video.

Can be interesting for the data workshop.

Also posted in References | Comments closed

Project plan GPS visualization project for the data workshop

Core of the idea

  • Walking brings the city alive. The piece will visualize data from walks and runs.
  • We all create our own version of the city. The visualization will not include a typical map – it will show how we create Barcelona with our walks. People watching the piece might be able to recognize neighbourhoods from the patterns generated by the walks.
  • I will focus on how walking is an act that exists only in the moment. The route will not be shown in its entirety.
  • The visualization of the location trail will use the standard map colors. This can help people to guess where to walker is, and will also reveal something about the qualities of the space used during the walk: main roads, sidewalks, buildings, parcs, …
  • Each GPS record is visualized as a line. Length is inversely related to speed. Short lines = fast. Long = slow. Direction of the line correspond to the compass.
  • Add basic info display with speed etc.

Phase 2: multiple routes

  • Check with running file, see if it’s different enough.

Phase 3: POI data

  • POI data is displayed along the route. The amount of POI’s displayed depends on the speed in a segment of a route. Slow sections have more POI’s.
  • POI’s popup with name when passing by, and disappear when moving further.
  • Data sources for POI’s: Foursquare.
  • Add street names to info display.
Also posted in Bert Balcaen, Students, Workshop | Tagged | Comments closed

Data workshop – ideas, research, feedback

Assignment

Visualize GPS & compass data recorded with AntiMap.

Notes on using Antimap

I experimented a bit with the iPhone version of the app. It works well. Here are a few things that are good to know:

  • The app should stay in the foreground. Don’t put your phone in stand by, don’t minimize the app, and don’t switch to another app. If you do this the recording will be stopped and there is no way to continue it. The CSV file is saved though, to in the theory you can start another session and somehow glue to the CSV’s together.
  • Using GPS requires a lot of energy. Best to have a full charge if you want to record a long session.
  • Rotation: I put it in the pocket of my shirt. It works well, but here is the trick: if you put in your pocket with the screen facing towards you, then the angle will be correct. If the screen is facing away from you you need to do 360 – the angle from the CSV to get the correct angle.

I made a quick and dirty sketch that visualizes the data on a map.

Idea: walking as a form of drawing that reveals the city

Inspiration: Michel de Certeau

De Certeau is a French philosopher and sociologist from the 1960s. For him, walking in the city is a creative act. It is not the city planners that make the city, it’s the people in it that bring it to life he says. Here is a a good summary on de Certeau.

Previous project: 35 days in NYC

In a previous project I visualized 35 days of location data recorded with OpenPaths. I like it because it maps my experience of the city – which is different from someone else’s and the official city map. It shows my New York. I also like it visually: it’s organic, instead of the typical straight lines between points.

This assignment could be a nice way to revisit that project and to elaborate it. Maybe an animation can be interesting. Or maybe I should only show an animated part of the trail, instead of the everything at the same time. Also: the data I used was not continuous, because OpenPaths works in a strange way and only takes a snapshot every once in a while.

References

YesYesNo did a similar project for Nike+. Here the link between data and visualization very abstract. Maybe it’s nice to have it tighter?

Techniques

I will use a particle system that emits particles at the current location (lat/long). Speed could influence how it reacts with other particles. Fast: repel other particles. Slow: attract. Compass: direction. I recorded a couple of different styles of walks: one very functional (from home to IAAC), one while running, another one going home with some detours, … Could be nice to have them all together according to same algorithm, and hopefully see some interesting differences.

Feedback from Cristobal

  • Use colors from a real map, giving people hints about the areas where GPS data was recorded. “You could use a colour palette that will be white (for streets), gray (for buildings) and green (for parks). I think it could be really easy to identify the visuals as an abstract representation of a map because we associate those colours to Google maps.” Great idea. I already have a basic Processing sketch that loads the GPS data and displays it on map. Shouldn’t be that hard to have it pick up the colors from the map and use these for the particles.
  • “In this case, it would be awesome if the app grabs the POI along your path, affecting the visuals in a special manner. It also make sense what you mentioned about the speed at which you travel as a way to set how much you can enjoy the trip (going slow = getting more details of the city) versus a fast transportation.” I thought about this before, but it seemed to conflict a bit with the idea of “people create the city” and when I think about POI data, McDonalds and Starbucks are the first things that come to mind. But maybe I should just explore Foursquare & co a bit better, and see if there is a good way to filter out companies and administrative location and see what kind of data this gives. For example, the guys from the startup I used to work with had tagged the bench in the park next to our office.

Side note: on smartphones and GPS

Also posted in Bert Balcaen, References | Tagged | Comments closed

Data Workshop

Hi all, please read the following info related to the workshop:

Our data source
We’re going to be working with AntiMap as the tool to grab data. Please download it to your iPhone/Android and visit Antimap’s website to get more info about how to use it and the data it provides.

Here is the list of data that you can gather with the app:
- Longitude and Latitude (angles, minutes and seconds in a range of -180 to 180 for the longitud, and 90 to -90 for the latitude)
- Compass direction (inverted angle from 0 to 360)
- Speed (Km/h)
- Distance (m)
- Time (in milliseconds since the app starts to record)
- Point of interest (POI). I never tried how this works though…

Workshop plan
- Tue: Concept. Send me your ideas via email (min. 2, max. 3). Each idea should be explained in 250 words max. and can have an image as reference (from a project found online or your own sketch)
- Wed: Design. You will develop your visual sketches into a nice graphic design during the class. We’ll work together in defining the code structure for your project as well. The last 30 min of class we will review everyone’s project to get a status of the workshop.
- Thu & Fri: Code. We can try to meet on Friday (or Saturday if you prefer) to do the final adjustments to your code.
Projects can be delivered until Sunday (but no further because we will start another weekly workshop)

Design constrains. You must follow these basic rules in your design:
- You can only use basic shapes for your graphics (points, lines, circles, rectangles and triangles)
- You can only use grayscale plus 1 highlight color
- You can only use 1 Typeface (up to 3 different sizes)

And finally, some recommendations:
- Take some time to research. You’ll probably find inspiration for you visuals or their behaviour (motion). Post what you find interesting for your project in the blog (under “References” category).
- Be realistic with the time you can dedicate to your project, it’s important that you deliver in time.
- Take clever decisions to simplify your project while maintaining the overall concept. Do the maximun with the minimun elements.
- Look for code that you can re-use. OpenProcessing is a good source of code.
- Enjoy it!

Also posted in Workshop | Tagged , | Comments closed