Nachbildung eines Röntgenbildbetrachters in einer Webanwendung
von Matthias Ziehe 20. Juni 2005

Im Zuge der Entwicklung der DentalTeach-Webapplikation zum Training der zahnärztlichen Kariesdiagnostik an intraoralen Bissflügel-Aufnahmen war die adäquate Umsetzung eines Röntgenbildbetrachters nötig. Der nachfolgende Artikel diskutiert verschiedene Ansätze zur Implementierung eines solchen Betrachters in einer Webanwendung.

Screenshot des Röntgenbildbetrachters
Demo starten

In der Praxis nutzen Zahnärzte zur Betrachtung von Röntgenbildern Leuchtkästen. Der Arzt hält die Röntgenaufnahme vor einen Leuchtkasten und betrachtet diese mit einer Lupe. Diese analogen Aufnahmen werden heutzutage zunehmend durch digitale Aufnahmen verdrängt. Die dazugehörigen digitalen Betrachtungsgeräte bieten die Möglichkeit, die Bildqualität nachträglich zu verbessern.
Zum Beispiel durch:

  • Vergrössern eines Bildausschnitts
  • Ändern des Bildkontrasts
  • Ändern der Bildhelligkeit
  • Invertieren eines Bildausschnitts

Daraus ergibt sich für den Zahnarzt der Vorteil das auch schwer sichtbare Frühstadien der Karies diagnostiziert werden können.
Ein Ziel war es diese reale Diagnosesituation in einer Webanwendung nachzustellen und so die Distanz zwischen Lern- und Anwendungssituation möglichst gering zu halten.

1 Begrenzende Faktoren

Folgende Faktoren setzen der Umsetzung enge Grenzen:

  • die beschränkte Grösse der Arbeitsfläche in einem Webbrowser
  • beschränkte Bandbreite bei der Übertragung des Röntgenbildes
  • intuitive Bedienbarkeit des Röntgenbildbetrachters
  • technische Ausstattung des Webbrowsers

Damit ist die Unterstützung von Plugins wie etwa Macromedia Flash oder eine VM zur Ausführung von Java-Applets gemeint. Je nach verfügbarer Technologie ist es möglich, dass die gewünschten Funktionen nicht vollständig realisierbar sind.

2 Technische Ansätze zur Lösung

Zur Umsetzung des Röntgenbildbetrachters bieten sich drei Technologien an:

  1. Nutzung eines eingebetteten HTML-Frames
  2. Umsetzung mit Macromedia Flash
  3. Umsetzung als Java Applet

Die Umsetzung mit anderen Technologien - wie etwa Macromedia Shockwave oder DHTML mit browserspezifischem JavaScript - wäre durchaus denkbar, soll hier jedoch aufgrund der geringen Verbreitung dieser Techniken nicht näher vorgestellt werden.

2.1 Umsetzung mit eingebetteten HTML-Frames

Eingebettete Frames erzeugen keine Aufteilung des Bildschirms. Sie definieren ähnlich wie Grafiken Bereiche innerhalb einer HTML-Datei, in denen andere HTML-Dateien angezeigt werden können. Sie gehören seit HTML 4.0 zum offiziellen HTML Standard.

Vorteile Nachteile
  • das Problem des beschränkten Platzangebots im Browserfenster lässt sich so lösen. (es werden automatisch Bildlaufleisten zum Bild hinzugefügt)
  • es werden keine zusätzlichen Plugins benötigt
  • sehr geringer Implementierungs Aufwand
  • Arbeitsspeicher und CPU-Zeit des Clients werden geschont
  • die Möglichkeiten zur Bildverbesserung (Vergrössern, Helligkeit, Kontrast) können nicht angeboten werden
  • eine Vollbilddarstellung ist nicht möglich
  • wird von XHTML Strict DTD nicht mehr unterstützt

2.2 Umsetzung mit Macromedia Flash

Macromedia Flash ist eine weitverbreitete Technologie zur Integration von interaktiven und multimedialen Inhalten in HTML-Seiten.

Vorteile Nachteile
  • die Vergrösserung des Bildausschnitts ist realisierbar
  • Oberflächenelemente wie individuell gestaltete Schieberegler sind leicht zu implementieren
  • die Helligkeit ist mit einigen Abstrichen über Farbtransformationen regelbar
  • kein Zugriff auf einzelne Pixel eines Bitmapbildes, daher keine "echte" Helligkeits- und Kontrastregelung möglich
  • höherer Implementierungsaufwand
  • zur Implementierung ist eine kommerzielle Entwicklungsumgebung erforderlich
  • ein Vollbildmodus ist technisch nur schwer realisierbar

2.3 Umsetzung mit Java-Applet

Java-Applets die einzige mir bekannte Möglichkeit zur plattformübergreifenden Realisierung von derartigen Web-Objekten. Die Verbreitung der erforderlichen Virtuellen-Maschine ist trotz freier Verfügbarkeit rückläufig, da sie nicht mit den gängigen Browsern ausgeliefert wird.

Vorteile Nachteile
  • mächtige Programmiersprache d.h. es gibt keine programmiertechnischen Beschränkungen der Verarbeiungsmöglichkeiten von Bildern
  • Lupenfunktion, Helligkeits- und Kontraständerung sowie Vollbildfunktionen sind nahezu problemlos realisierbar
  • relativ geringe Verbreitung
  • hoher Implementierungsaufwand
  • bei einigen Java-versionen langsame Startzeit der VM beim erstmaligen Laden des Applets

3 Fazit

Die Lösung mit den geringsten technischen Voraussetzungen bietet die grösste Verbreitung. Nur sehr alte Webbrowser wie etwa Netscape 4 und ältere unterstützen diese Darstellungsart noch nicht.
Es können jedoch nicht alle gewünschten Funktionalitäten realisiert werden. Die Technologie mit der geringsten Verbreitung ist gleichzeitig die mächtigste, d.h. es wird nur eine vergleichweise kleine Benutzergruppe erreicht. Dieser steht jedoch der volle Funktionsumfang zur Verfügung.

Tabelle 1: Gegenüberstellung von Verbreitung und Funktionalitäten
Verbreitung der Technologie Realisierbare Funktionalitäten
HTML ++ --
Flash + -
Applet -- ++

Es ist normalerweise üblich einen Kompromiss zu schliessen und sich für eine der Technologien zu entscheiden.
Die hier vorgestellte Lösung vermeidet einen solchen Kompromiss und stellt auf der Grundlage der durch den Webbrowser unterstützten Plugins adaptiv die jeweils maximale Funktionalität bereit.
Inwieweit diese Vorgehensweise auf andere Problemstellungen übertragbar ist wird Gegenstand weiterführender Arbeiten sein.

Zurück
hoch