]> Creatis software - clitk.git/blobdiff - segmentation/clitkExtractMediastinalVesselsFilter.h
remove tools (now in tests_dav)
[clitk.git] / segmentation / clitkExtractMediastinalVesselsFilter.h
index 59ff6f7a3f8f182200fbddbdf4fc5acb6de27724..0f3df6cbf09c41bb942b5d87c622fd2ea90d507a 100644 (file)
@@ -113,6 +113,10 @@ namespace clitk {
     itkGetConstMacro(DebugFlag, bool);
     itkBooleanMacro(DebugFlag);
 
+    itkSetMacro(VerboseTrackingFlag, bool);
+    itkGetConstMacro(VerboseTrackingFlag, bool);
+    itkBooleanMacro(VerboseTrackingFlag);
+
     itkSetMacro(SoughtVesselSeedName, std::string);
     itkGetConstMacro(SoughtVesselSeedName, std::string);
 
@@ -125,6 +129,9 @@ namespace clitk {
     itkSetMacro(MaxNumberOfFoundBifurcation, int);
     itkGetConstMacro(MaxNumberOfFoundBifurcation, int);
 
+    itkSetMacro(FinalOpeningRadius, int);
+    itkGetConstMacro(FinalOpeningRadius, int);
+
   protected:
     ExtractMediastinalVesselsFilter();
     virtual ~ExtractMediastinalVesselsFilter() {}
@@ -134,6 +141,7 @@ namespace clitk {
     virtual void GenerateData();
     
     bool               m_DebugFlag;
+    bool               m_VerboseTrackingFlag;
     ImagePointer       m_Input;
     MaskImagePointer   m_Working_Support;
     MaskImagePointer   m_Mediastinum;
@@ -150,6 +158,7 @@ namespace clitk {
     double             m_MaxDistanceLeftToCarina;
     double             m_MaxDistanceRightToCarina;
     int                m_MaxNumberOfFoundBifurcation;
+    int                m_FinalOpeningRadius;
 
     std::vector<MaskSlicePointer> m_slice_recon;
     std::vector<MaskSlicePointer> m_slice_recon2;
@@ -163,10 +172,17 @@ namespace clitk {
     void CropInputImage();
     void TrackBifurcationFromPoint(MaskImagePointer & recon, 
                                    std::vector<MaskSlicePointer> & slices_recon, 
-                                   MaskImagePointType BCA_p, 
+                                   MaskImagePointType point3D,
+                                   MaskImagePointType pointMaxSlice,
                                    LabelType newLabel, 
                                    std::vector<MaskImagePointType> & bif);
 
+    void TrackVesselsFromPoint(MaskImagePointer & recon, 
+                               std::vector<MaskSlicePointer> & slices_recon, 
+                               MaskImagePointType point3D,
+                               MaskImagePointType pointMaxSlice,
+                               LabelType newLabel);
+    
   private:
     ExtractMediastinalVesselsFilter(const Self&); //purposely not implemented
     void operator=(const Self&); //purposely not implemented