24 from distutils.version
import StrictVersion
as VS
26 print(
"ITK 4.8.0 is required (see example documentation).")
29 if len(sys.argv) != 6:
31 "Usage: " + sys.argv[0] +
32 " [InputFileName] [OutputFileName1X] [OutputFileName1Y]" +
33 " [OutputFileName2X] [OutputFileName2Y]")
36 inputFileName = sys.argv[1]
37 outputFileName1X = sys.argv[2]
38 outputFileName1Y = sys.argv[3]
39 outputFileName2X = sys.argv[4]
40 outputFileName2Y = sys.argv[5]
53 ImageType =
itk.Image[PixelType, ImageDimension]
54 FloatPixelType = itk.F
55 FloatImageType =
itk.Image[FloatPixelType, ImageDimension]
56 VecPixelType =
itk.Vector[FloatPixelType, VectorDimension]
57 VecImageType =
itk.Image[VecPixelType, ImageDimension]
59 CovImageType =
itk.Image[CovPixelType, ImageDimension]
62 reader = ReaderType.New()
63 reader.SetFileName(inputFileName)
67 inverter = InvertType.New()
68 inverter.SetInput(reader.GetOutput())
72 caster = CasterType.New()
73 caster2 = CasterType.New()
79 composer = ComposeType.New()
80 caster.SetInput(reader.GetOutput())
81 composer.SetInput(0, caster.GetOutput())
82 caster2.SetInput(inverter.GetOutput())
83 composer.SetInput(1, caster2.GetOutput())
88 VecImageType, CovImageType]
89 gradientfilter = FilterType.New()
90 gradientfilter.SetInput(composer.GetOutput())
94 CovImageType, FloatImageType]
95 indexSelectionFilter = IndexSelectionType.New()
96 indexSelectionFilter.SetInput(gradientfilter.GetOutput())
100 rescaler = RescalerType.New()
103 rescaler.SetInput(indexSelectionFilter.GetOutput())
106 writer = WriterType.New()
107 writer.SetInput(rescaler.GetOutput())
110 indexSelectionFilter.SetIndex(i)
111 writer.SetFileName(filenames[i])