|
Size: 2666
Comment: Added DICOM position tag information.
|
Size: 1836
Comment: changed info about CVS access. we don't have a pserver.
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 3: | Line 3: |
| = Index = | [[Navigation(children)]] |
| Line 5: | Line 5: |
| [[Navigation(children)]] | '''Index''' |
| Line 8: | Line 9: |
| = File Format Information = == DICOM == === DICOM Resources === [http://medical.nema.org/dicom/2003.html DICOM specification] [[BR]] [http://dclunie.com/medical-image-faq/html/part8.html DICOM informtion sources] === DICOM Position/Orientation Information === DICOM uses a "Tag" to retrieve "Attribute Name" information. The documentation can be found in the [http://medical.nema.org/dicom/2003.html DICOM specification]. The image position and the image orientation section is in Part 3:Information Object Definition, C.7.6.1.1.1 and C.7.6.2.1.1. The DICOM coordinate system is the LPS (left-posterior-superior), meanwhile the RAS coordinate system is right-anterior-superior. The tag for the image position is (0x20, 0x32) and returns the x, y, z position of the upper left-hand corner of the image (the center of the first voxel). The tag for the image orientation is (0x20, 0x37) and it returns the direction cosines of the first row and the first column with respect to the patient: first the value for the row x, y, z and then the value for the column x, y, z. For example, I get the string of the form "0.00000\\1.00000\\0.00000\\0.00000\\0.00000\\-1.00000". The tag for the patient orientation is (0x20, 0x20) and it returns the position relative to the image plane by two characters with respect to the positive row axis (left to right) and the positive column axis (top to bottom). The character used are A(anterior), P(posterior), R(right), L(left), H(head), and F(foot). For example, the string I got was "P\\F" (posterior, foot). == Medical Image Format FAQ == |
=== Medical Image Format FAQ === |
| Line 30: | Line 12: |
| = CVS Checkout = | === CVS Checkout === |
| Line 32: | Line 14: |
| There are several ways to do: pserver, ext, kserver, gserver. See, e.g. Chapter 2 of [http://cvsbook.red-bean.com/cvsbook.html Open Source Development with CVS] by K. Fogel and M. Bar (2nd Edition, Coriolis Group, 2001). | You can checkout the FreeSurfer source code from the NMR center using local CVS access or remotely by using SSH as the CVS remote connection method. |
| Line 34: | Line 16: |
| '''pserver''' | ==== Local CVS Access ==== |
| Line 36: | Line 18: |
| `cvs -d :pserver:tosa@cvs.foobar.com:/space/repo/1/dev login` | The CVS repository is /space/repo/1/dev. Use this as your CVSROOT. You can either set it as an environment variable: |
| Line 38: | Line 20: |
| where username is "`tosa`" on the server "`cvs.foobar.com`". The cvs depository is `/space/repo/1/dev`. You get asked about the password. Once you stored your authentication in `.cvspass` file, you can run other CVS commands using a similar way. | {{{setenv CVSROOT /space/repo/1/dev}}} |
| Line 40: | Line 22: |
| `cvs -d :pserver:tosa@cvs.foobar.com:/space/repo/1/dev co dev` | or specify it in the checkout command with the -d option. Note that the CVS root is cached in a CVS checkout directory, so if you choose to use the -d method, you will only have to do it once during your first checkout. |
| Line 42: | Line 24: |
| which checkout the entire directory `dev` into the current directory. | Check out the code with the CVS checkout command. The archive name is dev. |
| Line 44: | Line 26: |
| '''ext''' | {{{cvs checkout dev}}} |
| Line 46: | Line 28: |
| `export CVS_RSH=ssh` [[BR]] `cvs -d :ext:tosa@cvs.foobar.com:/space/repo/1/dev co dev` |
or |
| Line 49: | Line 30: |
| Note that even though CVS_RSH, we use `ssh`, which is a secure shell | {{{cvs -d /space/repo/1/dev checkout dev}}} This will copy the entire archive to your directory, creating a directory called dev/. Now set up your environment to use this dev directory by running the script in dev/: {{{cd dev source set_dev_env_to_here.csh}}} ==== Remote CVS Access ==== Tell CVS to use SSH to access the archive by setting the following environment variable: {{{setenv CVS_RSH ssh}}} Use the following string as your CVS root: {{{:ext:USER@MACHINE.nmr.mgh.harvard.edu:/space/repo/1/dev}}} Where USER is your username and MACHINE is one of the NMR machines visible to the outside, i.e. gate, entry, or door. Then use the CVS commands normally. Note that using this method makes an SSH connection for every CVS command, and you will be required to enter your password every time. You may want to look into a utility to automatically authenticate SSH connections, such as SSH agent. |
Index
1. Medical Image Format FAQ
[http://www.dclunie.com/medical-image-faq/html Medical Image Format FAQ]
2. CVS Checkout
You can checkout the FreeSurfer source code from the NMR center using local CVS access or remotely by using SSH as the CVS remote connection method.
2.1. Local CVS Access
The CVS repository is /space/repo/1/dev. Use this as your CVSROOT. You can either set it as an environment variable:
setenv CVSROOT /space/repo/1/dev
or specify it in the checkout command with the -d option. Note that the CVS root is cached in a CVS checkout directory, so if you choose to use the -d method, you will only have to do it once during your first checkout.
Check out the code with the CVS checkout command. The archive name is dev.
cvs checkout dev
or
cvs -d /space/repo/1/dev checkout dev
This will copy the entire archive to your directory, creating a directory called dev/. Now set up your environment to use this dev directory by running the script in dev/:
{{{cd dev source set_dev_env_to_here.csh}}}
2.2. Remote CVS Access
Tell CVS to use SSH to access the archive by setting the following environment variable:
setenv CVS_RSH ssh
Use the following string as your CVS root:
:ext:USER@MACHINE.nmr.mgh.harvard.edu:/space/repo/1/dev
Where USER is your username and MACHINE is one of the NMR machines visible to the outside, i.e. gate, entry, or door. Then use the CVS commands normally.
Note that using this method makes an SSH connection for every CVS command, and you will be required to enter your password every time. You may want to look into a utility to automatically authenticate SSH connections, such as SSH agent.
