|
17 | 17 | import sys
|
18 | 18 | import itk
|
19 | 19 |
|
20 |
| -from distutils.version import StrictVersion as VS |
21 |
| -if VS(itk.Version.GetITKVersion()) < VS("4.7.0"): |
22 |
| - print("ITK 4.7.0 is required (see example documentation).") |
23 |
| - sys.exit(1) |
24 |
| - |
25 | 20 | if len(sys.argv) != 3:
|
26 |
| - print("Usage: " + sys.argv[0] + " [inputImage] [outputImage]") |
| 21 | + print("Usage: " + sys.argv[0] + " [input_filename] [output_filename]") |
27 | 22 | sys.exit(1)
|
28 | 23 |
|
29 |
| -inputImage = sys.argv[1] |
30 |
| -outputImage = sys.argv[2] |
31 |
| - |
32 |
| -Dimension = 2 |
| 24 | +input_filename = sys.argv[1] |
| 25 | +output_filename = sys.argv[2] |
33 | 26 |
|
34 | 27 | PixelType = itk.RGBPixel[itk.UC]
|
35 |
| -ImageType = itk.Image[PixelType, Dimension] |
36 |
| - |
37 |
| -ReaderType = itk.ImageFileReader[ImageType] |
38 |
| -reader = ReaderType.New() |
39 |
| -reader.SetFileName(inputImage) |
40 |
| - |
41 |
| -filterType = itk.ResampleImageFilter[ImageType, ImageType] |
42 |
| -resampleImageFilter = filterType.New() |
43 |
| - |
44 |
| -interpolatorType = itk.LinearInterpolateImageFunction[ImageType, itk.D] |
45 |
| -interpolator = interpolatorType.New() |
46 |
| - |
47 |
| -resampleImageFilter.SetInterpolator(interpolator) |
48 | 28 |
|
49 |
| -transformType = itk.IdentityTransform[itk.D, Dimension] |
50 |
| -transform = transformType.New() |
| 29 | +input_image = itk.imread(input_filename, pixel_type=PixelType) |
51 | 30 |
|
52 |
| -resampleImageFilter.SetTransform(transform) |
| 31 | +ImageType = type(input_image) |
| 32 | +interpolator = itk.LinearInterpolateImageFunction[ImageType, itk.D].New() |
53 | 33 |
|
54 |
| -resampleImageFilter.SetDefaultPixelValue([50, 50, 50]) |
55 |
| -resampleImageFilter.SetOutputSpacing([0.5, 0.5]) |
56 |
| -resampleImageFilter.SetOutputOrigin([30, 40]) |
| 34 | +Dimension = input_image.GetImageDimension() |
| 35 | +transform = itk.IdentityTransform[itk.D, Dimension].New() |
57 | 36 |
|
58 |
| -resampleImageFilter.SetSize([300, 300]) |
59 |
| -resampleImageFilter.SetInput(reader.GetOutput()) |
| 37 | +output_image = itk.resample_image_filter(input_image, |
| 38 | + interpolator=interpolator, |
| 39 | + transform=transform, |
| 40 | + default_pixel_value=[50, 50, 50], |
| 41 | + output_spacing=[0.5, 0.5], |
| 42 | + output_origin=[30, 40], |
| 43 | + size=[300, 300]) |
60 | 44 |
|
61 |
| -WriterType = itk.ImageFileWriter[ImageType] |
62 |
| -writer = WriterType.New() |
63 |
| -writer.SetFileName(outputImage) |
64 |
| -writer.SetInput(resampleImageFilter.GetOutput()) |
65 |
| -writer.Update() |
| 45 | +itk.imwrite(output_image, output_filename) |
0 commit comments