Interactive Visualization of SILENCE Sensor Data
The aim of this project is to create an interactive visualization interface that will map the values received from a field of sensors, allow the user to control the resolution of the received map and power usage of the sensors, and perform and visualize analytics of the data. At any point in time, the user can control the tradeoff between resolution and energy consumption by changing parameters of the SILENCE algorithm from the interface. The interface also provides information such as mean and variance of sensed values within an area, and power usage during each time interval.
Sensors systems can be used for a wide range of applications and can provide great volumes of valuable data, but a user who is analyzing this data may not be able to easily interpret it in its raw form. Visualization of the sensor data allows a user to quickly understand the useful information underlying the values from the sensors, such as intuitively finding a hot spot in a temperature map by a color that stands out. It is also useful for one monitoring the sensor system to be able to control aspects of the sensors to optimize performance or meet certain criteria. With SILENCE, there is a tradeoff between map resolution and power usage based on the number of representative sensors transmitting data. If the user is able to selectively change the density of representative sensors based on where more resolution is desired, s/he will be able to maximize the information gained from the sensors as well as minimize power usage.
The project is coded in C++ and uses OpenGL and FLTK libraries. In the first step, a time-varying temperature map is simulated in Matlab, and the sensor values are passed to the SILENCE algorithm. For each time instant, representative sensors are selected using a simplified SILENCE algorithm, which designates certain representative sensors (REPs) to transmit data on behalf of surrounding associate sensors that collect similar and correlated data (ASSOCs). The ASSOCs sleep in the meantime to save energy. The number of ASSOCs and REPs is determined by given similarity and correlation thresholds. From the REPs given by the SILENCE algorithm, a map is constructed using a Voronoi Diagram.
On the GUI, the user can change the similarity and correlation thresholds to change the resolution of the map. The resolution of the entire map may be changed at once, or the user may select only certain areas on the map. Power usage at each time instant is plotted at the bottom. The user can map only the values of the REP sensors or the average of the REP values and its ASSOC values. The user may also see the variance between a REP and its ASSOCs, which is visualized by height in 3D.
The project successfully visualizes the sensor data into a map and provides functions for controlling the resolution and power usage. Further analytical functions and quantitative utilities may be added in the future.