Hoffman2:Scripts:dcmheader.py

From Center for Cognitive Neuroscience
Revision as of 22:20, 27 April 2020 by Hwang (talk | contribs) (→‎Usage:)
Jump to navigation Jump to search

Purpose:

This script is to help view and edit a Dicom file header information or header of Dicom files under the same subject folder

Usage:

To use this script, you need to load python module first and export the library location:

module load python/3.6.1_shared
PYTHONPATH=/u/project/CCN/apps/python_libs/3.6/site-packages/

To see the usage of this script

python3 /u/project/CCN/apps/scripts/dcmheader.py -h


It shows the header of a single dcm file, or shows specific header items in multiple files inside the same subject folder or update them.

For example, showing the full header of a dcm file python3 /u/project/CCN/apps/scripts/dcmheader.py -f /path/to/my/dicom/file -p (or --print )

You want to use this first to find out the tags of the header items you want to check or update. For example you will get the following result

(0010, 0010) Patient's Name PN: '12345' (0010, 0020) Patient ID LO: 12345 (0010, 0030) Patient's Birth Date DA: '20000101' (0010, 0040) Patient's Sex CS: 'F' (0010, 1010) Patient's Age AS: '020Y'

(0010, 0010) is the tag for item “Patient's Name”, you need this for -c (--check) and -u (--update) options.

-c (--check) option: This option is to view specific header items in a dcm file or the same items in all files inside the subject folder

View a single item: python3 /u/project/CCN/apps/scripts/dcmheader.py -f /path/to/my/dicom/subject/file -c "(0010, 0010)"

View a single item in a subject folder by specifying the folder instead of a file: python3 /u/project/CCN/apps/scripts/dcmheader.py -f /path/to/my/dicom/subject/ -c "(0010, 0010)"

View multiple items: python3 /u/project/CCN/apps/scripts/dcmheader.py -f /path/to/my/dicom/subject/file -c "(0010, 0010) (0010, 0020)" python3 /u/project/CCN/apps/scripts/dcmheader.py -f /path/to/my/dicom/subject/ -c "(0010, 0010) (0010, 0020)"

-u (--update) option: This option is for updating specific header items, using the format as "tag=new_value" Example: update a single item (in this example, change the Patient's Name value to 12345_1): python3 /u/project/CCN/apps/scripts/dcmheader.py -f /path/to/my/dicom/subject/file -u "(0010, 0010)=12345_1" update the same item for the whole subject folder python3 /u/project/CCN/apps/scripts/dcmheader.py -f /path/to/my/dicom/subject/ -u "(0010, 0010)=12345_1"