Browse Source

Run ROI for all segments in a segmentation

Eager Beaver 6 years ago
parent
commit
12be11e961
1 changed files with 5 additions and 3 deletions
  1. 5 3
      cardiacSPECT/cardiacSPECT.py

+ 5 - 3
cardiacSPECT/cardiacSPECT.py

@@ -280,7 +280,7 @@ class cardiacSPECTWidget(ScriptedLoadableModuleWidget):
             for i in range(0,n):
                 vol="testVolume"+str(i)
                 fx=ft[i]
-                fy=self.logic.meanROI(vol,segment)
+                fy=self.logic.meanROI(vol,j)
                 dt=2*ft[i]-t0
                 t0+=dt
 
@@ -405,7 +405,7 @@ class cardiacSPECTLogic(ScriptedLoadableModuleLogic):
             self.ct_origin,self.ct_pixel_size,
             self.ct_orientation,0)
 
-  def meanROI(self, volName1, segment):
+  def meanROI(self, volName1, i):
     s=0
 
     #get the segmentation mask
@@ -419,12 +419,14 @@ class cardiacSPECTLogic(ScriptedLoadableModuleLogic):
     #    print("No segments available")
     #    return 0
 
-    segment=segNode.GetSegmentation().GetNthSegmentID(0)
+    #edit here to change for more segments
+    segment=segNode.GetSegmentation().GetNthSegmentID(i)
     mask = segNode.GetBinaryLabelmapRepresentation(segment)
     if mask==None:
         print("Segment {} not found".format(segment))
         return s
 
+    print "Got mask for segment {}".format(segment)
     #get mask at (x,y,z)
     #mask.GetPointData().GetScalars().GetTuple1(mask.FindPoint([x,y,z]))