14 #ifndef _SKEL_GRAPH_H_ 15 #define _SKEL_GRAPH_H_ 60 void ExtractSkeletalGraph(
const unsigned char *image,
const int dim[3],
const double spacing[3]);
74 skel_branch* AddNewBranchToDo(std::list<skel_branch> &branchesToDo);
77 void FindEndpoints(std::deque<Coord3i> &endPoints,
const unsigned char *image,
const int dim[3]);
80 int IsEndpoint(
int x,
int y,
int z,
const unsigned char *image,
const int dim[3]);
84 void GetValidNeighbors(
int* label_image,
Coord3i &act_point, std::deque<Coord3i> &neighbors,
const unsigned char *image,
const int dim[3]);
89 std::deque<skel_branch> m_Graph;
95 std::deque<int> m_MaximalPath;
96 double m_MaximalPathLength;
std::deque< Coord3i > points
void ExtractSkeletalGraph(const unsigned char *image, const int dim[3], const double spacing[3])
std::deque< int > end_1_neighbors
std::deque< int > max_path
std::deque< int > acc_path
void SampleAlongMaximalPath(int requestedNumberOfPoints, std::deque< Coord3i > &axis_points)
std::deque< int > end_2_neighbors