Multi-slice Computed Tomography (MSCT) is an important medical imaging tool that provides dynamic three-dimensional (3D) volume data of the heart for diagnosis of various cardiac diseases. Due to the huge amount of data in MSCT, manual identification, segmentation and tracking of various parts of the heart are very labor intensive and inefficient. In this paper, we introduce a semi-automatic method for robustly segmenting the endocardium surface from cardiac MSCT images. A level set approach is adopted to define a flexible and powerful interface for capturing the complex anatomical structure of the heart. A novel speed function based on clustering the image intensities of the region of interest and the background is proposed for use with the level set method. The method introduced in this paper has the advantages of simple initialization and being capable of segmenting the blood pool with non-homogeneous intensities. Experiments on real data using the proposed speed function have been carried out with 2D, 3D and 4D implementations of the level sets respectively, and comparisons in terms of computational speed and segmentation results are presented.