Project 4: Visualization

Due   Nov. 14
(points 200)

Groups

Letter Requesting Data


    You are to write a GUI Java application that will perform Visualiztion of data with uncertainies. The goal is to presenting data in such a manner that users are made aware of the locations and degree and if possible the meaning of uncertainties that exist. This is a unique project in that there is right solution to this problem and every group will develop their own methods of displaying the uncertain information. Part of this work is to review what others have done in this area and to propose something unique in the way that your system works. Here are some techinques/visual queues some of which have been used in previous research in some way to display uncertain information:

    • Opaqueness-Transparency
    • Icons/glyphs
    • Color (psuedo-coloring or color representation)
    • Brightness/Intensity
    • Texture
    • Atmospheric Effects (mine, i.e could make misty/foggy areas of uncertainty, related but different than opaqueness-transparency)
    • Adding/Altering Geometry
    • Layers (mine, 1-each kind of uncertainty could have a separate layer that you could hide..i.e. Photoshop, 2-each new report,if appropriate, of an uncertainty could be in its own layer, again that you could hide as in Photoshop)
    • Focus
    • Pop-up textual information (mine)
    • Animations
    • Time Fadding (mine, i.e. disappears in time)
    • Sounds (volume, key, duration, fade)

     

     

Why is there unceratinty and kinds of data:

There is all kinds of data that one can imagine you would wish to visualize that would posses uncertainty. Consider environmental/weather/evelation/map data or financial data or intelligence information or medical scans, etc. Some of this data may be already in a visual form such as the medical scans whereas others like financial data is not. So, the task of visualizing the data independent of the uncertainty must be accomplished. However, this may not be independent of determining how to display the uncertainties, thier "location", "magnitude", and possibly their "meaning".

With each different kind of data, different kinds of uncertainties can exist.

 

Environmental Data

"Consider, environmental data which have inherent uncertainties which is often ignored in visualization. For example, meteorological stations measure wind with good accuracy, but winds are often averaged over minutes or hours. As another example, doppler radars (wind profilers and ocean current radars) take thousands of samples and average the possibly spurious returns. Others, including time series data have a wealth of uncertainty information, that the traditional vector visualization methods such as using wind barbs and arrow glyphs simply ignore. " see [1] below

 

Maps with Intelligence Data

Now lets consider even a more interesting problem of map building with "intelligence data". In this case, you may have visual data, such as images or maps of the area under consideration but, you can also have additional information potentially from analysis of this data or from other sources. Consider the application of mapping out an area for disaster relief. You could start with a map/image of the area. As human reports come in, you may want to update this map with this information. This information carries with it uncertainties. Displaying the degree of belief/unbelief with each piece of information could be very useful as more than one person reports similar information. With this kind of task, you have the problem of visualizing different kinds of data. Data fusion techniques could be explored.

 

Financial Data

Over the course of the day, as measured sensor data becomes available, discrepancies between observations and model forecasts are resolved and integrated so as to update and improve the next forecast run. The process of resolving the differences between model output and sensor measurements is known as data assimilation. Traditional methods include kriging and optimal interpolation. They involve statistical and historical information on reliability of sensor measurements (including desirability of sensor location, calibration, etc.), variability of the field, model resolution, initial and boundary conditions, etc.

Some of the parameters of a data assimilation model are integration techniques, choice and frequency of incremental update methods, interpolation algorithms, resolution of the model grid, estimation filtering and smoothing algorithms and finite differencing schemes. All of these parameters can have a profound effect on the tendencies displayed by a forecasting model. Hence, having visualization tools to display these possibly conflicting information is very useful for the scientists in quickly identifying regions of high conflict and/or regions of low confidence levels. Allowing the scientists to control the data assimilation variables can assist in constructing a protocol that is appropriate for a specific financial model.

 

System Extensibility

