Dicom Anonymization-snippet

From CISSTwiki

Jump to: navigation, search


Keywords

DICOM, HIPAA, anonymous, anonymization

Description

To be HIPAA compliant, we need to remove most elements that can be used as identifiers from our data sets. This includes all our DICOM images. To that extent, as small utility has been developed at the ERC-CISST. It is composed of a small library with a DICOM parser, two dictionaries (known data fields and list of fields to remove/anonymize) and a few programs including "dcmanon". The code resides on our CVS server. To obtain the latest version of the code and the dictionaries, use CVS with the CVSROOT:

   CVSROOT=:pserver:anonymous@spine.compsci.jhu.edu:/home/cvs/dcmanonroot

The password is "cisst" and the module to checkout is "dcmanon". On a unix shell, the commands to retrieve the code are:

   export CVSROOT=:pserver:anonymous@spine.compsci.jhu.edu:/home/cvs/dcmanonroot
   cvs login
   cvs co dcmanon

Once you have retrieved the code, compile it with any standard C compiler. The directory "src" contains an older makefile as well as a configuration file for CMake (CMakeLists.txt). CMake can create a build environment for MacOS, Windows, Linux with the most common compilers. Once you have created the binary "dcmanon", use it as follows:

   dcmanon dicom_file log.txt anondict.txt

The file "anondict.txt" comes from the cvs repository and should list most sensitive fields. "dcmanon" can also operate on all files of a given directory, just replace the file name by a directory name. As the log file "log.txt" will contain the original info, don't forget to delete it once you have checked your data. To verify the remaining fields, you can use "dcmanonlist" (distributed along with dcmanon). An alternative way it to use Matlab dicominfo.

IMPORTANT: If you find that some fields should have been anonymized and haven't been, please inform me (Anton Deguet).

Created by

Anton Deguet


Views
Personal tools