Skip Header NavigationIntranet 
CENTER FOR EMBEDDED NETWORKED SENSINGContactDirectionsEmploymentEventsNews
HomeAbout UsResearchEducationResourcesPeople

Research Project


SlOGVIZ: VISUALIZING SENSOR LOGS

Technology > Systems Area Projects > Slogviz: Visualizing Sensor Logs

On this page: Overview | Approach | Systems/Experiments | Future Directions | People

Overview

This project is a combination of two original proposals and has become primarily about systems to support real-time data visualization. We take that charge quite broadly and have been studying not only application-driven visualization tools, but also mechanisms for generating the underlying data streams, data formats for publishing and archiving these streams, and rudimentary statistical analyses to enhance visualizations. We began by identifying a challenging visualization “context” within CENS; since September we have been working with the NIMS team to create a real-time system for data from the “laser mapper.” The team that we’ve assembled to tackle this problem is about as interdisciplinary as they come in CENS: Three students are currently supported, one from statistics, one from computer science and one from Design|Media Arts.

Figure1: A preliminary sketch of the laser mapper visualization tool.

Figure1: A preliminary sketch of the laser mapper visualization tool. At the left we show the “select” facility to restrict the view of the data; and on the right we show a simple distance calculation between two user-specified points. These and a host of other functions were identified through discussions with the NIMS team.

Approach

We have intentionally remained very close to the data and its consumers. Our goal is to create a tool that can be used in the field by scientists or technologists who are running the NIMS laser mapper. Our work begins with the NIMS node itself and we’ve helped reorganize a portion of the node’s data handling routines. From there, we move out to our visualization tool; as seen in the figure above, its functionality is set (at least initially) by the needs of experimenters in the field. These considerations quickly led to interesting problems in both statistical modeling and computation.

Systems/Experiments

Our work to date roughly tracks the flow of data from sensed phenomenon in the environment to a data archive. Initially, data collection within the NIMS laser mapper was designed to aggregate data locally, on the NIMS node itself, and visualization required post-processing to translate the scanned points into VRML. We began our project by collaborating with the NIMS team to create a simple socket protocol that would transfer processed data from the NIMS node to our visualization tool. After more discussions, we realized that the path from the coordinates recorded by the laser mapper to VRML involved a number of transformations to account for the node’s position along the transect and to correct for sag in the NIMS main wire. These computations are sufficiently complex that we decided it was preferable to “expose” as much of the data processing as possible. This shift had the added benefit of consolidating NIMS software; we worked with Maxim Batalin of the NIMS team to draft a Player API which will now advertise the methods for calculating the necessary corrections, logging node position, and even node motion control. Once this is complete, our visualization tools will communicate directly with the Player to extract data or effect calculations.

The next major systems accomplishment involves the successful integration of the powerful, widely-used open source statistical package R with Processing, a Java-based graphics programming environment. Processing is also open-source and was co-created by UCLA Design|Media Arts faculty Casey Reas while he was at the MIT Media Lab. This integration enables joint development by our design graduate student working in Processing with our statistics graduate student working in R. Through this coupling of best-in-class tools for lightweight graphics programming and statistics, we will continue to explore simple, integrated approaches to interactive visualization and statistical analysis of CENS data. Forging the link between R and Processing required significantly updating the RSJava package for our current development platforms. The link allows us to pass objects between the two languages directly, avoiding intermediate files or other costly communication mechanisms. Again, the advantage here is that statisticians, accustomed to programming in R can share their algorithms directly with designers who are facile in Processing.

The primary test case for this link involves real-time clustering of the laser mapping data. Our current algorithm maintains a set of “objects” in the environment defined in terms of their distance from the NIMS node. These objects are updated with each new scan; the method is similar to dynamic or online mixture modeling. R is the appropriate language for implementing algorithms of this kind, with its rich simulation and modeling primitives. This clustering, however, is not a one-way process. We are currently extending the scheme to allow feedback from a user. The visualization tool provides a selection facility that can be used to highlight points that should be grouped together. Formally, the introduction of tagged data shifts the problem from unsupervised to supervised learning. At a technical level, it means decisions made through the visualization interface need to be communicated back to R; Point data and possible tags flow into R, cluster membership finds its way back to Processing. In this sense, our project is a study in distributed statistical computing.

Future Directions

As mentioned above, our next steps are primarily “piping.” We need to test out the Player API, and test out the clustering algorithms in a real-time setting (that work has involved mainly off-line static data sets “replayed”). Our work will culminate in the spring with a NIMS laser mapper deployment in the Santa Monica Mountains.

People