DICOM Ordner automatisch umbennenen
Hallo,
ein Kunde erhält auf einem gemappten Laufwerk direkt Daten aus einer Radiologie.
Die Radiologie legt die Daten im DICOM Format auf dem Laufwerk ab.
Leider schafft es die IT des Radiologen nicht, dass der Patientenname mit übergeben wird.
Die Ordner mit den DICOM Daten heissen z.B:
JiveX_2014-02-26_11-58-46
JiveX_2014-02-26_10-57-25
JiveX_2014-02-26_10-46-43
JiveX_2014-02-26_09-54-21
JiveX_2014-02-26_07-35-05
In den einzelnen Ordnern liegen dann die Daten im DICOM Format.
Ich bräuchte jetzt ein Tool mit dem die Datei "DICOMDIR" ausgelesen wird und den o.g. Ordnernamen mit dem Patietennamen ersetzt.
In der DICOMDIR Datei ist der Name des Patienten in Klartext abgelegt. Vor dem Patientennamen steht grundsätzlich immer die Variabel: "PN" gefolgt von einem Steuerzeichen was ich hier nicht darstellen kann
Dann kommt der Patientennachname[ESCAPEZEICHEN]Patientenvorname[3x ESCAPEZEICHEN]
Kennt da jemand ein Tool für oder kann man das per Batchdatei realisieren?
So sieht diese DICOMDIR DAtei aus:
[code]
DICM UL ¶ OB UI 1.2.840.10008.1.3.10 UI2 1.2.276.0.50.192168010025.8628342.9508224.91.90.90 UI 1.2.840.10008.1.2.1 UI 1.2.276.0.50.20100301.4.6 SH
JIVEX_TK4.6 0CS JIVEX ACS VISUS UL UL US SQ ÿÿÿÿþÿ àÿÿÿÿ UL US ÿÿ UL ( 0CS PATIENT CS
ISO_IR 100 PN Mustename^Mustervorname^^^ LO
19751202/5 0 DA 19751202 @ CS M þÿ
à þÿ àÿÿÿÿ UL US ÿÿ UL 0CS STUDY CS
ISO_IR 100 DA 20140210 0 TM 172450.671000 P SH 515046 0LO Thorax
UI. 1.2.276.0.50.192168015165.2581031.1265592.1304 SH TEMP1070863884þÿ
à þÿ àÿÿÿÿ UL ‚ US ÿÿ UL L 0CS SERIES CS
ISO_IR 100 ! DA 20140210 1 TM 172534.000000 ` CS CR € LO, Praxisgem. f. Radiologie und Nuklearmedizin ST Blabla 8, 10000 Musterstadt PPN Dr. B. Blubb CS CHEST UI6 1.3.46.670589.30.1.6.1.172136281264557.1392049694515.1 IS 1 þÿ
à þÿ àÿÿÿÿ UL US ÿÿ UL 0CS IMAGE CS* DICOM\PA000001\ST000001\SE000001\IM000001 UI 1.2.840.10008.5.1.4.1.1.1 UI6 1.3.46.670589.30.1.6.1.172136281264557.1392049694390.2 UI 1.2.840.10008.1.2 CS
ISO_IR 100 CS ORIGINAL\PRIMARY\ IS 1 ( US à( US \þÿ
à þÿ àÿÿÿÿ UL US ÿÿ UL Æ 0CS SERIES CS
ISO_IR 100 ! DA 20140210 1 TM 172703.000000 ` CS CR € LO, Praxisgem. f. Radiologie und Nuklearmedizin ST Blabla 8, 10000 Musterstadt PPN Dr. B. Blubb CS CHEST UI6 1.3.46.670589.30.1.6.1.172136281264557.1392049695546.1 IS 2 þÿ
à þÿ àÿÿÿÿ UL US ÿÿ UL 0CS IMAGE CS* DICOM\PA000001\ST000001\SE000002\IM000001 UI 1.2.840.10008.5.1.4.1.1.1 UI6 1.3.46.670589.30.1.6.1.172136281264557.1392049694453.2 UI 1.2.840.10008.1.2 CS
ISO_IR 100 CS ORIGINAL\PRIMARY\ IS 1 ( US ù( US ¿þÿ
à þÿÝà CS
ISO_IR 100
[/code]
Freue mich auf Eure Hilfe und sage schon einmal Danke!!!!
tasknet
ein Kunde erhält auf einem gemappten Laufwerk direkt Daten aus einer Radiologie.
Die Radiologie legt die Daten im DICOM Format auf dem Laufwerk ab.
Leider schafft es die IT des Radiologen nicht, dass der Patientenname mit übergeben wird.
Die Ordner mit den DICOM Daten heissen z.B:
JiveX_2014-02-26_11-58-46
JiveX_2014-02-26_10-57-25
JiveX_2014-02-26_10-46-43
JiveX_2014-02-26_09-54-21
JiveX_2014-02-26_07-35-05
In den einzelnen Ordnern liegen dann die Daten im DICOM Format.
Ich bräuchte jetzt ein Tool mit dem die Datei "DICOMDIR" ausgelesen wird und den o.g. Ordnernamen mit dem Patietennamen ersetzt.
In der DICOMDIR Datei ist der Name des Patienten in Klartext abgelegt. Vor dem Patientennamen steht grundsätzlich immer die Variabel: "PN" gefolgt von einem Steuerzeichen was ich hier nicht darstellen kann
Dann kommt der Patientennachname[ESCAPEZEICHEN]Patientenvorname[3x ESCAPEZEICHEN]
Kennt da jemand ein Tool für oder kann man das per Batchdatei realisieren?
So sieht diese DICOMDIR DAtei aus:
[code]
DICM UL ¶ OB UI 1.2.840.10008.1.3.10 UI2 1.2.276.0.50.192168010025.8628342.9508224.91.90.90 UI 1.2.840.10008.1.2.1 UI 1.2.276.0.50.20100301.4.6 SH
JIVEX_TK4.6 0CS JIVEX ACS VISUS UL UL US SQ ÿÿÿÿþÿ àÿÿÿÿ UL US ÿÿ UL ( 0CS PATIENT CS
ISO_IR 100 PN Mustename^Mustervorname^^^ LO
19751202/5 0 DA 19751202 @ CS M þÿ
à þÿ àÿÿÿÿ UL US ÿÿ UL 0CS STUDY CS
ISO_IR 100 DA 20140210 0 TM 172450.671000 P SH 515046 0LO Thorax
UI. 1.2.276.0.50.192168015165.2581031.1265592.1304 SH TEMP1070863884þÿ
à þÿ àÿÿÿÿ UL ‚ US ÿÿ UL L 0CS SERIES CS
ISO_IR 100 ! DA 20140210 1 TM 172534.000000 ` CS CR € LO, Praxisgem. f. Radiologie und Nuklearmedizin ST Blabla 8, 10000 Musterstadt PPN Dr. B. Blubb CS CHEST UI6 1.3.46.670589.30.1.6.1.172136281264557.1392049694515.1 IS 1 þÿ
à þÿ àÿÿÿÿ UL US ÿÿ UL 0CS IMAGE CS* DICOM\PA000001\ST000001\SE000001\IM000001 UI 1.2.840.10008.5.1.4.1.1.1 UI6 1.3.46.670589.30.1.6.1.172136281264557.1392049694390.2 UI 1.2.840.10008.1.2 CS
ISO_IR 100 CS ORIGINAL\PRIMARY\ IS 1 ( US à( US \þÿ
à þÿ àÿÿÿÿ UL US ÿÿ UL Æ 0CS SERIES CS
ISO_IR 100 ! DA 20140210 1 TM 172703.000000 ` CS CR € LO, Praxisgem. f. Radiologie und Nuklearmedizin ST Blabla 8, 10000 Musterstadt PPN Dr. B. Blubb CS CHEST UI6 1.3.46.670589.30.1.6.1.172136281264557.1392049695546.1 IS 2 þÿ
à þÿ àÿÿÿÿ UL US ÿÿ UL 0CS IMAGE CS* DICOM\PA000001\ST000001\SE000002\IM000001 UI 1.2.840.10008.5.1.4.1.1.1 UI6 1.3.46.670589.30.1.6.1.172136281264557.1392049694453.2 UI 1.2.840.10008.1.2 CS
ISO_IR 100 CS ORIGINAL\PRIMARY\ IS 1 ( US ù( US ¿þÿ
à þÿÝà CS
ISO_IR 100
[/code]
Freue mich auf Eure Hilfe und sage schon einmal Danke!!!!
tasknet
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Kommentar vom Moderator Biber am 26.02.2014 um 21:28:45 Uhr
DICOM Ordner automatisch umbennenen
set /a rgc+=1#887
Den einen bis zur nächsten Schnapszahl schaffen wir noch im Februar.
Content-ID: 231087
Url: https://administrator.de/contentid/231087
Ausgedruckt am: 22.11.2024 um 16:11 Uhr
8 Kommentare
Neuester Kommentar
Hallo,
Einen konkreten Ansatz habe ich nicht zur Hand, aber schau mal hier: http://dicom.offis.de
Dort stehen eine Reihe von DICOM Tools zu Verfügung, mit denen du ggf. dein Problem lösen kannst.
Einen konkreten Ansatz habe ich nicht zur Hand, aber schau mal hier: http://dicom.offis.de
Dort stehen eine Reihe von DICOM Tools zu Verfügung, mit denen du ggf. dein Problem lösen kannst.
Hallo tasknet,
könnte man folgendes Powershell-Script für hernehmen: (Vorausgesetzt wenn die Zeichen hier stimmen ... ansonsten mal eine Beispiel-Datei irgendwo hochladen oder den Link dazu via PM schicken)
In Zeile 1 muss der Ordner angegeben werden dem die Ordner untergeordnet sind. Die Ordner werden dann im Format Nachname, Vorname_Datum umbenannt wobei das JiveX durch den Namen ersetzt wird.
Grüße Uwe
könnte man folgendes Powershell-Script für hernehmen: (Vorausgesetzt wenn die Zeichen hier stimmen ... ansonsten mal eine Beispiel-Datei irgendwo hochladen oder den Link dazu via PM schicken)
In Zeile 1 muss der Ordner angegeben werden dem die Ordner untergeordnet sind. Die Ordner werden dann im Format Nachname, Vorname_Datum umbenannt wobei das JiveX durch den Namen ersetzt wird.
$path = "C:\Ordner"
$folders = dir $path | ?{$_.PSIsContainer}
$illegalChars = '(\<|\>|:|\"|\/|\\|\||\?|\*|\^)'
foreach($folder in $folders){
$dircomContent = gc "$($folder.FullName)\DICOMDIR.DAT" -ErrorAction SilentlyContinue | out-string
$regex = [regex] 'PN.\x00(.+?)\^(.+?)\x00'
$match = $regex.Match($dircomContent)
if ($match.Success){
$name = ($match.Groups[1].Value).Trim()
$vorname = ($match.Groups[2].Value).Trim()
$foldername = "$name, $vorname"
$foldername = $foldername -Replace $illegalChars,""
$foldername = $folder.Name.Replace("JiveX",$foldername)
echo "Benenne Ordner: '$($folder.Name)' um in '$foldername'"
Rename-Item $folder.FullName $foldername
}else{
echo "Keine Namen in '$($folder.FullName)' gefunden / oder Regex Pattern passt nicht"
}
}
Hi, die offis Tools kann man schon nutzen. Das Tool dicomdump kann einzelne tags ( Name ist 0010,0010) ausgeben - da braucht man sich ja nur eine Batch schreiben http://support.dcmtk.org/docs/dcmdump.html
Ich bin mir aber nicht sicher ob es mit dicomdirs geht, falls nicht einfach die erste dicom Datei im Ordner verwenden.
Bei der ganzen Geschichte aber bitte ein paar fallstricke beachten - je nach dem was ihr da vor habt:
- in einem dicomdir können mehrere unterschiedliche Patienten gelistet sein- das ist nicht auf einen Patienten beschränkt
- da doppelte Namen oft vorkommen würde ich die ordnerbezeichnung noch um id und Geburtsdatum erweitern, sonst gibts Vermischungen
Ich bin mir aber nicht sicher ob es mit dicomdirs geht, falls nicht einfach die erste dicom Datei im Ordner verwenden.
Bei der ganzen Geschichte aber bitte ein paar fallstricke beachten - je nach dem was ihr da vor habt:
- in einem dicomdir können mehrere unterschiedliche Patienten gelistet sein- das ist nicht auf einen Patienten beschränkt
- da doppelte Namen oft vorkommen würde ich die ordnerbezeichnung noch um id und Geburtsdatum erweitern, sonst gibts Vermischungen
dann stimmt die Extraktion noch nicht (Zeichen stimmen noch nicht / hatte ja nur deinen Text der auch noch ohne Tags gepostet wurde), und das Regex hat ein Zeichen gematcht was in einem Dateinamen nicht vorkommen darf ...(sagt ja schon die Fehlermeldung: Illegales Zeichen im Pfad.) Wie @Tobisfr schon sagt ist es besser hier auf andere Tools auszuweichen die den Namen extrahieren oder du stellst mal eine Demo-Datei zur Verfügung ! Sonst wird das hier eine Odysee, denn es kommt hier sehr auf Details an!
Grüße Uwe
Grüße Uwe