Metal artifacts arise in CT images when X-rays traverse the high attenuating objects such as metal bodies. Portions of projection data become unavailable. In this paper, we present an Euler's elastica and curvature based sinogram inpainting (EECSI) algorithm for metal artifacts reduction, where "inpainting" is a synonym for "image interpolation". In EECSI, the unavailable data are regarded as occlusion and can be inpainted inside the inpainting domain based on elastica interpolants. Numerical simulations demonstrate that, compared to conventional interpolation methods, the algorithm proposed connects the unavailable projection region more smoothly and accurately, thus better reduces metal artifacts and more accurately reveals cross section structures, especially in the immediate neighborhood of the metallic objects.