DICOM Lösung für private radiologische Praxen

Transcription

DICOM Lösung für private radiologische Praxen
DICOM Lösung für private radiologische Praxen
Kerstin Faber1, Dirk Krechel1, Daniel Reidenbach1, Silvio Costa Sampaio2, Aldo
von Wangenheim2, Klaus Blasinger3
1
AG Wissensbasierte Systeme, FB Informatik, Universität Kaiserslautern,
Erwin-Schrödinger-Straße, 67653 Kaiserslautern
Email:{faber,krechel,reidenba}@informatik.uni-kl.de
2
Department of Computer Science
Universidade Federal de Santa Catarina - UFSC
88049-200 Florianopolis - S.C., Brazil
Email: {silvio,awangenh}@inf.ufsc.br
3
Radiologische Gemeinschaftspraxis Dr.Buddenbrock, Dr.Blasinger, Dr.Benz
Rheinstrasse 4 A-C, 55116 Mainz
Email: krechel@goofy.zdv.uni-mainz.de
Einleitung
Für den Bereich der privaten radiologischen Praxen fehlen zur Zeit noch integrierte Lösungen
zur EDV-Unterstützung der täglichen Routine. Es sind zwar einzelne Komponenten verfügbar,
aber eine Unterstützung des Workflow, beginnend mit der Anmeldung bis zum Rücktransfer der
Untersuchungsergebnisse zum überweisenden Arzt, existiert für dieses Umfeld noch nicht. Ein
solcher Ansatz wird zur Zeit in unserem deutsch-brasilianischen Kooperationsprojekt
entwickelt. Das System soll dabei auf die aktuellen Entwicklungen, z.B. Integrating the
Healthcare Enterprise (IHE) [1] im Bereich des DICOM Standards [2] aufbauen.
Ein erster Schritt für diese integrierte Lösung ist die hier vorgestellte Implementierung der
DICOM-Grundlagen und von geeigneten Benutzerschnittstellen.
Dies ist nötig, um das geplante Workflow-System in die heute üblichen PACS-Umgebungen
(Picture Archiving and Communications System) zu integrieren. Abb1. zeigt eine solche PACSArchitektur. Das Workflow-System wird auf den Konzepten der Workflow Coalition aufbauen
und die Prozeßdefinitionen aus dem IHE Technical Framework verwenden. Das System wird
aber nicht nur Standard Funktionalitäten wie z.B. die von Wetter in [3] beschriebenen Ansätze
besitzen, sondern besonders im Bereich der Diagnose neue Ideen, wie zum Beispiel
Wissensmanagement und Bildanalyseverfahren, integrieren. Der von uns entwickelte Client
wird als Diagnose-Arbeitsplatz zur Zeit im täglichen Betrieb getestet.
Bei der Implementierung wurde auf ein sauberes objektorientiertes Design Wert gelegt, damit
neue Entwicklungen des DICOM Standards möglichst schnell integriert werden können. Im
folgenden Kapitel werden die von uns verwendeten Methoden des DICOM Standards und erste
Ergebnisse vorgestellt. Dabei wurden die englischen DICOM-Begriffe übernommen und kursiv
markiert.
Abb.1: PACS Architektur
Methoden
Information Model
DICOM 3.0 [2] beschreibt im dritten Teil des Standards die Objekte der realen Welt sowie die
Beziehungen dieser Objekte untereinander mit Hilfe eines Entity-Relationship Modells. Die
Rechtecke heißen Information Entities (IE) und repräsentieren Objekte der realen Welt,
während die Rauten eine Beziehung zwischen diesen anzeigen.
Zur vollständigen Beschreibung eines Objektes der realen Welt werden meist mehrere
Information Entities in einer sogenannten IOD (Information Object Definition)
zusammengefasst. Die Information Entities können wiederum aus mehreren IOMs (Information
Object Module) bestehen. Dieser hierarchische Aufbau dient der Übersichtlichkeit und
vermeidet Redundanzen bei der Definition verschiedener Objekte, die sich nur durch wenige
Attribute unterscheiden.
Als Beispiel sei ein Bild genannt, z.B. ein CT- oder MR-Bild. Jedes Bildobjekt besteht aus den
IEs Patient, Study, Series, Frame of Reference, Equipment und Image. Das IE Patient beinhaltet
als Attribute unter anderem den Namen und das Geburtsdatum des Patienten; im IE Study und
Series sind beispielsweise Datum und Uhrzeit der Aufnahme abgelegt. Da es zum Bild selbst
Abb. 2: DICOM Modell der realen Welt
sehr viele Informationen gibt, wird dieses Information Entity aus mehreren IOMs aufgebaut.
Jedes Bild hat IOMs, die Attribute zur Pixeldarstellung des Bildes oder Overlay-Informationen
beinhalten. Außerdem gibt es immer ein modalitätsspezifisches IOM, das Attribute enthält, die
nur für diese Modalität relevant sind.
Im dritten Teil des Standards werden alle IODs beschrieben. Dabei wird zwischen Composite
und Normalized IODs unterschieden. Composite IODs bestehen aus mehreren Information
Entities, während Normalized IODs nur aus einem Information Entity bestehen. Komplexe
Objekte wie Bilder werden immer mit Hilfe von Composite IODs modelliert; Normalized IODs
übernehmen hauptsächlich Management-Funktionen.
Unser System ist in der objektorientierten Programmiersprache Smalltalk implementiert. Die
objektorientierte Philosophie unterstützt eine saubere, übersichtliche Modellierung der DICOMIODs:
-
Jedes IOM ist eine eigene Klasse, die von einer abstrakten Oberklasse namens
CyclopsDBObject abgeleitet ist. Die Attribute des IOMs sind Instanzenvariablen der Klasse.
Als Name der Klasse ist immer die Konkatenation der Bezeichnung des IOMs im Standard
und dem Wort "Module" gewählt.
Abb. 3: Klassen-Hierarchie
-
Jedes Information Entity ist eine eigene Klasse, die ebenfalls von der Klasse
CyclopsDBObject abgeleitet ist. Die sie aufbauenden IOMs sind Instanzenvariablen dieser
Klasse. Als Name wird die Bezeichnung des Information Entity im Standard verwendet.
-
Da es einige IOMs gibt, die in allen Bildern unabhängig von der Modalität enthalten sind,
haben wir ein eigenes Objekt CyclopsDicomImage modelliert, von dem alle speziellen
Bilder abgeleitet werden.
Die Klassenhierarchie ist in Abb.3 dargestellt. Wir erweitern unser System jedoch stetig um
neue Objekte. Die nächsten IODs werden den neuen Entwicklungen im Bereich von DICOM Worklist Management und Structured Reporting - entspechen. Sie können dank der
durchdachten Modellierung leicht hinzugefügt werden.
Services
Besonders wichtig für den Einsatz in Praxen ist die Möglichkeit, DICOM-Objekte über ein
Netzwerk austauschen zu können. Die dazu in DICOM verwendete Netzwerk-Architektur
entspricht einem einfachen verteilen Konzept, bei dem zwei auf verschiedenen Systemen
laufende Prozesse miteinander kommunizieren und Daten austauschen. Ein entscheidender
Punkt ist die Rolle der beiden kommunizierenden Partner. Im Kontext von DICOM wird der die
Funktionalität bereitstellende Server als SCP (Service Class Provider) und der die
Funktionalität nutzende Client als SCU (Service Class User) bezeichnet. Das Verhalten des
Server- bzw. Client-Prozesses wird im vierten Teil des Standards mit Hilfe sogenannter Service
Classes genau spezifiziert.
Die Service Classes beinhalten u.a. SOP Classes (Service Object Pair Classes), die eine IOD
mit den auf sie anwendbaren Operationen, z.B. store und move, kombiniert. Diese Operationen
heißen DIMSE (DICOM Message Service Elements) und werden im siebten Teil von DICOM
eingehend beschrieben. Es gibt insgesamt fünf Services, die auf Composite IODs angewendet
werden können (C-STORE, C-GET, C-MOVE, C-FIND und C-ECHO) und sechs Services, die
für Normalized IODs definiert wurden (N-EVENT-REPORT, N-GET, N-SET, N-ACTION, NCREATE und N-DELETE).
Wir haben einen SCU implementiert, der die von uns modellierten IODs über ein TCP/IP
Netzwerk von einem CTN-Server[5] laden und wieder abspeichern kann. Dazu mußten die
Services C-STORE, C-FIND und C-GET implementiert werden. Die Verbindung erfolgt
synchron, d.h. daß SCU und SCP immer wieder auf Nachrichten und Statusmeldungen der
Gegenseite warten müssen, diese auswerten und erst dann den laut Protokoll vorgesehenen
nächsten Schritt ausführen dürfen.
Das Speichern eines Bildes läuft vereinfacht folgendermaßen ab:
-
In der ersten Phase, die Association Establishment genannt wird, benachrichtigt der SCU
den SCP darüber, daß er ein Bild speichern will. Er identifiziert sich und teilt dem SCP
unter anderem die Transfer-Syntaxen, mit denen er umgehen kann, sowie die Größe der
TCP/IP-Pakete, die er dem SCP schicken will, mit. Der SCP muß eine Verbindung des SCU
akzeptieren und ihm u.a. eine ausgewählte Transfer-Syntax mitteilen.
-
In der zweiten Phase schickt der SCU TCP/IP-Pakete der vereinbarten Größe zum SCP.
Zuerst werden die Parameter des C-STORE-Services, anschließend alle Attribute des Bildes
Abb. 4: DicomEditor
geschickt. Die Pixeldaten selbst sind ein Attribut des Bildes.
-
Die letzte Phase wird als Confirmation bezeichnet. Der SCP teilt dem SCU mit, ob das Bild
erfolgreich abgespeichert werden konnte bzw. liefert einen Fehlercode, falls das Speichern
nicht funktioniert hat.
Benutzeroberflächen
In Zusammenarbeit mit der Gemeinschaftspraxis in Mainz haben wir spezielle, einfach zu
bedienende Benutzeroberflächen entwickelt. Sie berücksichtigen die komplexe Struktur der
DICOM-Objekte und zeigen verschiedene Abstraktionsebenen der Objekte.
Auf der höchsten Ebene steht der DicomEditor. Er übernimmt die Kommunikation mit dem
Image Server und verwaltet Patienten, die zugehörigen Studien sowie deren Serien in drei
Auswahllisten. Wird eine Serie angewählt, werden die Bilder am unteren Rand des Editors
verkleinert dargestellt. Jede Notebook-Seite des rechts angeordneten Notebooks entspricht
einem Information Entity, was die Struktur des DICOM-Objekts unterstreicht. Die einzelnen
Attribute der dargestellten Information Entities können einfach abgeändert oder gesetzt werden,
so daß Serien, die nicht DICOM-konform sind (weil erforderliche Attribute nicht gesetzt sind)
in konforme Serien überführt werden können. Selbstverständlich können diese Änderungen im
Image Server dauerhaft abgelegt werden.
Damit der DicomEditor schnell in jeder Umgebung lauffähig ist, wurde der
DicomConnectionConfigurator entwickelt. Hier kann der Benutzer aus einer Liste von SCUs
und SCPs die gerade
gewünschten leicht auswählen. Falls ein Eintrag
nicht in der Liste enthalten
ist, kann dieser in die einer
XML-Syntax folgenden Konfigurationsdatei hinzugefügt
werden. Ein SCP und ein
SCU können als Default
gesetzt werden und werden
zukünftig als Parameter der
Verbindung benutzt, falls der
DicomConnectionConfigurat
or nicht aufgerufen wurde.
Abb.5: DicomConnectionConfigurator
Die mittlere Ebene wird vom
DicomSeriesEditor
eingenommen, der nach der
Auswahl einer Serie im
DicomEditor geöffnet werden kann. Den größten Teil
dieses Editors nimmt ein
"Lichtbrett" ein, auf dem
sämtliche Bilder verteilt
werden. Der untersuchende
Arzt kann die Bilder beliebig
Abb. 6: DicomSeriesEditor
vergrößern oder verkleinern. Außerdem kann er den Farbwert eines bestimmten Punktes bzw.
den durchschnittlichen Farbwert seiner Nachbarschaftspunkte abfragen. Mit Hilfe eines roten
Stifts kann er interessante Regionen markieren und diese Markierungen aus- und wieder
einblenden. Zur Realisierung dieser Funktionalität haben wir das in DICOM beschriebene
Overlay-Konzept verwendet, so daß die Markierungen problemlos im Image Server
abgespeichert werden können.
Im Falle einer Kontrast-Serie werden die Bilder auf dem Lichtbrett anders verteilt: Eine Spalte
beinhaltet ein Volumen, in x-Richtung werden die Volumina zu verschiedenen Zeitpunkten
abgelegt. Diese Anordnung hat den Vorteil, daß die die gleiche Region zeigenden Aufnahmen
nebeneinander liegen und der Arzt signifikante Unterschiede sehr schnell erkennen kann. Als
Hilfsmittel dient ihm das DicomHistogramm, das die Farbwerte eines Pixels (bzw. den
durchschnittlichen Farbwert der Nachbarpixel) über die Zeit aufträgt.
Auf der unteren Ebene ist der DicomImageEditor implementiert, der mit einem im
DicomSeriesEditor markierten Bild geöffnet werden kann. Das Notebook auf linken Seite zeigt
alle Attribute des Information Entities Image; jede Notebookseite zeigt ein dieses Information
Entity aufbauendes IOM.
Oberhalb des Bildes sind die Attribute WindowCenter und WindowWidth aus dem IOM VOI
LUT für den Benutzer änderbar aufgetragen. Bei einer beliebigen Anpassung dieser Werte wird
die Farbpalette des Bildes neu berechnet; die optimalen Werte können auch algorithmisch
bestimmt werden. Der ursprüngliche und tatsächlich dargestellte Grauwert jedes Pixels läßt sich
mit Hilfe eines Informations-Tools abrufen. So lassen sich beispielsweise bei CT-Bildern
Rückschlüsse auf die tatsächliche Hounsfield Unit des aktivierten Pixels ziehen.
Abb. 7: DicomImageEditor
Einfache Bildverarbeitungsfunktionen helfen dem Arzt beim Befund: Eine Stift-Funktion
ermöglicht es, an beliebigen Stellen farbige Markierungen anzubringen. Nützlich ist auch ein
Werkzeug zur Distanzmessung, welches automatisch den Abstand zwischen zwei frei
wählbaren Punkten im Bild ermittelt, diesen in den tatsächlichen umrechnet und ausgibt.
Sämtliche Markierungen lassen sich einzeln wieder entfernen. Um eine bessere Analyse
bestimmter Regionen zu ermöglichen bietet der DicomImageEditor die Option, einen
Bildausschnitt beliebig zu vergrößern.
Ausblick
Die nächsten Schritte sind nun die Implementierung der SCP-Funktionalitäten, einer Wokflow
Engine, eines Reporting Editors und der dafür benötigten DICOM Services.
Ein Funktionalität des Reporting Editors wird eine Wissensmanagement-Komponente sein,
welche es ermöglichen soll, das Wissen über die Standarduntersuchungen einer privaten Praxis
zu modellieren. Diese Prozeßmodelle sollen in der täglichen Routine zur Unterstützung von
jungen Radiologen und zur Generierung von normierten Befundberichten eingesetzt werden.
Dabei werden Worklists für die Untersuchungen erstellt, welche vom befundenden Radiologen
abgearbeitet werden. Einen besondere Stellenwert wird dabei die vollständige Integration einer
solchen Komponente in den Routinebetrieb spielen. Dies soll durch verschiedene
Abstraktionsebenen der Worklists ermöglicht werden. Der erfahrene Radiologe muß nur die
einzelnen Schritte auf höchster Ebene abarbeiten, während für den unerfahrenen Kollegen
Detailinformationen und Beispiele zu den einzelnen Schritten schnell greifbar sind.
Referenzen
[1] Integrating the Healthcare Enterprise IHE Technical Framework, Revision 3.0
Radiological Society of North America, http://www.rsna.org/IHE
[2] ACR/NEMA Standard, Digital Imaging and Communications in Medicine ; NEMA
Standards Publication PS3.x
[3] From Image Management to Workflow Managment, Th. Wendel, Philips Research
Hamburg, CARS 99 page 409
[4] DICOM Cook Book for Implementations in Modalities. Chapters 1 and 2. Version
1.1 (Accepted) 14 January 1997. Copyright Philips Medical Systems Nederland B.V.,
1996, 1997.
[5] http://dicomctn.wustl.edu/DICOM/ctn.html