Diff of /segment_airway.py [000000] .. [c6d664]

Switch to side-by-side view

--- a
+++ b/segment_airway.py
@@ -0,0 +1,42 @@
+import numpy as np
+import nibabel as nib
+from scipy import ndimage
+from utils import *
+
+def segment_airway(params, I, I_affine, Mlung):
+
+	#####################################################
+	# Initialize parameters 
+	#####################################################
+	
+	Radius         = params['airwayRadiusMask']
+	RadiusX        = params['airwayRadiusX']
+	RadiusZ        = params['airwayRadiusZ']	
+	struct_s 	   = ndimage.generate_binary_structure(3, 1)
+	struct_l 	   = ndimage.iterate_structure(struct_s, 3)
+	struct_trachea = generate_structure_trachea(Radius, RadiusX, RadiusZ)
+
+	#####################################################
+	# Locate an inital point in trachea 
+	#####################################################
+
+	slice_no, initLoc = generate_initLoc(params, I, Mlung, Radius, RadiusZ, struct_trachea)
+
+	#####################################################
+	# Find airway with closed space diallation
+	#####################################################
+
+	Maw = close_space_dilation(params, I, Mlung, Radius, RadiusX, RadiusZ, struct_s, slice_no, initLoc)
+
+	#####################################################
+	# Remove airway & save nii
+	#####################################################
+
+	Mawtmp = ndimage.binary_dilation(Maw, structure = struct_l, iterations = 1)
+	Mawtmp = np.int8(Mawtmp)
+	Mlung[Maw > 0] = 0
+	nib.Nifti1Image(Maw,I_affine).to_filename('./result/sample_aw.nii.gz')
+	nib.Nifti1Image(Mlung,I_affine).to_filename('./result/sample_lung.nii.gz')
+	
+	return Mlung, Maw
+