Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
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.
GELÖST

DICOM Ordner automatisch umbennenen

Frage Microsoft Windows Tools

Mitglied: TASKnet

TASKnet (Level 1) - Jetzt verbinden

26.02.2014, aktualisiert 28.02.2014, 1862 Aufrufe, 8 Kommentare

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
Mitglied: n.o.b.o.d.y
26.02.2014 um 16:17 Uhr
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.
Bitte warten ..
Mitglied: TASKnet
26.02.2014 um 16:21 Uhr
Herzlichen Dank, aber die Seite habe ich schon durchforstet und keinen brauchbaren Ansatz gefunden
Bitte warten ..
Mitglied: colinardo
LÖSUNG 26.02.2014, aktualisiert 28.02.2014
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.
01.
$path = "C:\Ordner" 
02.
$folders = dir $path | ?{$_.PSIsContainer} 
03.
$illegalChars = '(\<|\>|:|\"|\/|\\|\||\?|\*|\^)' 
04.
foreach($folder in $folders){ 
05.
    $dircomContent = gc "$($folder.FullName)\DICOMDIR.DAT" -ErrorAction SilentlyContinue | out-string 
06.
    $regex = [regex] 'PN.\x00(.+?)\^(.+?)\x00' 
07.
    $match = $regex.Match($dircomContent) 
08.
    if ($match.Success){ 
09.
        $name = ($match.Groups[1].Value).Trim() 
10.
        $vorname = ($match.Groups[2].Value).Trim() 
11.
        $foldername = "$name, $vorname" 
12.
        $foldername = $foldername -Replace $illegalChars,"" 
13.
        $foldername = $folder.Name.Replace("JiveX",$foldername) 
14.
        echo "Benenne Ordner: '$($folder.Name)' um in '$foldername'" 
15.
        Rename-Item $folder.FullName $foldername 
16.
    }else{ 
17.
        echo "Keine Namen in '$($folder.FullName)' gefunden / oder Regex Pattern passt nicht" 
18.
19.
}
Grüße Uwe
Bitte warten ..
Mitglied: Tobisfr
27.02.2014 um 21:30 Uhr
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
Bitte warten ..
Mitglied: TASKnet
28.02.2014 um 10:54 Uhr
Hallo Uwe,

bei der Ausführung des Scripts bekomme ich diese Fehlermeldung:

PS D:\ir> .\dicom.ps1
Rename-Item : Illegales Zeichen im Pfad.
Bei D:\ir\dicom.ps1:10 Zeichen:20

Rename-Item <<<< $folder.FullName "$name $vorname"

+ CategoryInfo : NotSpecified: ( [Rename-Item], ArgumentException
+ FullyQualifiedErrorId : System.ArgumentException,Microsoft.PowerShell.Commands.RenameItemCommand
Bitte warten ..
Mitglied: colinardo
28.02.2014, aktualisiert um 11:03 Uhr
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
Bitte warten ..
Mitglied: colinardo
28.02.2014 um 11:46 Uhr
Hab den Code anhand deiner Datei mal aktualisiert, s.o.
Bitte warten ..
Mitglied: TASKnet
28.02.2014 um 12:15 Uhr
Super, herzlichen Dank, funktioniert.
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...