Structure Identification in Medical Imaging (SIMI)

Structure Identification in Medical Imaging (SIMI)

Structure Identification in Medical Imaging (SIMI) | Report Three | Tom Brzozowski, Daniel Liew, Vasileios Papaefstratiou-Armagos, Pijika Watcharapichat, Wasin Chaivaranont tb807, dsl11, vp208, pw610, wc1311 @doc.ic.ac.uk f g Supervisor: Dr. Eddie Edwards Course: CO530, Imperial College London 16th March, 2012 M.Sc. Group Project Report 16th March, 2012 Contents 1 Introduction 3 2 Specification 3 2.1 Stakeholders . .3 2.2 Minimum sepcification . .3 2.3 Extended specification . .4 2.4 Revision on specification . .4 3 Design 4 3.1 Initial design decisions . .4 3.2 Classes . .5 3.3 User interface . .7 4 Methodology 9 4.1 Software development tools . .9 4.2 Software development technique . .9 4.3 Solutions for different tasks according to specification . 10 4.3.1 Specifications related to basic user interaction . 10 4.3.2 Specifications related to segmentation features . 12 4.3.3 Extended requirements . 15 4.4 Main intellectual or technical problems during the project . 20 4.5 Meetings with stakeholders . 21 5 Division of work 21 5.1 Technical work . 21 5.2 Administrative and documentation . 22 5.3 Training and research . 22 6 Final product 23 6.1 Final outcome of programme . 23 6.2 Overall achievement and specifications being implemented within the final product . 23 6.3 Testing methodology and result . 24 6.3.1 Manual visual testing . 24 6.3.2 Automated Unit testing . 24 6.3.3 Stakeholder testing . 24 6.4 Evaluation on product performance . 25 6.5 Possible extensions . 26 7 Glossary 26 Appendix 28 A Sprint Logbooks 28 B Group Meeting Logbooks 31 C Summary of Personal Logbooks 46 D Goal orientated capture 55 E Code documentation 56 2 M.Sc. Group Project Report 16th March, 2012 1 Introduction Airways are part of the respiratory system which extend from the nose to the lungs and through which air flows. Many airway diseases are closely related to changes in the anatomical shape of the airways that affect the physiology of the system. Therefore, observing such morphological changes is a useful tool to assess both disease prognosis and therapeutic efficacy. Within this project, the anatomical structure of interest will be the upper airways which extend from nostrils to pharynx. Image segmentation 1 is considered to be an important step in medical image processing because it allows users to identify regions of interest and study anatomical structures. Medical image segmen- tation can be used as a tool to follow any anatomical changes. As a result, this image technique can reasonably be applied as a clinical tool to follow up disease progression. The purpose of the project is to create a user-friendly system for identifying and segmenting the upper airways from other surrounding anatomical structures in medical images of head and neck region. The primary function of this system is to provide a set of manual/semi-automatic tools for image segmentation within an interactive graphical user interface. The software will allow the user to par- tition an image into segments so that it is possible to construct the 3D shape of the airway from the image segmentation. The main advantage of this system, compared to other similar ones, lies in its simplicity, its specialised goal to model the upper airways and its ability to provide semi-automated functionality. Finally, if the software meets its requirements, then it has the potential to be used as a research tool by a medical team at St. Mary's hospital. 2 Specification The specification for our project was determined by having meetings with our stakeholders and per- forming goal orientated capture. The diagram for this can be seen in appendix D. 2.1 Stakeholders Our supervisor, Dr. Eddie Phillips Edwards • Alister Bates who is colleague of our supervisor who is interested in airway modelling using • Computational Fluid dynamics. Raul Cetto who is also a colleague of our supervisor who is an Otolaryngology surgeon. • Both Raul and Alister are interested in investigating the effects of different drugs on soft tissue within upper airways with image segmentation being a useful research tool to measure such a biological effect. 2.2 Minimum sepcification Provide a research tool that allows MRI images of human \upper airways" to be segmented from • other anatomical structures. The user will be able to see the image by providing a single Orthogonal slice view. • The user will be able to interact with the image by. • { Loading the image { Navigating through different slices { Adjusting the image contrast { Using a crosshair to allow the seed point for the image segmentation algorithm to be selected 1The process of partitioning an image into regions 3 M.Sc. Group Project Report 16th March, 2012 The tool will be able to perform image segmentation on a single 2D slice by using a segmentation • algorithm that can be controlled by the user choosing the minimum and maximum threshold parameters. The user will be able to see the result of the segmentation algorithm performed on a single slice. • The user will be able to load and save the following for every slice of the image • { Seed point { Contrast settings { Thresholds used for segmentation algorithm 2.3 Extended specification Allow the user to block particular regions within a 2D slice from being filled when the region • filling algorithm is being applied. The user should be able to draw the block regions on to the slice. It should be possible for the block regions to be saved and loaded. Allow the generation of 3D volume from a set of segmented 2D image slices which the user can • view. Perform an image segmentation algorithm in 3D by working on multiple slices at once from a • single seed point. From this a 3D volume can be rendered. 2.4 Revision on specification The major change to the original specification is to remove the reliance on the ITK library to perform image segmentation. As the VTK library and its integration with other program components had a steep learning curve and was the contributing factor to the overall project delay. Given this delay, it is not feasible to learn another large library such as ITK library. As the program will essentially use only one type of algorithm to segment the region of interest, it has been decided that a custom version of the flood fill algorithm should be implemented instead. 3 Design When it came to designing our program we went for a modular approach so that. It would be possible for each member to work on a component of the project as independently • as possible. The code is easier to understand • Testing is straight forward • Our modules are implemented as C++ classes which are detailed in section 3.2. 3.1 Initial design decisions Platform One of the first important choices we made was which platform to target. We chose to primarily target Linux based machines as there are many available for development in the Department of Computing laboratories. However our choice of libraries and build system mean in principle that other platforms are supported as well. Programming language Our language of choice was C++ because all members of group were expe- rienced in using it and because the libraries we were thinking of using supported it. However it would have also been possible to use Java, TCL and python. 4 M.Sc. Group Project Report 16th March, 2012 Libraries Since our program is interactive it is important we chose a good GUI tool kit. Our tool kit of choice is Qt because it is cross platform, well documented, the VTK library supports using it and it is written using C++. We also needed a way to load, display and process medical images. There were two options available to us. Use openGL to do the rendering directly. This would have meant writing a lot of \low • level" code for rendering which would be quite tedious. We also need to provide a way to load medical images so we would have to write our own image loading and saving code as well. Use a library to manage the loading, processing and displaying of the medical images. The • Visualisation toolkit (VTK) is one such library with most of the emphasis on rendering rather than processing. Other libraries exist such as the Insight toolkit (ITK) which provide a selection of segmentation and registration algorithms as well as image loading and saving classes. Another library that combines both VTK and ITK that exists is the Medical Imaging tool kit (MITK) along with an additional API. We chose to use VTK for visualising, loading and saving image data because it meant we do not need to implement a lot of \low level" code. We were going to use ITK to provide us with a means to perform image segmentation and load and save image data as well however due to problems (see section 4.4 ) we chose not to use ITK. Build system We wanted to use a cross platform build system that integrated well with an IDE. We considered the following build systems. QMake This is Qt's build system. It is well integrated into the Qt Creator IDE; however it's support for external libraries is not quite as good as CMake's. Autotools This isn't really very cross platform because it requires a UNIX shell script envi- ronment which isn't available in Windows without installing a lot additional software. It's also horribly complicated. CMake This is build system written by the authors of VTK and ITK. It is highly modular and extensible, has special support for Qt's intermediate compilation stage and makes it incredibly easy to work with external libraries.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    106 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us