forked from jeffduda/GetYourBrainPipelined
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsmoothITK.py
More file actions
36 lines (26 loc) · 751 Bytes
/
smoothITK.py
File metadata and controls
36 lines (26 loc) · 751 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import itk
import sys
import os
import logging
iDir = os.getenv("INPUT_DIR")
oDir = os.getenv("OUTPUT_DIR")
logging.basicConfig()
log = logging.getLogger(__name__)
log.setLevel(logging.INFO)
if len(sys.argv) > 2:
log.info("Starting ITK")
inFile = os.path.join(iDir, sys.argv[1])
sigma = float(sys.argv[2])
outFile = os.path.join(oDir, sys.argv[3])
log.info("Opening input")
im = itk.imread(inFile)
log.info("Setup filter")
filter = itk.SmoothingRecursiveGaussianImageFilter[type(im), type(im)].New()
filter.SetInput(im)
filter.SetSigma(sigma)
log.info("Run filter")
filter.Update()
outIm = filter.GetOutput()
log.info("Save output")
itk.imwrite(outIm, outFile)
log.info("Done ITK")