forked from susom/mirc-ctp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathanonymizer.script
53 lines (53 loc) · 2.89 KB
/
anonymizer.script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<script>
<!-- Very strict, white-list only DICOM anonymizer. Some free-text fields are included. -->
<p t="UIDROOT">1.2.840.113654.2.70.1</p>
<e en="T" n="PatientID" t="00100020">@hash(this, 64)</e>
<e en="T" n="AccessionNumber" t="00080050">@hash(this,16)</e>
<e en="T" n="SOPClassUID" t="00080016">@keep()</e>
<e en="T" n="SOPInstanceUID" t="00080018" >@hashuid(@UIDROOT,this)</e>
<e en="T" n="StudyDate" t="00080020">@modifydate(this,*,1,1)</e>
<e en="T" n="ImageType" t="00080008">@keep()</e>
<e en="T" n="Modality" t="00080060">@require()</e>
<e en="T" n="Manufacturer" t="00080070">@keep()</e>
<e en="T" n="InstitutionName" t="00080080">@keep()</e>
<e en="T" n="StationName" t="00081010">@keep()</e>
<e en="T" n="StudyDescription" t="00081030">@keep()</e>
<e en="T" n="SeriesDescription" t="0008103e">@keep()</e>
<e en="T" n="ManufacturerModelName" t="00081090">@keep()</e>
<e en="T" n="PatientAge" t="00101010">@if(this, greaterthan, 89) {090Y} {@keep()}</e>
<e en="T" n="ScanOptions" t="00180022">@keep()</e>
<e en="T" n="SliceThickness" t="00180050">@keep()</e>
<e en="T" n="KVP" t="00180060">@keep()</e>
<e en="T" n="SoftwareVersions" t="00181020">@keep()</e>
<e en="T" n="ProtocolName" t="00181030">@keep()</e>
<e en="T" n="ReconstructionDiameter" t="00181100">@keep()</e>
<e en="T" n="GantryDetectorTilt" t="00181120">@keep()</e>
<e en="T" n="ExposureTime" t="00181150">@keep()</e>
<e en="T" n="XRayTubeCurrent" t="00181151">@keep()</e>
<e en="T" n="Exposure" t="00181152">@keep()</e>
<e en="T" n="FilterType" t="00181160">@keep()</e>
<e en="T" n="ConvolutionKernel" t="00181210">@keep()</e>
<e en="T" n="SingleCollimationWidth" t="00189306">@keep()</e>
<e en="T" n="TotalCollimationWidth" t="00189307">@keep()</e>
<e en="T" n="SeriesInstanceUID" t="0020000e" >@hashuid(@UIDROOT,this)</e>
<e en="T" n="StudyInstanceUID" t="0020000d" >@hashuid(@UIDROOT,this)</e>
<e en="T" n="ImagePositionPatient" t="00200032">@keep()</e>
<e en="T" n="ImageOrientationPatient" t="00200037">@keep()</e>
<e en="T" n="SliceLocation" t="00201041">@keep()</e>
<e en="T" n="Rows" t="00280010">@keep()</e>
<e en="T" n="Columns" t="00280011">@keep()</e>
<e en="T" n="PixelSpacing" t="00280030">@keep()</e>
<e en="T" n="RescaleIntercept" t="00281052">@keep()</e>
<e en="T" n="ScanPitchRatio" t="00431027">@keep()</e>
<e en="T" n="SeriesNumber" t="00200011">@keep()</e>
<e en="T" n="AcquisitionNumber" t="00200012">@keep()</e>
<e en="T" n="InstanceNumber" t="00200013">@keep()</e>
<k en="F" t="0018">Keep group 0018</k>
<k en="F" t="0020">Keep group 0020</k>
<k en="F" t="0028">Keep group 0028</k>
<k en="F" t="safeprivateelements">Keep safe private elements</k>
<r en="T" t="curves">Remove curves</r>
<r en="T" t="overlays">Remove overlays</r>
<r en="T" t="privategroups">Remove private groups</r>
<r en="T" t="unspecifiedelements">Remove unchecked elements</r>
</script>