Nach oben
Tomographie, Versuch einer Simulation (Teil 2)
Tomographie, Versuch einer Simulation (Teil 3)

Überlegungen zur Simulation des bildgebenden Verfahrens bei der Computer-Tomographie

Im letzten Sommer wurde ich mit Gelenkproblemen zu einer Kernspintomographie geschickt. Ich lag dabei ca. 20 Minuten in einer Röhre, ließ das zum Teil recht laute Geschehen über mich ergehen und geriet ins Grübeln. Als ich später die Aufnahmen in Händen hielt, war ich von der Detailgenauigkeit, mit der nicht nur die Knochen, sondern auch Muskeln und Bänder oder auch knorpelige Bestandteile auf den Querschnittaufnahmen zu sehen waren, sehr beeindruckt. Ich glaube nicht, dass es nur mir so gehen dürfte und kann daher vielleicht mit Interesse für die hier zu behandelnden Fragen rechnen.

Es ließ sich also gar nicht vermeiden, mich nach dem Funktionsprinzip - zunächst einmal nur dem der Computer-Tomographie mit Röntgenstrahlen ( und um nicht missverstanden zu werden: Es geht hier nicht um das Prinzip der Kernspintomographie, auch wenn bei mir die Erfahrung mit der "Röhre" meine Grübelei erst ausgelöst hat! ) - zu fragen und zugleich regte sich jener übermächtige Spieltrieb in mir, der mich schon so oft zu den verrücktesten Anschaffungen getrieben hat. Angesichts des mutmaßlichen Preises einer solchen Anlage war hier allerdings die Gefahr doch "eher gering", daß ich diesem Verlangen wieder einmal nachgeben würde und dadurch den häuslichen Frieden wirklich in Gefahr bringen könnte.

Es lag daher näher, den Versuch zu wagen, ob ich mit meinen schon vorhandenen Spielsachen ein derartiges Verfahren - die Computer-Tomographie, also ein schichtweises Röntgen - durch geeignete Simulation im Computer nachvollziehen könnte.

Ich begann mit der Suche nach einer vernünftigen Form der Vereinfachung, die dennoch alle wesentlichen Grundzüge des Verfahrens enthalten sollte. Dazu nehme ich an, dass das Objekt von dünnen gebündelten Strahlen, z.B. Röntgenstrahlen, durchdrungen wird und auf der gegenüberliegenden Seite die nach der Absorption im Gewebe noch übrig bleibende Intensität gemessen wird. Es ist klar, dass dieser Messwert nur eine sehr pauschale Information über den Weg des Strahls durch das Objekt darstellt. Das Messsignal kann aufgefasst werden als die Intensität, die nach der jeweiligen Absorption in den einzelnen Volum-Elementen des durchstrahlten Gebietes übrig bleiben. Offen bleibt aber dabei zunächst, ob diese Absorption etwa durch wenige sehr dichte Gewebeteile, z.B. Knochen, oder durch viele nur mäßig absorbierende Schichten wie z.B. Muskelgewebe zustande kommt.

Ich möchte die Gegebenheiten hier so simulieren, dass ich die Absorptionen in den einzelnen Volum-Elementen entlang eines Strahlenweges durch eine Reihe von Zahlenwerten darstelle, wobei hohe Zahlenwerte hoher Absorption entsprechen mögen :

1

2

20

1

1

1

21

1

1

1

5

5

5

5

5

1

2

1

1

20

2

20

1

1

1

Wenn nun dieses "Objekt" aus Zellen mit unterschiedlich hoher Absorption den Zeilen folgend fünf mal horizontal durchstrahlt würde, ergäbe sich in allen Zeilen eine jeweils gleiche Gesamtabsorption von 25 Absorptionseinheiten und die Annahme über die Beschaffenheit des Objekts würde daher in erster Näherung so aussehen, dass man jedem Volumenelement die mittlere "optische Dichte" von 25/5 = 5 zuordnete :

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

Natürlich ist das entstehende Bild, die erste Näherung, nur ein sehr unvollkommenes Abbild des durchstrahlten Objekts. Hätte man aber das gleiche Objekt in 5 Spalten vertikal durchstrahlt, hätten sich die folgenden Gesamtabsorptionen ergeben : In Spalte 1 hätten wir 10, in der 2.Spalte 50, dann 28, dann 9 und in der 5. Spalte wieder 28 als Summe der Absorptionen in diesen  Spalten. Um nun in meinem obigen Bild auch diese Befunde einzuarbeiten - und das ist die entscheidende Lösungsidee -  vergleiche ich die Spaltensummen meines Bildes mit den Messergebnissen und korrigiere dementsprechend alle Werte in den Spalten. Dazu bilde ich in der ersten Spalte die Differenz der gemessenen Spaltensumme (10) und der Spaltensumme des Bildes (25) und erkenne, dass die Werte in meinem Bild offenbar insgesamt zu groß sind. Ich berichtige deswegen jeden Wert dieser Bildspalte um den mittleren Korrekturwert : (10-25)/5 = -3. Dadurch verändern sich also alle Werte der ersten Spalte meines Bildes entsprechend und werden alle zu: 5 - 3 = 2. Die Werte der 2. Spalte werden entsprechend korrigiert, nämlich gemäß (50-25)/5 = +5 alle von 5 auf 5 + 5 = 10 "verbessert". Der Korrekturwert für die 3. Spalte ist : (28 - 25)/5 = +0.6 und die Werte der Spalte werden zu 5 + 0.6 = 5.6. In der 4. Spalte ist der Korrekturwert - 3.2 und in der 5. Spalte beträgt er wieder +0.6. Das neue Bild sieht jetzt so aus :

