ExtraCredit for Project 3's OPTION 1 - Recognition OR Visualization
Proposal Due Nov. 15,
Project DueDec. 2 ,
(points 130)
Choose ONLY
1 task --Recognition OR Visualization for the task.
NOTE: your documentation and code will only contain 1 of these (in the past this used to be an assigned project where both were completed)
You are to write a GUI Java application that will perform Recognition and Visualization of data as an extension of Project 3, Breast Cancer feature detection (retain all the same functionality of Project 3).
Recognition (Process->Recognize menu operation)Using training data you will implement a nearest neighbor recognition sceme using the features you can detect with your system in Project 3. The output of this recognition (Process->Recognize) will be either Cancer(grouping all stages together....if you want to
|
|
VisualizationYou will visualize the features of a blob (or blobs in micro-calcification case) as well as their certainty and importance and if they possess it (recognition has already taken place) their recognitionLabel (see above). It is typically the case that in any given analysis of a possible tumor/mass some features will be of more importance to others. Remember in Project 3 each feature had associated with it bot certainty and importance. Also, you will indicate a label telling if it is "Cancer-Malignant" or "No Cancer-Benign".
Visualization is invoked via the menu option Process->Visualize. It is only available after Process->Recognize has been performed. The goal of our Visualization Application is to presenting data in such a manner that users are made aware of the locations and if possible the meaning of the features as well as its certainty and importance . This is a unique project in that there is NO right solution to this problem and every person may have different ideas on how to visualize this information. Part of this work is to review what others have done in this area (visualiztion, uncertainty visualization, display of breast cancer detection results) and to propose something unique in the way that your system visualizes. Here are some techinques/visual queues some of which have been used in previous generic visualization research
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. Some of your detected breast cancer features may be already in a visual form such as pixels belonging to a boundary and its shape. However, others like possibly a measure of texture. So, the task of visualizing the data (how do you show texture, how do you show the boundary shape) as well as visualizing its importance and its certainty must be accomplished. With each different kind of data, different kinds of uncertainties can exist. Visualization Controls (OPTIONAL extra Credit +30 points added to your total class score). For extra credit you may choose to have the following controls that become availabe only after Process->Visualize has been selected by the user. 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:
|
Recognition and Visualization Data Input
Input to the system should be your CancerAnalysis object (or additionally the loading of the equivalent XML file) extending the system from Project 3.
The Process
Click here to see an outline of
the stages of this project. .
Other Requirements:
1) You must extend your Project 3.
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.
Deliverables
- Visualization Proposal - following detailed example above should be posted as a thread to the "Project 4- Visualization Proposal" discussion board.
- Implementation and turn in of code and results. It should include 2 files turned in to blackboard project link "Project 4- Final"
1) zipped up (using zip standard only) file containing all code (in Eclipse environment).
2) word document (see project description). This document MUST BE AN EXTENSION OF YOUR PROJECT 3 DOCUMENT and must contain (note the NEW items are shown here in red):
Word Document (click here for template you MUST use) that details the following:- Section 1 Execution Instructions:
Instructions for me to download and run your code. YOU NEED to show me screen shots of you doing this from your uploaded blackboard code.....this forces you to make sure that I can run your code. You MUST have the following screenshots AND give description on what to do: screenshot 1.1 = screen shot of your files uploaded to Project 1 turn in folder on blackboardFIGURE HERE
screenshot 1.2 = directory view of "temp" directory you unzipped file to showing the unziped files and directory structures.
FIGURE HERE
screenshot 1.3 = Eclipse running where you have opened up project file in "temp" directory.FIGURE HERE
screenshot 1.4 = Eclipse running the application - show screenshot of it running. If I must do something beyond simply hitting the "run" button, you need to give screenshots and step by step instructions.
- Section 2 Code Descpription
A describing how code is structured and the state of how it works. Give a describption for each filename listed. - Section 3 Testing:
here you give screen shots of you running the various stages of the program as detailed here: - Section 4 Comments
Optional any comments you have regarding your code (necessary if you code is not working, you need to tell me in detail what the problem is or what is missing)
section 3.1: loading image -
FIGURE HERE
screenshot 3.1a= pop-up file dialog box where you have selected the image you are going to load in your program.FIGURE HERE
screenshot 3.1b= the image being viewed in your application that was just loaded.section 3.2: Blob Detection
you need to discuss your results….where the blobs detected correctly …where the features for each blob correct.!!!
FIGURE HERE
screenshot 3.2a = screen shot of active image in your application you are going to process
FIGURE HERE
screenshot 3.2b = screen shot of ROI , new active image, that you are going to process (OPTIONAL if did not do ROI option)
FIGURE HERE
screenshot 3.2c = screen shot after you do Process->Feature Detecton showing BLOB results in scrollable window
DUMP XML here
Listing 3.2 XML file results from running Process->Feature Detction on image in screenshot 3.2.1bsection 3.3: Recognition
you need to discuss your results….where the blobs recognized correctly !!!!!
FIGURE HERE
screenshot 3.3a = screen shot of active image in your application you are going to recognize (this may be an ROI)
FIGURE HERE
screenshot 3.3b = screen shot after you do Process->Recognize showing BLOB results (now with recognitionLabels !!!!) in scrollable windowDUMP XML here
Listing 3.3 XML file results from running File->Save CancerAnalysis after doing previous step.section 3.4: Visualization
you need to discuss your results….is this what you expected...how do your visuals convey the feature data and their certainty and importance values!!!!
FIGURE HERE
screenshot 3.4a = screen shot of active image in your application you just recognized in secton 3.3.(this may be an ROI)
FIGURE HERE
screenshot 3.4b = screen shot after you do Process->Visualize (now with visualization) in scrollable windowsection 3.5: Visualization Control ......ONLY if you did the extra credit.
you need to discuss your results….is this what you expected...how do your visuals convey the feature data and their certainty and importance values!!!!
FIGURE HERE
screenshot 3.5a = screen shot of active image in your application you just recognized in secton 3.4.(this may be an ROI)
FIGURE HERE
screenshot 3.5b = screen shot showing visualization controls after you do Process->Visualize (now with visualization) in scrollable windowFIGURE HERE
screenshot 3.5c = screen shot showing results of Blob FiltersFIGURE HERE
screenshot 3.5d = screen shot showing results of Importance FilterFIGURE HERE
screenshot 3.5e = screen shot showing results of Certainty Filter - Section 1 Execution Instructions:
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/
[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.