Medical imaging is the technique and process used to create images of the human body. The output of the different modalities (CT, MRI) can be stored in a three dimension discrete volumetric data (array). Each element of this array is determined by the physical attributes measured by the imaging device at the respective position. Before any medical diagnosis it is necessary to decide which internal organ do the elements of this volumetric data belong to. This partitioning process is called segmentation. There are plenty of algorithms to partition an image and most of them can be parallelized. Most of these algorithms need constant supervision and adjustment of their parameters in order to achieve the desired results, therefore it would be practical to implement the visualization and the segmentation as efficient as possible. Thanks to the evolution of graphics hardware, the GPU became a widely used parallelized computation platform, which makes it a good choice to implement a segmentation algorithm with parallel visualization on it.
The goal of this thesis is to implement a program that uses the GPU to segment and visualize the volumetric data, and leaves only a minimal amount of work to the CPU. The paper presents some of the most widespread segmentation algorithms, including the details of the the implemented one. It gives an introduction to GPU programming and the milestones of its evolution. It also introduces the main components of the Qt application framework that were used in the program. Afterwards it gives more specific details about the implementation, and analyses it with some measured data.