Browse Source

Figuring out 3D support

Andrej Studen 6 years ago
parent
commit
28b5c8d705
2 changed files with 20 additions and 8 deletions
  1. 4 4
      cardiacSPECT/cardiacSPECT.py
  2. 16 4
      cardiacSPECT/parseDicom.py

+ 4 - 4
cardiacSPECT/cardiacSPECT.py

@@ -358,8 +358,7 @@ class cardiacSPECTLogic(ScriptedLoadableModuleLogic):
            frame_data=self.frame_data[:,:,:,it];
            nodeName='testVolume'+str(it)
            self.addNode(nodeName,
-              vi.numpyToVTK3D(frame_data,self.frame_origin,
-                self.frame_pixel_size),
+              vi.numpyToVTK(frame_data,frame_data.shape),
               self.frame_origin,
               self.frame_pixel_size,
               self.frame_orientation,1)
@@ -367,8 +366,9 @@ class cardiacSPECTLogic(ScriptedLoadableModuleLogic):
   def addCT(self):
        nodeName='testCT'
        self.addNode(nodeName,
-            vi.numpyToVTK3D(self.ct_data,
-                self.ct_origin,self.ct_pixel_size),
+            #vi.numpyToVTK3D(self.ct_data,
+            #    self.ct_origin,self.ct_pixel_size),
+            vi.numpyToVTK(self.ct_data,self.ct_data.shape),
             self.ct_origin,self.ct_pixel_size,
             self.ct_orientation,0)
 

+ 16 - 4
cardiacSPECT/parseDicom.py

@@ -232,10 +232,22 @@ def read_CT(mypath):
             print ('Not a CT file')
             continue
 
-        if re.match("AC",plan.SeriesDescription) == None:
-            print (plan.SeriesDescription)
-            print ('Not a AC file')
-            continue
+        #this doesn't work in 2019 data version
+        #if re.match("AC",plan.SeriesDescription) == None:
+        #    print (plan.SeriesDescription)
+        #    print ('Not a AC file')
+        #    continue
+        try:
+            iType=plan.ImageType
+        except:
+            print "Image type not found"
+            continue;
+
+        if iType[3].find("SPI")<0:
+            print "Not a spiral image"
+            continue;
+
+
         #a slice of pure CT
         print '.',
         ct_data.append(plan.pixel_array)