DE69937651T2 - System und Verfahren zur Strahlverfolgung - Google Patents

System und Verfahren zur Strahlverfolgung Download PDF

Info

Publication number
DE69937651T2
DE69937651T2 DE69937651T DE69937651T DE69937651T2 DE 69937651 T2 DE69937651 T2 DE 69937651T2 DE 69937651 T DE69937651 T DE 69937651T DE 69937651 T DE69937651 T DE 69937651T DE 69937651 T2 DE69937651 T2 DE 69937651T2
Authority
DE
Germany
Prior art keywords
voxel
interpolation
buffer
record
voxels
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69937651T
Other languages
English (en)
Other versions
DE69937651D1 (de
Inventor
Schmuel Akerman
Gad Miller
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Algotec Systems Ltd
Original Assignee
Algotec Systems Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Algotec Systems Ltd filed Critical Algotec Systems Ltd
Application granted granted Critical
Publication of DE69937651D1 publication Critical patent/DE69937651D1/de
Publication of DE69937651T2 publication Critical patent/DE69937651T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • G06T15/405Hidden part removal using Z-buffer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/06Ray-tracing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal

Description

  • Angezogene Anmeldungen
  • Die vorliegende Anmeldung beansprucht den Vorteil unter 119(e) aus der vorläufigen US-Patentanmeldung Nr. 60/075,519 mit gleichem Titel und am 23. Februar 1998 angemeldet, deren Offenbarung hiermit im Wege der Bezugnahme eingefügt wird.
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft die Darstellung von dreidimensionalen Bilddatensätzen und insbesondere das Raycasting.
  • Hintergrund der Erfindung
  • Dreidimensionale Datensätze werden gewöhnlich dargestellt, indem sie auf eine zweidimensionale Oberfläche projiziert werden. Zwei Haupttypen von Projektionssystemen werden verwendet: eine orthographische Projektion und eine perspektivische Projektion. Bei der perspektivischen Projektion wird ein einziger Blickpunkt angenommen, von dem Strahlen ausgehen und auf die Oberfläche treffen. In der orthographischen Projektion sind diese Strahlen stets senkrecht auf einer gemeinsamen Ebene.
  • Einige Methoden zum Rendern eines dreidimensionalen Datensatzes auf zweidimensionale Oberflächen verwenden einen Z-Puffer. Die Werte in dem Z-Puffer sind gleich der Länge von Strahlen von dem Projektionspunkt (der Projektionsebene) auf die Oberfläche. Ein Verfahren zum Generieren des Z-Puffers, nämlich Raycasting, wird angewendet, indem eine Vielzahl von Strahlen von ihrer Quelle (Punkt oder Ebene) verfolgt werden, bis sie auf einem soliden Voxel enden. Sobald ein Z-Puffer erzeugt ist, werden die Voxel auf den Z-Puffer projiziert und unter Verwendung von wohlbekannten Verfahren werden Belichtungsrechnungen durchgeführt, wie sie beschrieben sind in "Computer Graphics Principles and Practice, Second Edition in C", von James D. Foley, et al., Addison-Wesly, 1996, dessen Offenbarung hiermit durch Bezugnahme eingefügt wird.
  • Der Datensatz ist typischerweise ein binärer Datensatz, wenigstens für die Zwecke des Raycasting. Im Allgemeinen wird unterstellt, dass der Wert jedes Voxels eine diskrete Probe einer kontinuierlichen Raumfunktion im Zentrum dieses Voxels ist. Somit ist es erforderlich, einige Arten von Interpolationen durchzuführen, um zu bestimmen, ob der Strahl durch ein transparentes Voxel passiert oder ob er ein Grenz-Voxel erreicht hat. Unglücklicherweise sind Interpolationen hoher Qualität im Allgemeinen langsam. Zusätzlich sind einige Interpolationen hoher Qualität nicht glatt. Beispielsweise wird eine lange Serie von Werten ...010101010... im Allgemeinen nicht als Festwert 0,5 interpoliert. Im Allgemeinen wird nach der Interpolation eine gewisse Welligkeit der Daten übrig bleiben, was in einer welligen Interpolation resultiert. Dies ist in Konflikt mit dem allgemeinen Wunsch, dass der Z-Puffer keine Frequenzen der Ordnung über der Voxel-Dimension enthalten sollte, weil diese Frequenzen hauptsächlich Artefakte sind, hervorgerufen durch das begrenzte räumliche Abtasten des Volumens.
  • Kubische Interpolationen werden im Allgemeinen unter Verwendung von vier Datenpunkten und vier Bedingungen bestimmt. Zwei Sätze von Bedingungen, die aus dem Stand der Technik bekannt sind, sind:
    • (1) y(xn) = yn; für n = 1...4, wobei xn und yn bekannt sind und wobei x zwischen x2 und x3 liegt; und
    • (2) y(x2) = y2, y(x3) = y3, y'(x2) = (y3 – y1)/(x3 – x1) und y'(x3) = (y4 – y2)/(x4 – x2)
  • Zusammenfassung der Erfindung
  • Die Erfindung ist Gegenstand des beigefügten Verfahrensanspruchs 1. In einer bevorzugten Ausführungsform der Erfindung ist der Datensatz ein medizinischer Datensatz.
  • Kurze Beschreibung der Zeichnungen
  • Die vorliegende Erfindung wird klarer verstanden durch die folgende detaillierte Beschreibung der bevorzugten Ausführungsformen der Erfindung und durch die beigefügten Zeichnungen, in denen
  • 1A eine schematische Darstellung des Raycasting von einem Punkt aus ist;
  • 1B eine schematische Darstellung eines Z-Puffers ist, gebildet durch das Raycasting von 1A;
  • 2 ein Flowchart einer Raycasting-Methode in Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung ist;
  • 3 ein Flowchart eines Verfahrens der Strahllängenbestimmung in Übereinstimmung mit einem bevorzugten Ausführungsbeispiel der Erfindung ist;
  • 4 ein Flowchart eines Verfahrens zum Reduzieren der Zahl von Cast-Strahlen in Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung ist; und
  • 5 ein Diagramm ist, welches in Übereinstimmung mit einer bevorzugten Ausführungsform ein Verfahren zum Bestimmen eines Gradienten zeigt.
  • Detaillierte Beschreibung der bevorzugten Ausführungsformen
  • 1A ist eine schematische Darstellung des Raycasting von einem Punkt 10 aus durch ein Blickfeld 14. Eine Vielzahl von Strahlen 16 wird auf eine Oberfläche 12 gerichtet, die durch einen Datensatz definiert ist. 1B ist eine schematische Darstellung eines Z-Puffers 18, erzeugt durch das Raycasting von 1A.
  • 2 ist ein Flowchart einer Raycasting-Methode in Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung. Ein Strahl 16 ist ein Richtstrahl (20). Der Abstand zwischen dem Strahl und der nächsten Oberfläche (die Strahllänge) wird bestimmt (22) und in den Z-Puffer 18 eingegeben. Der Vorgang wird für eine Vielzahl von Strahlen (24) wiederholt.
  • Ein Aspekt von einigen Ausführungsformen der vorliegenden Erfindung bezieht sich auf die Reduzierung der Rechenkomplexität des Raycastens. 3 ist ein Flowchart eines Verfahrens der Längenbestimmung in Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung. In dem Verfahren von 3 wird der Strahl mit einer steigenden Genauigkeit genau auf einen Schnittpunkt zwischen einem soliden Voxel und dem Richtstrahl gerichtet., Wenn der Schnittpunkt bei einem höheren Genauigkeitsniveau nicht gefunden wird, beispielsweise weil er nicht real ist, wird das Genauigkeitsniveau vorzugsweise reduziert und die Suche nach einem Schnittpunkt wird unter Verwendung des geringeren Genauigkeitsniveaus fortgesetzt. In einer bevorzugten Ausführungsform der Erfindung wird Information über den Datensatz benutzt, um die Rechenzeit weiter zu reduzieren. Beispielsweise, wenn ein minimaler Abstand zwischen dem Punkt 10 und dem nächsten soliden Voxel der Oberfläche 12 bekannt ist, dann ist dies die Untergrenze der Länge eines jeden Strahls.
  • Das Verfahren wie in 3 beschrieben ist eine Automatik, die mit der aktuellen Position entlang eines Richtstrahls endet, sobald im höchsten Genauigkeitsniveau (30) ein Schnittpunkt gefunden wurde. In einer bevorzugten Ausführungsform der Erfindung wird das benutzte höchste Genauigkeitsniveau entsprechend der Länge des Strahls bestimmt. Somit werden entfernte Schnittpunkte vorzugsweise mit einer geringeren Genauigkeit bestimmt als nähere Schnittpunkte, da die Genauigkeit bei der Bestimmung ferner Schnittpunkte die Bildqualität in einem geringeren Grad beeinflusst als nähere Schnittpunkte. In einer bevorzugten Ausführungsform der Erfindung ist der Voxel-Datensatz (oder ein interessierender Teil desselben) mit einer falschen Grenze von soliden Voxels umgeben. Wenn ein Schnittpunkt bestimmt wird, wird eine Probe gemacht, um zu sehen, ob der Schnittpunkt real ist oder ob er durch einen Richtstrahl hervorgerufen wird, der den Voxel-Datensatz verlässt und eines der "falschen" Voxels schneidet. Zusätzlich oder alternativ zu den falschen Voxels, die den Voxel-Datensatz umschließen, können die falschen Voxels in den Voxel-Datensatz eingefügt sein, beispielsweise um Teile des Voxel-Datensatzes einzuschließen und/oder zu maskieren. Vorzugsweise erfüllen die Positionen der falschen Voxels mathematische Beziehungen, so dass es einfach ist festzustellen, ob ein Voxel bei einer bestimmten Position ein falsches Voxel ist. Alternativ können die falschen Voxel durch einen Abgleich gegen ein spezielles Bit-Volumen entdeckt werden. Es sollte angemerkt werden, dass wegen der Interpolation eine Voxel-Position durch eine kleine Zahl von Voxels verdeckt sein kann, so dass, wenn ein falsches Voxel nahe zu einem realen Voxel positioniert ist, die Bestimmung des Voxel/Schnittpunkttyps vorzugsweise mit einem höheren Genauigkeitsniveau durchgeführt wird. Vorzugsweise ist die Bestimmung, ob eine aktuelle Position innerhalb eines realen soliden Voxels oder innerhalb eines falschen soliden Voxels ist, eine Mehrheitsentscheidung, basierend auf der Zahl von benachbarten Voxels von jedem Typ.
  • In einer bevorzugten Ausführungsform der Erfindung wird ein Zähler auf Null (34) gesetzt, so dass es möglich ist, die Zeit zu begrenzen, die bei einem hohen Genauigkeitsniveau verbracht wird. Die Richtung des Fortschreitens entlang des Strahls ist entweder auf vorwärts oder auf rückwärts gesetzt, abhängig davon, ob die aktuelle Position innerhalb oder außerhalb (38) eines soliden Voxels ist. Da eine Position entlang des Strahls selten exakt in einem Voxel-Zentrum ist, beruht die Entscheidung, ob eine Position innerhalb eines soliden Voxels oder außerhalb desselben ist, gewöhnlich auf einer Interpolation zwischen benachbarten Voxels. Im Allgemeinen wird die Position, wenn der Wert der Interpolation oberhalb eines bestimmten Schwellwerts liegt, wie z.B. 0,5, als "innerhalb" betrachtet; anderenfalls ist sie "außerhalb". Vorzugsweise wird die Richtung, wenn die Position innerhalb (außerhalb) ist, auf rückwärts (vorwärts) gesetzt.
  • Die Position wird dann in der gewählten Richtung entlang dem Richtstrahl einen Schritt (38) vorgerückt. Vorzugsweise ist die Schrittgröße bei der aktuellen Auflösung kleiner als ein Voxel, um das Übersehen von Schnittpunkten zu vermeiden. Jedoch kann die maximale Schrittgröße von dem verwendeten Interpolationsschema abhängen. Beispielsweise kann, wenn das Interpolationsschema "innerhalb" entscheidet, wenn alle benachbarten Voxels (26 für parallelepipedische Voxels) solide sind, die Schrittgröße größer gemacht werden als ein Voxel. In einer bevorzugten Ausführungsform der Erfindung wird der Datensatz neu abgetastet und/oder auf die gewünschte Auflösung und/oder Schrittweite interpoliert. Alternativ werden die Voxel-Werte jeweils aus dem Original-Datensatz berechnet.
  • Wenn die Richtung vorwärts und die aktuelle Position "innerhalb" ist oder wenn die Richtung rückwärts und die aktuelle Position "außerhalb" ist, wird vorzugsweise eine genauere Prüfung der Lage der Position durchgeführt, um zu bestimmen, ob hier ein Schnittpunkt zwischen einem Strahl und einem soliden Voxel (40) ist. Das Genauigkeitsniveau wird erhöht (42) und der Vorgang wird bei diesem höheren Genauigkeitsniveau (30) wiederholt. Vorzugsweise wird die aktuelle Position einen Schritt vor der Erhöhung des Genauigkeitsniveaus zurückverfolgt. Wenn das Genauigkeitsniveau nicht erhöht wird, wird der Vorgang fortgesetzt durch Weitergehen um einen weiteren Schritt (38) mit demselben Genauigkeitsniveau. Optional wird ein Zähler verwendet, um die Zahl der mit jedem Genauigkeitsniveau durchgeführten Schritte zu verfolgen. Wenn zu viele Schritte erforderlich sind, ist es für gewöhnlich wünschenswert, zu einem geringeren Genauigkeitsniveau zurückzukehren, bei dem die Schnittpunktbestimmung schneller ist. Somit wird der Zähler erhöht (44). Wenn der Zähler oberhalb eines Schwellwertes (46) ist, dann wird das Genauigkeitsniveau verringert (48) und der Vorgang wird mit diesem geringeren Genauigkeitsniveaus (30) wiederholt. Anderenfalls wird der Vorgang wiederholt, indem bei dem aktuellen Genauigkeitsniveau (38) ein Schritt weiter gegangen wird.
  • In Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung ist die Schrittweite (als Prozentsatz der Voxel-Größe bei der aktuellen Auflösung) eine Funktion des Genauigkeitsniveaus. Beispielsweise kann die Schrittweite bei einem geringen Genauigkeitsniveau die Hälfte der Voxel-Größe für dieses Niveau sein, während bei einem höheren Genauigkeitsniveau die Schrittweite 1/10 der Voxel-Größe sein kann. In einigen bevorzugten Ausführungsformen der Erfindung haben unterschiedliche Genauigkeitsniveaus auch unterschiedliche Voxel-Größen. Alternativ oder zusätzlich ist die Schrittweite eine Funktion des Abstandes vom Ausgangspunkt. Vorzugsweise ist der Schritt größer, wenn der Richtstrahl weiter vom Ausgangspunkt ist.
  • In einer bevorzugten Ausführungsform der Erfindung wird die Schrittweite so gewählt, dass die Genauigkeit der Gradientenbestimmung für alle Strahlen im Wesentlichen konstant ist. Es sollte beachtet werden, dass der Gradient eine Funktion des Verhältnisses zwischen den Strahllängen ist (wird unten genauer dargestellt). Somit wird für Voxels, welche verglichen mit anderen Voxels doppelt so weit vom Ausgangspunkt entfernt sind, nur die halbe Strahllängengenauigkeit verlangt, so dass dieses Verhältnis mit einer konstanten Präzision bestimmt wird.
  • Ein anderer Aspekt von anderen Ausführungsformen der vorliegenden Erfindung bezieht sich auf die Reduzierung der Komplexität der Interpolation in Abhängigkeit von der aktuellen Genauigkeit des Raycasting. Vorzugsweise steht die Qualität und/oder Komplexität der Interpolation im Zusammenhang mit dem Genauigkeitsniveau. Vorzugsweise benutzen höhere Genauigkeitsniveaus Interpolationsschemata höherer Qualität als geringere Genauigkeitsniveaus. Vorzugsweise wird die Raycasting-Methode so optimiert, dass bei jedem Genauigkeitsniveau etwa gleiche Zeiten verbracht werden. Im Allgemeinen können, da bei den höheren Genauigkeitsniveaus weniger Interpolationen durchgeführt werden, langsamere Interpolationsschemata angewendet werden als bei den niedrigeren Genauigkeitsniveaus. Langsame Schemata beinhalten solche, die weniger Artefakte haben, glatter und/oder langsamer sind. In Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung werden die folgenden drei Interpolationsschemata benutzt:
    • (a) nächster Nachbar;
    • (b) lineare Interpolation; und
    • (c) kubische Interpolation.
  • In einer anderen bevorzugten Ausführungsform der Erfindung können andere Interpolationsverfahren zusätzlich oder anstelle der zuvor genannten Verfahren benutzt werden. Zusätzlich kann die (rechnerische) Komplexität eines Interpolationsschemas beeinflusst werden durch die Verwendung von Integer-, Fest- und/oder Fließkomma-Darstellungen variabler Präzision. Alternativ oder zusätzlich können parametrische Interpolationsschemata benutzt werden. Beispielsweise kann eine Nachbar-Interpolation nur auf 6 oder 18 Nachbarn blicken statt auf 26, d.h. Nachbarn mit gemeinsamen Seiten, Linien oder Ecken. Lineare Interpolation kann ein-, zwei- oder dreidimensional sein und kann ebenso mit einer unterschiedlichen Zahl von Nachbarn benutzt werden.
  • In einer bevorzugten Ausführungsform der Erfindung bildet eine Hierarchie von Interpolationsverfahren stets Fehler in derselben Richtung. In einem Beispiel irren sich die Interpolationsmethoden auf der Seite, dass sie falsche Positive liefern, was Extra-Rechnungen bedeutet, eher als falsche Negative, was übersehene Schnittpunkte bedeuten kann. Beispielsweise kann anstelle eines einfachen nächsten Nachbarn ein Voxel als solid betrachtet werden, wenn alle seine nahe liegenden Nachbarn solid sind. In einer bevorzugten Ausführungsform der Erfindung wird einem Voxel, wenn ein Datensatz mit geringer Auflösung erzeugt wird, ein Wert "1" (solid) zugeordnet werden, selbst wenn nur ein einziges seiner Voxel solid ist. Somit wird selbst eine einzige Schicht von soliden Voxeln (in einem Datensatz mit hoher Auflösung) noch als Grenze wirken (wenn als Datensatz mit geringer Auflösung betrachtet). Alternativ kann eine von Eins abweichende Schwellwertzahl von soliden Nachbar-Voxeln benutzt werden.
  • In einer bevorzugten Ausführungsform der Erfindung müssen die benutzten Interpolationen in einer progressiven Weise im Hinblick auf die Position der Schnittpunkte entlang des Strahls auf Fehler eingerichtet sein. Wenn die Interpolation mit geringer Qualität anzeigt, dass ein Schnittpunkt bei einer Position A ist und die nächste Interpolation mit höherer Qualität anzeigt, dass der Schnittpunkt beim Punkt B ist und die dritte Interpolation mit höherer Qualität anzeigt, dass der Schnittpunkt beim Punkt C ist, dann liegen A, B und C in einer linearen Anordnung.
  • In einer bevorzugten Ausführungsform der Erfindung wird der Zähler (benutzt, um einen Wechsel des Genauigkeitsniveaus anzuzeigen) angezeigt, basierend auf dem Typ der Interpolation, die für die Daten bei jedem Genauigkeitsniveau benutzt wurde. In einem Beispiel kann eine solche Entscheidung auf der statistischen Wahrscheinlichkeit eines Schnittpunkts, der an einem Ort bestimmt wurde, basieren, wobei ein erster Interpolationstyp für ein erstes Genauigkeitsniveau benutzt wird und der nicht real oder nicht entlang dem Strahl versetzt ist, wobei ein zweiter Interpolationstyp für ein zweites Genauigkeitsniveau benutzt wird. Zusätzlich oder alternativ kann eine solche Entscheidung auf dem Effekt des Wechsels der Schrittgröße und/oder der Datensatzauflösung zwischen Genauigkeitsniveaus basieren. Alternativ oder zusätzlich kann der Zähler auf einem erwarteten Betrag des Versatzes der Schnittpunktorte, wenn die Genauigkeitsniveaus wechseln, basieren.
  • Wie hier benutzt, kann im Hinblick auf das Verfahren der Schnittpunktfindung ein Genauigkeitsniveau durch viele Faktoren bestimmt sein, vorzugsweise allein oder in Kombination durch: die Auflösung des Datensatzes (Voxel-Größe und/oder -Form), die Schrittgröße, Interpolationstyp und/oder -qualität, die Präzision der arithmetischen Operationen. In einigen bevorzugten Ausführungsformen der Erfindung kann die Qualität einer Interpolation in Relation stehen zu der Zahl von Nachbarn, die für die Interpolation benutzt werden. Vorzugsweise wird, wenn das Genauigkeitsniveau um ein Niveau erhöht oder verringert wird, nur einer der vorgenannten Faktoren geändert, beispielsweise nur die Schrittgröße oder nur die Voxel-Datensatzgröße. Vorzugsweise sind die Vergrößerungen der Datensatzauflösung und Schrittgröße Vielfache von zwei, jedoch können auch andere Multiplikationsfaktoren benutzt werden, vorzugsweise basierend auf einer statistischen Analyse.
  • Ein weiterer Aspekt einiger Ausführungsformen der vorliegenden Erfindung bezieht sich auf die Reduzierung der Zahl von Richtstrahlen. 4 ist ein Flowchart eines Verfahrens zum Reduzieren der Zahl von Richtstrahlen in Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung. Statt den gesamten Z-Puffer bei einer einzigen räumlichen Auflösung zu übernehmen, wird die Auflösung vorzugsweise an die Varianz in jedem Teil des Z-Puffers angepasst. Somit werden Teile des Z-Puffers, die eine geringe Varianz haben, unter Verwendung von weniger Raycastings übernommen. In Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung wird der ganze Z-Puffer unter Verwendung eines großen Strahlabstand (50) mittels Raycasting durchlaufen. Der gesamte Z-Puffer wird dann in einer höheren räumlichen Auflösung geprüft, vorzugsweise mit doppelter räumlicher Auflösung des Raycastings, so dass dreimal so viele Z-Puffer-Elemente geprüft werden als mittels Raycasting durchlaufen wurden. Für jedes leere Z-Element in der höheren Auflösung, d.h. es wurde kein Strahl darauf gerichtet, wird der Gradient aus den Z-Werten seiner Nachbarn (52) geschätzt. Wenn sein Gradient oberhalb eines vorher bestimmten Schwellwertes (54) ist, wird er für jedes Element wieder gerichtet (56). Anderenfalls wird er durch Interpolation zwischen seinen Nachbarn (55) geschätzt. Das Verfahren wird dann vorzugsweise wiederholt, bis entweder alle Z-Elemente einen Gradienten unterhalb des Schwellwerts haben oder eine maximale wünschenswerte Raycasting-Auflösung für all diese Z-Elemente mit dem hohen Gradienten erreicht wurde.
  • In einer bevorzugten Ausführungsform der Erfindung wird ein Recasting unter Verwendung von höherer Genauigkeit als in den vorausgegangenen Wurfschritten durchgeführt.
  • In einer bevorzugten Ausführungsform der Erfindung ist die Dichte der Raycasting- und Z-Puffer Prüfung über den gesamten Z-Puffer gleich. Alternativ haben unterschiedliche Abschnitte des Z-Puffers wie die, die ein mehr klinisches Interesse und/oder eine langsame Bewegung in dem finalen Blickfeld haben, eine höhere Dichte der Prüfung und/oder des Raycastings. Vorzugsweise werden die Strahlabstände für jeden Durchgang so gewählt, dass drei Durchgänge erforderlich sind, um jedes Element im Z-Puffer zu prüfen, jedoch können andere Zahlen von Durchgängen ebenso benutzt werden.
  • In Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung wird der gesamte Z-Puffer wiederholt mittels Raycasting durchlaufen. Alternativ oder zusätzlich wird jeder Abschnitt des Z-Puffers mittels Raycasting durchlaufen, bis eine gewünschte räumliche Auflösung und/oder Wertegenauigkeit des Z-Elements erreicht ist. In einer bevorzugten Ausführungsform der Erfindung wird das Raycasting bei einem Teil des Z-Puffers gestartet. Nachfolgend werden Strahlen gerichtet, die diesen Abschnitt umgeben, mit einem Abstand, geschätzt durch Extrapolation und/oder Interpolation von zuvor mittels Raycasting durchlaufenen Abschnitten des Puffers. Vorzugsweise wird ein Abschnitt des Z-Puffers mittels Raycasting durchlaufen, wenn der lokale Gradient größer ist als ein vorher bestimmter Betrag. Wie bei der Interpolation von Voxel-Werten werden in einigen bevorzugten Ausführungsformen der Erfindung unterschiedliche Methoden verwendet, um die Gradienten in unterschiedlichen Stufen zu schätzen. In einer bevorzugten Ausführungsform der Erfindung ist die Qualität der Schätzung abhängig vom Abstand des Raycastings, d.h. von der aktuellen Genauigkeit der Übernahme des Z-Puffers. Alternativ oder zusätzlich kann die Zahl der für die Schätzung benutzten benachbarten Z-Puffer ebenso variiert werden, beispielsweise unter Verwendung von nur 2, 4 oder 8 Nachbarn. In unterschiedlichen Durchgängen können unterschiedliche Nachbarn für die Schätzung benutzt werden. Zusätzlich kann die Schätzung variiert werden, indem die Schätzung bi-linear oder bi-kubisch gemacht wird. Alternativ kann der lokale Gradient aus den Nachbarn auf einer Seite des Z-Puffer-Elements extrapoliert werden.
  • In einer bevorzugten Ausführungsform der Erfindung wird der Voxel-Datensatz mittels Raycasting durchlaufen mit unterschiedlichen Voxel-Größen, mit unterschiedlichen Raycasting-Schritten, so dass unterschiedliche Z-Puffer-Auflösungen, die unterschiedliche Strahlabstände von Z-Puffer-Elementen repräsentieren, übernommen werden.
  • Wie anerkannt werden kann, können die zuvor beschriebenen Methoden auf Teile des Z-Puffers und/oder Teile des Datensatzes angewandt werden. Vorzugsweise werden Teile des Datensatzes, die vom Ausgangspunkt weiter entfernt sind, mit geringeren Auflösungen gecastet.
  • In einer bevorzugten Ausführungsform der Erfindung wird derselbe Gradienten-Schwellwert für alle Durchgänge auf dem Z-Puffer benutzt. Alternativ wird ein unterschiedlicher Gradient für die verschiedenen Durchgänge benutzt. Im Allgemeinen bestimmt der Wert des Gradienten-Schwellwerts den Prozentsatz von Z-Puffer-Elementen, die bei jedem Durchgang mittels Raycasting durchlaufen werden, und ist somit ein Ziel eines Zeit-Qualität-Kompromisses. Vorzugsweise werden diese Schwellwerte durch eine statistische Analyse des Datensatzes und/oder durch Prüfen des teilweise gefüllten Z-Puffers bestimmt, um die statistischen Eigenschaften des erzeugten Bildes zu prüfen. Alternativ oder zusätzlich kann das Verhältnis des Anstiegs in der Strahldichte unterschiedlich sein, wenn zwischen einem ersten Durchgang und einem zweiten Durchgang gewechselt wird und wenn zwischen einem zweiten Durchgang und einem dritten Durchgang gewechselt wird.
  • Ein weiterer Aspekt einiger bevorzugten Ausführungsformen der Erfindung ist, dass es möglich ist, zwischen Zeit und Qualität einen Kompromiss zu schließen, indem das Raycasting einfach gestoppt wird. Somit kann Echtzeit-Rendern durchgeführt werden, selbst wenn eine zufällige unerwartete Prozessbelastung auf dem Computer auftritt, der das Rendern durchführt. Die Strahllängenfindungsmethode hält einen angenäherten Ort eines Schnittpunkts von der Zeit aufrecht, zu der sie zuerst einen Schnittpunkt findet. Die Z-Puffer-Erzeugungsmethode hält in jedem Augenblick einen teilweise gefüllten Z-Puffer aufrecht. Ferner kann, wenn Extra-Zeit verfügbar ist, die Qualität des Raycastings erhöht werden durch Raycasten in Z-Puffer-Elemente, die interpoliert wurden, und/oder durch Bestimmen eines präziseren Schnittpunktortes für Strahlen, für die zuvor eine geringere als die maximale Genauigkeit bestimmt worden war. Vorzugsweise werden die Z-Puffer-Elemente, die mittels Raycasting durchlaufen werden sollen, ausgewählt, indem der Schwellwert für den Gradienten geändert wird.
  • 5 ist ein Diagramm, welches in Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung ein Verfahren zum Bestimmen eines Gradienten zwischen zwei Z-Puffer-Elementen in einer perspektivischen Projektion zeigt. v ➝ ist ein Vektor, der einen Strahl repräsentiert, der auf ein Z-Puffer-Element 62 gecastet wurde. w ➝ ist ein Vektor, der einen Offset zu einem benachbarten (aber nicht notwendigerweise angrenzenden) Z-Puffer-Element 60 repräsentiert. Typischerweise ist ‖w ➝‖ << ‖w ➝‖. Der Strahl auf ein Z-Puffer-Element 60 ist die Summe v ➝ + w ➛.
  • Der Winkel zwischen den zwei gecasteten Strahlen ist gemäß einer Annäherung erster Ordnung:
    Figure 00090001
  • Durch Bezeichnen der Länge der beiden Strahlen (auf die Voxels 62 und 60) als I1 bzw. I2 ist der Gradient (I1 – I2)/(Δα·(I1 + I2)/2).
  • Wenn die benutzte Projektion eine orthographische Projektion ist, ist unter der Annahme, dass v ➝ + w ➛ und v ➝ senkrecht auf der Projektionsebene stehen, der Gradient (I1 – I2)/‖w ➝‖.
  • Ein anderer Aspekt einiger Ausführungsformen der vorliegenden Erfindung bezieht sich auf ein Interpolationsverfahren, das Glätten einschließt. Die Anwendung der glättenden Interpolation erfordert im Allgemeinen dieselbe Anzahl von Schritten, wie es eine nicht glättende Interpolation tut. Somit ist, wenn Glätten verlangt wird, eine glättende Interpolations-Methode zu wünschen. Zusätzlich basiert die Interpolation auf vier Werten y1, y2, y3 und y4 für vier gleich beabstandete Punkte (entlang einer eindimensionalen Linie), bezeichnet als x1, x2, x3 und x4. Der zu interpolierende Punkt x liegt zwischen x2 und x3. Ein kubisches Polynom y(x) wird gewählt, um so vier Bedingungen zu erfüllen:
    Figure 00100001
  • In dieser bevorzugten Ausführungsform der Erfindung wird das Glätten nur durch die beiden ersten Bedingungen angewendet. Jedoch kann in anderen bevorzugten Ausführungsformen der Erfindung das Glätten durch jede beliebige Zahl der Bedingungen angewendet werden, beispielsweise alle vier Bedingungen, nur eine Bedingung oder jeweils zwei Bedingungen. Zusätzlich oder alternativ kann ein unterschiedlicher Betrag und/oder Typ des Glättens durch unterschiedliche Bedingungen angewendet werden. Als ein Resultat kann die Interpolation asymmetrisch sein. Es sollte also anerkannt werden, dass Interpolationen höherer Ordnung ebenso Glättung einschließen können. Jedoch wird für die meisten Anwendungen die kubische Interpolation als ausreichend angesehen. Im Wege eines Beispiels beinhalten andere mögliche Glättungsbedingungen y(x2) = (y1 + y2 + y3)/3 und y'(x2) = ((y4 + y3 + y2)/3 – y1)/(x3 – x1).
  • Es sollte anerkannt werden, dass die Werte, an denen die Interpolation durchgeführt wird, als gepackte Bit-Werte gespeichert werden können. Somit ist es im Allgemeinen nicht praktikabel, die Bit-Daten zuerst zu glätten und dann die Interpolationen durchzuführen. Durch Ausführen des Glättens als Teil der Interpolation können beachtliche Einsparungen beim Speicher und/oder den Rechenschritten erreicht werden.
  • Wenn die Interpolation in mehr als einer Dimension angewendet wird, werden die Dimensionen vorzugsweise zusammengefaltet. So lange wie die Interpolation in den interpolierten Werten linear ist, ist die Ordnung, in die die Dimensionen zusammengefaltet werden, nicht wichtig. In einem Beispiel, wo die Interpolation auf einen dreidimensionalen Raum angewendet wird, wird ein 4 × 4 × 4-Kubus durch die Anwendung von 16 Interpolationen auf ein 4 × 4-Quadrat zusammengefaltet. Das 4 × 4-Quadrat wird durch die Anwendung von 4 Interpolationen auf eine 4-lange Linie zusammengefaltet, und die Linie wird einmal interpoliert, um den gewünschten Wert zu bestimmen.
  • Es sollte anerkannt werden, dass, wenn die Zahl von Ausgangselementen, zwischen denen die Interpolation durchgeführt wird, keine Potenz von vier ist, andere Interpolationsmethoden angewendet werden können. Beispielsweise, wenn ein 2 × 4 Array interpoliert wird, können zwei der oben beschriebenen Interpolationen angewendet werden, gefolgt von einer einfachen Durchschnittsbildung und/oder einer linearen Interpolation. Alternativ können vier lineare Interpolationen angewendet werden, gefolgt von einer einzigen der oben beschriebenen kubischen Interpolationen.
  • In einer bevorzugten Ausführungsform der Erfindung wird die Interpolation unter Verwendung einer Nachschlagetabelle durchgeführt. Eine solche Tabelle ist insbesondere im Hinblick auf den Speicherplatz beim ersten Zusammenfalten der Dimensionen effizient, da nur vier Bits benötigt werden, um all die Möglichkeiten der interpolierten Voxels aufzuzählen. Im Allgemeinen, wenn intensive Aufgaben rechnerisch durchgeführt werden, ist es wünschenswert, Nachschlagetabellen zu verwenden statt Rechnungen durchzuführen, wenn möglich.
  • In einer bevorzugten Ausführungsform der Erfindung wird die Glättungsinterpolation durchgeführt, ohne die Daten zu entpacken. Dies wird vorzugsweise erreicht durch Durchführen der Interpolation zuerst in der Richtung, in der die Bits gepackt sind (z.B. die x-Richtung). Somit kann eine Gruppe von Voxels, wobei eine Nachschlagetabelle benutzt wird, direkt in einen Wert konvertiert werden, der den interpolierten Wert (in einer Dimension) repräsentiert. In einer bevorzugten Ausführungsform der Erfindung wird eine Gruppe von vier Bits, entsprechend vier Voxeln, aus den gepackten Daten extrahiert und mit der Nachschlagetabelle verglichen, vorzugsweise als Vier-Bit-Wert. Alternativ umfasst die Nachschlagetabelle einen Index, der den Ort der relevanten vier Bits in den gepackten Daten repräsentiert.
  • Es sollte beachtet werden, dass die oben beschriebenen Raycasting-Methoden, wie hier zuvor beschrieben, viele Eigenschaften besitzen, von denen nicht alle in allen Ausführungsformen der Erfindung ausgeführt werden müssen. Eher werden verschiedene Ausführungsformen der Erfindung nur einige der oben beschriebenen Techniken, Eigenschaften oder Verfahren und/oder Kombinationen davon benutzen. Zusätzlich sollen, obwohl die obige Beschreibung auf Methoden fokussiert ist, Vorrichtungen zum Durchführen dieser Methoden ebenso als im Schutzumfang der Erfindung liegend betrachtet werden.
  • Es sollte auch beachtet werden, dass die oben beschriebenen Methoden im Allgemeinen nicht durch die Form der Voxels begrenzt sind, beispielsweise können sie auf parallelepipedische Voxels angewendet werden.
  • In Übereinstimmung mit einer bevorzugten Ausführungsform der Erfindung werden einige der oben genannten Methoden in Richtung auf Raytracing angewendet, beispielsweise zum Finden von Schnittpunkten und/oder zum Interpolieren von Farbwerten. Jedoch sollte bemerkt werden, dass hier eine bedeutende Reduktion der Bildqualität stattfinden kann, verglichen mit regulärem Raytracing, speziell beim Bestimmen von spiegelnden Reflexionen, da einige der obigen Methoden geeignet sind für Gebiete mit geringem Kontrast, getrennt durch Grenzen mit hohem Kontrast, während spiegelnde Reflexionen typischerweise Gebiete mit hohem Kontrast sind.
  • Ein Fachmann wird anerkennen, dass die folgende Erfindung nicht beschränkt ist auf das, was bisher beschrieben worden ist. Die vorliegende Erfindung ist vielmehr nur durch die folgenden Patentansprüche begrenzt.

Claims (9)

  1. Verfahren zum Bestimmen eines Z-Puffer-Wertes zum Abtasten eines Voxel-Datensatzes unter Verwendung eines Z-Puffers, umfassend: (a) Addieren einer Vielzahl von zusätzlichen, nicht bildhaften, soliden Voxels zu dem genannten Datensatz; (b) Richten wenigstens eines Strahls auf den genannten Voxel-Datensatz, und zwar in Richtung auf wenigstens einen der genannten zusätzlichen Voxels, (c) Bestimmen eines Schnittpunkts zwischen dem genannten Strahl und einem soliden Voxel des genannten Datensatzes; (d) Bestimmen, ob der solide Voxel an diesem Schnittpunkt einer der zusätzlichen Voxel oder ein Voxel des Voxel-Datensatzes ist und (e) Erweitern des Z-Puffers mit einem Wert entsprechend der Bestimmung des Voxel-Typs.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die zusätzlichen soliden Voxels den genannten Voxel-Datensatz einschließen.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass der genannte Datensatz ein medizinischer Datensatz ist.
  4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die zusätzlichen soliden Voxels Teile des genannten Voxel-Datensatzes maskieren.
  5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die Positionen der genannten zusätzlichen soliden Voxels eine mathematische Beziehung erfüllen und dass das Voxel-Bestimmen (d) ein Bestimmen unter Verwendung der genannten mathematischen Beziehung umfasst.
  6. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass das Voxel-Bestimmen (d) ein Abgleichen gegen ein Bit-Volumen umfasst.
  7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass das Voxel-Bestimmen (d) mit höherer Genauigkeit durchgeführt wird als das Schnittpunkt-Bestimmen (c).
  8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass das Voxel-Bestimmen (d) eine Mehrheitsentscheidung umfasst, basierend auf einer Anzahl von benachbarten Voxels von jedem Typ, zusätzlich oder Voxel-Datensatz.
  9. Vorrichtung, umfassend eine Recheneinheit, die in der Lage ist, das Verfahren nach einem der Ansprüche 1 bis 8 auszuführen.
DE69937651T 1998-02-23 1999-02-18 System und Verfahren zur Strahlverfolgung Expired - Fee Related DE69937651T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US7551998P 1998-02-23 1998-02-23
US75519 1998-02-23

Publications (2)

Publication Number Publication Date
DE69937651D1 DE69937651D1 (de) 2008-01-10
DE69937651T2 true DE69937651T2 (de) 2008-06-19

Family

ID=22126308

Family Applications (2)

Application Number Title Priority Date Filing Date
DE69916808T Expired - Fee Related DE69916808T2 (de) 1998-02-23 1999-02-18 Verfahren und system zur strahlverfolgung
DE69937651T Expired - Fee Related DE69937651T2 (de) 1998-02-23 1999-02-18 System und Verfahren zur Strahlverfolgung

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE69916808T Expired - Fee Related DE69916808T2 (de) 1998-02-23 1999-02-18 Verfahren und system zur strahlverfolgung

Country Status (7)

Country Link
US (1) US6525729B1 (de)
EP (1) EP1058914B1 (de)
JP (1) JP2002504729A (de)
AU (1) AU758086B2 (de)
CA (1) CA2321050A1 (de)
DE (2) DE69916808T2 (de)
WO (1) WO1999042955A1 (de)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7349563B2 (en) * 2003-06-25 2008-03-25 Siemens Medical Solutions Usa, Inc. System and method for polyp visualization
US8416242B1 (en) 2004-05-14 2013-04-09 Nvidia Corporation Method and system for interpolating level-of-detail in graphics processors
US8432394B1 (en) 2004-05-14 2013-04-30 Nvidia Corporation Method and system for implementing clamped z value interpolation in a raster stage of a graphics pipeline
US7079156B1 (en) * 2004-05-14 2006-07-18 Nvidia Corporation Method and system for implementing multiple high precision and low precision interpolators for a graphics pipeline
US8411105B1 (en) 2004-05-14 2013-04-02 Nvidia Corporation Method and system for computing pixel parameters
US7538773B1 (en) 2004-05-14 2009-05-26 Nvidia Corporation Method and system for implementing parameter clamping to a valid range in a raster stage of a graphics pipeline
US7595806B1 (en) 2004-08-03 2009-09-29 Nvidia Corporation Method and system for implementing level of detail filtering in a cube mapping application
US9024949B2 (en) * 2004-10-13 2015-05-05 Sony Corporation Object representation using distance functions
US20100168890A1 (en) * 2005-03-24 2010-07-01 Ex One Corporation Three-Dimensional Data Extraction Using Ray Casting
AU2006261967B2 (en) * 2005-06-23 2010-09-16 Mental Images Gmbh Real-time precision ray tracing
US7333107B2 (en) * 2005-08-18 2008-02-19 Voxar Limited Volume rendering apparatus and process
US7675517B2 (en) * 2006-08-03 2010-03-09 Siemens Medical Solutions Usa, Inc. Systems and methods of gradient assisted volume rendering
US8441497B1 (en) 2007-08-07 2013-05-14 Nvidia Corporation Interpolation of vertex attributes in a graphics processor
US8452052B2 (en) * 2008-01-21 2013-05-28 The Boeing Company Modeling motion capture volumes with distance fields
US8442306B2 (en) * 2010-08-13 2013-05-14 Mitsubishi Electric Research Laboratories, Inc. Volume-based coverage analysis for sensor placement in 3D environments
BR112013012676A2 (pt) 2010-11-25 2016-08-23 Koninkl Philips Electronics Nv aparelho de projeção direta para realizar uma projeção direta através de uma imagem, aparelho de reconstrução para reconstruir iterativamente uma imagem de uma região de interesse a partir dos dados de projeção adquiridos, aparelho de aquisição de imagens para gerar uma imagem de uma região de interesse, método de projeção direta para realizar uma projeção direta através de uma imagem e programa de computador para realizar uma projeção direta através de uma imagem
US8379955B2 (en) 2010-11-27 2013-02-19 Intrinsic Medical Imaging, LLC Visualizing a 3D volume dataset of an image at any position or orientation from within or outside
US10726608B2 (en) * 2016-11-23 2020-07-28 3D Systems, Inc. System and method for real-time rendering of complex data
US20190385372A1 (en) * 2018-06-15 2019-12-19 Microsoft Technology Licensing, Llc Positioning a virtual reality passthrough region at a known distance
WO2021101844A1 (en) 2019-11-18 2021-05-27 Magic Leap, Inc. Mapping and localization of a passable world
USD952673S1 (en) 2019-12-09 2022-05-24 Magic Leap, Inc. Portion of a display screen with transitional graphical user interface for guiding graphics
JP2021157329A (ja) * 2020-03-25 2021-10-07 富士フイルムビジネスイノベーション株式会社 情報処理装置、及び情報処理プログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5113357A (en) * 1989-05-18 1992-05-12 Sun Microsystems, Inc. Method and apparatus for rendering of geometric volumes
JPH07501162A (ja) 1991-06-28 1995-02-02 リム ホン リップ 3dコンピュータグラフィック用可視性計算の改善
US5458111A (en) 1994-09-06 1995-10-17 William C. Bond Computed tomographic colonoscopy
US5611025A (en) 1994-11-23 1997-03-11 General Electric Company Virtual internal cavity inspection system
US5959631A (en) * 1996-08-28 1999-09-28 Hewlett-Packard Company Hardware and software for the visualization of three-dimensional data sets
US6313841B1 (en) * 1998-04-13 2001-11-06 Terarecon, Inc. Parallel volume rendering system with a resampling module for parallel and perspective projections

Also Published As

Publication number Publication date
CA2321050A1 (en) 1999-08-26
EP1058914B1 (de) 2004-04-28
WO1999042955A1 (en) 1999-08-26
DE69937651D1 (de) 2008-01-10
AU758086B2 (en) 2003-03-13
AU2636599A (en) 1999-09-06
JP2002504729A (ja) 2002-02-12
EP1058914A1 (de) 2000-12-13
DE69916808T2 (de) 2005-02-03
US6525729B1 (en) 2003-02-25
DE69916808D1 (de) 2004-06-03

Similar Documents

Publication Publication Date Title
DE69937651T2 (de) System und Verfahren zur Strahlverfolgung
DE69631225T2 (de) Bildrekonstruktion von spiralabgetasteten Teilkegelstrahldaten
DE69908966T3 (de) Schattierung von 3-dimensionalen rechner-erzeugten bildern
EP3195258B1 (de) Verfahren und system zur bestimmung der lokalen qualität von aus volumendaten extrahierten oberflächendaten
DE69836924T2 (de) Block- und bandorientierter durchlauf in dreidimensionaler dreieckswiedergabe
DE102005035012B4 (de) Hochleistungsschattierung von großen volumetrischen Daten unter Verwendung von partiellen Schirmraumableitungen
DE69917829T2 (de) Bildverarbeitungsverfahren mit multidimensionalen Bildsegmentationsstufen und medizinische Vorrichtung die diese verwendet
DE102005023964A1 (de) Volumenvisualisierung mittels Texturverschiebung
EP1251462B1 (de) Verfahren zum Segmentieren einer in einem Objekt enthaltenen dreidimensionalen Struktur, insbesondere für die medizinische Bildanalyse
DE102019005516A1 (de) Videoinpainting mittels verlässlichkeitsgewichteter Bewegungsschätzung
DE69921696T2 (de) Verfahren zur perspektivischen darstellung, ausgehend von einem voxelraum
DE102004004641A1 (de) Dreidimensionale Reprojektions- und Rückprojektionsverfahren und Algorithmen zum Durchführen derselben
DE60020887T2 (de) Optischer fluss und bildaufbau
DE69720229T2 (de) Eine computertomographische methode und ein computertomograph
DE102008050049B4 (de) Verfahren zur Bestimmung einer die Objektgrenze eines Objekts in einem digitalen 3D-Datensatz annähernden 3D-Oberfläche
DE102005050846A1 (de) Perspektiveneditierwerkzeuge für 2-D Bilder
DE19806985B4 (de) Organisationsverfahren für volumetrische Daten, das effiziente Cache-Aufbereitungsbeschleunigungen und einen effizienten Graphik-Hardwareentwurf ermöglicht
DE102007056980B4 (de) Verfahren und Vorrichtung für die Computertomographie
DE69921608T2 (de) Verfahren und vorrichtung zum zoomen von digitalen bilddateien
DE602004012341T2 (de) Verfahren und System zur Bereitstellung einer Volumendarstellung eines dreidimensionalen Objektes
DE3537638C2 (de) Verfahren und Einrichtung zum Reduzieren von Geräuschartefakten
DE102007050615A1 (de) Brick-basierter Fusionsrenderer
DE102005035796A1 (de) System und Verfahren zum Polygon-Glätten beim texturbasierten Volumen-Rendering
DE102022119422A1 (de) Verfahren zum Erzeugen einer hierarchischen Datenstruktur, hierarchische Datenstruktur sowie Verfahren zum Streamen von dreidimensionalen Objekten
DE69814482T2 (de) Verfahren und Vorrichtung zur Darstellung von Oberflächen aus volumetrischen Daten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee