1. A method for producing three-dimensional images of a blood vessel, comprising: (a) placing a first set of seed points along a first estimate of a centerline of the vessel; (b) constructing a cyclic graph around a first one of the seed points, such graph being in a plane passing through such first one of the seed points and such plane being perpendicular to the first estimate of the centerline, such graph comprising a plurality of edges; (c) applying filtering orthogonal to the edges of the cyclic graph to thereby estimate image gradients in the plane perpendicular to the first estimate of the centerline; (d) detecting vessel boundary by using minimum mean cycle optimization algorithm operating on the cyclic graph where the weight (values) of edges of the graph are chosen to be inverse of image gradients obtained from the filtering; (e) determining a new center of the estimated boundary to thereby generate a new seed point; (f) repeating (b)-(e) using the new seed point to thereby generate a final boundary of the vessel in the plane, such final boundary being established when newly generated seed points remain substantially fixed in position (g) repeated (b)-(f) for each one of the seed points in the first set of seed points; and (h) producing a surface of the vessel from the final boundaries.