A tomographic image generating apparatus comprising: a tomographic image acquirer adapted to acquire a plurality of first tomographic images perpendicular to a predetermined direction from a three-dimensional medical image including a spinal cord having a predetermined linear structure; a first detector adapted to detect sectional shapes of the spinal cord which are included respectively in the first tomographic images; a curve generator adapted to generate a first curve as an approximate curve; and a tomographic image generator adapted to generate a plurality of second tomographic images perpendicular to the first curve from the three-dimensional medical image, characterized in that said curve generator is adapted to generate the first curve by interpolating respective positions of the detected sectional shapes of the spinal cord, that an image generator is provided, adapted to generate a three-dimensional image such that the first curve becomes a straight line by superimposing second tomographic images by arranging the points of intersection between the second tomographic images and the first curve along the straight line, that a second detector is provided, adapted to detect the sectional shapes of the spinal cord which are included respectively in the second tomographic images, that a controller is provided, which carries out an iterative process in which it determines whether or not generation of tomographic images is to be finished and, if not, causes the image generator to generate a three-dimensional image by interpolating tomographic images which are generated most recently, the curve generator generates an approximate curve by interpolating positions of sectional shapes of the spinal cord which are detected most recently, the tomographic image generator generates a plurality of tomographic images perpendicular to the approximate curve generated most recently and the second detector detects sectional shapes of the spinal cord included respectively in tomographic images which are generated most recently, and returns to the first step of the iterative process. a tomographic image acquirer adapted to acquire a plurality of first tomographic images perpendicular to a predetermined direction from a three-dimensional medical image including a spinal cord having a predetermined linear structure; a first detector adapted to detect sectional shapes of the spinal cord which are included respectively in the first tomographic images; a curve generator adapted to generate a first curve as an approximate curve; and a tomographic image generator adapted to generate a plurality of second tomographic images perpendicular to the first curve from the three-dimensional medical image, characterized in that said curve generator is adapted to generate the first curve by interpolating respective positions of the detected sectional shapes of the spinal cord, that an image generator is provided, adapted to generate a three-dimensional image such that the first curve becomes a straight line by superimposing second tomographic images by arranging the points of intersection between the second tomographic images and the first curve along the straight line, that a second detector is provided, adapted to detect the sectional shapes of the spinal cord which are included respectively in the second tomographic images, that a controller is provided, which carries out an iterative process in which it determines whether or not generation of tomographic images is to be finished and, if not, causes the image generator to generate a three-dimensional image by interpolating tomographic images which are generated most recently, the curve generator generates an approximate curve by interpolating positions of sectional shapes of the spinal cord which are detected most recently, the tomographic image generator generates a plurality of tomographic images perpendicular to the approximate curve generated most recently and the second detector detects sectional shapes of the spinal cord included respectively in tomographic images which are generated most recently, and returns to the first step of the iterative process.