-
Eine Rekonstruktion von Volumendaten auf der Basis von Projektionsdaten führt z.B. in der medizinischen Bildverarbeitung oder in der Materialprüfung zu detaillierten räumlichen Einblicken und ermöglicht eine fundierte Diagnose. Die Projektionsdaten können beispielsweise mittels Röntgen, elektrisch z.B. mit Impedanz, optisch oder akustisch wie z.B. mit Sonographie gewonnen werden.
-
Ein Verfahren einer Schichtbilderzeugung, die auch als Tomosynthese bezeichnet werden kann, ist in Fällen einsetzbar, in denen eine Computertomographie nicht zur Verfügung steht. Ein derartiges Verfahren ist beispielsweise in der deutschen Patentanmeldung
DE 102006012407 A1 beschrieben. Durch eine Vielzahl von zu verarbeitenden digitalen Projektionsdaten ergeben sich wahrnehmbare Verzögerungen in der Visualisierung von Volumendaten.
-
Die Veröffentlichung Fang XU, Klaus MUELLer: „Ultra-Fast 3D Filtered Backprojection on Commodity Graphics Hardware", 2004, IEEE Biomedical Imaging, 571-574 beschreibt ein Verfahren zur Beschleunigung von 3D-Rekonstuktion im Bereich der Computertomographie mittels einer Graphikkarte.
-
Die Veröffentlichung Grant STEVENS, Rebecca FAHRIG, Norbert PELC: „Filtered backprojection for modifying the impulse response of circular tomosynthesis“, 2001, Med. Phys. 28 (3), 372 beschreibt eine Filtertechnik, wobei die dreidimensionale Impulsantwort einer kreisbewegten Tomosynthese derart verändert ist, um die Erzeugung von Bildern zu ermöglichen, deren Erscheinungsbild dem einiger anderer Bildgebungsgeometrien entspricht.
-
Aufgabe der Erfindung ist es, eine weitere Vorrichtung und ein dazugehöriges Verfahren zur Rekonstruktion und Visualisierung von Projektionsdaten anzugeben.
-
Die Aufgabe der Erfindung wird durch die im Patentanspruch 1 und 8 angegebenen Merkmale gelöst.
-
Die Erfindung bringt den Vorteil mit sich, dass lediglich eine Verarbeitungseinheit und ein Speicher zur Bearbeitung der Rohprojektionsdaten und zur Visualisierung der Projektionsdaten benötigt werden.
-
Die Erfindung bringt den Vorteil mit sich, dass das Verfahren/System so modifiziert wurde, dass sowohl die Vorverarbeitung als auch die rekonstruktionsbezogene Filterung und die Rekonstruktion in 3D-Blöcken erfolgen.
-
Die Erfindung bringt den Vorteil mit sich, dass die erforderlichen Berechnungen in den 3D-Blöcken durch geschlossene Transformationen kompletter 2D-Ebenen erfolgen.
-
Die Erfindung bringt den Vorteil mit sich, dass bereits vor Beendigung eines Tomosyntheseaufnahmezyklusses einzelne Schichten zur Diagnose visualisierbar sind.
-
Die Erfindung bringt den Vorteil mit sich, dass eine 3D-Rekonstruktion in Realtime durchführbar ist.
-
Die Erfindung soll im Folgenden mittels des in Zeichnungen dargestellten Ausführungsbeispiels näher erläutert werden.
-
Dabei zeigen:
- 1 ein Blockschaltbild,
- 2 ein weiteres Blockschaltbild,
- 3 eine Ausgestaltung des Blockschaltbildes gemäß 2,
- 4 Projektionsdaten,
- 5 weitere Projektionsdaten,
- 6 Rekonstruktionsdaten,
- 7 Blockdiagramm und
- 8 weiteres Blockdiagramm.
-
In
US 7,310,436 ist zur vorliegenden Aufgabenstellung der Stand der Technik beschrieben.
1 veranschaulicht, wie nach diesem Stand der Technik schematisch ein System aufgebaut wird. Die abgebildeten Verarbeitungseinheiten werden unter anderem durch eine Rekonstruktionseinheit
REK und durch eine Bilderstellungseinheit
BEE gebildet. Eingangsseitig wird die Rekonstruktionseinheit
REK mit Daten einer Volumenprojektion
V, die auch als Rohprojektionsdaten
RPD bezeichnet werden können, beaufschlagt. Diese Rohprojektionsdaten
RPD werden beispielsweise von einer Detektoreinheit
D eines C-Bogens abgegriffen oder von dieser an die Rekonstruktionseinheit
REK übertragen. Die in der Rekonstruktionseinheit
REK angeordneten ersten bis k-ten Vorverarbeitungseinheiten
VVA1_i, i=1...k, die Rückprojektionseinheit
RP, sowie die Speicher
SP2D_j, j = 1...m, sind Teil einer Rekonstruktionseinheit
REK. Die Datenverarbeitung der detektierten Rohprojektionsdaten
RPD erfolgt über die Vorverarbeitungseinheiten
VVA1_i und die Rückprojektionseinheit
RP mit zugeordneten ersten Speichereinheiten
SP2D_j. In einer ersten Speichereinheit
SP2D 1 werden die Rohprojektionsdaten
RPD von n Röntgenaufnahmen erstmals gespeichert. In der ersten Vorverarbeitungseinheit
VVA1_1 wird eine Werteskalierung, physikalische Korrektur, Subtraktion sowie eine Entzerrung, in der zweiten Vorverarbeitungseinheit
VVA1_2 wird eine Rotation in der Bildebene für allgemeine nichtlineare Tomosynthese, in der dritten Vorverarbeitungseinheit
VVA1_3 wird eine Projektionskorrektur in der Bildebene, in der vierten Vorverarbeitungseinheit
WA1_4 wird eine rekonstruktionsbezogene Filterung und in der fünften Vorverarbeitungseinheit
VVA1-5 wird ein Zurückdrehen des Effektes von der zweiten Verarbeitungseinheit
VVA1_2 durchgeführt. Die so genannte Rückprojektion und damit die Erzeugung von 3D-Daten erfolgt in der Rückprojektionseinheit
RP. Die Verarbeitungseinheiten in der Rekonstruktionseinheit
REK arbeiten die Bilddaten sequentiell ab. Die Datenverarbeitung erfolgt in der Rekonstruktionseinheit
REK und in der Bilderstellungseinheit
BEE pixelweise oder im zweidimensionalen Raum
2D nach 2D. Jede der n Aufnahmen wird dabei in den Verarbeitungseinheiten
VVA1_1 bis
VVA1_5 sowie
RP bearbeitet mit Zwischenspeicherung in bereitzustellenden Speichern nach jeder Einheit. Auch bei sequentieller Abarbeitung von einer Aufnahme nach der anderen, müssen zumindest für
SP2D 1,
SP2D_6 und
SP2D_7 Speicher im Umfang des kompletten Aufnahmestapels der n Aufnahmen bereitgestellt werden. In der Bilderstellungseinheit
BEE ist neben einem Graphikprozessor
GPU eine Speichereinheit
SP2D 8 angeordnet. In der Speichereinheit
SP2D_8 sind die von der Rekonstruktionseinheit
REK abgegebenen berechneten Schichtdaten abgelegt. Aus diesen werden nach den Vorgaben des Betrachters mit Hilfe des Graphikprozessors
GPU in der Visualisierungseinheit
BEE Schicht- bzw. Schnittbilder des durchleuchteten Objektes
O dargestellt.
-
Diese Anordnung bringt den Nachteil mit sich, dass der Speicherbedarf beträchtlich ist und eine Visualisierung der rekonstruierten Volumendaten nicht in Echtzeit erreichbar ist.
-
In 2 ist ein Blockschaltbild gemäß der Ausprägung der Erfindung wiedergegeben. In diesem Blockschaltbild sind unter anderem die Rekonstruktionseinheit REK, eine Bilderstellungseinheit BEE sowie eine 2D/3D Verarbeitungseinheit VAE dargestellt. In der Rekonstruktionseinheit REK sind in einzelnen Einheiten VVA3, F3, RP3 und NV3 Programme für eine Vorverarbeitung VVA3, eine Filterung F3, eine Nachverarbeitung NV3 sowie eine Rückprojektion RP3 hinterlegt. „Hinterlegt“ bedeutet, dass diese Einheiten die funktionelle Kontrolle über die Aufgaben „Vorverarbeitung, Filterung, Nachverarbeitung und Rückprojektion haben und deren rechnerische Ausführung in der Verarbeitungseinheit VAE aussteuern. Es sind rein logische Einheiten, so dass z.B. eine Funktionsgruppe für Projektionsmatrix, die für VVA3 und RP3 benötigt wird, in REK nur einmal vorhanden ist. In der Vorverarbeitungseinheit VVA3 werden Programme, Steuerdaten, Lookup-Tabellen (LUTs) und Projektionsmatrizen für die Vorverarbeitung bereitgehalten und in VAE angewandt. Insbesondere handelt es sich bei den Programmen und Projektionsmatrizen auch um eine Rotationskorrektur bei zirkulärer Tomographie in der Vorstufe zur 3D-Filterung in der folgenden Einheit F3. In der Filtereinheit F3 werden Programme, Steuerdaten und Filterkerne für eine Filterung oder Faltung in 3D in virtuellen Ebenen bereitgehalten und in VAE angewandt. In der Nachverarbeitungseinheit NV3 werden Programme und Steuerdaten für die optimale Bilddarstellung in der Visualisierungseinheit VE bereitgehalten und angewandt. Bei vorangehender Komplettrekonstruktion erfolgt NV3 nach der Rückprojektion RP3. Ansonsten, wenn auch Teilergebnisse von RP3 sofort visualisiert werden sollen, erfolgt sie vor RP3. Bei zirkulärer Tomographie wird speziell auch die Rotationskorrektur aus VVA3 wieder zurückgerechnet. In der Rückprojektionseinheit RP3 sind Programme, Steuerdaten, Projektionsmatrizen sowie Lookup-Tabellen hinterlegt zur Ausführung der eigentlichen Rekonstruktion in VAE3_3B . Mit der in der 2 oder 3 dargestellten Ausprägung der Verarbeitungseinheit VAE wird in einem einheitlichen Ansatz die Erzeugung und Visualisierung von z.B. Tomosynthese-Volumenbildern durchgeführt. Die in der Verarbeitungseinheit VAE durchgeführte prozessorgesteuerte Rohbilddatenverarbeitung erfolgt in mehreren Teilmodulen VAE3_1, VAE3_2, VAE3_3A, VAE3_3B, VAE3_3, VAE3_4, VAE3_5. In dem ersten Teilmodul VAE3_1 der Verarbeitungseinheit VAE erfolgt eine Werteskalierung, eine physikalische Korrektur, optional eine Subtraktion, eine Entzerrung sowie eine Rotation in der Bildebene sowie eine Projektionskorrektur. In einem zweiten Teilmodul VAE3_2 der Verarbeitungseinheit VAE erfolgt eine Filterung (Faltung) für alle Projektionen in künstlichen Ebenen innerhalb des 3D-Speichers. In einem dritten Teilmodul VAE3_3A der Verarbeitungseinheit VAE erfolgt die vorgezogene Aufbereitung für die Visualisierung in VE und ggf. die Rückdrehung bei nichtlinearer, z.B. zirkulärer Tomosysnthese. Dies ist die Vorbedingung, dass die Erzeugung von Tomosyntheseschichten und ihre Visualisierung mittels der gebräuchlichsten, der SSM-Methode (SchichtStapel-Methode) in VAE in nur 4 Bearbeitungsstufen durchgeführt werden kann. Das vierte Teilmodul VAE3_3B schließlich führt in Echtzeit die Rekonstruktion der jeweils zu visualisierenden Schicht aus der Gesamtheit der 3D-Daten in SP3D_1 durch. Der in der Verarbeitungseinheit VAE angeordnete Datenprozessor kann 2D und 3D adressieren und beliebig im Raum parallel Bilddaten verarbeiten, wie z.B. interpolieren, rotieren, verschieben, projizieren, warpen (verzerren) sowie falten.
-
Die darüberliegenden Blöcke REK und BEE dienen der Veranschaulichung, da wie in 1 dargestellt und wie im Stand der Technik üblich, die Rekonstruktion und die Visualisierung als getrennte Disziplinen betrachtet werden.
Von dem in der 3D-Verarbeitungseinheit VAE angeordneten Datenprozessor DP werden zum Einen Vorverarbeitungsschritte, Filteraufgaben sowie eine Rückprojektion und zum Anderen die Darstellung der Volumenbilddaten V gemäß Vorgaben aus REK und BEE ausgeführt.
-
Die Volumenbilddaten oder die Volumenmatrix V können z.B. mittels iterativer algebraischer Verfahren ART: algebraic reconstruction technique oder einer gefilterte Rückprojektion FBP: filtered backprojection errechnet werden. Dabei werden die Daten gefiltert und anschließend auf die Volumenmatrix V rückprojiziert. Die gefilterte Rückprojektion FBP beruht dabei überwiegend auf einem analytischen Ansatz, der aus der Abtastgeometrie abgeleitet ist. Iterative Verfahren, haben besondere Bedeutung bei unvollständigen Scandaten.
-
Als Visualisierungsalgorithmen können nach Vorgaben des Benutzers, hier beispielsweise eine direkte 3D-Darstellung, mit Hilfe eines Volumenrendering Verfahrens VR, eine Darstellung ähnlich der multiplanaren Reformatierung MPR oder ein Verfahren zur Schichtstapelbetrachtung SSM ausgewählt werden. Mit dem Verfahren zur Betrachtung des Schichtstapels SSM wird ein filmartiges Eintauchen in einen Schichtstapel, bei dem eine Schicht nach der anderen dargestellt wird, möglich, da es in seinen Volumenansichten der klassischen filmbasierten Schichttechnik entspricht. VVA3 steuert das Einlesen und dabei die Vorverarbeitung der Rohprojektionsdaten RPD1, ...,RPDn. Die Verarbeitungseinheit VAE wird hierzu mit entsprechenden Programmen, Steuerdaten, Projektionsmatrizen sowie Lookup-Tabellen LUTs versorgt.
VVA3 bezieht sich hiermit auf das erste Modul VAE3_1, der Rohbilddatenverarbeitung in der Verarbeitungseinheit VAE. Die Moduleinteilung ist aber rein logisch funktionell und im Bearbeitungsablauf zu sehen, als Strukturierung zum besseren Verständnis dieses Ablaufs. Ansonsten stellt VAE eine Einheit dar zur effizienten 3D-Parallelverarbeitung.
In VAE3_1 wird die Vorverarbeitung durchgeführt. Es wird eine Werteskalierung vorgenommen, z.B. mit Hilfe von einer oder mehreren LUTs. Ebenso kann eine detektorbezogene physikalische Korrektur durchgeführt werden. Wenn nötig, werden im gleichen Sinne der Vorverarbeitung Subtraktion oder geometrische Entzerrung durchgeführt. Dabei können auch Projektionsmatrizen verwendet werden, genauso wie bei einer diese Stufe abschließende Bildrotation in der Bildebene oder eine ganz allgemeine Projektionskorrektur. Mittels der Projektionsmatrizen bzw. einer Gesamt-Projektionsmatrix kann eine ganze Ebene mit Rohbildprojektionsdaten RPDi geschlossen aufbereitet im 3D-Blockspeicher SP3D_1 abgelegt werden. Geschlossen soll heißen, dass dies in einer parallelisierten Operation realisiert ist und dass die Daten eine 3D-Einheit darstellen. Alle diese Teilfunktionen können bereits während des Einlesens, d.h. auf dem Weg der 2D-Rohprojektionsdaten in den 3D-Speicherblock SP3D_1 erfolgen.
-
Mit einem dem Modul F3 zugeordneten Filteralgorithmus wird mit Hilfe der Verarbeitungseinheit VAE3_2 ein Schritt einer rekonstruktionsbezogenen Filterung, die auch als Faltung realisiert und bezeichnet werden kann, durchgeführt. Dazu wird in der 3D Speichereinheit SP3D_1, ein Block von transformierten RPD1...RPDn z.B. in horizontaler Schichtung virtuell (gedanklich, für die Abfolge der Bearbeitung, aber ohne Umspeicherung) umdefiniert in eine Schichtlage senkrecht hierzu und so, dass die Bewegungsrichtung während der Erstellung der RPD-Aufnahmeserie zumindest näherungsweise eine Normale zur virtuellen Schicht darstellt. Mit einer Faltung wird die Filterung als parallele Verrechnung ganzer virtueller Ebenen gegeneinander durchgeführt.
-
Anschließend kann ein Nachbearbeitungsprogramm NV3 in Verbindung mit der Verarbeitungseinheit VAE3_3A durchgeführt werden, welche die 3D-Daten in dem 3D-Speicher SP3D_1 bereits im Hinblick auf die Visualisierung aufbereitet, z.B. in ihren Werten für entsprechenden optimale Helligkeit und Kontrast skaliert, z.B. auch unter Einsatz von Parallel-Addition von 3D-Ebenen und 3D-Säulen zur Ermittlung einer Werte-Statistik sowie über Lookup-Tabellen (LUTs). Die Anpassung der Werte geschieht in VAE3 3A und erfolgt speichermäßig innerhalb des 3D-Speichers SP3D_1. Im Falle einer zirkulären Tomosynthese wird in VAE3_3 auch die Rückdrehung der Datenebenen vorgenommen, die in VVA3 für eine verbesserte Filterung F3 rotiert wurden. Die für die Filterung bei nichtlinearer Schichtbewegung veränderte Ausrichtung (Rotation) des Inputs für das zweite Modul VAE3_2und nach wie vor bestehend für das dritte Modul VAE3_3 wird ohne Prozessor-Mehraufwand in DP / VAE3_3A über die Projektionsmatrizen wiederhergestellt.
Die Rückprojektion, durchgeführt mit Hilfe des Rückprojektionprogramms RP3 in Verbindung mit dem vierten/dritten Modul VAE3_3B/VAE3_3 (2/3) führt die Rekonstruktion durch. Für die Anforderung der Erzeugung von Tomosyntheseansichten in klassischer Schichtorientierung und der Möglichkeit des dynamischen Eintauchens in den Schichtstapel (SSM) lassen sich im Modul RP3 Rekonstruktion und SSM-Rendering gemeinsam in Echtzeit durchführen, was der DP im (zeitlichen) Abschnitt VAE3_3B durchführt. Jede Schicht des zu visualisierenden 3D-Volumens wird in dem Moment erzeugt, in dem sie zu befunden gewünscht wird. Dazu wird das vierte Modul VAE3_3B(2) mit Projektionsmatrizen, Lookuptabellen und Koordinaten aus dem Rekonstruktionsabschnitt RP3 der Rekonstruktionseinheit REK versorgt. Mithilfe dieser Daten und von benutzerdefinierten Schichtauswahlparametern aus dem Modul SSM der Bilderstellungseinheit BEE werden die zuletzt durch das dritte Modul VAE3_3A bearbeiteten Daten miteinander zu jeweils einer Schicht des SSM-Stapels verrechnet und im Framebuffer FB abgelegt, dessen Daten direkt auf dem Monitor VE angezeigt wird. Die Daten aus SP3D_1 werden dabei wieder als Ebenen parallel zu den ursprünglichen RPD-Ebenen interpretiert. Damit ist die 3D-Volumenerzeugung für einen Schichtstapel bei der Tomosynthese auf einer Parallel-Recheneinheit des Datenprozessors DP, mit nur einem 3D-Speicher SP3D_1 und mit der zusammengelegten Volumenerzeugung und Visualisierung realisiert. Die Rekonstruktion besteht dabei im Wesentlichen aus Spezialbearbeitung (pre-post), Filterung und Rückprojektion. Rückprojektion und Visualisierung (Rendering) werden dabei gemeinsam in einem Arbeitsgang durchgeführt unter Verwendung der ebenenparallelen Verrechnung der Daten aus dem 3D Speicher SP3D_1.
-
3 stellt eine verallgemeinerte Realisierung dar, bei der zuerst die Rekonstruktion abgeschlossen wird um anschließend die volle Flexibilität für verschiedene Visualisierungsmethoden zu bieten, d.h. die Auswahlmöglichkeit in BEE z.B. zwischen Volumenrendern VR, Multiplanarer Reformatierung MPR und Schichtstapelmethode SSM.
Die Rückprojektion RP3 als eigentliche Rekonstruktionsaufgabe wird hier für sich abgeschlossen in VAE3_3 und erzeugt ein beliebig visualisierbares 3D-Volumen in SP3D_2. Dazu wird VAE3_3 vor allem mit Projektionsmatrizen versorgt. Mit Hilfe dieser Projektionsmatrizen werden in Verbindung mit weiteren Steuerdaten und Koordinaten die zuletzt durch VAE3_2 bearbeiteten (gefilterten) Daten miteinander verrechnet und damit Volumendaten in SP3D_2 generiert. Hierzu werden die Input-Daten in SP3D_1 wieder als Ebenen parallel zu den ursprünglichen RPD-Ebenen interpretiert. Die ggf. bei nichtlinearer Schichtbewegung für die Bearbeitung in VAE3_2 veränderte Ausrichtung (Rotation) wird ohne rechnerischen (Prozessor-) Mehraufwand in Datenprozessor DP in der Einheit VAE3_3 über die Projektionsmatrizen wiederhergestellt.
-
Optional lässt die Ausprägung des Programms im Modul NV3 in dem Verarbeitungsschritt in dem vierten Modul VAE3-4 der Verarbeitungseinheit VAE eine Nachverarbeitung in place in Verbindung mit einem zweiten 3D-Speicher SP3D_2 zu. So kann, z.B. eine Skalierung für eine optimale Helligkeit und ein Kontrast bei der Wiedergabe oder die Realisierung einer bestimmten Kennlinie in dem vierten Modul VAE3 4 herangezogen werden, wobei sich wiederum auch Lookup-Tabellen zur Realisierung anbieten.
-
Die 3D-Darstellung (Visualisierung, Rendering) wird ebenfalls und in prinzipiell gleicher Weise vom Datenprozessor DP durchgeführt. Je nachdem, welche Darstellungsmethode in der Bilderstellungseinheit BEE ausgewählt wurde, werden die Daten aus SP3D_2 in VAE3_5 miteinander verrechnet, d.h. im Detail z.B. erneut über Projektionsmatrizen und mit Hilfe von einer oder mehreren Lookup-Tabellen projiziert und verrechnet und in den Framebuffer FB ausgegeben, dessen Inhalt als 3D-Bild 1:1 auf dem Monitor dargestellt wird. Mit Stereotechnik kann hier sogar ein echter 3D-Eindruck erzeugt werden.
-
In der dem ersten Modul VAE3_1 nachgeordneten zweiten Verarbeitungseinheit VAE3_2 werden die in dem 3D-Speicher SP3D_1 abgelegten Projektionsdaten PD, wie in den 2, 3, 5 beschrieben, in Ebenen in (i, v)- Ausrichtung mit Normalenvektor u aufgeteilt und jeweils in einem Schritt, schichtweise parallel bearbeitet. In einer optionalen, dem zweiten Modul, der Filtereinheit, VAE3_2 nachgestellten Nachverarbeitungseinheit VAE3_3A, werden die Werte in dem 3D Speicher SP3D_1 nachverarbeitet, um schließlich bei der Darstellung eine gute Bildaussteuerung zu bewirken. In der auf die Filtereinheit VAE3_2 bzw, wenn VAE3_3A erforderlich ist, in der auf VAE3_3A nachfolgenden Einheit VAE3_3B/VAE3_3 wird mit der so genannten Technik der Rückprojektion die Rekonstruktion, also die Erzeugung der Schichten durchgeführt. Diese Schichten sind das eigentliche Ergebnis der Tomosynthese. In dem dritten Modul VAE3_3B/VAE3_3 werden die Daten in dem 3D Speicher SP3D_1 wieder parallel zu den Ebenen der Rohprojektionsdaten RPD interpretiert, also in Ebenen in (u, v)-Ausrichtung mit Normalenvektor i. Bereits beim Einlesen der Daten in das dritte Modul VAE3_3B/VAE3_3 in die Datenpipeline wird die geometrische Korrektur in den Ebenen durchgeführt, um z.B. die Rotation im Falle zirkulärer Tomosynthese auszugleichen. Dies ist jedoch nur ein Spezialfall; mit dem Konzept der Projektionsmatrizen werden beliebige, allgemeine Korrekturen durchgeführt, wie es die Aufnahmegegebenheiten fordern. Über die Bedienung des Moduls zur Schichtstapelbetrachung SSM und der Bilderstellungseinheit BEE (Rendering- bzw. Visualisierungseinheit) wird jeweils mitgeteilt, welche Schicht zu rekonstruieren und anzuzeigen ist. Durchgeführt wird dies mittels des dritten Moduls VAE3_3B. Dabei werden jeweils die Daten sämtlicher Ebenen von in dem 3DSpeicher SP3D_1, also die Ebenen i mit i = 1 ... n miteinander verrechnet und ergeben die jeweils aktuelle, die visualisierte Tomosynthese-Schicht im Framebuffer FB.
-
In 3 ist eine allgemeine Variante zur Gewinnung und Darstellung von 3D-Tomosynthesebildern dargestellt, die den Vorteil aufweist, wahlfrei verschiedene und weitergehende 3D Darstellungen zu ermöglichen. Diese Variante hebt sich in gleicher Weise wie die in 2 beschriebene Ausprägung vom Stand der Technik durch ihre geschlossene, ebenenparallele 3D-Bearbeitung im Datenprozessor DP mit dem 3D-Speicherblock SP3D ab. In dem dritten Modul VAE3_3 wird mit der so genannten Technik der Rückprojektion die Rekonstruktion, also die Erzeugung der Schichten durchgeführt. Diese Schichten sind das eigentliche Ergebnis der Tomosynthese. Im dritten Verarbeitungsmodul VAE3_3 werden die Daten in dem 3DSpeicher SP3D_1 wieder parallel zu den Ebenen der Rohprojektionsdaten RPD interpretiert, also in Ebenen in (u, v)-Ausrichtung mit Normalenvektor i. Wie in 2 gezeigt, wird auch hier z.B. mit Projektionsmatrizen die Geometrie korrigiert, um Gesetzmäßigkeiten bei der Aufnahme zu berücksichtigen oder Modifikationen wieder zurückzunehmen, die für die effizientere Vorverarbeitung im ersten Modul VAE3_1 oder/und Filterung im zweiten Modul VAE3 2 vorgenommen wurden. Abhängig von den Aufnahmeparametern, z.B. einem genügend großen überstrichenen Winkelbereich und einer entsprechend großen Anzahl von Projektionen lässt sich, abhängig von der Auflösung in z-Richtung eine genügend große Anzahl n von Schichten rekonstruieren, die verschiedene Visualisierungsmethoden in der Bilderstellungseinheit BEE sinnvoll machen, wie z.B. die direkte Volumendarstellung über Volume Rendering (VR). Daher ist es vorteilhaft, das in der Rückprojektion errechnete 3D-Volumen als solches in einem 3D-Block abzuspeichern, für den mehr und bessere Visualisierungsmöglichkeiten bereitstehen. Die Verbesserung der 3D-Visualisierung auch aus beliebiger Betrachtungsrichtung beginnt hier bereits in einer der Rückprojektion nachgeschalteten Nachverarbeitungsstufe NV3 bzw. VAE3_4, die die rekonstruierten Werte innerhalb des ersten Bereichs des 3D-Speichers, SP3D_1, optimal für die Darstellung umrechnet und einstellt, z.B. mit Statistik über das gesamte Volumen und mittels Erzeugung und Anwendung von Lookup-Tabellen. Nachgeschaltet nach VAE3_4 erfolgt in dem fünften Modul VAE3_5 die Visualisierung auf der Basis derselben 3D-Daten in dem zweiten Bereich des 3D-Speichers, SP3D_2, und mit denselben Mechanismen wie bei der Rekonstruktion. Dabei werden die Daten vom zweiten 3D-Speicherbereich SP3D_2 zur Darstellung umgerechnet und für jede Ansicht in Echtzeit im Framebuffer FB abgelegt. Diese Mechanismen sind z.B. die Verrechnung beliebig schiefer Ebenen in SP3D_2 mittels Projektionsmatrizen als ganze projizierte Ebenen-Bereiche und Ausgabe des Ergebnisses über eine oder mehrere Lookup-Tabelle(n). Welche Art der Visualisierung (VR, ... MPR, SSM) jeweils aktiv ist, wird über Bedienung in der BEE festgelegt, was zu einer entsprechenden Parametrierung der VAE, genau des Datenprozessors DP in der Phase VAE3_5 führt.
-
In 4 wird mittels einer schematischen Darstellung gezeigt, wie die Rohprojektionsdaten RPD1, ..., RPDn erzeugt und im ersten 3D-Speicher SP3D als Projektionsdaten PD hinterlegt werden. Entsprechend der schematischen Darstellung werden mit einer nicht näher dargestellten, aus einer Strahlenquelle RGR und einer Detektoreinheit D gebildeten Röntgeneinheit Rohprojektionsdaten RPD1, ..., RPDn von einem zu untersuchenden Objekt O erstellt. Das Objekt O ist einem ersten Koordinatensystem (x,y,z) zugeordnet. Die einem zweiten Koordinatensystem (u, v) zugeordneten Rohprojektionsdaten RPD werden während der Untersuchung im Rahmen der Vorverarbeitung einem um die dritte Dimension erweiterten zweiten Koordinatensystem (u, v, i) zugeordnet. Die Röntgenstrahlquelle RGR wird z.B. im ersten Koordinatensystem in -x - Richtung, beginnend von rechts nach links, geführt. Die Rohprojektionsdaten RPD1,..., RPDn werden vom Detektor D gespeichert und jeweils datenprozessorgesteuert durch die Verarbeitungseinheit VAE abgerufen. Die Rohbildprojektionen RPD1, ..., RPDn aus dem zweiten Koordinatensystem, beispielsweise die Einzelprojektionen einer Tomosyntheseaufnahme, werden gemäß des zweiten Koordinatensystems abgelegt, möglicherweise dabei bereits transformiert und transformiert abgelegt. Dabei werden sie als Stapel von 2D-Ebenenbereichen oder als 3D-Block definiert, Daten die im ersten 3D-Speicher SP3D_1 abgelegt sind. Die Bilddaten bzw. Projektionsdaten PD der einzelnen Projektionen sind dabei entsprechend dem zweiten Koordinatensystem u, v, i schichtweise in i Richtung abgespeichert.
-
Erfolgen die Projektionsaufnahmen während der Akquisition z.B. in einer Bewegung parallel zur x-Richtung und damit auch parallel zu u, so ist die hauptsächlich geforderte Filterrichtung parallel zu u. Andere Schichtbilder, die in einer Folge mit nicht zu x paralleler Richtung aufgenommen wurden, sind mit vorteilhafter Weiterbearbeitung möglich, wenn die Ablage der Projektionen im 3D-Texturblock an die Orientierung der so genannten Schichtfigur angepasst ist, z.B. durch eine projektionsabhängige Rotation der Datenebenen in der (u, v)-Ebene. Dieser Schritt braucht bei der späteren Rückprojektion nicht extra rückgängig gemacht zu werden, da er ohne zusätzlichen Rechenaufwand als Modifikation der zu verwendenden Projektionsmatrizen formuliert werden kann.
-
Ein dem Filter
F3 zugeordneter Filteralgorithmus kann im einfachsten Fall ein Hochpassfilter im Sinne eines Gradientenfilters oder eines Unsharp Maskings sein, bzw. eine dem Wesen nach eindimensionale Faltung mit einem beliebigen Faltungskern, die jedoch parallel für komplette (i,v)-Ebenenbereiche durchgeführt wird. Auch eine wie beispielsweise in der deutschen Patentanmeldung
DE 102006012407 A1 beschriebene exponentielle Filterung kann hier eingesetzt werden.
-
Wie in 5 gezeigt, erfolgt die Filterung der Projektionsdaten PD gemäß der Erfindung z.B. als so genannte 3D-Texturdaten in der i, v Ebene. Die Prozessorhardware des Datenprozessors DP ist für die Filterung dazu derart ausgebildet, dass die in 1 bis n Schichten in i Richtung abgelegten Texturdaten nicht nur als (u,v)-Ebenenbereiche addressiert werden können, sondern als beliebig orientierte Ebenenbereiche, also auch als (i,v)-Ebenenbereiche, und diese beliebig orientierten Ebenenbereiche als ganze parallel verarbeitet werden können, also z.B. ein Ebenenbereich u=1 mit dem Ebenenbereich u=2 über die Pipeline des Datenprozessors DP komplett verrechnet werden kann. Jede und mehrere Datenebenen können durch die Prozessorhardware in einem Verarbeitungsschritt erfasst werden. Texturdaten von benachbarten sich in u Richtung fortsetzenden Schichten können mit entsprechenden Filterkoeffizienten berücksichtigt werden.
-
Je nach Art des Rekonstruktionsablaufs können alle Berechnungen in place erfolgen oder es wird ein zweiter 3D-Speicherplatz SP3D_2 für die Ablage der Daten in einem zweiten 3D-Datenblock bereitgestellt.
-
Nachfolgend wird ein Ausführungsbeispiel zu einer Volumenrekonstruktion
V basierend auf einer Rohbilddatenakquisition beschrieben. Hierzu werden diese Rohprojektionsdaten in einem 2D/3D Speicher
SP3D_1 abgelegt. Die 2D-Texturen, die auch als Projektionsbilddaten bezeichnet werden können, werden in den Ebenen 1 bis n des ersten 3D Speichers
SP3D_1 nacheinender in aufsteigender i Richtung abgelegt. Danach werden für die rekonstruktionsbezogene (Vor-)Filterung virtuell neue Ebenen, z.B. (v, i)-Ebenen definiert, ohne dass man den 3D-Projektionsspeicher umsortieren muss. Es wird nur in anderer Weise in
SP3D_1 adressiert, z.B. in Form der Adressierung bestimmter Ebenenbereiche oder Texturen. Gemäß einem gewählten Filteralgorithmus werden die in (v, i)-Ebenenbereichen mit jeweils einer bestimmten u-Koordinate zusammengefassten Daten, wie in
5 gezeigt, miteinander verrechnet. Dabei wird das speziell dafür ausgelegte Parallelrechenwerk des 3D-Datenprozessors
DP verwendet. Es handelt sich hier beispielsweise um eine 2D-parallele Verrechnung ganzer (v, i)-Ebenenbereiche mit dem Ziel, alle (u, v)-Ebenen in sich zu filtern. Für bestimmte Filterarten, z.B. das unsharp masking, kann es vorteilhaft sein, dass man als Zwischenspeicher einen zweiten 3D-Datenblockblock gleicher Größe und Struktur verwendet, der aber in dem zweiten 3DSpeicher SP3D 2 ohnedies vorhanden ist und in der Phase der Filterung noch nicht anderweitig benötigt wird. Eine Filterung wie in
DE 102006012407 A1 beschrieben kann komplett in place erfolgen, d.h. ohne weiteren 3D-Speicherbedarf.
-
Nach der Filterung stehen die gefilterten Einzelprojektionen, wie in 2, 3, 4 und 6 dargestellt, in dem ersten Speicher SP3D_1 bereit. Für eine Tomosynthese-Volumenrekonstruktion werden die (u, v)-Ebenen z.B. als Texturen betrachtet. Jeder abgedeckte Bereich der Datenebenen aus dem i-Stapel wird als 3D-Textur interpretiert, ihrer Aufnahmegeometrie entsprechend gemappt und in einem zweiten Rekonstruktionsspeicher SP3D_2 mit den anderen gemappten Projektionen additiv überlagert abgelegt. Der variable Teil dieser Aufnahmegeometrie wird bestimmt durch den Aufnahmewinkel jeder Projektion, die Position des Detektors gegenüber dem Strahler und durch die Höhe der Schicht, die gerade rekonstruiert werden soll. Am allgemeinsten wird die Geometrie durch eine jeweilige, also zu jeder Projektion gehörigen 3x4 Projektionsmatrix beschrieben.
-
Texturen können z.B. als OpenGL QUADS definiert und behandelt werden. Damit können mit dem Datenprozessor DP jeweils mit einem Aufruf ganze Texturflächen verrechnet werden. Im Falle der Erzeugung klassischer Schichtbilder braucht kein kompletter 3D- Rekonstruktionsspeicher bereitgestellt zu werden, da die rekonstruierten Schichten einzeln rekonstruiert und in Echtzeit visualisiert und/oder z.B. auf einem Speichermedium gespeichert werden können.
-
Nachfolgend wird, die Aufnahmeprozedur bei der Tomosynthese berücksichtigend, mit der rekonstruktionsbezogenen Filterung sofort nach der ersten Röntgenaufnahme bzw. nach dem Vorliegen der ersten Rohprojektionsdaten RPD1 begonnen. Dies bringt den Vorteil mit sich, dass sofort nach Beendigung des Aufnahmezyklusses die einzelnen Schichten rekonstruiert und betrachtet werden können. Dies macht Sinn für äußerst aufwändige rekonstruktionsbezogene Filterungen oder einfachere Datenprozessoren. Die zuvor beschriebene Filterung (F3)/ zweites Modul VAE3_2 wird hier wie die Vorverarbeitung VVA3 in den Akquisitionsprozess integriert. Dies bringt zusätzlich den Vorteil mit sich, dass der Datenprozessor besser ausgelastet wird und die Zeit bis zur Ansicht der Schichtbilder weiter verkürzt wird. Da hier jeweils nur Röntgendaten einer Projektionsebene bereitstehen, wird innerhalb der jeweiligen Projektionsebene zeilenparallel gefiltert. D.h., es werden die Röntgenbilddaten einer v-Reihe parallel mit weiteren Röntgenbilddaten in u-Richtung der Projektionsebene (u, v) verrechnet. Damit stehen die gefilterten Projektionen direkt nach der Akquisition im ersten 3D-Speicher SP3D_1 des Datenprozessors DP zur Rekonstruktion bereit. Zur Rekonstruktion wird entsprechend ihrer Projektionsgeometrie, d.h. anhand ihrer Projektionsmatrix, jede Projektion auf die Speicherebene jeder Schicht projiziert und dort aufaddiert. Das kann in FB sein, oder bei Komplettrekonstruktion, eine Ebene mit bestimmtem i in dem zweiten 3D-Speicher SP3D_2. Die komplette Rekonstruktion ist Voraussetzung, wenn so genannte Sekundärrekonstruktionen berechnet werden sollen, oder wenn allgemeine 3D-Darstellungen wie mittels des Volumenrenderns VR oder der Multiplanaren Reformattierung MPR gewünscht sind. Unter einer Sekundärrekonstruktion werden Ansichten aus dem Volumendatensatz verstanden, die nicht parallel zu den Ebenen des Schichtvorgangs verlaufen. Rekonstruktion und Visualisierung bei der Tomosynthese können auch als zusammengehörig betrachtet werden. Damit können Rekonstruktion und Visualisierung zumindest bei einer Standard-Schichtbetrachtung in Pseudo-Echtzeit erfolgen und benötigen keinen zweiten 3D-Speicherblock, sondern erzeugen kontinuierlich neue Inhalte im 2D-Framebuffer FB.
-
Werden Vorverarbeitung und Filterung sofort nach Akquisition einer Projektion für diese Projektion abgeschlossen und das Ergebnis nach Filterung in SP3D_1 abgelegt (in der betreffenden Lage i), kann bereits während der Akquisition der nächsten Projektion die Rekonstruktion begonnen werden, indem die Daten der abgeschlossenen Projektion in alle Voxel des zweiten 3D-Speichers SP3D_2 eingerechnet werden. Unmittelbar nach Akquisition der letzten Projektion und deren Einrechnung in den zweiten 3D-Speicher SP3D_2 ist somit die Gesamtrekonstruktion abgeschlossen. SP3D_1 beschränkt sich damit auf Speicherplatz für zwei Projektionsdatenebenen, die momentan akquirierte und gefilterte sowie die fertig gefilterte, die gerade in die Rekonstruktion eingerechnet wird.
-
Damit der Befunder die richtige Ortsauswahl treffen kann, ist ein Orientierungsbild, vergleichbar mit einem Topogramm bei der Computertomographie, erstellbar. Das kann z.B. bei koronarer Schichtführung ein laterales oder axiales Bild sein. Da nach Filterung und Rekonstruktion der komplette Volumendatensatz im Rekonstruktionsspeicher der zweiten 3D-Speichereinheit SP3D_2 des Datenprozessors DP bereitsteht, ist die Visualisierung eines Orientierungsbildes z.B. durch Aufsummieren von Ebenen in Echtzeit möglich.
-
Wie in 4 gezeigt, entstehen bei einem Tomosyntheseaufnahmesystem eine Serie von Roh-Röntgenprojektionen mit einer Mechanik, bei der der Zentralstrahl um eine Achse rotieren kann, wobei sich der Fokus auf der einen Seite des Aufnahmeobjekts vorzugsweise, aber nicht zwingend, linear bzw. parallel zu einer Achse bewegt. Mit dem Zentralstrahl ZS bewegt sich der Detektor D auf der anderen Seite des Objekts O ebenfalls vorzugsweise linear. Der Detektor D kann auch entkoppelt von der Röntgenquelle sein. In diesem Fall könnte der Detektor ruhen, wenn er groß genug ist, alle Projektionen des Objekts O abzubilden.
-
Bei der weiteren Betrachtung wird von einem Mammographiegerät ausgegangen, bei dem die Röntgenröhre einen Kreisbogen beschreibt, während der Detektor stationär an dem Mammographiegerät angeordnet ist. Bei einer Aufnahme entsteht so, wie in 4 dargestellt, eine Serie von Rohprojektionsbildern, die entsprechend einem Projektionsstapel Schicht für Schicht (u,v)i als Projektionsdaten PD in den ersten Speicher SP3D_1 des Datenprozessors DP geladen werden. Danach erfolgt die Vorverarbeitung im Wesentlichen mit geometrischer und wertemäßiger Skalierung. Daran schließt sich die rekonstruktionsbezogene (Vor-) Filterung an nach einem rekursiven, dem Kern von Shepp und Logan nahekommenden Verfahren zur Vorbereitung der reinen Rekonstruktion, die in diesem Fall als Rückprojektion realisiert ist.
Um die Pipeline des Datenprozessors DP optimal nützen zu können, werden die gespeicherten Projektions-Schichten, wie in 4 dargestellt, für die Filterung als (v,i)-Texturen behandelt und in u-Richtung gegeneinander verrechnet. Das ist gleichbedeutend mit einer parallelen Filterung für alle Punktreihen oder Punktsäulen in u-Richtung. Für die rekursive evtl. exponentielle Berechnung kann hier z.B. direkt die Operation des OpenGL Alpha-Blendings verwendet werden. Bei bestimmten mehrfachen Filterungen, z.B. der Kombination linearer Tiefpassfilter mit Subtraktion zum Zweck eines Unsharp Masking, kann es nötig sein, einen zweiten Texturblock gleicher Dimension im zweiten 3D-Speicher SP3D_2 anzulegen. In diesem werden die Zwischenergebnisse der ungeraden Bearbeitungsschritte abgelegt. Die geraden Bearbeitungsschritte erfolgen zurück in den ersten Block. Nach dieser rekonstruktionsbezogenen Filterung stehen die Daten für die eigentliche Rückprojektion bereit.
-
Für das gesamte Rekonstruktionsvolumen
V wird, wie in
6 angedeutet, vorzugsweise ein abgegrenzter Speicherbereich für einen 3D-Speicherstapel bzw 3D-Speicherblock als zweiter 3D-Speicherbereich
SP3D_2 eingerichtet. Bei Abspeicherung aller rekonstruierten Daten im zweiten 3D-Speicher
SP3D_2 kann das Volumen auf verschiedene Arten in unterschiedlichen Perspektiven visualisiert werden.
Bei der Rekonstruktion des Volumens
V wird jeweils eine Projektionsebene aus den gefilterten Projektionsdaten
PD in
SP3D_1 herausgegriffen und in den zweiten Speicher
SP3D_2 hineingerechnet. Mit dem ersten Projektionsanteil
PA_1 ist beispielsweise der Ebenenbereich aus der letzten Projektion (zuoberst in dem Stapel im ersten 3D-Speicher
SP3D_1 von n gefilterten Projektionen) bezeichnet, der einen Beitrag für die unterste Schicht im Rekonstruktionsvolumen
V darstellt, mit dem zweiten Projektionsanteil
PA_2 ist beispielsweise der Ebenenbereich aus derselben letzten Projektion bezeichnet, der einen Beitrag für die zweitunterste Schicht im Rekonstruktionsvolumen
V darstellt. Bei der Rekonstruktion (Rückprojektion) bietet sich die Möglichkeit, dass eine Schleife über die Projektionen oder eine Schleife über die rekonstruierten Schichten als äußerste Schleife durchlaufen wird. Ist die Schleife über die Projektionen außen, so wird im Inneren des Speicherblockes in den kompletten Rekonstruktionsstapel hinein akkumuliert. Läuft die äußere Schleife über das Rekonstruktionsvolumen, so wird jede Schicht des Rekonstruktionsvolumens aus allen Projektionen komplett berechnet und kann dann vorab visualisiert und weggespeichert werden, so dass hier kein 3D-Speicherblock für die rekonstruierten Schichten komplett bereitgestellt werden muss. Bei jeder Variante wird in der innersten Schleife eine Projektion auf eine Rekonstruktionsvolumenschicht gemappt. Das kann, wie im Ablaufdiagramm in
7,
8 aufgeführt, folgendermaßen wie insbesondere in
6 angedeutet geschehen. Die vier Eckpunkte (x, y, z)
1-4 der gerade zu rekonstruierenden Schicht z auf die jeweilige Projektion i werden nach folgender Vorschrift auf vier Punkte (u,v)
1-4 auf dem Detektor abgebildet: Ein Punkt (u,v) auf dem Detektor
D, der zu einem Volumenpunkt (x,y,z) gehört, errechnet sich als
mit
- Mi:
- 3×4 Projektionsmatrix in homogenen Koordinaten für Projektion i
vd: Spaltenvektor in Detektorkoordinaten (r,s,t)
vv: Spaltenvektor in homogenen Volumen-Koordinaten (x, y, z, 1)
-
Die 4 Punkte (u,v)1-4 definieren eine nicht unbedingt rechteckige Textur aus dem Projektionsspeicher PD, die zu einer rechteckigen 2D-xy-Rekonstruktionsvolumenschicht gemappt bzw. gewarpt wird. Das soll bedeuten: flächenhaftes Interpolieren und Akkumulieren im 2D-xy-Speicher. Durch diese flächenhafte Parallelverarbeitung, mit der das ganze 3D-Volumen überstrichen wird, ergibt sich ein entscheidender Performancegewinn. Die gesamte (Vor-)Filterung z.B. mit exponentiellem Kern ist in der Pipeline des Datenprozessors DP in wenigen ms möglich, was bei einer konventionellen sequentiellen Realisierung ein Mehrfaches der Rekonstruktionszeit erfordert. Die Filterung kann auch innerhalb jeder Projektion, also jeder (u, v)-Ebene durchgeführt werden. Damit können die Berechnungen für Filterung und Rekonstruktion direkt nach der Akquisition der ersten Projektion gestartet werden und sind etwa zeitgleich mit der Akquisition fertig. Somit ermöglicht das vorgeschlagene Verfahren Echtzeit-Tomosynthese ohne Wartezeit, vor allem auch, weil die Tomosyntheserekonstruktion hinter der Visualisierung versteckt werden kann. Die komplette Rekonstruktion im Graphik-Rechenwerk hat zusätzlich vor allem auch den Vorteil, dass das Volumen V bereits für eine direkte Visualisierung geladen ist. Zu dieser Visualisierung kann erneut 2D oder 3D-Texture Mapping verwendet werden, sozusagen in umgekehrter Richtung, d.h. als Projektion vom Volumen auf eine Ebene, zum Beispiel Bildschirm, und es werden Echtzeit Video-Frameraten erreicht.