Consider carefully how you can make this system generic as possible. Consider if you were to have different kinds of uncertain informaiton comming in. Possibly, you can have the user enter the kinds/classes of information that could possibly be presented to the system and have the program automatically choose the visualization technique(s) for displaying each kind of information. This could be done with the definition of a kind of file (and its format) the user would need to create and give to the system along with the data. Another possibility is for the user to interactively enter in this information.

 

System Interface Functionality

Along with simply displaying the information and uncertainties visually to the user, you can offer the user interface tools to alter the display of the data so that they in a sense can analyze the data visually through manipulating it. Some ideas here can include:

  • allowing the user to filter/select what kinds of data they want displayed. This is usefull when there is more than one data file that must be visualized at the same time.
  • allowing the user to select what levels of uncertainties may be displayed (e.g. only display uncertainties <10%, etc.)
  • allowing the user to zoom into the data
  • allowing the user to turn off certain kinds of uncertainty visualization queues. (e.g. they may find icons disturbing)
  • allowing the user to not simply turn off but to select which kinds of visualization queues are used for each kind of uncertainty.
  • allow the user in some way to indicate uncertainties (either through mouse selection or region selection), uncertainties they wish to "turn off" and then to "re-turn on".

Definition of some Terms

 PseudoColoring involves analysis of the data values in typically a non-color data/image and the creation of a transformation/mapping functions that map each possible data value to a color value (not-necessarily unique).

 

The Process

Click here to see an outline of the stages of this project. You will work in teams of 2 to 4 and present the running program and the results to your classmates.  As part of the literature review stage, (see stages) your group will lead a class discussion on the review of 3 papers on the subject of Uncertainty Visualization. Your other classmates should from this discussion understand how the system generally works. You are to post to blackboard the papers (if they are in electronic form) or their references that you will be reviewing ahead of time.

You will be given time in class to work on this project but, it may require time outside of class.

After you demonstrate to the class how your system works, the rest of your classmates will take the following survey to give you feedback.

 


     


    Other Requirements:

    1) If images are possible input data, the program must accept either JPEG or GIF images.

    2)  Program should be a Java GUI applicaiton that you compress into a JAR file for easy use.

    3) See other requirements above and below.
     

    Some tips:

    • See the comments in the code, to help you get started.
    • Change the loading of any images to use MediaTraker class to make sure the image loaded successfully.
    • For images, you will need to use PixelGrabber class to grab data into an array that you can manipulate.

     


     
     
     
     

    Sample Data Sets:
     

    Environmental

    I have selected weather as the domain under environmental, although there are many other kinds like sysmec. The weather information is spatial in nature as it is distributed over some land mass. Uncertainties are presented as reports concerning the probability and location of verious weather conditions

    DATA Sets

    NOAA-Weather Forcasting

    typically includes data assimilation (obtained from measured data and mixed in with forecast models), hence called "ensemble forecast" data. Production grade data available at this website

    Nasa - simulated

    Map/Intelligence

    Here I have selected that you have either a map or image of an area as input. The uncertainties are presented as pieces of intelligence information and represent the presence or absence of objects such as people, buildings, vehicles in the area.

    SITES
    MapInfo - homeland security

    Dragon Battlefield Visualization System

    Paper about Dragon

     

    Data Format

     

    Workshop on Battlefield Vis

     

    2D Battlefield Vis Tool

    homepage

    Situation Visualization
    Intelligence/Situation Visualization.....Mixed-Initiative Systems
    GROTTO VR tool - another Battlefield Vis tool (3D)

     

    DATA Sets
    Disaster Recovery

     

    Medical

    The idea here is topics such as cancer detection where an recognition system has processed the image and the output are possible cancerous regions. Associated with each classification is a probability. Here it would be interesting to visualize the data for the doctor to look at indicated the probability as well as possibly giving visual clues as to why the recognition system thought it was cancer.

    DATA Sets
    Mammogram Database - PARTIAL, need output

    Skin Cancer Detection PROGRAM ONLY

    homepage

     

    About Mammography from Shruti
    MIAS

     

     

     

     

     

    Financial

     



