Spaces:
Running
Running
Swapped 3D with 2D closing operation [no ci]
Browse files
lungtumormask/__main__.py
CHANGED
|
@@ -16,7 +16,7 @@ def main():
|
|
| 16 |
parser.add_argument('--lung-filter', action='store_true', help='whether to apply lungmask postprocessing.')
|
| 17 |
parser.add_argument('--threshold', metavar='threshold', type=float, default=0.5,
|
| 18 |
help='which threshold to use for assigning voxel-wise classes.')
|
| 19 |
-
parser.add_argument('--radius', metavar='radius', type=int, default=
|
| 20 |
help='which radius to use for morphological post-processing segmentation smoothing.')
|
| 21 |
|
| 22 |
argsin = sys.argv[1:]
|
|
|
|
| 16 |
parser.add_argument('--lung-filter', action='store_true', help='whether to apply lungmask postprocessing.')
|
| 17 |
parser.add_argument('--threshold', metavar='threshold', type=float, default=0.5,
|
| 18 |
help='which threshold to use for assigning voxel-wise classes.')
|
| 19 |
+
parser.add_argument('--radius', metavar='radius', type=int, default=1,
|
| 20 |
help='which radius to use for morphological post-processing segmentation smoothing.')
|
| 21 |
|
| 22 |
argsin = sys.argv[1:]
|
lungtumormask/dataprocessing.py
CHANGED
|
@@ -8,7 +8,7 @@ import torch
|
|
| 8 |
import numpy as np
|
| 9 |
from monai.transforms import (Compose, LoadImaged, ToNumpyd, ThresholdIntensityd, AddChanneld, NormalizeIntensityd, SpatialCropd, DivisiblePadd, Spacingd, SqueezeDimd)
|
| 10 |
from tqdm import tqdm
|
| 11 |
-
from skimage.morphology import binary_closing,
|
| 12 |
|
| 13 |
def mask_lung(scan_path, batch_size=20):
|
| 14 |
model = lungmask.mask.get_model('unet', 'R231')
|
|
@@ -239,6 +239,7 @@ def post_process(left, right, preprocess_dump, lung_filter, threshold, radius):
|
|
| 239 |
stitched[preprocess_dump['lungmask'] == 0] = 0
|
| 240 |
|
| 241 |
# final post-processing - fix fragmentation
|
| 242 |
-
|
|
|
|
| 243 |
|
| 244 |
return stitched
|
|
|
|
| 8 |
import numpy as np
|
| 9 |
from monai.transforms import (Compose, LoadImaged, ToNumpyd, ThresholdIntensityd, AddChanneld, NormalizeIntensityd, SpatialCropd, DivisiblePadd, Spacingd, SqueezeDimd)
|
| 10 |
from tqdm import tqdm
|
| 11 |
+
from skimage.morphology import binary_closing, disk
|
| 12 |
|
| 13 |
def mask_lung(scan_path, batch_size=20):
|
| 14 |
model = lungmask.mask.get_model('unet', 'R231')
|
|
|
|
| 239 |
stitched[preprocess_dump['lungmask'] == 0] = 0
|
| 240 |
|
| 241 |
# final post-processing - fix fragmentation
|
| 242 |
+
for i in range(stitched.shape[-1]):
|
| 243 |
+
stitched[..., i] = binary_closing(stitched[..., i], footprint=disk(radius=radius))
|
| 244 |
|
| 245 |
return stitched
|