Difference between revisions of "Documentation/4.1/FAQ"

From Slicer Wiki
Jump to: navigation, search
Line 29: Line 29:
 
#When you have the result you want, return to the  [http://www.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/Data ''Data'' module], there '''right''' click on your image and select ''Harden Transform'' from the pulldown menu.
 
#When you have the result you want, return to the  [http://www.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/Data ''Data'' module], there '''right''' click on your image and select ''Harden Transform'' from the pulldown menu.
 
#The image will move back outside the transform onto the main level, indicating that your change of axis orientation has now been applied. Note there is no Undo for this step. If you change your mind you have to apply the same flip again or reload your volume.
 
#The image will move back outside the transform onto the main level, indicating that your change of axis orientation has now been applied. Note there is no Undo for this step. If you change your mind you have to apply the same flip again or reload your volume.
 +
#Note that the flip will likely also cause a shift, depending on your image origin. You may choose to recenter your image. To do so go to the [http://www.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/Volumes ''Volumes'' module], open the ''Volume Information'' tab and click on the ''Center Volume'' button
 
#Note that this change was applied to the header information that stores the physical orientation, '''not''' the image data itself. Hence you will only see this flip in software that reads and accounts this header orientation info.
 
#Note that this change was applied to the header information that stores the physical orientation, '''not''' the image data itself. Hence you will only see this flip in software that reads and accounts this header orientation info.
 
#Save your image under a new name, do ''not'' use a format that doesn't store physical orientation info in the header (jpg, gif etc).; also consider saving the transform as documentation to what change you have applied. You can also use these saved transforms as templates to quickly flip an image.
 
#Save your image under a new name, do ''not'' use a format that doesn't store physical orientation info in the header (jpg, gif etc).; also consider saving the transform as documentation to what change you have applied. You can also use these saved transforms as templates to quickly flip an image.
 
#Again: the change is saved as part of the image orientation info and not as an actual resampling of the image, i.e. if you save your image and reload it in another software that does not read the image orientation info in the header (or displays in image space only), you will not see the change you just applied.
 
#Again: the change is saved as part of the image orientation info and not as an actual resampling of the image, i.e. if you save your image and reload it in another software that does not read the image orientation info in the header (or displays in image space only), you will not see the change you just applied.
 
To flip the other axes do the same as above but edit the diagonal entries in the 2nd and 3rd row, for flipping anterior-posterior and inferior-superior directions, respectively.
 
To flip the other axes do the same as above but edit the diagonal entries in the 2nd and 3rd row, for flipping anterior-posterior and inferior-superior directions, respectively.
 +
 +
== How do I fix a wrong image orientation in the header? / My image appears upside down / facing the wrong way / I have incorrect/missing axis orientation ==
 +
*'''Problem:''' My image appears upside down / flipped / facing the wrong way / I have incorrect/missing axis orientation
 +
*'''Explanation:''' Slicer presents and interacts with images in ''physical'' space, which differs from the way the image is stored by a separate ''transform'' that defines how large the voxels are and how the image is oriented in space, e.g. which side is left or right.  This information is stored in the image header, and different image file formats have different ways of storing this information. If Slicer supports the image format, it should read the information in the header and display the image correctly. If the image appears upside down or with distorted aspect ratio etc, then the image header information is either missing or incorrect.
 +
