Optimization of an advanced algorithm for bone imaging

University essay from Lunds universitet/Avdelningen för Biomedicinsk teknik

Abstract: Fracture risk in osteoporosis is increased and osteoporosis is the most common metabolic bone disease and treatment is expensive. Osteoporosis is diagnosed by measuring Bone Mineral Density (BMD), which does not consider other factors such as bone geometry or architecture. 3D-based models can predict risk fracture better than BMD, but they require 3D computed tomography. Solution of the problem is based on 2D to 3D reconstruction to obtain the 3D geometry. The solution needs considerable amount of time to compute the result and the aim of this thesis is to make the tool perform faster. The workflow for the solution: DXA image of real bone is loaded into memory as the real DXA image. The DXA images come from another study and are already available. The solution contains a set of 3D models of femur and one of the models is selected. A new virtual surface is created and one of the 3D models is projected onto this surface, which results in virtual DXA image. The projection can be done in many different ways, this approach uses a modified version of method called ray-casting. The virtual and real DXA images are compared and the 3D model is changed. A new virtual DXA image is created by projecting the 3D model. The two images are compared and the process repeats until the absolute difference between the real and virtual DXA images is smaller by threshold value. The method was based on analysis and refactoring the existing solution developed by Sami Vaananen in order to gain increase in speed. The thesis is based on proposal that the program which performs the operation can run faster after applying refactoring of the Matlab code and other techniques. The method is based on rewriting and refactoring the module responsible for projection of the 3D model and creation of the virtual DXA image. The projection of 3D model to virtual DXA image was chosen as the place for refactoring of the code because Matlab tools indicate that this module takes the most of the time during the reconstruction process. Parts of the code were rewritten to make use of different Matlab functions. The largest performance improvement was obtained by providing additional information to Matlab functions, which the code would otherwise need to precalculate on each execution. The performance improvement was achieved by changing the way the solution works with the computer memory. The most favorable result shows that the refactored version can run projections 31\% faster than the original version, but the result is not observable for the reconstruction of the bone. The results were confirmed by tools provided with Matlab. The list of areas which need further research include: other methods of creating virtual DXA image, such as attenuation field, attenuation box, removal of data points to gain speed up and reducing the accuracy, implementation of the solution on GPU. Additional feature which needs implementation is automated landmark placement.

  AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)