forked from SimpleITK/SimpleITK
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathSimpleIO.lua
More file actions
72 lines (59 loc) · 2.32 KB
/
Copy pathSimpleIO.lua
File metadata and controls
72 lines (59 loc) · 2.32 KB
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
--=========================================================================
--
-- Copyright NumFOCUS
--
-- Licensed under the Apache License, Version 2.0 (the "License");
-- you may not use this file except in compliance with the License.
-- You may obtain a copy of the License at
--
-- http://www.apache.org/licenses/LICENSE-2.0.txt
--
-- Unless required by applicable law or agreed to in writing, software
-- distributed under the License is distributed on an "AS IS" BASIS,
-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-- See the License for the specific language governing permissions and
-- limitations under the License.
--
--=========================================================================
-- These examples are used in the I/O documentation page. The IO.rst file
-- pulls the code examples based their line numbers in this file. So any
-- change in the line numbers of the code below will break the I/O page.
function example1(inputImageFileName, outputImageFileName)
require "SimpleITK"
--START_OO_IMAGE_READER_WRITER_EXAMPLE
reader = SimpleITK.ImageFileReader()
reader:SetImageIO("PNGImageIO")
reader:SetFileName(inputImageFileName)
image = reader:Execute();
writer = SimpleITK.ImageFileWriter()
writer:SetFileName(outputImageFileName)
writer:Execute(image);
--END_OO_IMAGE_READER_WRITER_EXAMPLE
end
function example2(inputImageFileName, outputImageFileName)
require "SimpleITK"
--START_PROCEDURAL_IMAGE_READER_WRITER_EXAMPLE
image = SimpleITK.ReadImage(inputImageFileName, SimpleITK.sitkUnknown, "PNGImageIO")
SimpleITK.WriteImage(image, outputImageFileName)
--END_PROCEDURAL_IMAGE_READER_WRITER_EXAMPLE
end
function example3()
require "SimpleITK"
--START_PROCEDURAL_TRANSFORM_READER_WRITER_EXAMPLE
basic_transform = SimpleITK.Euler2DTransform()
trans = SimpleITK.VectorDouble()
trans:push_back(2.0)
trans:push_back(3.0)
basic_transform:SetTranslation(trans)
SimpleITK.WriteTransform(basic_transform, 'euler2D.tfm')
read_result = SimpleITK.ReadTransform('euler2D.tfm')
assert(read_result:GetName() ~= basic_transform:GetName(), "type error")
--END_PROCEDURAL_TRANSFORM_READER_WRITER_EXAMPLE
end
if #arg < 2 then
print ( "Usage: SimpleIO <input> <output>" )
os.exit ( 1 )
end
example1(arg[1], arg[2])
example2(arg[1], arg[2])
example3()