[vmtk-users] centerlines question
Brought to you by:
davidsteinman,
lucantiga
From: Joong-Ho W. <jh...@st...> - 2007-01-08 05:55:48
|
Hi, I compiled and installed vmtk0.6 on a Windows XP machine. It seems work fine, but I have a trouble with using vmtkcenterlines. I want to extract centerlines of the abdominal aorta and its branches. As a simple test, I segmented the aorta (below the heart and above the iliac bifurcation) and the right renal artery from a CTA data, resulting in a T-shaped branching. Then I obtained a surface model using vmtkmarchingcubes (I basically followed the tutorial in the website). Next, I ran vmtkcenterlines: vmtkcenterlines.py -ifile p001_part1_model.vtp -ofile p001_part1_centerlines2.vtp as in the tutorial. As I wanted T-shaped centerlines, I thought that I need two pairs of source and target points. I chose both source points to be the same: the proximal endpoint of the aorta. Target points are chosen to be the distal end of the aorta and the end of the renal artery. Since the model is a closed surface, I pressed space *twice* on the top of the aorta surface to select the source points. For target points I pressed space on two different points on the surface, of course. During centerline extraction, a vtkOutputWindow popped up and complained : Unable to factor linear system which was a vmtkMath error. When I displayed the centerlines (p001_part1_centerlines2.vtp, using vmtkcenterlineviewer), I only see a single centerline, which I guess is one for the aorta. I tried again with only a single source point, but the result was the same. Interestingly, the Voronoi diagram looked fine. To summarize, 1. I can't see multiple centerlines. 2. I have no confidence on my selection of source and target points (what is the precise definition of these points?) It appears that I made some simple mistake, but can't guess what it is. FYI, I attach the output of vmtkcenterlines below. It seems that the script produces only one centerline. Thanks in advance, Joong-Ho. C:\Program Files\VMTK\bin>vmtkcenterlines.py -ifile p001_part1_model.vtp -of p001_part1_centerlines2.vtp Creating vmtkCenterlines instance. Automatic piping vmtkcenterlines Parsing options vmtkcenterlines SurfaceInputFileName = p001_part1_model.vtp CenterlinesOutputFileName = p001_part1_centerlines2.vtp Explicit piping vmtkcenterlines Input vmtkcenterlines members: Id = 0 Surface = None SurfaceInputFileName = p001_part1_model.vtp SeedSelectorName = pickpoint SourceIds = [] TargetIds = [] SourcePoints = [] TargetPoints = [] AppendEndPoints = 0 FlipNormals = 0 CapDisplacement = 0.1 RadiusArrayName = MaximumInscribedSphereRadius AppendEndPoints = 0 Resampling = 0 ResamplingStepLength = 1.0 DelaunayTessellation = None UseTetGen = 0 TetGenDetectInter = 1 CostFunction = 1/R CenterlinesOutputFileName = p001_part1_centerlines2.vtp DelaunayTessellationOutputFileName = VoronoiDiagramOutputFileName = Reading VTK XML surface file. Executing vmtkcenterlines ... NonManifold check. Cleaning surface. Triangulating surface. Capping surface. Please position the mouse and press space to add source points, 'u' to undo Please position the mouse and press space to add target points, 'u' to undo Computing centerlines. Done executing vmtkcenterlines. Writing VTK XML surface file. Output vmtkcenterlines members: Id = 0 Centerlines = vtkPolyData RadiusArrayName = MaximumInscribedSphereRadius EikonalSolutionArrayName = EikonalSolutionArray EdgeArrayName = EdgeArray EdgePCoordArrayName = EdgePCoordArray CostFunctionArrayName = CostFunctionArray DelaunayTessellation = vtkUnstructuredGrid VoronoiDiagram = vtkPolyData PoleIds = vtkIdList |