*'''Fix:''' See the FAQ above on how to flip an image axis within Slicer. You can also correct the voxel dimensions and the image origin in the ''Volume Information'' tab of the [http://www.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/Volumes ''Volumes'' module], and you can reorient images via the  [http://www.slicer.org/slicerWiki/index.php/Documentation/4.1/Modules/Transforms ''Transforms'' module].
 +
*To fix an axis orientation directly in the header info of an image file:
 +
:1. load the image into slicer (File: Add Volume, Add Data, Load Scene..)
 +
:2. save the image back out as ''NRRD (.nhdr)'' format.
 +
:3. open the ''.nhdr'' with a text editor of your choice. You should see a line that looks like this:
 +
  space: left-posterior-superior
 +
  sizes: 448 448 128
 +
  space directions: (0.5,0,0) (0,0.5,0) (0,0,0.8)
 +
:4. the three brackets ( ) represent the coordinate axes as defined in the ''space'' line above, i.e. the first one is left-right, the second anterior-posterior, and the last inferior-superior. To flip an axis place a minus sign in front of the respective number, which is the voxel dimension. E.g. to flip left-right, change the line to
 +
  space directions: ('''-'''0.5,0,0) (0,0.5,0) (0,0,0.8)
 +
:5. alternatively if the entire orientation is wrong, i.e. coronal slices appear in the axial view etc., you may easier just change the ''space'' field to the proper orientation. Note that Slicer uses ''RAS'' space by default, i.e. first (x) axis = left-'''r'''ight, second (y) axis = posterior-'''a'''nterior, third (z) axis = inferior-'''s'''uperior
 +
:6. save & close the edited ''.nhdr'' file and reload the image in slicer to see if the orientation is now correct.

Revision as of 20:14, 3 May 2012

Home < Documentation < 4.1 < FAQ

User FAQ: Installation & Generic

Is slicer really free?

Yes, really, truly, free. Not just a free trial. No pro version with all the good stuff. Slicer is free with no strings attached. You can even re-use the code in any way you want with no royalties and you don't even need to ask us for permission. (Of course we're always happy to hear from people who've found slicer interesting).

See the Slicer License page for the legal version of this.

Can I use slicer for patient care?

Slicer is intended for research work and has no FDA clearances or approvals of any kind. It is the responsibility of the user to comply with all laws and regulations (and moral/ethical guidelines) when using slicer.

User FAQ : Registration

How do I fix incorrect axis directions? Can I flip an image (left/right, anterior/posterior etc) ?

Sometimes the header information that describes the orientation and size of the image in physical space is incorrect or missing. Slicer displays images in physical space, in a RAS orientation. If images appear flipped or upside down, the transform that describes how the image grid relates to the physical world is incorrect. In proper RAS orientation, a head should have anterior end at the top in the axial view, look to the left in a sagittal view, and have the superior end at the top in sagittal and coronal views.
Yes, you can flip images and change the axis orientation of images in slicer. But we urge to use great caution when doing so, since this can introduce subtantial problems if done wrong. Worse than no information is wrong information. Below the steps to flip the LR axis of an image:
You may skip steps 5-8 below and download predefined transforms here. To apply those unzip, drag & drop into Slicer and drag your volume inside the transform.

  1. Go to the Data module, right click on the node labeled "Scene" and select "Insert Transform" from the pulldown menu
  2. You should see a new transform node being added to the tree, named "LinearTransform_1" or similar.
  3. left click on the volume you wish to flip, and drag it onto the new transform node. You should see a "+" appear in front of the transform node, and clicking on it should reveal the volume now inside/under that transform.
  4. make sure you have the image you wish to flip selected and visible in the slice views, preferably all 3 views (sagittal, coronal, axial).
  5. Switch to the Transforms module and (if not selected already) select the newly created transform from the Active Transform menu.
  6. Under Transform Matrix you see a 4x4 array of ones and zeros. Each row represents an axis direction. We will switch the axis direction by changing the sign of one of the 1s.
  7. e.g. to flip left/right: double-click inside the top left field where you see a 1. The number should be high-lighted and change to 1.0
  8. replace the 1.0 with "-1.0", then hit the RETURN key. You should see a flip immediately, assuming you have the volume in the proper view. Depending on which of the axes you want flipped, select the 1 in one of the other rows.
  9. When you have the result you want, return to the Data module, there right click on your image and select Harden Transform from the pulldown menu.
  10. The image will move back outside the transform onto the main level, indicating that your change of axis orientation has now been applied. Note there is no Undo for this step. If you change your mind you have to apply the same flip again or reload your volume.
  11. Note that the flip will likely also cause a shift, depending on your image origin. You may choose to recenter your image. To do so go to the Volumes module, open the Volume Information tab and click on the Center Volume button
  12. Note that this change was applied to the header information that stores the physical orientation, not the image data itself. Hence you will only see this flip in software that reads and accounts this header orientation info.
  13. Save your image under a new name, do not use a format that doesn't store physical orientation info in the header (jpg, gif etc).; also consider saving the transform as documentation to what change you have applied. You can also use these saved transforms as templates to quickly flip an image.
  14. Again: the change is saved as part of the image orientation info and not as an actual resampling of the image, i.e. if you save your image and reload it in another software that does not read the image orientation info in the header (or displays in image space only), you will not see the change you just applied.

To flip the other axes do the same as above but edit the diagonal entries in the 2nd and 3rd row, for flipping anterior-posterior and inferior-superior directions, respectively.

How do I fix a wrong image orientation in the header? / My image appears upside down / facing the wrong way / I have incorrect/missing axis orientation

  • Problem: My image appears upside down / flipped / facing the wrong way / I have incorrect/missing axis orientation
  • Explanation: Slicer presents and interacts with images in physical space, which differs from the way the image is stored by a separate transform that defines how large the voxels are and how the image is oriented in space, e.g. which side is left or right. This information is stored in the image header, and different image file formats have different ways of storing this information. If Slicer supports the image format, it should read the information in the header and display the image correctly. If the image appears upside down or with distorted aspect ratio etc, then the image header information is either missing or incorrect.
  • Fix: See the FAQ above on how to flip an image axis within Slicer. You can also correct the voxel dimensions and the image origin in the Volume Information tab of the Volumes module, and you can reorient images via the Transforms module.
  • To fix an axis orientation directly in the header info of an image file:
1. load the image into slicer (File: Add Volume, Add Data, Load Scene..)
2. save the image back out as NRRD (.nhdr) format.
3. open the .nhdr with a text editor of your choice. You should see a line that looks like this:
 space: left-posterior-superior
 sizes: 448 448 128
 space directions: (0.5,0,0) (0,0.5,0) (0,0,0.8)
4. the three brackets ( ) represent the coordinate axes as defined in the space line above, i.e. the first one is left-right, the second anterior-posterior, and the last inferior-superior. To flip an axis place a minus sign in front of the respective number, which is the voxel dimension. E.g. to flip left-right, change the line to
 space directions: (-0.5,0,0) (0,0.5,0) (0,0,0.8)
5. alternatively if the entire orientation is wrong, i.e. coronal slices appear in the axial view etc., you may easier just change the space field to the proper orientation. Note that Slicer uses RAS space by default, i.e. first (x) axis = left-right, second (y) axis = posterior-anterior, third (z) axis = inferior-superior
6. save & close the edited .nhdr file and reload the image in slicer to see if the orientation is now correct.