Deliverables

  1. HTML paper on how you designed your Uncertainty Visualization System.  Describe your approach and why you decided to take it. Show results on the data sets above. Discuss how you might improve your algorithms.
    Upload HTML w/images, etc. to one person's server account. Print out this HTML paper and write on top the URL of its location.
  2. Fully comment and test out program.
  3. Turn in diskette with all java code and compiled class files needed to run the program. IF YOU use additional classes not in standard Java, you need to have all of the files here...make a JAR file.
  4. Printout of code, fully commented, with YOUR NAME ON TOP, and INSTRUCTIONS ON HOW TO RUN THE CODE FROM YOUR DISKETTE.
  5. A one-page describing how code is structured and the state of how it works.
  6. Print outs of screen shots of program working showing the results of: image loading and display of image before and after processing.
  7. Discuss your literature review in class, your group is to lead the discussion on 3 papers.
  8. Participate in reviewing other systems via survey form

Resources

I found the following links of the web that may be helpful. Search yourself for previous research in this area.

1) Uncertainty visualiztion: http://www.cse.ucsc.edu/research/slvg/unvis.html

[2] Penn State's Uncertainty Vis. center http://www.geovista.psu.edu/research/uncertainty/

[3] Howard, D., and A. M. MacEachren. 1996. Interface design for geographic visualization: Tools for representing reliability. Cartography and Geographic Information Systems 23:59-77.

[4] Fauerbach, E., Edsall, R., Barnes, D., & MacEachren, A. (1996). Visualization of uncertainty in meteorological forecast models. M.J. Kraak & M. Molenaar (Eds.), Proceedings of the International Symposium on Spatial Data Handling (pp. 465-476), Delft, The Netherlands, August 12-16: Taylor & Francis.

[5] MacEachren, A.M. (1992). Visualizing Uncertain Information. Cartographic Perspectives, 13(Fall), 10-19.

[6] Evans, B.J. (1997). Dynamic display of spatial data-reliability: does it benefit the user? Computers & Geosciences, special issue on Exploratory Cartographic Visualization, 23(4), 409-422.

[7] International Community for Auditory Display

[8] To request Thesis on "Data Uncertainty Sonification and Visualization"

[9] van der Wel, Frans J. M. ; van der Gaag, Linda C. ; Gorte, Ben G. H. "Visual exploration of uncertainty in remote-sensing classification." Computers and Geosciences v. 24 no4 (May '98) p. 335-43

[10] Davis, Trevor J. ; Keller, C. Peter. "Modelling and visualizing multiple spatial uncertainties"  Computers and Geosciences v. 23 (May '97) p. 397-408

[11] Ehlschlaeger, Charles R. ; Shortridge, Ashton M. ; Goodchild, Michael F. ": Visualizing spatial data uncertainty using animation." Computers and Geosciences v. 23 (May '97) p. 387-95

[12]Mahoney, Diana Phillips. "The picture of uncertainty" Computer Graphics World v. 22 no11 (Nov. 1999) p. 44-6?

[13] Suresh K. Lodha, Catherine M. Wilson, Bob Sheehan, "LISTEN: Sounding Uncertainty Visualization", IEEE Visualization '96 , p.???

[14] C. M. Wittenbrink, A. T. Pang and S. K. Lodha, "Glyphs for Visualizing Uncertainty in Environmental Vector Fields", IEEE Transactions on Visualization and Computer Graphics, September 1996, pp. 266-279

[15] A. T. Pang, C. M. Wittenbrink and S. K. Lodha, "Approaches to Uncertainty Visualization", Visual Computer, November 1997, Vol.13, pp. 370-390.

[16] Goodchild, M.F., Buttenfield, B.P. and J. Wood. 1995. Introduction to Visualizing Data Validity. In H.M. Hearnshaw and D.J. Unwin (eds) Visualization in GIS. New York: Wiley.

© Lynne Grewe