Conquest anonymization additional requests

  • We've started using Conquest as a tool for anonymization and storage of studies for research archives (using the provided anonymize_script.lua, as well as the blockpixel.lua script I previously documented). So far, the DICOM has been kept in house, but an upcoming project will require data to be sent of-site. Our research group has requested some additional tweaks to further anonymize the data - both of which are above my current programming skill level. Any help/direction you can give me would be appreciated.


    #1 - Modify dates. We discussed using a random + or - 1 to 14 days on every study coming in. At first the thought was to randomly generate a different number for each study, but then the concern of prior studies not being in the correct order (such as daily chest x-rays) might be a problem. What they asked is that we just modify the dates in the DICOM by a static number. Is there a function in Conquest (or in LUA) that could add or subtract days to a date?


    #2 - Remove all Private DICOM tags. We've found that randomly some modalities add patient demographics into private DICOM tags. I've accounted for some specific tags that we've found by adding them to the anonymize_script.lua, but the proposition has been made to just remove every private dicom tag to eliminate this possibility. From my understanding, tags greater than 0008,0000 where 000X,0000 is odd are considered private tags. Is there an easy way to programmatically identify and remove these?

  • Hi,


    1) find a lua date library (http://lua-users.org/cgi-bin/w…string=DateAndTime&body=1) to do the date math.


    2) There is currently no way to enumerate dicom tags. So you cannot know what tags are there and therefore what to remove. The only way I can think of is to use Data:Dump and then process the file. Private tags will be listed by number rather than name.


    Marcel

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!