Abstract:We present a novel algorithm named 3DPIFCM, for automatic segmentation of noisy MRI Brain images. The algorithm is an extension of a well-known IFCM (Improved Fuzzy C-Means) algorithm. It performs fuzzy segmentation and introduces a fitness function that is affected by proximity of the voxels and by the color intensity in 3D images. The 3DPIFCM algorithm uses PSO (Particle Swarm Optimization) in order to optimize the fitness function. In addition, the 3DPIFCM uses 3D features of near voxels to better adjust the noisy artifacts. In our experiments, we evaluate 3DPIFCM on T1 Brainweb dataset with noise levels ranging from 1% to 20% and on a synthetic dataset with ground truth both in 3D. The analysis of the segmentation results shows a significant improvement in the segmentation quality of up to 28% compared to two generic variants in noisy images and up to 60% when compared to the original FCM (Fuzzy C-Means).
Abstract:In this paper we implemented the algorithm we developed in [1] called 3DPIFCM in a parallel environment by using CUDA on a GPU. In our previous work we introduced 3DPIFCM which performs segmentation of images in noisy conditions and uses particle swarm optimization for finding the optimal algorithm parameters to account for noise. This algorithm achieved state of the art segmentation accuracy when compared to FCM (Fuzzy C-Means), IFCMPSO (Improved Fuzzy C-Means with Particle Swarm Optimization), GAIFCM (Genetic Algorithm Improved Fuzzy C-Means) on noisy MRI images of an adult Brain. When using a genetic algorithm or PSO (Particle Swarm Optimization) on a single machine for optimization we witnessed long execution times for practical clinical usage. Therefore, in the current paper our goal was to speed up the execution of 3DPIFCM by taking out parts of the algorithm and executing them as kernels on a GPU. The algorithm was implemented using the CUDA [13] framework from NVIDIA and experiments where performed on a server containing 64GB RAM , 8 cores and a TITAN X GPU with 3072 SP cores and 12GB of GPU memory. Our results show that the parallel version of the algorithm performs up to 27x faster than the original sequential version and 68x faster than GAIFCM algorithm. We show that the speedup of the parallel version increases as we increase the size of the image due to better utilization of cores in the GPU. Also, we show a speedup of up to 5x in our Brainweb experiment compared to other generic variants such as IFCMPSO and GAIFCM.