2

10

5.6

1.8

5.6

2

10

5.6

1.8

5.6

2

10

5.6

1.8

5.6

2

10

5.6

1.8

5.6

2

10

5.6

1.8

5.6

Die Veränderungen der Werte führen zu folgendem Resultat : Das Bild ist nach dieser zweiten Näherung zwar detailreicher, ähnelt aber dem Original noch immer nicht sehr überzeugend. Immerhin kann man aber sagen, dass auch eine Anordnung der  absorbierenden Elemente wie im obigen Bild zu den gleichen experimentellen Befunden führen müsste, wie sie sich beim Original ergaben. Es besteht also bisher in experimenteller Hinsicht zwischen Original und Bild kein Unterschied.

Wie kommt man nun aber weiter ? Ein Fortschritt ergibt sich, wenn man eine andere Richtung bei der Durchstrahlung wählt. Wenn man nämlich z. B. jetzt das Original in diagonaler Richtung 9 mal durchstrahlt und die dabei auftretenden Gesamtabsorptionen vergleicht mit denen, die man vom Bild erhalten würde, dann kann daraus eine weitere Möglichkeit zur Verfeinerung erwachsen. Die erste Diagonale geht also nur durch die Zelle (1,1). Die Absorption wäre beim Original 1, beim Bild aber 2, der Korrekturwert (1-2)/1=-1, der Bildwert demgemäß 2 + Korrekturwert = 1. Der zweite parallele Strahl nimmt den Weg von der Zelle (1,2 = Zeile 1, Spalte 2) nach (2,1), die Absorption wäre beim Original 3, beim Bild 12, der Korrekturwert demnach (3-12)/2 = -4.5. Jetzt entsteht eine kleine Schwierigkeit, denn nach der Korrektur würde in der Zelle (2,1) eine negative Absorption resultieren, nämlich 2 - 4.5 = - 2.5,  was offensichtlich nicht sinnvoll ist. Hier setze ich dann 0 als plausibleren Absorptionswert ein. In Zelle (1,2) entstünde daher eine Absorption von10 - 4.5 = 5.5.

Wenn ich mich nicht verrechnet habe, müsste nach diesen 9 diagonalen Durchstrahlungen (jeweils von rechts oben nach links unten) als Bild in 3. Näherung dann folgende Anordnung entstehen. Wenn man dies mit dem Original vergleicht, hat man schon eine bessere Ähnlichkeit :
 

1

5.5

15.1

0

2.8

0

19.5

2.0

0

6.6

11.5

7.2

2.8

2.8

3.6

0

7.2

6.6

0

12.4

0

11

3.6

8.6

1

Zumindest die Lage der dichtesten Zellen (blau angedeutet) wäre in ordentlicher Übereinstimmung mit dem Original.

Das neue Bild hat nun die Zeilensummen (von oben nach unten) von : 24.4,  28.1,  27.9,  26.2,   24.2
                                                                    im Original dagegen :   25,    25,     25,      25,      25
und die Spaltensummen (von links nach rechts) von :                         12.5,  50.4,  30.1,  11.4,  26.4
                                                                     im Original :               10,    50,     28,      9,       28

Weitere Verfeinerungen könnten nun durch neues "Hinziehen" der Bildwerte entsprechend den Abweichungen dieser Spalten- und Zeilensummen erzielt werden. Es lässt sich vermuten, dass die Fortsetzung dieses Verfahrens danach aber immer kleinere und damit weniger wesentliche Fortschritte erbringen dürfte. Es ergibt sich erwartungsgemäß beim Ausprobieren, dass diese Iterationen zu einem jeweiligen Endzustand konvergieren.

Eine weitere Verbesserung erbrächte dann aber sicher auch die diagonale Durchstrahlung von links oben nach rechts unten, also  a)  (5,1)     b) (4,1) (5,2)    c) (3,1) (4,2) (5,3)     d) (2,1) (3,2) (4,3) (5,4)    e) (1,1) (2,2) (3,3) (4,4) (5,5)     usw.

Zusätzlich könnte mit anderen Anstiegen als nur 45° (z.B. kleineren) durchstrahlt werden, also etwa so :
a) (1,4) (1,5)     b) (1,1) (1,2) (1,3) (2,4) (2,5)     c) (2,1) (2,2) (2,3) (3,4) (3,5)     d) (3,1) (3,2) (3,3) (4,4) (4,5)   usw.

Es ist klar, dass der Verlauf dieses bildgebenden Prozesses beim "Rechnen von Hand" schnell unübersichtlich wird. Hier ist also Rechnerhilfe gefragt. Weil ich mir die Entwicklung eines solchen Bildes in den Einzelheiten nicht vorstellen kann, bin ich auf ein Vorgehen im Sinne "experimenteller Mathematik" angewiesen. Daher habe ich eine Simulation für den Rechner entwickelt, bei der die Bildgebung mitverfolgt werden kann. Als Objekte werden ebene Bilder mit 100x100 Pixel Kantenlänge vorgegeben. Die Bildstrukturen können farbig sein und die Bildabtastung verläuft dabei getrennt für die drei Grundfarben rot, grün und blau, die beim "Durchstrahlen" (Abfragen der einzelnen Pixelinhalte) längs der gewählten Richtungen erfasst werden und dann im Bild entsprechend den oben genannten Prinzipien rechnerisch modifiziert und als Pixel niedergelegt werden.

Letzte Aktualisierung : 28.06.2012

Auf der nächsten Seite sind Bildbeispiele von diesem Vorgang dargestellt.