Difference between revisions of "User:Saweiner"
From REU@MU
(43 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
Throughout Marquette University's 10-week summer REU program, Computation Across the Disciplines, I will be researching applications of graph theory to computer vision and image segmentation problems. More specifically, I hope to be able to utilize the graph-cut technique in order to isolate images of the heart and its components from CT scans provided by local hospitals. I will be working under the guidance of [http://www.marquette.edu/mscs/facstaff-bansal.shtml Dr. Naveen Bansal]. | Throughout Marquette University's 10-week summer REU program, Computation Across the Disciplines, I will be researching applications of graph theory to computer vision and image segmentation problems. More specifically, I hope to be able to utilize the graph-cut technique in order to isolate images of the heart and its components from CT scans provided by local hospitals. I will be working under the guidance of [http://www.marquette.edu/mscs/facstaff-bansal.shtml Dr. Naveen Bansal]. | ||
− | + | ||
+ | |||
+ | ='''Week 1 (5/29 - 6/1)'''= | ||
==='''Tuesday 5/29'''=== | ==='''Tuesday 5/29'''=== | ||
Line 22: | Line 24: | ||
* Located and obtained the Ford-Fulkerson publication on flow networks in Memorial Library | * Located and obtained the Ford-Fulkerson publication on flow networks in Memorial Library | ||
− | + | ||
+ | |||
+ | ='''Week 2 (6/4 - 6/8)'''= | ||
==='''Monday 6/4'''=== | ==='''Monday 6/4'''=== | ||
Line 34: | Line 38: | ||
==='''Wednesday 6/6'''=== | ==='''Wednesday 6/6'''=== | ||
− | * Began writing code for | + | * Began writing code for GraphCut algorithm, completed about 350 lines |
==='''Thursday 6/7'''=== | ==='''Thursday 6/7'''=== | ||
− | * Finished a rough draft of the | + | * Finished a rough draft of the GraphCut algorithm, totaling about 700 lines |
* Attended weekly REU luncheon and learned about the do's and don't's of research presentations | * Attended weekly REU luncheon and learned about the do's and don't's of research presentations | ||
* Met with Dr. Bansal to give a progress report and discuss next steps | * Met with Dr. Bansal to give a progress report and discuss next steps | ||
Line 44: | Line 48: | ||
==='''Friday 6/8'''=== | ==='''Friday 6/8'''=== | ||
* Completed modules 2 and 3 of the Responsible Conduct of Research training | * Completed modules 2 and 3 of the Responsible Conduct of Research training | ||
− | * Began to modify | + | * Began to modify GraphCut algorithm (fixing various syntax errors and adding small improvements) |
− | + | ||
+ | |||
+ | ='''Week 3 (6/11 - 6/15)'''= | ||
==='''Monday 6/11'''=== | ==='''Monday 6/11'''=== | ||
− | * Continued to fix | + | * Continued to fix GraphCut algorithm |
* Found more efficient storage for Graph data structure | * Found more efficient storage for Graph data structure | ||
* Fixed several initialization errors | * Fixed several initialization errors | ||
* Added several fringe cases onto the algorithm, now totals about 1200 lines | * Added several fringe cases onto the algorithm, now totals about 1200 lines | ||
− | * Finished second draft of | + | * Finished second draft of GraphCut algorithm |
==='''Tuesday 6/12'''=== | ==='''Tuesday 6/12'''=== | ||
− | * Met with grad student to discuss generalities of | + | * Met with grad student to discuss generalities of GraphCut algorithm |
* Worked with grad student to implement algorithm | * Worked with grad student to implement algorithm | ||
Line 63: | Line 69: | ||
==='''Thursday 6/14'''=== | ==='''Thursday 6/14'''=== | ||
− | * Continued revisions of | + | * Continued revisions of GraphCut algorithm in preparation for its first test run |
* Met with Dr. Bansal for our weekly progress report | * Met with Dr. Bansal for our weekly progress report | ||
* Took preliminary steps to obtain image data for future use with the GraphCuts algorithm | * Took preliminary steps to obtain image data for future use with the GraphCuts algorithm | ||
− | * Sought out different implementations of the max-flow/min-cut algorithm to compare to (and possibly combine with) my current | + | * Sought out different implementations of the max-flow/min-cut algorithm to compare to (and possibly combine with) my current GraphCut algorithm |
==='''Friday 6/15'''=== | ==='''Friday 6/15'''=== | ||
− | * Continued to modify | + | * Continued to modify GraphCut algorithm |
− | * Added condensation method to | + | * Added condensation method to GraphCut algorithm in an attempt to conserve memory |
− | + | ||
+ | |||
+ | ='''Week 4 (6/18 - 6/22)'''= | ||
==='''Monday 6/18'''=== | ==='''Monday 6/18'''=== | ||
* Read ''An Experimental Comparison of Min-Cut/Max-Flow Algorithms for Energy Minimization in Vision'' (Boykov et al.) | * Read ''An Experimental Comparison of Min-Cut/Max-Flow Algorithms for Energy Minimization in Vision'' (Boykov et al.) | ||
− | * Modified | + | * Modified GraphCut algorithm based on Boykov's active node method of operation |
− | * | + | * The GraphCut algorithm is approaching completion, should be ready for testing by next week |
==='''Tuesday 6/19'''=== | ==='''Tuesday 6/19'''=== | ||
− | * Fixed several syntax and arithmetical errors in the | + | * Fixed several syntax and arithmetical errors in the GraphCut algorithm |
* Met with Dr. Bansal and graduate student to obtain image segmentation data set | * Met with Dr. Bansal and graduate student to obtain image segmentation data set | ||
* With new image data as reference, I began to write main method for reading in image and implementing the graphCut method (completed about 600 lines) | * With new image data as reference, I began to write main method for reading in image and implementing the graphCut method (completed about 600 lines) | ||
==='''Wednesday 6/20'''=== | ==='''Wednesday 6/20'''=== | ||
− | * Completed code for handling the graphics of the | + | * Completed code for handling the graphics of the GraphCut algorithm, algorithm now totals about 2500 lines |
* Encountered import errors involving the graphics package, began to search for an appropriate library download | * Encountered import errors involving the graphics package, began to search for an appropriate library download | ||
==='''Thursday 6/21'''=== | ==='''Thursday 6/21'''=== | ||
− | * Began to create a new Java library to handle graphics of | + | * Began to create a new Java library to handle graphics of GraphCut |
* Acquired necessary source code for new library from GitHub | * Acquired necessary source code for new library from GitHub | ||
− | * Attended weekly REU luncheon to share progress and | + | * Attended weekly REU luncheon to share progress and attended a presentation on computer science education |
− | * Met with Dr. Bansal for our weekly progress report and showed him the | + | * Met with Dr. Bansal for our weekly progress report and showed him the GraphCut algorithm as it currently stands |
==='''Friday 6/22'''=== | ==='''Friday 6/22'''=== | ||
* Continued to work on constructing graphics library from source code | * Continued to work on constructing graphics library from source code | ||
− | + | ||
+ | |||
+ | ='''Week 5 (6/25 - 6/29)'''= | ||
==='''Monday 6/25'''=== | ==='''Monday 6/25'''=== | ||
Line 107: | Line 117: | ||
* Continued fixing residual errors resulting from new graphics library | * Continued fixing residual errors resulting from new graphics library | ||
* Continued to work on presentation for Thursday's midterm presentation | * Continued to work on presentation for Thursday's midterm presentation | ||
+ | |||
+ | ==='''Wednesday 6/27'''=== | ||
+ | * Finished rough draft of midterm presentation | ||
+ | * Began practicing midterm presentation and making appropriate modifications | ||
+ | * Continued fixing residual errors resulting from new graphics library | ||
+ | |||
+ | ==='''Thursday 6/28'''=== | ||
+ | * Finished final edits of midterm presentation | ||
+ | * Attended the weekly REU luncheon and presented my midterm presentation | ||
+ | |||
+ | ==='''Friday 6/29'''=== | ||
+ | * Finished fixing residual errors resulting from new graphics library | ||
+ | * Finished debugging GraphCut algorithm | ||
+ | * Prepared main method of GraphCut algorithm for testing on imagery | ||
+ | |||
+ | |||
+ | |||
+ | ='''Week 6 (7/2 - 7/6)'''= | ||
+ | |||
+ | ==='''Monday 7/2'''=== | ||
+ | * Began writing main method of GraphCut algorithm | ||
+ | * Finished constructing handling of GraphCut class within the main method | ||
+ | * Struggled to construct handling of Graph_Cut class (graphics implementation) within the main method | ||
+ | |||
+ | ==='''Tuesday 7/3'''=== | ||
+ | * Finished first instance of main method | ||
+ | * Performed a trial run of the completed GraphCut algorithm, but trial was unsuccessful | ||
+ | * Began to read through pertinent code to search for sources of error | ||
+ | * Began to do background reading/research on GUIs in order to better understand the graphics packages and library of the GraphCut algorithm | ||
+ | |||
+ | ==='''Thursday 7/5'''=== | ||
+ | * Continued to search code for sources of error in GraphCut algorithm | ||
+ | * Concluded that the error must be coming from the Graph_Cut class | ||
+ | * Attended the weekly REU luncheon and listened to a Latex tutorial | ||
+ | * Met with Dr. Bansal for our weekly progress report | ||
+ | |||
+ | ==='''Friday 7/6'''=== | ||
+ | * Continued to search code for sources of error in Graph_Cut class | ||
+ | * Continued with background reading on GUIs | ||
+ | |||
+ | |||
+ | |||
+ | ='''Week 7 (7/9 - 7/13)'''= | ||
+ | |||
+ | ==='''Monday 7/9'''=== | ||
+ | * Continued searching code for error | ||
+ | * Fixed minor error regarding instance variables in the main method, but algorithm still did not run properly | ||
+ | |||
+ | ==='''Tuesday 7/10'''=== | ||
+ | * Continued to search code for error | ||
+ | * Overhauled the main method, fixing all but one (crucial) error | ||
+ | * Ran a test of the GraphCut algorithm, was able to open the gui window, but was unable to add to it any content | ||
+ | * After reworking main method, entire algorithm is now error-free, and yet it now fails to build | ||
+ | |||
+ | ==='''Wednesday 7/11'''=== | ||
+ | * Located and fixed several errors in GraphCut algorithm | ||
+ | * Identified several class cast exceptions and began searching through different packages to find solutions | ||
+ | |||
+ | ==='''Thursday 7/12'''=== | ||
+ | * Identified one class cast exception that was indirectly causing nearly all other such exceptions in the algorithm | ||
+ | * Sought out solutions to this originating class cast exception | ||
+ | * Attended weekly REU luncheon | ||
+ | * Met with Dr. Bansal for our weekly progress report | ||
+ | |||
+ | ==='''Friday 7/13'''=== | ||
+ | * Discovered that the originating class cast exception may have been caused by an import error with the graphics library | ||
+ | * Began making appropriate changes to graphics library | ||
+ | |||
+ | |||
+ | |||
+ | ='''Week 8 (7/16 - 7/20)'''= | ||
+ | |||
+ | ==='''Monday 7/16'''=== | ||
+ | * Finished making documentation and import corrections to graphics library | ||
+ | * Began fixing newfound inconsistencies between updated graphics library and GraphCut algorithm | ||
+ | |||
+ | ==='''Tuesday 7/17'''=== | ||
+ | * Began putting together poster for REU poster presentation in two weeks | ||
+ | |||
+ | ==='''Wednesday 7/18'''=== | ||
+ | * Continued working on poster | ||
+ | * Met with Dr. Bansal to discuss recent challenges pertaining to GraphCut algorithm and also to get feedback/ideas for poster and report | ||
+ | |||
+ | ==='''Thursday 7/19'''=== | ||
+ | * Put finishing touches on poster | ||
+ | * Attended weekly REU luncheon | ||
+ | * Continued to fix inconsistencies between updated graphics library and GraphCut algorithm | ||
+ | |||
+ | ==='''Friday 7/20'''=== | ||
+ | * Revised certain elements of poster after realizing dimensions needed to be adjusted | ||
+ | * Continued to fix inconsistencies between updated graphics library and GraphCut algorithm | ||
+ | * began outline and formatting of research paper (due 8/3) | ||
+ | |||
+ | |||
+ | |||
+ | ='''Week 9 (7/23 - 7/27)'''= | ||
+ | |||
+ | ==='''Monday 7/23'''=== | ||
+ | * Continued outlining and writing research paper | ||
+ | * Finished rough drafts of the introduction and background on graph theory subsection | ||
+ | * Began writing the applications of graph theory subsection | ||
+ | * Continued debugging GraphCut algorithm | ||
+ | |||
+ | ==='''Tuesday 7/24'''=== | ||
+ | * Finished writing the applications of graph theory subsection | ||
+ | * Finished writing the algorithm introduction, as well as the algorithm overview subsection | ||
+ | * Continued debugging GraphCut algorithm | ||
+ | |||
+ | ==='''Wednesday 7/25'''=== | ||
+ | * Completed the current status and challenges subsection | ||
+ | * Completed the conclusions section | ||
+ | * Began the abstract | ||
+ | * Began reviewing the paper and making minor edits | ||
+ | * Continued debugging GraphCut algorithm | ||
+ | |||
+ | ==='''Thursday 7/26'''=== | ||
+ | * Continued to review and edit paper | ||
+ | * Added visual aids (with captions) to both the graph theory and algorithm sections | ||
+ | * Attended the weekly REU luncheon | ||
+ | * Received printed poster and began to prepare for poster presentation on Monday | ||
+ | * Continued debugging GraphCut algorithm | ||
+ | |||
+ | ==='''Friday 7/27'''=== | ||
+ | * Continued to review and edit paper | ||
+ | * Began working on final presentation | ||
+ | * Continued debugging GraphCut algorithm | ||
+ | |||
+ | |||
+ | |||
+ | ='''Week 10 (7/30 - 8/3)'''= | ||
+ | |||
+ | ==='''Monday 7/30'''=== | ||
+ | * Presented poster during the morning presentation session | ||
+ | * Finished rough draft of final paper, sent it to Dr. Bansal for critiques/feedback | ||
+ | * Continued debugging GraphCut algorithm | ||
+ | |||
+ | ==='''Tuesday 7/31'''=== | ||
+ | * Finished final presentation slides, began practicing for Wednesday/Thursday presentation | ||
+ | * Continued debugging GraphCut algorithm | ||
+ | |||
+ | ==='''Wednesday 8/1'''=== | ||
+ | * Final presentation before REU students and mentors | ||
+ | * Continued debugging GraphCut algorithm | ||
+ | |||
+ | ==='''Thursday 8/2'''=== | ||
+ | * Continued to edit final paper | ||
+ | * Continued debugging GraphCut algorithm | ||
+ | |||
+ | ==='''Friday 8/3'''=== | ||
+ | * Finalized and submitted paper |
Latest revision as of 13:11, 3 August 2018
Contents
Project Description
Throughout Marquette University's 10-week summer REU program, Computation Across the Disciplines, I will be researching applications of graph theory to computer vision and image segmentation problems. More specifically, I hope to be able to utilize the graph-cut technique in order to isolate images of the heart and its components from CT scans provided by local hospitals. I will be working under the guidance of Dr. Naveen Bansal.
Week 1 (5/29 - 6/1)
Tuesday 5/29
- Attended REU orientation
- Met briefly with Dr. Bansal to begin planning the summer's research
Wednesday 5/30
- Read introduction to Neural Networks: a Comprehensive Foundation
- Met with Dr. Bansal and graduate student to begin learning about statistical applications to image segmentation
Thursday 5/31
- Met with graduate student to obtain preliminary research publications
- Met with Dr. Bansal to clarify research goals and outline the structure of the project
- Read several research articles and located five articles for further reading
Friday 6/1
- Familiarized myself with several graph-theoretic terms and concepts, in preparation for future research
- Completed Fast Approximate Energy Minimization via Graph Cuts (Boykov et al.)
- Located and obtained the Ford-Fulkerson publication on flow networks in Memorial Library
Week 2 (6/4 - 6/8)
Monday 6/4
- Completed Interactive Graph Cuts for Optimal Boundary & Region Segmentation of Objects in N-D Images (Boykov et al.)
- Completed An Omptimal Graph Theoretic Approach to Data Clustering: Theory and Its Applications to Image Segmentation (Wu et al.)
- Began Graph Cuts and Efficient N-D Image Segmentation (Boykov et al.)
Tuesday 6/5
- Completed Graph Cuts and Efficient N-D Image Segmentation (Boykov et al.)
- Completed Normalized Cuts and Image Segmentation (Shi et al.)
Wednesday 6/6
- Began writing code for GraphCut algorithm, completed about 350 lines
Thursday 6/7
- Finished a rough draft of the GraphCut algorithm, totaling about 700 lines
- Attended weekly REU luncheon and learned about the do's and don't's of research presentations
- Met with Dr. Bansal to give a progress report and discuss next steps
- Completed module 1 of the Responsible Conduct of Research training
Friday 6/8
- Completed modules 2 and 3 of the Responsible Conduct of Research training
- Began to modify GraphCut algorithm (fixing various syntax errors and adding small improvements)
Week 3 (6/11 - 6/15)
Monday 6/11
- Continued to fix GraphCut algorithm
- Found more efficient storage for Graph data structure
- Fixed several initialization errors
- Added several fringe cases onto the algorithm, now totals about 1200 lines
- Finished second draft of GraphCut algorithm
Tuesday 6/12
- Met with grad student to discuss generalities of GraphCut algorithm
- Worked with grad student to implement algorithm
Wednesday 6/13
- Attended the Ethics in Research training session, proctored by Dr. Brylow
Thursday 6/14
- Continued revisions of GraphCut algorithm in preparation for its first test run
- Met with Dr. Bansal for our weekly progress report
- Took preliminary steps to obtain image data for future use with the GraphCuts algorithm
- Sought out different implementations of the max-flow/min-cut algorithm to compare to (and possibly combine with) my current GraphCut algorithm
Friday 6/15
- Continued to modify GraphCut algorithm
- Added condensation method to GraphCut algorithm in an attempt to conserve memory
Week 4 (6/18 - 6/22)
Monday 6/18
- Read An Experimental Comparison of Min-Cut/Max-Flow Algorithms for Energy Minimization in Vision (Boykov et al.)
- Modified GraphCut algorithm based on Boykov's active node method of operation
- The GraphCut algorithm is approaching completion, should be ready for testing by next week
Tuesday 6/19
- Fixed several syntax and arithmetical errors in the GraphCut algorithm
- Met with Dr. Bansal and graduate student to obtain image segmentation data set
- With new image data as reference, I began to write main method for reading in image and implementing the graphCut method (completed about 600 lines)
Wednesday 6/20
- Completed code for handling the graphics of the GraphCut algorithm, algorithm now totals about 2500 lines
- Encountered import errors involving the graphics package, began to search for an appropriate library download
Thursday 6/21
- Began to create a new Java library to handle graphics of GraphCut
- Acquired necessary source code for new library from GitHub
- Attended weekly REU luncheon to share progress and attended a presentation on computer science education
- Met with Dr. Bansal for our weekly progress report and showed him the GraphCut algorithm as it currently stands
Friday 6/22
- Continued to work on constructing graphics library from source code
Week 5 (6/25 - 6/29)
Monday 6/25
- Finished constructing the graphics library from source code
- Began to fix residual errors resulting from new graphics library
- Began to prepare presentation for Thursday's midterm presentation
Tuesday 6/26
- Continued fixing residual errors resulting from new graphics library
- Continued to work on presentation for Thursday's midterm presentation
Wednesday 6/27
- Finished rough draft of midterm presentation
- Began practicing midterm presentation and making appropriate modifications
- Continued fixing residual errors resulting from new graphics library
Thursday 6/28
- Finished final edits of midterm presentation
- Attended the weekly REU luncheon and presented my midterm presentation
Friday 6/29
- Finished fixing residual errors resulting from new graphics library
- Finished debugging GraphCut algorithm
- Prepared main method of GraphCut algorithm for testing on imagery
Week 6 (7/2 - 7/6)
Monday 7/2
- Began writing main method of GraphCut algorithm
- Finished constructing handling of GraphCut class within the main method
- Struggled to construct handling of Graph_Cut class (graphics implementation) within the main method
Tuesday 7/3
- Finished first instance of main method
- Performed a trial run of the completed GraphCut algorithm, but trial was unsuccessful
- Began to read through pertinent code to search for sources of error
- Began to do background reading/research on GUIs in order to better understand the graphics packages and library of the GraphCut algorithm
Thursday 7/5
- Continued to search code for sources of error in GraphCut algorithm
- Concluded that the error must be coming from the Graph_Cut class
- Attended the weekly REU luncheon and listened to a Latex tutorial
- Met with Dr. Bansal for our weekly progress report
Friday 7/6
- Continued to search code for sources of error in Graph_Cut class
- Continued with background reading on GUIs
Week 7 (7/9 - 7/13)
Monday 7/9
- Continued searching code for error
- Fixed minor error regarding instance variables in the main method, but algorithm still did not run properly
Tuesday 7/10
- Continued to search code for error
- Overhauled the main method, fixing all but one (crucial) error
- Ran a test of the GraphCut algorithm, was able to open the gui window, but was unable to add to it any content
- After reworking main method, entire algorithm is now error-free, and yet it now fails to build
Wednesday 7/11
- Located and fixed several errors in GraphCut algorithm
- Identified several class cast exceptions and began searching through different packages to find solutions
Thursday 7/12
- Identified one class cast exception that was indirectly causing nearly all other such exceptions in the algorithm
- Sought out solutions to this originating class cast exception
- Attended weekly REU luncheon
- Met with Dr. Bansal for our weekly progress report
Friday 7/13
- Discovered that the originating class cast exception may have been caused by an import error with the graphics library
- Began making appropriate changes to graphics library
Week 8 (7/16 - 7/20)
Monday 7/16
- Finished making documentation and import corrections to graphics library
- Began fixing newfound inconsistencies between updated graphics library and GraphCut algorithm
Tuesday 7/17
- Began putting together poster for REU poster presentation in two weeks
Wednesday 7/18
- Continued working on poster
- Met with Dr. Bansal to discuss recent challenges pertaining to GraphCut algorithm and also to get feedback/ideas for poster and report
Thursday 7/19
- Put finishing touches on poster
- Attended weekly REU luncheon
- Continued to fix inconsistencies between updated graphics library and GraphCut algorithm
Friday 7/20
- Revised certain elements of poster after realizing dimensions needed to be adjusted
- Continued to fix inconsistencies between updated graphics library and GraphCut algorithm
- began outline and formatting of research paper (due 8/3)
Week 9 (7/23 - 7/27)
Monday 7/23
- Continued outlining and writing research paper
- Finished rough drafts of the introduction and background on graph theory subsection
- Began writing the applications of graph theory subsection
- Continued debugging GraphCut algorithm
Tuesday 7/24
- Finished writing the applications of graph theory subsection
- Finished writing the algorithm introduction, as well as the algorithm overview subsection
- Continued debugging GraphCut algorithm
Wednesday 7/25
- Completed the current status and challenges subsection
- Completed the conclusions section
- Began the abstract
- Began reviewing the paper and making minor edits
- Continued debugging GraphCut algorithm
Thursday 7/26
- Continued to review and edit paper
- Added visual aids (with captions) to both the graph theory and algorithm sections
- Attended the weekly REU luncheon
- Received printed poster and began to prepare for poster presentation on Monday
- Continued debugging GraphCut algorithm
Friday 7/27
- Continued to review and edit paper
- Began working on final presentation
- Continued debugging GraphCut algorithm
Week 10 (7/30 - 8/3)
Monday 7/30
- Presented poster during the morning presentation session
- Finished rough draft of final paper, sent it to Dr. Bansal for critiques/feedback
- Continued debugging GraphCut algorithm
Tuesday 7/31
- Finished final presentation slides, began practicing for Wednesday/Thursday presentation
- Continued debugging GraphCut algorithm
Wednesday 8/1
- Final presentation before REU students and mentors
- Continued debugging GraphCut algorithm
Thursday 8/2
- Continued to edit final paper
- Continued debugging GraphCut algorithm
Friday 8/3
- Finalized and submitted paper