[ITK-users] How to using SimpleITK to access and change the voxel value without touch the metadata
Po-Yu Kao <poyu_kao-YrpgMgEJq6z2fBVCVOL8/[email protected]> Tue, 28 Nov 2017 18:35:18 -0800
| Newsgroups | gmane.comp.lib.itk.user |
|---|---|
| Message-ID | <CA+pTWFSv3S6FPcgO97LJ2AOjn_xV-tTnG3qGeqM4u4V-uptB5Q@mail.gmail.com> |
Hello,
I am using SimpleITK library in python 2.7.
I want to do some basic preprocessing on CT scans with nii.gz. format. For
example, I use img = sitk.ReadImage(ct_scan_path) to read the image, and
then use nda = sitk.GetArrayFromImage(ct_img) to access n-dimensional numpy
array. Then, I do some preprocessing steps on this n-dimensional numpy, and
save it back to the image format by using img_preprocessed =
sitk.GetImageFromArray(nda_preprocessed). However, when I check the
metadata of these two images, it gives me different values which are showed
below.
Does anyone know how to copy all the metadata from the original image to
another image? or Does anyone know how to access and change the voxel value
of the image without touching the metadata?
Original Image:
print img
Image (0x4237b40)
RTTI typeinfo: itk::Image<float, 3u>
Reference Count: 1
Modified Time: 3601
Debug: Off
Object Name:
Observers:
none
Source: (none)
Source output name: (none)
Release Data: Off
Data Released: False
Global Release Data: Off
PipelineMTime: 3578
UpdateMTime: 3600
RealTimeStamp: 0 seconds
LargestPossibleRegion:
Dimension: 3
Index: [0, 0, 0]
Size: [512, 512, 37]
BufferedRegion:
Dimension: 3
Index: [0, 0, 0]
Size: [512, 512, 37]
RequestedRegion:
Dimension: 3
Index: [0, 0, 0]
Size: [512, 512, 37]
Spacing: [0.488281, 0.488281, 5]
Origin: [-114, 294.012, 21.82]
Direction:
1 0 0
0 -1 0
0 0 1
IndexToPointMatrix:
0.488281 0 0
0 -0.488281 0
0 0 5
PointToIndexMatrix:
2.048 0 0
0 -2.048 0
0 0 0.2
Inverse Direction:
1 0 0
0 -1 0
0 0 1
PixelContainer:
ImportImageContainer (0x398e780)
RTTI typeinfo: itk::ImportImageContainer<unsigned long, float>
Reference Count: 1
Modified Time: 3597
Debug: Off
Object Name:
Observers:
none
Pointer: 0x7f6ef9225010
Container manages memory: true
Size: 9699328
Capacity: 9699328
Preprocessed Image:
Image (0x3857e60)
RTTI typeinfo: itk::Image<float, 3u>
Reference Count: 1
Modified Time: 3605
Debug: Off
Object Name:
Observers:
none
Source: (none)
Source output name: (none)
Release Data: Off
Data Released: False
Global Release Data: Off
PipelineMTime: 0
UpdateMTime: 0
RealTimeStamp: 0 seconds
LargestPossibleRegion:
Dimension: 3
Index: [0, 0, 0]
Size: [512, 512, 37]
BufferedRegion:
Dimension: 3
Index: [0, 0, 0]
Size: [512, 512, 37]
RequestedRegion:
Dimension: 3
Index: [0, 0, 0]
Size: [512, 512, 37]
Spacing: [1, 1, 1]
Origin: [0, 0, 0]
Direction:
1 0 0
0 1 0
0 0 1
IndexToPointMatrix:
1 0 0
0 1 0
0 0 1
PointToIndexMatrix:
1 0 0
0 1 0
0 0 1
Inverse Direction:
1 0 0
0 1 0
0 0 1
PixelContainer:
ImportImageContainer (0x39856c0)
RTTI typeinfo: itk::ImportImageContainer<unsigned long, float>
Reference Count: 1
Modified Time: 3606
Debug: Off
Object Name:
Observers:
none
Pointer: 0x7f6ef4823010
Container manages memory: true
Size: 9699328
Capacity: 9699328
The ITK community is transitioning from this mailing list to discourse.itk.org. Please join us there!
________________________________
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Kitware offers ITK Training Courses, for more information visit:
http://www.kitware.com/products/protraining.php
Please keep messages on-topic and check the ITK FAQ at:
http://www.itk.org/Wiki/ITK_FAQ
Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/insight-users