DE19807053B4 - Strahltransformationsverfahren für eine schnelle Volumenaufbereitung für eine perspektivische Betrachtung - Google Patents

Strahltransformationsverfahren für eine schnelle Volumenaufbereitung für eine perspektivische Betrachtung Download PDF

Info

Publication number
DE19807053B4
DE19807053B4 DE19807053A DE19807053A DE19807053B4 DE 19807053 B4 DE19807053 B4 DE 19807053B4 DE 19807053 A DE19807053 A DE 19807053A DE 19807053 A DE19807053 A DE 19807053A DE 19807053 B4 DE19807053 B4 DE 19807053B4
Authority
DE
Germany
Prior art keywords
value
component
point
coordinate value
source space
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
DE19807053A
Other languages
English (en)
Other versions
DE19807053A1 (de
Inventor
Hasan Shahzad Fort Collins Naqvi
Russell Fort Collins Huonder
Barthold Fort Collins Lichtenbelt
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of DE19807053A1 publication Critical patent/DE19807053A1/de
Application granted granted Critical
Publication of DE19807053B4 publication Critical patent/DE19807053B4/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/06Ray-tracing

Abstract

Strahltransformationsverfahren für eine schnelle Volumenaufbereitung für eine perspektivische Ansicht eines Volumendatensatzes (604) zur aufbereiteten Darstellung des Volumendatensatzes auf einer zweidimensionalen Graphikanzeige (110) eines Computersystems (100) mit folgenden Schritten:
(a) Ausdrücken eines Anfangsbestimmungsraumvoxels eines Strahls (814) in homogenen Koordinaten mit einem x-Wert, einem y-Wert, einem z-Wert und einen w-Wert;
(b) Bestimmen eines Abstandswerts für eine Projektionsebene für eine gewünschte perspektivische Ansicht;
(c) Erzeugen einer Strahltransformationsmatrix, die einem Pixelort zugeordnet ist, wobei der Pixelort eine X-Komponente und eine Y-Komponente aufweist, sowie den x-Wert und den y-Wert des Anfangsbestimmungsraumvoxels des Strahls (814), das in homogenen Koordinaten ausgedrückt ist, wobei die Strahltransformationsmatrix ferner einen z-Vektor aufweist, wobei der z-Vektor eine iR-Komponente und eine jR-Komponente aufweist;
(d) Initialisieren (204) aller Werte für die Strahltransformationsmatrix mit Ausnahme der iR-Komponente und der jR-Komponente;
(e) Initialisieren (208) der iR-Komponente und der jR-Komponente des z-Vektors der Strahltransformationsmatrix durch Dividieren der X-Komponente des Pixelorts durch...

Description

  • Diese Erfindung bezieht sich auf Computersysteme und insbesondere auf eine Graphikanzeige diskreter Objekte in Computersystemen. Noch spezieller bezieht sich diese Erfindung auf eine Volumenaufbereitung von Volumendatensätzen für eine Graphikanzeige in Computersystemen und ein Strahltransformationsverfahren für eine schnelle Volumenaufbereitung für eine perspektivische Betrachtung.
  • Die Volumenaufbereitung ist ein wichtiger Zweig von Computergraphiken, der nach der Entwicklung der geometrischen Aufbereitung und der Pixelaufbereitung folgt. Die Volumenaufbereitung bezieht sich auf die direkte Aufbereitung eines Volumendatensatzes, um die Charakteristika des Inneren eines körperlichen Objekts zu zeigen, wenn dasselbe auf einer zweidimensionalen Graphikvorrichtung angezeigt wird. Ein Volumendatensatz ist ein dreidimensionales Array von Voxeln. Voxel wurden als Abtastpunkte, die durch einen finiten Abstand getrennt sind, definiert. Jedes Voxel weist eine Position und einen Wert auf. Die Voxelposition ist ein Drei-Tupel, das eine x-, eine y- und z-Position in dem dreidimensionalen Voxelarray spezifiziert. Der Voxelwert hängt von seinem Format ab. Beispielsweise weist ein Voxel ein Intensitätselement auf und kann ein Indexelement aufweisen. Diese Werte werden bei dem Volumenaufbereitungsverfahren üblicherweise unterschiedlich behandelt. Die Sammlung von Werten für alle Punkte in dem Volumen wird als ein Skalarfeld auf dem Volumen bezeichnet.
  • Volumendatensätze können durch zahlreiche Einrichtungen erzeugt werden, jedoch am üblichsten durch irgendein Verfahren einer dreidimensionalen Abtastung oder Probennahme und durch eine numerische Modellierung. Beispielsweise kann ein volu mendatensatz durch eine Magnetresonanzbilderzeugung (Magnetic Resonance Imaging), oder MRI, erzeugt werden, bei der die Dichte des menschlichen oder tierischen Gewebes an jedem Punkt eines dreidimensionalen Gitters berechnet wird. Eine Anzeige dieser Informationen könnte die Grenzen der verschiedenen Gewebetypen anzeigen, wie dieselben durch Dichteänderungen angezeigt sind. Die Volumenaufbereitung ist das Verfahren des Anzeigens dieser Daten auf einer zweidimensionalen Graphikvorrichtung.
  • Das allererste Voxel in einem Volumendatensatz mit den Koordinaten (0,0,0) wird als der Ursprung des Volumendatensatzes betrachtet. Die drei Koordinaten entsprechen der Reihe nach der Spalte, der Zeile und dem Schnitt des Bilds in dem Volumendatensatz.
  • Volumendatensätze können ziemlich groß sein und folglich eine Belastung auf den Systembetriebsmitteln plazieren. Beispielsweise kann ein typischer Volumendatensatz von einer MRI-Abtasteinrichtung 6,7 Millionen Voxel oder mehr enthalten, wohingegen Polygondatensätze für eine geometrische Aufbereitung typischerweise weniger als eine halbe Million Polygone enthalten. Folglich existiert beim Aufbereiten von Volumen ein viel größerer Bedarf nach einer Hardwarebeschleunigung.
  • Bei der Volumenaufbereitung besteht eine häufige Notwendigkeit darin, in der Lage zu sein, das aufbereitete Bild von verschiedenen orthographischen und perspektivischen Projektionen zu betrachten. Studien haben gezeigt, daß bei einer Betrachtung derartiger aufbereiteter Anzeigen über lange Zeitdauern perspektivische Ansichten für den Betrachter weniger anstrengend sind als orthographische Ansichten. Überdies geben perspektivische aufbereitete Anzeigen häufig einen besseren visuellen Hinweis für eine räumliche Wahrnehmung als orthographische aufbereitete Anzeigen. Folglich ist ein Schlüsselschritt bei dem Volumenaufbereitungsverfahren die dreidimensionale räumliche Volumentransformation des ur sprünglichen Volumendatensatzes für eine orthographische oder perspektivische Aufbereitung. Typische Transformationstypen, die sowohl für eine orthographische als auch eine perspektivische Aufbereitung erforderlich sind, können ein Zoomen, ein Schwenken, eine Drehung und einen geraden Schnitt des Eingangsvolumens für eine Projektion in eine Ausgangsrastertyp-Anzeigevorrichtung umfassen. Sobald eine Transformation durchgeführt wurde, müssen verschiedene Umtasttechniken angewendet werden, beispielsweise eine Interpolation des nächstliegenden Nachbarn oder eine trilineare Interpolation, um Pixelwerte für die Aufbereitung zu bestimmen.
  • Typischerweise wird eine perspektivische Ansicht eines Volumendatensatzes realisiert, indem Objekte, die weiter von dem Betrachter entfernt sind, kleiner dargestellt werden, als Objekte, die näher zu dem Betrachter sind. Geometrische Objekte werden perspektivisch aufbereitet, indem x-, y- und z-Orte der Scheitelpunkte des geometrischen Objekts durch w, oder homogene Koordinate, geteilt werden, nachdem eine Modell- und Betrachtungs-Transformation durchgeführt wurde. Überdies moduliert die homogene Koordinate w den Grad der perspektivischen Verzerrung.
  • Geometrische Objekte und Volumenvoxel können durch die folgenden Schritte transformiert und in einer perspektivischen Ansicht dargestellt werden. Zunächst wird ein Quellenraumscheitelpunkt mit den Koordinaten (x, y, z) in homogene Koordinaten umgewandelt, um die nachfolgend gezeigte Matrixmultiplikation zu ermöglichen:
    Figure 00030001
    Quellenraumscheitelpunkt
  • Eine orthographische Modellbetrachtungsmatrix wird mit einer perspektivischen Matrix multipliziert, um wie nachfolgend gezeigt ist, eine kombinierte Matrix zu erhalten:
    Figure 00040001
  • In der perspektivischen Matrix gilt: aP = (2·zNahe)/(rechts-links), fP = (2·zNahe)/(oben – unten), iP = (rechts + links)/(rechts – links), jP = (oben + unten)/(oben – unten), kP = (zFern + zNahe)/(zFern – zNahe), und oP = (2·zFern·zNahe)/(zFern – zNahe). (links, unten, –zNahe) und (rechts, oben, –zNahe) spezifizieren Punkte auf der nahen Schnittebene, die auf die untere linke und die obere rechte Ecke des Fensters abgebildet werden, unter der Annahme, daß sich der Blickpunkt des Betrachters bei (0,0,0) befindet. Der ferne Schnittebenenort ist durch das Zeichen zFern spezifiziert. Sowohl zNahe als auch zFern müssen positiv sein.
  • Um den Quellenraumscheitelpunkt von dem Quellenraum in den Bestimmungsraum zu transformieren, wird der Quellenraumscheitelpunkt in Matrixform mit der kombinierten Matrix multipliziert, um wie unten gezeigt den Bestimmungsraumscheitelpunkt zu ergeben:
    Figure 00040002
  • Durch das Durchführen der Matrixmultiplikation werden die Werte für x', y', z' und w' des Scheitelpunkts im Bestimmungsraum wie nachfolgend gezeigt hergeleitet: x' = (a·x) + (e·y) + (i·z) + m y' = (b·x) + (f·y) + (j·z) + n z' = (c·x) + (g·y) + (k·z) + o w' = (d·x) + (h·y) + (l·z) + p
  • Als nächstes wird der Scheitelpunkt (x', y', z', w') in dem Bestimmungsraum durch die homogene Koordinate 'w' dividiert, um die perspektivische Verzerrung zu modellieren, wie nachfolgend gezeigt ist: x' = x'/w' y' = y'/w' z' = z'/w' w' = w'/w' = 1
  • Die x'- und die y'-Koordinaten können nun, wenn es erwünscht ist, für eine abschließende Aufbereitung weiter eingestellt werden und zu dem Rahmenpuffer gesendet werden.
  • Zwei Abbildungslösungsansätze wurden für derartige Transformationen verwendet. Ein Vorwärtsabbildungslösungsansatz, der in der obigen Beschreibung verwendet wurde, verwendet den Quellenraumscheitelpunkt und transformiert denselben über eine Transformationsmatrix, um in den Bestimmungsraum zu passen. Bei einer Rückwärtsabbildung, oder einem inversen Transformationslösungsansatz, wird jeder Bestimmungsraumscheitelpunkt über ein inverse Transformationsmatrix transformiert und aus dem Quellenraum umgetastet. Die Vorwärtsabbildung unterliegt dem Risiko des Belassens von "Löchern" bei der Aufbereitung, da der Quellenraum manchmal kleiner ist als der Bestimmungsraum. Die inverse Transformation stützt sich selbst auf die Technik des "Strahlwerfens" oder einem Fortschreiten in der z-Richtung, was das "Löcher"-Pro blem beseitigt, da die Abtastpunkte von dem größeren Bestimmungsraum zurück in den kleineren Quellenraum verwendet werden.
  • Das geometrische perspektivische Verfahren des Aufbereitens von Volumendatensätzen in einer perspektivischen Ansicht ist sehr rechenintensiv und am schwierigsten durchzuführen. Aufgrund der typischerweise großen Größe von Volumendatensätzen sind dreidimensionale räumliche Transformationen und perspektivische Aufbereitungen ziemlich beanspruchend für die Systembetriebsmittel. Eine Optimierung des Verfahrens ist folglich ein anhaltender und herausfordernder Bedarf in der Technik. Sowohl Hardware als auch Software-orientierte Optimierungslösungen sind vorteilhaft. Gegenwärtige Verfahren einer dreidimensionalen räumlichen Transformation und einer perspektivischen Aufbereitung, die Gleitkommazahlen verwenden, sind ziemlich aufwendig, speziell wenn Divisionen und häufige Multiplikationen enthalten sind. Wiederholte Berechnungen für jeden Abtastpunkt sind hinsichtlich der Aufbereitungszeit sehr aufwendig.
  • Eine dreidimensionale Texturabbildungstechnik unterstützt eine begrenzte Form einer Volumenaufbereitung, die modifiziert werden kann, um perspektivische Ansichten zu ergeben. Jeder aufeinanderfolgende einer Texturabbildung unterzogene Schnitt des Volumens kann durch eine zweidimensionale Skalierungs- oder Zoom-Operation eingestellt werden, um die Größe des Objekts während eines Fortschreitens in der z-Richtung zu reduzieren, um eine Perspektive zu erhalten. Jedoch ist dieser Lösungsansatz nicht sehr genau.
  • Es besteht somit in der Technik ein Bedarf nach einem Verfahren für eine dreidimensionale räumliche Transformation und eine Volumenaufbereitung für eine perspektivische Ansicht, die die Nachteile der klassischen geometrischen perspektivischen und dreidimensionalen Texturabbildungsverfahren überwindet, indem ein Strahltransformationslösungsansatz verwendet wird, der bezüglich der Qualität oder Genauigkeit weniger Kompromisse macht. Es existiert ein Bedarf nach einem Volumenaufbereitungsverfahren für eine perspektivische Ansicht, das die Anzahl von Gleitkommaberechnungen reduziert, die erforderlich sind, um eine perspektivische Ansicht aufzubereiten, speziell von Divisionen und Multiplikationen. Ferner existiert in der Technik ein Bedarf danach, schnellere Ganzzahlberechnungen zu verwenden, beispielsweise Additionen und Subtraktionen, sowie andere einfachere CPU-Befehle, beispielsweise Verschiebungen und Maskierungen. Es existiert ein weiterer Bedarf in der Technik danach, wiederholte Berechnungen aus dem Verfahren zu beseitigen. Überdies existiert ein Bedarf in der Technik, sowohl Hardware- als auch Software-Optimierungstechniken zu verwenden. Ein weiterer Bedarf existiert in der Technik danach, einen inversen Transformationslösungsansatz für eine Volumenaufbereitung für eine perspektivische Ansicht zu verwenden, um "Löcher" in dem aufbereiteten Bild zu beseitigen. Es ist daher offensichtlich, daß ein Bedarf nach einem verbesserten Verfahren für eine schnelle Volumenaufbereitung für eine perspektivische Ansicht besteht, das diese und weitere Bedürfnisse in der Technik erfüllt.
  • Das US-Patent 5,313,567 beschreibt eine Anordnung zum Bestimmen und Anzeigen von Volumendaten in einem Abbildungssystem durch Verwenden einer volumetrischen Neuabtastungstechnik mit Interpolation. Mittels dieser Technik wird der Wert aller Abtastpunkt auf einem Weg bestimmt, wobei dieser Weg durch einen Anwender festgelegt ist und sich durch ein Volumenbild erstreckt. Das Volumenbild umfaßt eine Gruppe von vordefinierten Datenwerten, die wiederum Abtastwerte eines kontinuierlichen Volumenobjektes sind. Die grundsätzlichen Schritte zum Anzeigen eines erwünschten Bildes von einer dreidimensionalen Datenbank umfassen zunächst ein Abbilden des Inhalts des Anzeigespeichers auf Orte innerhalb der volumetrischen Datenbank, was durch Transformationsgleichungen erreicht wird, die aufgestellt werden müssen, um einen Quelleingangspunkt für jeden Ausgangsort zu berechnen. Folglich muß für jeden anzuzeigenden Ort eine entsprechende Transformation durchgeführt werden, um einen entsprechenden Quelleingangsort zu bestimmen. Im nächsten Schritt wird entweder eine lineare Interpolation oder eine Interpolation basierend auf der Regel gemäß dem nächsten Nachbarn ausgeführt, um einen genauen Quelldatenort zu erhalten. Im nächsten Schritt werden die erhaltenen Datenwerte kombiniert, um die erwünschte Ausgabe zu erzeugen.
  • Foley, J.D.; et. al.: Computer Graphics – Principles and Practice, Addison Wesley, 1996, S. 213–217, 229–237, 260–267 beschreibt allgemeine Hindergrundinformationen über Transformationstechniken für Bildaufbereitungssysteme.
  • Das US-Patent US-A-5,515,484 beschreibt ein Verfahren zur Aufbereitung von dreidimensionalen graphischen Objekten in einem zweidimensionalen Anzeigeraum. Ein jeweiliger Wert eines bestimmten Nachbarschaftspunktes wird nur durch Zuordnen des Quellwertes des nächstliegenden Quellraumvoxels erhalten, was durch die jeweilige Interpolationstechnik erhalten wird.
  • Die Aufgabe der vorliegenden Erfindung besteht darin, ein verbessertes Verfahren zur Volumenaufbereitung einer perspektivischen Ansicht zu schaffen, welches die Anzahl der erforderlichen Gleitkommaberechnungen reduziert, welches schnellere Ganzzahl-Berechnungen und einfache CPU-Befehle verwendet, und ferner die wiederholten Berechnungen für den Prozess eliminiert.
  • Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1 gelöst.
  • Ein Vorteil der vorliegenden Erfindung besteht darin, einen Strahltransformationslösungsansatz für eine dreidimensionale räumliche Transformation und eine Volumenaufbereitung für eine perspektivische Ansicht zu verwenden.
  • Ein weiterer Vorteil der Erfindung besteht darin, die Anzahl von Gleitkommaberechnungen zu reduzieren, die erforderlich sind, um eine perspektivische Ansicht aufzubereiten, indem ein 32-Bit-Festkommaformat mit 16 Bits eines Skalarteils und 16 Bits eines Bruchteils, das als 16,16-Format bezeichnet wird, und kein Gleitkommaformat, zum Codieren von Werten von einer kombinierten inversen Matrix und Bestimmungsbildpunkten für eine dreidimensionale räumliche Transformation und eine Volumenaufbereitung für eine perspektivische Ansicht verwendet wird.
  • Noch ein weiterer Vorteil der Erfindung besteht darin, den nächsten Abtastpunkt entlang einer Strahltransformierten durch das Umwandeln der z-Vektor-Werte i, j und k in dem 16,16-Format in ganze Zahlen zu erhalten, und durch das Durchführen von ganzzahligen Additionen in der z-Richtung fortzuschreiten.
  • Noch ein weiterer Vorteil der Erfindung besteht darin, die Anfangsnachbarschaftsorte in dem Quellenraum zu bestimmen, indem die transformierten Matrixwerte für (x', y', z') um 16 Bit nach unten verschoben werden, was den ganzzahligen Wert in dem Quellenraum ergibt, der die Anfangsnachbarschaftsorte darstellt.
  • Ein weiterer Vorteil der Erfindung besteht darin, eine Maskierungsoperation auf einem transformierten Matrixwert in dem 16,16-Format zu verwenden, um die 16-Bit-Bruchteilkomponente als einen Index auf eine vorberechnete Nachschlagtabelle, die den Bruchteil-Gleitkommawert enthält, zu verwenden.
  • Noch ein weiterer Vorteil der Erfindung besteht darin, die größeren Cache-Speicher in heutigen CPUs auszunutzen, um Aufrufe in Nachschlagtabellen zu verarbeiten und das Verhalten zu optimieren.
  • Ein weiterer Vorteil der Erfindung besteht darin, in der Lage zu sein, sowohl Integer- als auch Gleitkomma-Pipelines, die in heutigen CPUs verfügbar sind, durch die Ausnutzung eines mannigfaltigen Lösungsansatzes für die dreidimensiona le räumliche Transformation und die Aufbereitung für eine perspektivische Ansicht auszunutzen.
  • Die obigen und weitere Vorteile der Erfindung werden bei einem Strahltransformationsverfahren für eine dreidimensionale räumliche Transformation und eine Volumenaufbereitung für eine perspektivische Ansicht erreicht. Das Verfahren verwendet die Rückwärtsabbildung, oder den inversen Transformationslösungsansatz, gekoppelt mit einem Werfen von Strahlen. Für die gewünschte perspektivische Ansicht konvergieren Strahlen an dem Projektionsmittelpunkt, oder dem Blickpunkt, von der Projektionsebene. Jeder Strahl wird unabhängig adressiert, wobei derselbe seine eigene eindeutige Transformationsmatrix aufweist, die als Strahltransformierte bezeichnet wird. Jede eindeutige Strahltransformierte wird mit einer Matrix für eine orthographische Modellansicht kombiniert, um eine schnelle orthographische Strahlfortschreitungsvorschrift für die perspektivische Volumenaufbereitung zu erzeugen.
  • Zuerst wird ein Anfangsbestimmungsraumvoxel-Abtastpunkt bestimmt. Als nächstes wird die Inverse einer Matrix für eine orthographische Modellansicht mit der Matrix der eindeutigen Strahltransformierten, die dem Pixelort des Anfangsbestimmungsraumvoxel-Abtastpunkts (X, Y) zugeordnet ist, kombiniert, um eine kombinierte inverse Matrix zu erhalten. Als nächstes wird der Abtastpunkt von dem Bestimmungsraum in den Quellenraum transformiert, indem die Bestimmungsraumvoxel-Abtastpunktmatrix mit der kombinierten inversen Matrix multipliziert wird.
  • Die transformierten Abtastpunktwerte, die sich aus dieser Matrixmultiplikation ergeben, werden in einem 32-Bit-Festkommaformat codiert, das aus 16 Bit eines Skalarteils und 16 Bit eines Bruchteils bestehen, was als 16,16-Format bezeichnet wird. Fachleute werden erkennen, daß auch ein 48-Bit-Festkommaformat mit 24 Bits eines Skalarteils und 24 Bits eines Bruchteils, oder ein 64-Bit-Festkommaformat mit 32 Bits eines Skalarteils und 32 Bits eines Bruchteils oder eine gemischte Kombination der obigen, beispielsweise 8/24, verwendet werden könnten. Das 16,16-Format ist nachfolgend dargestellt:
    Figure 00130001
  • Beispielsweise würde die Zahl 8,9 wie folgt codiert und gespeichert werden. 8,9 wird mit 65.536 multipliziert, abzüglich eines beliebigen Bruchteils, und wird in dem 32-Bit-Register gespeichert. Bei diesem Beispiel würde der Abschnitt ",9" als 0,9 × 65. 536 = 58.982 codiert werden und würde in dem tieferen Bruchteilabschnitt der ganzzahligen Zahl erscheinen. Fachleute werden erkennen, daß dieses Strahltransformationsverfahren nicht die Verwendung des 16,16-Formats, um Werte zu codieren, erfordert. Das Stahltransformationsverfahren wird mit der Verwendung einer herkömmlichen Einrichtung funktionieren. Das 16.16-Format wird bei dem bevorzugten Ausführungsbeispiel der Erfindung verwendet.
  • Für jeden transformierten Abtastpunkt (x', y', z') kann entweder die Umtasttechnik des nächstliegenden Nachbarn oder der trilinearen Interpolation ausgewählt werden, um Pixelwerte für die Aufbereitung festzulegen. Bei jeder Technik besteht der erste Schritt darin, den Anfangsnachbarschafts-Voxelpunkt, der durch (i, j, k) dargestellt ist, zu bestimmen. Dies wird durch eine Verschiebungsoperation auf den transformierten x'-, y'- und z'-Abtastpunktwerten von der kombinierten Matrix und der Anfangspunktberechnung erreicht. Die transformierten x'-, y'- und z'-Abtastpunktwerte werden 16 Bit nach rechts verschoben, was den Bruchteilabschnitt des 16,16-Formats abschneidet. Dies ergibt die ganzzahligen Werte in dem Quellenraum, die den Anfangsnachbarschafts-Voxelpunkt darstellen.
  • Für die Technik des nächstliegenden Nachbarn besteht eine Möglichkeit, den nächstliegenden Nachbarvoxelpunkt in dem Quellenraum zu bestimmen, darin, den transformierten (x',y',z')-Abtastpunkt in ganzzahlige Werte zu runden. Wenn (8,2; 6,5; 9,6) beispielsweise transformierte Abtastpunktwerte für (x',y',z') sind, werden die Werte nach dem Runden zu (8, 7, 10). Jedoch besteht eine effizientere Möglichkeit, das nächstliegende Nachbarvoxel zu bestimmen, darin, 0,5 zu jeder x'-, y'- und z'-Komponente zu addieren und dann die resultierenden x'-, y'- und z'-Werte abzuschneiden. Bei dem obigen Beispiel würde 0,5 zu den ursprünglichen transformierten Abtastpunktwerten von (x', y', z') addiert werden, was (8,7, 7,0, 10,1) ergibt. Das Abschneiden von jedem dieser Werte ergibt wie vorher (8, 7, 10). Der Vorteil dieses Verfahrens besteht darin, daß, statt jeden Abtastpunkt entlang eines Strahls in einer Rundungsoperation auswerten und vergleichen zu müssen, der erste räumliche Ort in einem Strahl um 0,5 versetzt wird. Alle anderen Punkte entlang des Strahls sind relativ zu diesem ersten Punkt, da eine lineare Beziehung existiert. Sobald 0,5 addiert wurde, wird das nächste Nachbarvoxel bestimmt, indem einfach jeder der x'-, y'- und z'-Werte jedes nachfolgenden Abtastpunkts abgeschnitten wird. Dies stellt eine effizientere Weise dar, um die Bestimmung des nächstliegenden Nachbarn zu handhaben.
  • Diese Technik wird bei dem bevorzugten Ausführungsbeispiel der Erfindung befolgt, wobei zuerst 0,5 zu jeder transformierten x'-, y'- und z'-Abtastpunktkomponente addiert wird, bevor der Quellenraum-Voxelpunkt des nächstliegenden Nachbarn bestimmt wird. Die acht Quellenraumvoxel, die die Nachbarschaft bilden, die den transformierten (x',y',z')-Abtastpunkt umgeben, werden ausgewertet, um das Voxel zu erhalten, das nächstliegend zu dem Abtastpunkt ist. Die Werte, die diesem nächstliegenden Nachbarquellenraumvoxel zugeordnet sind, werden verwendet, um den Pixelwert zu bestimmen, der verwendet wird, um den ersten transformierten (x',y',z')-Abtastpunkt entlang eines Strahls aufzubereiten. Durch ein Fortschreiten in der z-Richtung entlang des Strahls wird der nächste Abtastpunkt bestimmt. Dieses Fortschreitungsverfahren wird erreicht, indem zuerst die z-Vektor-Werte i, j und k von der Matrixberechnung der transformierten Abtastpunkte in dem 16,16-Format in ganze Zahlen umgewandelt werden, und nachfolgend diese ganzzahligen Werte zu dem ersten transformierten (x',y',z')-Abtastpunkt eines Strahls addiert werden. Dieses Verfahren des Addierens von ganzzahligen Werten zu dem gegenwärtigen transformierten Abtastpunkt wird wiederholt, um den Rest der aufeinanderfolgenden transformierten Abtastpunkte entlang des Strahls zu erhalten. Danach wird der Anfangsbestimmungsraum-Voxelabtastpunkt des nächsten Strahls wie vorher bestimmt. Auf diese Weise werden alle Strahlen für das Volumen zur Aufbereitung verarbeitet.
  • Für die trilineare Interpolationstechnik werden die acht Quellenraumvoxel, die die Nachbarschaft, in der der transformierte (x',y',z')-Abtastpunkt enthalten ist, bilden, bestimmt. Als nächstes werden Werte für Delta-x, Delta-y und Delta-z, die durch dx, dy und dz dargestellt sind, berechnet. Diese Deltawerte stellen die Änderung in der x-, der y- und der z-Richtung des transformierten Abtastpunkts in der Nachbarschaft der acht Quellenraumvoxel dar. Diese Werte werden durch das Erhalten der Bruchteilkomponenten des transformierten (x',y',z')-Abtastpunkts durch das Maskieren des tieferen Bruchteilabschnitts der Werte, die in dem 16,16-Format gespeichert sind, und das nachfolgende Zugreifen auf die Bruchteilnachschlagtabelle hergeleitet. Im Anschluß werden Ankerwerte zur Verwendung bei einer Zeigerarithmetik, die das Optimieren des Verfahrens unterstützt, berechnet. Schließlich wird ein trilineares Interpolationsverfahren angewendet, um die Werte von den acht Nachbarschafts-Quellenraumvoxeln, die den transformierten (x',y',z')-Abtastpunkt enthalten, kombiniert, um einen kombinierten Wert, der bei der Aufbereitung des ersten transformierten Abtastpunkts entlang eines Strahls verwendet werden soll, zu erhalten. Fortschreitend in der z-Richtung entlang des Strahls wird der nächste transformierte Abtastpunkt entsprechend dem gleichen Verfahren, das oben beschrieben wurde, unter Verwendung von ganzzahligen Additionen und dem Anwenden des trilinearen Interpolationsverfahrens ausgewer tet. Dieses Verfahren wird für den Rest der Abtastpunkte entlang des Strahls wiederholt. Danach wird wie vorher der Anfangsbestimmungsraum-Voxelabtastpunkt des nächsten Strahls bestimmt. Die ganzzahligen Additionen werden für den Rest der transformierten Abtastpunkte entlang des zweiten Strahls verwendet, wobei die trilineare Interpolation verwendet wird, um Werte für die Aufbereitung zu erhalten. Auf die gleiche Weise werden alle Strahlen für das Volumen zur Aufbereitung verarbeitet.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
  • 1 ein Blockdiagramm eines Computersystems, das ein Volumenaufbereitungssystem, das die vorliegende Erfindung verkörpert, aufweist;
  • 2 ein Blockdiagramm eines Strahltransformationsverfahrens für eine schnelle Volumenaufbereitung für eine perspektivische Ansicht gemäß der vorliegenden Erfindung;
  • 3 ein Blockdiagramm einer Nachschlagtabelleninitialisierung;
  • 4 ein Blockdiagramm der Interpolationstechnik des nächstliegenden Nachbarn;
  • 5 ein Blockdiagramm der trilinearen Interpolationstechnik;
  • 6 eine zweidimensionale Darstellung eines Volumendatensatzes im Quellenraum;
  • 7 eine zweidimensionale Darstellung des Volumendatensatzes von 6 in dem Bestimmungsraum nach der Transformation für eine perspektivische Ansicht;
  • 8 eine zweidimensionale Darstellung des Volumendatensatzes von 7 nach der Transformation durch die inverse kombinierte Matrix zurück in den Quellenraum; und
  • 9 eine dreidimensionale Darstellung der trilinearen Interpolationstechnik zum Bestimmen von Pixelwerten zur Aufbereitung von Abtastpunkten nach einer dreidimensionalen räumlichen Transformation.
  • 1 zeigt ein Blockdiagramm eines Computersystems, das ein Volumenaufbereitungssystem, das die vorliegende Erfindung verkörpert, enthält. Bezugnehmend nun auf 1 enthält ein Computersystem 100 ein Verarbeitungselement 102. Das Verarbeitungselement 102 steht über einen Systembus 104 mit anderen Elementen des Computersystems 100 in Verbindung. Eine Tastatur 106 ermöglicht, daß ein Benutzer Informationen in das Computersystem 100 eingibt, während eine Graphikanzeige 110 ermöglicht, daß das Computersystem 100 Informationen zu dem Benutzer ausgibt. Ferner ist eine Maus 108 verwendet, um Informationen einzugeben, während eine Speichervorrichtung 112 verwendet ist, um Daten und Programme in dem Computersystem 100 zu speichern. Ein Speicher 116, der ebenfalls mit dem Systembus 104 verbunden ist, enthält ein Betriebssystem 118 und ein Volumenaufbereitungssystem 120 gemäß der vorliegenden Erfindung.
  • 2 zeigt ein Blockdiagramm des Strahltransformationsverfahrens für eine schnelle Volumenaufbereitung für eine perspektivische Ansicht gemäß der vorliegenden Erfindung. Wie nun in 2 gezeigt ist, ruft nach dem Eintritt ein Block 202 3 auf, was die Nachschlagtabellen, die durch die Erfindung verwendet werden, initialisiert. Ein Block 204 initialisiert Werte, die in der Strahltransformationsmatrix der vorliegenden Erfindung verwendet werden, wie nachfolgend gezeigt ist:
    Figure 00180001
  • Ein Block 206 erhält den ersten Strahl, der ausgewertet werden soll, von einem Anfangsbestimmungsraum-Pixelort (X, Y). Ein Block 208 initialisiert die iR- und jR-Komponente des z-Vektors der Strahltransformationsmatrix für diesen speziellen 'X'- und 'Y'-Strahl, wobei "Abstand" die nahe Projektionsebene von dem Projektionsmittelpunkt, oder Blickpunkt des Betrachters, beschreibt, wie unten gezeigt ist: iR = X/Abstand jR = Y/Abstand
  • Ein Block 210 multipliziert dann die inverse Matrix für die orthographische Modellansicht mit der Strahltransformationsmatrix, um eine kombinierte inverse Matrix zu ergeben, wie unten gezeigt ist:
    Figure 00180002
  • Ein Block 212 wandelt dann die z-Vektor-Werte von der kombinierten inversen Matrix in ganze Zahlen um. Dies wird erreicht, indem die drei z-Vektor-Komponenten iC, jC und kC in dem Gleitkommaformat mit 65.536 multipliziert werden, was die Werte in das 16,16-Format umwandelt. Diese Werte werden später verwendet, um durch die Durchführung von ganzzahligen Additionen in der z-Richtung fortzuschreiten.
  • In einem Block 214 wählt der Benutzer, welche Interpolationstechnik bei der Bestimmung von Pixelwerten verwendet werden soll. Wenn der Benutzer die Technik des nächstliegenden Nachbarn auswählt, springt die Steuerung zu einem Block 216, der 4 aufruft, um die Interpolationstechnik des nächstliegenden Nachbarn durchzuführen. Wenn die Interpolationstechnik, die in dem Block 214 ausgewählt wird, die trilineare Interpolation ist, springt die Steuerung zu einem Block 218, der 5 aufruft, um die trilineare Interpolationstechnik durchzuführen. Danach wird die Steuerung von entweder 4 oder 5 zurückgegeben, wobei die Steuerung zu dem Volumenaufbereitungssystem 120 (1) zurückkehrt.
  • 3 zeigt ein Blockdiagramm einer Nachschlagtabellen-Initialisierung. Bezugnehmend nun auf 3 initialisiert ein Block 302 eine Bruchteilnachschlagtabelle, die bei der Berechnung von dx-, dy- und dz-Werten durch das Volumenaufbereitungssystem (1) verwendet werden soll. Die Tabelle wird aus dem folgenden Programmiercode in der "C"-Programmiersprache abgeleitet:
    Figure 00190001
  • Beispielsweise würde für i = 1 der Wert, der in der Bruchteilnachschlagtabelle gespeichert wird, 1/65.536 = 0,0000 lauten. Für i = 32.768 würde der Wert, der in der Bruchteilnachschlagtabelle gespeichert wird, 32.768/65.536 = 0,5000 lauten. Für i = 65.535 würde der Wert, der in der Bruchteilnachschlagtabelle gespeichert wird, 65.535/65.536 = 0,9999 lauten.
  • Ein Block 304 initialisiert eine y-Richtung-Nachschlagtabelle, die bei Pixelortberechnungen verwendet werden soll. Die Tabelle wird aus dem folgenden Programmiercode in der "C"- Programmiersprache abgeleitet:
    Figure 00200001
  • Wenn ein Volumendatensatz beispielsweise 256 Voxel breit mal 128 Voxel hoch mal 64 Voxel tief war, würde für i = 1 der Wert, der in der y-Nachschlagtabelle gespeichert wird, 1 256 = 256 lauten. Für i = 64 würde der gespeicherte Wert 64·256 = 16.384 lauten. Für i = 127 würde der gespeicherte Wert 127·256 = 32.512 lauten.
  • Ein Block 306 initialisiert eine z-Richtung-Nachschlagtabelle, die bei Pixelortberechnungen verwendet werden soll. Die Tabelle wird aus dem folgenden Programmiercode in der "C"-Programmiersprache hergeleitet:
    Figure 00200002
  • Wenn ein Volumendatensatz beispielsweise 256 Voxel breit mal 128 Voxel hoch mal 64 Voxel tief war, würde für i = 1 der Wert, der in der z-Nachschlagtabelle gespeichert wird, 1 256·128 = 32.768 lauten. Für i = 32 würde der gespeicherte Wert 32·256·128 = 1.048.576 lauten. Für i = 65 würde der gespeicherte Wert 65·256·128 = 2.129.920 lauten. Nachdem die Initialisierung abgeschlossen ist, springt die Steuerung von 3 zu 2 zurück.
  • 4 zeigt ein Blockdiagramm der Interpolationstechnik des nächstliegenden Nachbarn. Wie nun in 4 gezeigt ist, erhält ein Block 402 den ersten Abtastpunkt entlang des ersten Strahls, der in dem Block 206 (2) ausgewählt wird. Ein Block 404 verwendet die kombinierte inverse Matrix, die in dem Block 210 (2) bestimmt wird, um einen ersten transformierten (x',y',z')-Abtastpunkt eines Strahls in dem Quellenraum aus einem (x,y,z)-Voxelpunkt in dem Bestimmungsraum zu berechnen, indem eine Matrixmultiplikation wie nachfol gend gezeigt durchgeführt wird.
  • Figure 00210001
  • 0,5 wird zu jeder x'-, y'- und z'-Komponente addiert. Jede Komponente wird ferner durch Multiplizieren mit 65.536 in das 16.16-Format umgewandelt.
  • In einem Block 406 wird der Anfangsnachbarschaftspunkt (i, j, k) im Quellenraum durch Abschneiden des Bruchteilabschnitts der transformierten x'-, y'- und z'-Abtastpunktwerte bestimmt. Dies wird erreicht, indem der 16,16-Format-Wert um 16 Bits nach rechts verschoben wird.
  • Ein Block 408 bestimmt den Wert, der bei der Aufbereitung des transformierten Abtastpunkts verwendet werden soll. Dies wird erreicht, indem für den Wert von j auf die y-Richtung-Nachschlagtabelle und für den Wert von k auf die z-Richtung-Nachschlagtabelle zugegriffen wird, und indem der berechnete Wert von i für die x-Komponente und ein Zeiger auf den Quellenvolumendatensatz entsprechend dem folgenden Programmiercode in der "C"-Programmiersprache verwendet wird: result = srcVolume[zStrideLUT[k] + yStrideLUT[j] + i];
  • "Result" ist der Wert des nächstliegenden Quellenraumvoxels, das bei der Aufbereitung des transformierten Abtastpunkts verwendet wird. Ein Block 410 führt ein Zusammensetzungsverfahren bezüglich des Ergebnisses durch, das für diesen transformierten Abtastpunkt erhalten wird, um die Pixelwerte zu bestimmen, die verwendet werden, um den (X,Y)-Pixelort, der diesem Abtastpunkt entspricht, aufzubereiten. Fachleute werden erkennen, daß das Zusammensetzen durchgeführt werden kann, nachdem alle Abtastpunkte auf einem Strahl ausgewertet wurden, im Gegensatz zu dem Zusammensetzen von jedem Abtastpunkt, während jeder Abtastpunkt verarbeitet wird.
  • Ein Block 412 bestimmt, ob weitere Abtastpunkte entlang des Strahls existieren, die ausgewertet werden sollen. Wenn dies der Fall ist, erhält ein Block 414 den nächsten Abtastpunkt entlang des Strahls, der ausgewertet werden soll. Ein Fortschreiten von Abtastpunkt zu Abtastpunkt entlang des Strahls wird durch einfache ganzzahlige Additionen unter Verwendung der Werte, die in dem Block 212 (2) bestimmt werden, und der x'-, y'- und z'-Werte erreicht. Die Steuerung springt dann zu dem Block 406. Die Schritte in den Blöcken 406, 408 und 410 werden nachfolgend wiederholt. Wenn die Antwort in dem Block 412 negativ ist, was anzeigt, daß keine weiteren Abtastpunkte entlang des gegenwärtigen Strahls existieren, springt die Steuerung zu einem Block 416, der bestimmt, ob weitere Strahlen verarbeitet werden sollen. Wenn die Antwort im Block 416 positiv ist, springt die Steuerung zu dem Block 206 in 2, um den nächsten Strahl zu erhalten. Wenn die Antwort in dem Block 416 negativ ist, was anzeigt, daß keine weiteren Strahlen verarbeitet werden sollen, springt 4 zu 2 zurück.
  • 5 zeigt ein Blockdiagramm der trilinearen Interpolationstechnik. Wie nun in 5 gezeigt ist, erhält ein Block 502 den ersten Abtastpunkt entlang des ersten Strahls, der in dem Block 206 (2) ausgewählt wurde. Ein Block 504 verwendet die kombinierte inverse Matrix, die in dem Block 210 (2) bestimmt wurde, um den ersten transformierten (x',y',z')-Abtastpunkt eines Strahls in dem Quellenraum aus einem (x,y,z)-Voxelpunkt in dem Bestimmungsraum zu berechnen, indem die nachfolgend gezeigte Matrixmultiplikation durchgeführt wird:
    Figure 00230001
  • Jede Komponente wird ferner durch Multiplizieren mit 65.536 in das 16,16-Format umgewandelt.
  • In einem Block 506 wird der Anfangsnachbarschaftspunkt (i,j,k) in dem Quellenraum durch Abschneiden des Bruchteilabschnitts der transformierten x'-, y'- und z'-Abtastpunktwerte bestimmt. Dies wird erreicht, indem der Wert mit dem 16,16-Format um 16 Bits nach rechts verschoben wird.
  • Ein Block 508 berechnet die Werte von dx, dy und dz, die Delta-Werte sind, die die Änderung in der x-, der y- und der z-Richtung des transformierten Abtastpunktes in der umgebenden Nachbarschaft von acht Quellenraumvoxeln darstellen. Diese Werte werden durch Maskierung des tieferen Bruchteilabschnitts des 16,16-Formatwerts mittels einer 'Und'-Operation und das nachfolgende Zugreifen auf die Bruchteilnachschlagtabelle wie folgt berechnet: dx = fixedPointLUT[x' & Oxffff]; dy = fixedPointLUT[y' & Oxffff]; dz = fixedPointLUT[z' & Oxffff];
  • Ein Block 510 berechnet Ankerwerte, die auf Daten in dem ursprünglichen Volumendatensatz zeigen. Diese Ankerwerte werden in einer Zeigerarithmetik verwendet, um die Berechnungen zu optimieren und ferner eine einfachere Compilierung zu ermöglichen.
  • Ein Block 512 wendet das Verfahren der trilinearen Interpolation von 9 an. Werte von den acht Nachbarschafts- Quellenraumvoxeln, die den transformierten (x',y',z')-Abtastpunkt enthalten, werden trilinear interpoliert, um einen kombinierten Quellenwert abzuleiten, der verwendet werden wird, um das (X,Y)-Pixel, das dem transformierten (x',y',z')-Abtastpunkt für den Strahl entspricht, aufzubereiten.
  • Ein Block 514 führt ein Zusammensetzungsverfahren auf dem Ergebnis, das für diesen transformierten Abtastpunkt erhalten wird, durch, um die Pixelwerte zu bestimmen, die verwendet werden, um diesen (X,Y)-Pixelort, der diesem Pixelpunkt entspricht, aufzubereiten. Fachleute werden erkennen, daß das Zusammensetzen durchgeführt werden kann, nachdem ale Abtastpunkte auf einem Strahl ausgewertet wurden, im Gegensatz zu dem Zusammensetzen von jedem Abtastpunkt, während jeder Abtastpunkt verarbeitet wird.
  • Ein Block 516 bestimmt, ob weitere Abtastpunkte entlang des Strahls, der ausgewertet werden soll, existieren. Wenn dies der Fall ist, erhält ein Block 518 den nächsten Abtastpunkt entlang des Strahls, der ausgewertet werden soll. Ein Fortschreiten von Abtastpunkt zu Abtastpunkt entlang des Strahls wird durch einfache ganzzahlige Additionen unter Verwendung der Werte, die in dem Block 212 (2) bestimmt wurden, und den Werten x', y' und z' erreicht. Die Steuerung springt dann zu einem Block 506. Die Schritte in den Blöcken 506, 508, 510, 512 und 514 werden dann wiederholt. Wenn die Antwort in dem Block 516 negativ ist, was anzeigt, daß keine weiteren Abtastpunkte entlang des gegenwärtigen Strahls existieren, springt die Steuerung zu einem Block 520, der bestimmt, ob weitere Strahlen, die verarbeitet werden sollen, existieren. Wenn die Antwort in dem Block 520 positiv ist, kehrt die Steuerung zu dem Block 206 in 2 zurück um den nächsten Strahl zu erhalten. Wenn die Antwort in dem Block 520 negativ ist, was anzeigt, daß keine weiteren Strahlen, die verarbeitet werden sollen, existieren, springt die Steuerung von 5 zu 2 zurück.
  • 6 zeigt eine zweidimensionale Darstellung eines Volumendatensatzes in dem Quellenraum. Wie nun in 6 gezeigt ist, wird eine vereinfachte zweidimensionale Darstellung eines Volumendatensatzes in dem Quellenraum verwendet, um die Transformationsbeziehung für die kombinierte inverse Matrix zwischen Voxeln und Abtastpunkten darzustellen. Das Bezugszeichen 602 stellt die i-, die j- und die k-Richtung in dem Quellenraum dar, wobei sich die j-Richtung senkrecht aus der Papierebene erstreckt. Der Volumendatensatz 604 in dem Quellenraum weist Voxel auf, die sich an den Schnittpunkten der Gitterlinien befinden. Ein Voxel 606 ist veranschaulichend für alle Voxel in dem Volumendatensatz 604.
  • 7 zeigt eine zweidimensionale Darstellung des Volumendatensatzes von 6 in dem Bestimmungsraum, oder Betrachtungsraum, nach der Transformation für eine perspektivische Aufbereitung. Bezugnehmend nun auf 7 wurde ein Operator der kombinierten Matrix auf den Volumendatensatz 604 (6) angewendet, was eine Änderung der Ausrichtung, die für den Volumendatensatz 604 in dem Bestimmungsraum, oder Betrachtungsraum, gezeigt ist, für eine perspektivische Aufbereitung zur Folge hat. Das Bezugszeichen 702 stellt die x-, die y- und die z-Richtung in dem Bestimmungsraum, oder Betrachtungsraum, dar, wobei sich die y-Richtung senkrecht aus der Papierebene erstreckt. Als ein Ergebnis des Operators der kombinierten Matrix wird für die perspektivische Ansicht, die durch den Benutzer erwünscht ist, ein Projektionsmittelpunkt 704 festgelegt. Ein Betrachtungsvektor 708 ist veranschaulichend für viele Betrachtungsvektoren, die von dem Projektionsmittelpunkt 704 ausgehen.
  • 8 zeigt eine zweidimensionale Darstellung des Volumendatensatzes von 7 zurück in dem Quellenraum nach der Transformation durch die kombinierte inverse Matrix. Wie nun in 8 gezeigt ist, wurde ein Operator der kombinierten inversen Matrix auf den Volumendatensatz 604 angewendet. Das Bezugszeichen 602 stellt die i-, die j- und die k-Richtung in dem Quellenraum dar, wobei sich die k-Richtung senkrecht aus der Papierebene erstreckt. Eine Bildebene 710 (7) wurde ebenfalls in den Quellenraum gebracht, wobei die Beziehung, die dieselbe in dem Bestimmungsraum, oder Betrachtungsraum, mit dem Volumendatensatz 604 hatte, bewahrt wird. Strahlen werden von dem Projektionsmittelpunkt 704 durch Pixelorte entlang der Bildebene 710 geworfen. Ein Pixel 812 und ein Strahl 814 sind veranschaulichend für die Pixel entlang der Bildebene 710 und die Strahlen, die von denselben geworfen sind, die von dem Projektionsmittelpunkt 704 ausgehen.
  • Entlang des Strahls 814 sind Abtastpunkte 816, 818, 820 und 822 angeordnet, die in den Volumendatensatz 604 fallen. Eine Interpolationstechnik einer bestimmten Art muß angewendet werden, um Werte für die Abtastpunkte 816, 818, 820 und 822 aus den Nachbarschaftsvoxeln, die jeden Abtastpunkt umgeben, abzuleiten. Die Interpolation des nächstliegenden Nachbarn und die trilineare Interpolation sind zwei derartige Techniken, die für dreidimensionale räumliche Transformationen verwendet werden. Abtastpunkte entlang weiterer Strahlen werden in gleicher Weise verarbeitet. Fachleute werden erkennen, daß die Grundsätze, die in den 6 bis 8 bei einer zweidimensionalen Darstellung gezeigt sind, ebenso in drei Dimensionen gelten.
  • 9 zeigt eine dreidimensionale Darstellung der trilinearen Interpolationstechnik zum Bestimmen von Pixelwerten zum Aufbereiten von Abtastpunkten nach einer dreidimensionalen räumlichen Transformation. Wie nun in 9 gezeigt ist, stellt ein Bezugszeichen 932 die i-, die j- und die k-Richtung im Quellenraum dar. Ein Transformationsabtastpunkt 918 ist ein (x',y',z')-Abtastpunkt in dem Quellenraum. 902, 904, 906, 908, 910, 912, 914 und 916 stellen acht Voxel in dem Quellenraum dar, die einen transformierten (x',y',z')-Abtastpunkt 918 enthalten. Der Abstand dx 934 wird durch Maskieren des tieferen Bruchteilabschnitts des Werts x' mit dem 16,16-Format und ein Zugreifen auf die Bruchteilnachschlagtabelle 302 (3) bestimmt. Der Abstand dy 936 wird durch Maskieren des tieferen Bruchteilabschnitts des Werts y' mit dem 16,16-Format und ein Zugreifen auf die Bruchteilnachschlagtabelle 302 (3) bestimmt. Der Abstand dz 938 wird durch Maskieren des tieferen Bruchteilabschnitts des Werts z' mit dem 16,16-Format und ein Zugreifen auf die Bruchteilnachschlagtabelle 302 (3) bestimmt.
  • Die Interpolation beginnt durch das Auswerten eines ersten Schnitts, der durch die Ebene definiert ist, die die Punkte 902, 904, 906 und 908 enthält. Der Wert des Punkts 920 wird interpoliert, indem die Differenz zwischen den Voxeln 904 und 902 gebildet wird, mit dem Wert des Abstands dx 934 multipliziert wird, und indem nachfolgend dieses Produkt zu dem Wert des Voxels 902 addiert wird, was durch die folgende Gleichung dargestellt ist, wobei P920, P904, usw., den Wert jedes Punkts an diesem Ort darstellen: P920 = ((P904 – P902)·dx) + p902
  • In gleicher Weise wird der Wert des Punkts 922 durch das Bilden der Differenz zwischen dem Voxel 906 und 908, das Multiplizieren mit dem Wert des Abstands dx 934 und das nachfolgende Addieren dieses Produkts zu dem Wert des Voxels 908 bestimmt.
  • In gleicher Weise wird der Wert des Punkts 924 durch das Bilden der Differenz zwischen den Punkten 922 und 920, das Multiplizieren mit dem Wert des Abstands dy 936 und das nachfolgende Addieren dieses Produkts zu dem Wert des Punkts 920 bestimmt.
  • Die gleiche, oben angegebene Prozedur wird für den nächsten Schnitt verfolgt, der durch die Ebene definiert ist, die die Voxel 910, 912, 914 und 916 enthält. Die Werte der Punkte 926, 928 und 930 werden auf die gleiche Weise bestimmt, wie oben die Punkte 920, 922 und 924 bestimmt wurden.
  • Der schließliche Wert, der verwendet wird, um das Pixel, das dem transformierten Abtastpunkt 918 entspricht, aufzubereiten, wird bestimmt, indem die Differenz zwischen den Punkten 930 und 924 gebildet wird, mit dem Wert des Abstands dz 938 multipliziert wird, und nachfolgend dieses Produkt zu dem Wert des Punkts 924 addiert wird. Dieses Verfahren wird für jeden Abtastpunkt entlang eines Strahls und für alle Strahlen in dem Volumen, das aufbereitet werden soll, wiederholt.

Claims (9)

  1. Strahltransformationsverfahren für eine schnelle Volumenaufbereitung für eine perspektivische Ansicht eines Volumendatensatzes (604) zur aufbereiteten Darstellung des Volumendatensatzes auf einer zweidimensionalen Graphikanzeige (110) eines Computersystems (100) mit folgenden Schritten: (a) Ausdrücken eines Anfangsbestimmungsraumvoxels eines Strahls (814) in homogenen Koordinaten mit einem x-Wert, einem y-Wert, einem z-Wert und einen w-Wert; (b) Bestimmen eines Abstandswerts für eine Projektionsebene für eine gewünschte perspektivische Ansicht; (c) Erzeugen einer Strahltransformationsmatrix, die einem Pixelort zugeordnet ist, wobei der Pixelort eine X-Komponente und eine Y-Komponente aufweist, sowie den x-Wert und den y-Wert des Anfangsbestimmungsraumvoxels des Strahls (814), das in homogenen Koordinaten ausgedrückt ist, wobei die Strahltransformationsmatrix ferner einen z-Vektor aufweist, wobei der z-Vektor eine iR-Komponente und eine jR-Komponente aufweist; (d) Initialisieren (204) aller Werte für die Strahltransformationsmatrix mit Ausnahme der iR-Komponente und der jR-Komponente; (e) Initialisieren (208) der iR-Komponente und der jR-Komponente des z-Vektors der Strahltransformationsmatrix durch Dividieren der X-Komponente des Pixelorts durch den Abstandswert für die iR-Kom ponente und Dividieren der Y-Komponente des Pixelwerts durch den Abstandswert für die jR-Komponente; (f) Erzeugen einer inversen Matrix für eine orthographische Modellansicht, wobei die inverse Matrix für eine orthographische Modellansicht homogene Koordinaten aufweist; (g) Multiplizieren (210) der inversen Matrix für eine orthographische Modellansicht mit der Strahltransformationsmatrix, was eine kombinierte inverse Matrix ergibt; (h) Multiplizieren (404, 504) des Anfangsbestimmungsraumvoxels, das in homogenen Koordinaten ausgedrückt ist, mit der kombinierten inversen Matrix, was einen inversen transformierten Abtastpunkt (918) ergibt, wobei der inverse transformierte Abtastpunkt einen x'-Koordinatenwert, einen y'-Koordinatenwert und einen z'-Koordinatenwert aufweist; (i) Addieren (404) von 0,5 sowohl zu dem x'-Koordinatenwert, dem y'-Koordinatenwert als auch dem z'-Koordinatenwert des inversen transformierten Abtastpunkts (918); (j) Bestimmen (406) eines Anfangsnachbarschaftspunkts, durch Codieren des x'-Koordinatenwerts, des y'-Koordinatenwerts und des z'-Koordinatenwerts des inversen transformierten Abtastpunkts (918) in ein Festkommaformat, wobei das Festkommaformat einen Skalarabschnitt mit einer ersten vorbestimmten Anzahl von Bits und einen Bruchteilabschnitt mit einer zweiten vorbestimmten Anzahl von Bits aufweist, und Verschieben (406, 506) sowohl des x'-Koordinatenwerts, des y'-Koordinatenwerts als auch des z'-Koordinatenwerts des inversen transformierten Abtastpunkts (918) um die vorbestimmte Anzahl von Bits nach rechts, was den Anfangsnachbarschaftspunkt ergibt, wobei der Anfangsnachbarschaftspunkt eine ganzzahlige Komponente i, eine ganzzahlige Komponente j und eine ganzzahlige Komponente k aufweist; (k) Bestimmen einer Nachbarschaft von acht Quellen raumvoxeln, die den Anfangsnachbarschaftspunkt umgeben; (l) Bestimmen eines nächstliegenden Nachbarschafts-Quellenraumvoxels aus der Nachbarschaft der acht Quellenraumvoxel relativ zu dem Anfangsnachbarschaftspunkt, wobei das nächstliegende Nachbarschafts-Quellenraumvoxel einen Quellenraumwert aufweist; (m) Zuweisen (408) des Quellenraumwerts des nächstliegenden Nachbar-Quellenraumvoxels zu dem inversen transformierten Abtastpunkt (918), wobei der Quellenraumwert bei dem weiteren Aufbereitungsverfahren für den inversen transformierten Abtastpunkt verwendet wird; (n) falls ein weiterer Abtastpukt auf dem Strahl existiert, Erhöhen des x'-Koordinatenwerts, des y'-Koordinatenwerts und des z'-Koordinatenwerts jeweils um vorbestimmte WERTE; und Wiederholen der Schritte (k) bis (m); und (o) falls ein weiterer Strahl existiert, Erhalten (206, 402) eines nächsten Anfangsbestimmungsraumvoxels eines nächsten Strahls und Wieder holen der Schritte (a) bis (n).
  2. Verfahren gemäß Anspruch 1, bei dem die Schritte ((i) bis (m) durch folgende Schritte (i) bis (n) ersetzt sind: (i) Bestimmen (506) eines Anfangsnachbarschaftspunkts, durch Codieren des x'-Koordinatenwerts, des y'-Koordinatenwerts und des z'-Koordinatenwerts des inversen transformierten Abtastpunkts (918) in ein Festkommaformat, wobei das Festkommaformat einen Skalarabschnitt mit einer ersten vorbestimmten Anzahl von Bits und einen Bruchteilabschnitt mit einer zweiten vorbestimmten Anzahl von Bits aufweist, und Verschieben (406, 506) sowohl des x'-Koordinatenwerts, des y'-Koordinatenwerts als auch des z'-Koordinatenwerts des inversen transformierten Abtastpunkts (918) um die vorbestimmte Anzahl von Bits nach rechts, was den Anfangsnachbarschaftspunkt ergibt, wobei der Anfangsnachbarschaftspunkt eine ganzzahlige Komponente i, eine ganzzahlige Komponente j und eine ganzzahlige Komponente k aufweist; (j) Bestimmen einer Nachbarschaft von acht Quellenraumvoxeln, die den Anfangsnachbarschaftspunkt umgeben, wobei jedes der Nachbarschaft von acht Quellenraumvoxeln einen Quellenraumwert aufweist; (k) Bestimmen (508) eines Delta-x-Werts; (l) Bestimmen (508) eines Delta-y-Werts; (m) Bestimmen (508) eines Delta-z-Werts; und (n) Bestimmen (512) eines kombinierten Quellenraumwerts für den inversen transformierten Abtastpunkt (918) durch eine trilineare Interpolation der Quellenraumwerte der Nachbarschaft von acht Quellenraumvoxeln, dem Delta-x-Wert, dem Delta-y-Wert und dem Delta-z-Wert, wobei der kombinierte Quellenraumwert für den inversen transformierten Abtastpunkt bei dem weiteren Aufbereitungsverfahren für den inversen transformierten Abtastpunkt verwendet wird. (o) falls ein weiterer Abtastpukt auf dem Strahl existiert, Erhöhen des x'-Koordinatenwerts, des y'-Koordinatenwerts und des z'-Koordinatenwerts jeweils um vorbestimmte Werte, und Wiederholen der Schritte (k) bis (n); und (p) falls ein weiterer Strahl existiert, Erhalten (206, 402) eines nächsten Anfangsbestimmungsraumvoxels eines nächsten Strahls und Wiederholen der Schritte (a) bis (o).
  3. Verfahren gemäß Anspruch 1 oder 2, bei dem die erste vorbestimmte Anzahl von Bits und die zweite vorbestimmte Anzahl von Bits sechzehn ist.
  4. Verfahren gemäß Anspruch 1, das ferner folgenden Schritt (a1), der vor dem Schritt (a) durchgeführt wird, und folgenden Schritt (m1), der nach dem Schritt (m) durchgeführt wird, aufweist: (a1) Erzeugen (202) einer y-Richtung-Nachschlagtabelle und einer z-Richtung-Nachschlagtabelle; und (m1) Zusammensetzen (410) des Quellenraumwerts, der dem inversen transformierten Abtastpunkt (918) zugeordnet ist.
  5. Verfahren gemäß Anspruch 4, bei dem der Schritt (1) ferner folgenden Schritt (11) aufweist: (l1) Bestimmen des nächstliegenden Nachbarquellenraumvoxels durch Zugreifen auf die y-Richtung-Nachschlagtabelle und die z-Richtung-Nachschlagtabelle.
  6. Verfahren gemäß Anspruch 2, das ferner folgenden Schritt (a1), der nach dem Schritt (a) durchgeführt wird, und folgenden Schritt (n1), der nach dem Schritt (n) durchgeführt wird, aufweist: (a1) Erzeugen (202) einer Bruchteilnachschlagtabelle, einer y-Richtung-Nachschlagtabelle und einer z-Richtung-Nachschlagtabelle; und (n1) Zusammensetzen (514) des kombinierten Quellenraumwerts für den invertierten transformierten Abtastpunkt (918).
  7. Verfahren gemäß Anspruch 6, bei dem die Schritte (k), (l), (m) und (n) ferner folgende Schritte (k1), (l1), (ml) und (n1) aufweisen: (k1) Bestimmen (508) des Delta-x-Werts durch Maskieren des x'-Koordinatenwerts des inversen transformierten Abtastpunkts (918) und durch Zugreifen auf die Bruchteilnachschlagtabelle; (l1) Bestimmen (508) des Delta-y-Werts durch Maskieren des y'-Koordinatenwerts des inversen transformierten Abtastpunkts (918) und Zugreifen auf die Bruchteilnachschlagtabelle; (m1) Bestimmen (508) des Delta-z-Werts durch Maskieren des z'-Koordinatenwerts des inversen transformier ten Abtastpunkts (918) und Zugreifen auf die Bruchteilnachschlagtabelle; und (n1) Bestimmen (512) des kombinierten Quellenwerts durch Zugreifen auf die y-Richtung-Nachschlagtabelle und die z-Richtung-Nachschlagtabelle, um die trilineare Interpolation zu unterstützen.
  8. Verfahren gemäß Anspruch 1, bei dem der Schritt (n) folgende Schritte aufweist: Isolieren (212) einer z-Vektor-Komponente der kombinierten inversen Matrix, wobei die z-Vektor-Komponente einen iC-Wert, einen jC-Wert und einen kC-Wert aufweist, und Umwandeln der z-Vektor-Komponente der kombinierten inversen Matrix in ganzzahlige Werte durch Multiplizieren sowohl des iC-Werts, der jC-Werts als auch des kC-Werts mit 65.536, was einen iF-Wert, einen jF-Wert und einen kF-Wert ergibt; und Ableiten (414) des nächsten transformierten Abtastpunktes entlang des Strahls (814) durch Addieren des iF-Werts zu dem x'-Koordinatenwert, Addieren des jF-Werts zu dem y'-Koordinatenwert und Addieren des kF-Werts zu dem z'-Koordinatenwert.
  9. Verfahren gemäß Anspruch 2, bei dem der Schritt (o) folgende Schritte aufweist: Isolieren (212) einer z-Vektor-Komponente der kombinierten inversen Matrix, wobei die z-Vektor-Komponente einen iC-Wert, einen jC-Wert und einen kC-Wert aufweist, und Umwandeln der z-Vektor-Komponente der kombinierten inversen Matrix in ganzzahlige Werte durch das Multiplizieren sowohl des iC-Werts, des jC-Werts als auch des kC-Werts mit 65.536, was einen iF-Wert, einen jF-Wert und einen kF-Wert ergibt; und Ableiten (518) des nächsten transformierten Abtastpunktes entlang des Strahls (814) durch Addieren des iF-Werts zu dem x'-Koordinatenwert, Addieren des jF-Werts zu dem y'-Koordinatenwert und Addieren des kF-Werts zu dem z'-Koordinatenwert.
DE19807053A 1997-05-30 1998-02-19 Strahltransformationsverfahren für eine schnelle Volumenaufbereitung für eine perspektivische Betrachtung Expired - Fee Related DE19807053B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US865756 1997-05-30
US08/865,756 US6014143A (en) 1997-05-30 1997-05-30 Ray transform method for a fast perspective view volume rendering

Publications (2)

Publication Number Publication Date
DE19807053A1 DE19807053A1 (de) 1998-12-03
DE19807053B4 true DE19807053B4 (de) 2005-03-17

Family

ID=25346157

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19807053A Expired - Fee Related DE19807053B4 (de) 1997-05-30 1998-02-19 Strahltransformationsverfahren für eine schnelle Volumenaufbereitung für eine perspektivische Betrachtung

Country Status (4)

Country Link
US (1) US6014143A (de)
JP (1) JP3290954B2 (de)
DE (1) DE19807053B4 (de)
GB (1) GB2325836B (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6008813A (en) * 1997-08-01 1999-12-28 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Real-time PC based volume rendering system
GB2329810B (en) * 1997-09-29 2002-02-27 Science Res Foundation Generation and use of compressed image data
JP3597360B2 (ja) * 1997-11-17 2004-12-08 株式会社リコー モデリング方法および記録媒体
US6266053B1 (en) * 1998-04-03 2001-07-24 Synapix, Inc. Time inheritance scene graph for representation of media content
US6720964B1 (en) * 1998-08-27 2004-04-13 Ati International Srl Method and apparatus for processing portions of primitives that are being rendered
US6771263B1 (en) * 1998-10-13 2004-08-03 Gmd-Forschungszentrum Informationstechnik Gmbh Processing volumetric image data with shadows
US6297799B1 (en) * 1998-11-12 2001-10-02 James Knittel Three-dimensional cursor for a real-time volume rendering system
GB2358980B (en) 2000-02-07 2004-09-01 British Broadcasting Corp Processing of images for 3D display
US7110026B2 (en) * 2001-07-03 2006-09-19 Logitech Europe S.A. Image tagging for post processing
JP4109224B2 (ja) * 2004-07-01 2008-07-02 ザイオソフト株式会社 展開画像投影方法、展開画像投影プログラム、展開画像投影装置
JP4213135B2 (ja) * 2005-04-22 2009-01-21 ザイオソフト株式会社 展開画像投影方法、展開画像投影プログラム、展開画像投影装置
US20070046661A1 (en) * 2005-08-31 2007-03-01 Siemens Medical Solutions Usa, Inc. Three or four-dimensional medical imaging navigation methods and systems
US7999807B2 (en) * 2005-09-09 2011-08-16 Microsoft Corporation 2D/3D combined rendering
US7522164B2 (en) * 2006-03-28 2009-04-21 International Business Machines Corporation Using self-adjustable three-dimensional matrix to simplify the construction of a complex 3D scene
KR100834374B1 (ko) 2006-07-11 2008-06-02 엠텍비젼 주식회사 모델/뷰 역행렬 조건적 생성 방법 및 이를 이용한 그래픽처리 장치
US20090040220A1 (en) * 2007-02-05 2009-02-12 Jonathan Gibbs Hybrid volume rendering in computer implemented animation
US20080232694A1 (en) * 2007-03-21 2008-09-25 Peter Sulatycke Fast imaging data classification method and apparatus
JP5394620B2 (ja) * 2007-07-23 2014-01-22 ジーイー・メディカル・システムズ・グローバル・テクノロジー・カンパニー・エルエルシー 超音波撮像装置および画像処理装置
KR100924122B1 (ko) * 2007-12-17 2009-10-29 한국전자통신연구원 픽셀 단위 처리 요소 기반의 광선 추적 장치 및 방법
US9390557B2 (en) * 2011-08-11 2016-07-12 Siemens Aktiengesellschaft Floating volume-of-interest in multilayer volume ray casting
CN103168289B (zh) * 2011-10-14 2016-07-06 松下知识产权经营株式会社 转置运算装置及其集成电路、以及转置处理方法
US10290145B2 (en) * 2017-06-30 2019-05-14 International Business Machines Corporation Image space-based particle generation modeling
JP6544472B1 (ja) * 2018-09-06 2019-07-17 大日本印刷株式会社 レンダリング装置、レンダリング方法、及びプログラム
KR20210030147A (ko) * 2019-09-09 2021-03-17 삼성전자주식회사 3d 렌더링 방법 및 장치
JP6874932B1 (ja) * 2020-10-16 2021-05-19 エッジコーティックス ピーティーイー. リミテッド 集積回路上での量子化されたスケーリングの準備および実行

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5313567A (en) * 1991-06-13 1994-05-17 At&T Bell Laboratories Arrangement for determining and displaying volumetric data in an imaging system
US5515484A (en) * 1993-10-06 1996-05-07 Silicon Graphics, Inc. Method and apparatus for rendering volumetric images
US5519401A (en) * 1993-11-01 1996-05-21 Loral Corporation Programmed radar coordinate scan conversion

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2270243B (en) * 1992-08-26 1996-02-28 Namco Ltd Image synthesizing system
JPH06290276A (ja) * 1993-02-15 1994-10-18 Philips Electron Nv 3次元場面の映像化用配置及び方法
US5787889A (en) * 1996-12-18 1998-08-04 University Of Washington Ultrasound imaging with real time 3D image reconstruction and visualization

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5313567A (en) * 1991-06-13 1994-05-17 At&T Bell Laboratories Arrangement for determining and displaying volumetric data in an imaging system
US5515484A (en) * 1993-10-06 1996-05-07 Silicon Graphics, Inc. Method and apparatus for rendering volumetric images
US5519401A (en) * 1993-11-01 1996-05-21 Loral Corporation Programmed radar coordinate scan conversion

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FOLEY, J.D. et al.: Computer-Graphics-Principles and Practice, Addison-Wesley, 1996, S.213-217,229- 237, 260-267
FOLEY, J.D. et al.: Computer-Graphics-Principles and Practice, Addison-Wesley, 1996, S.213-217,229-237, 260-267 *

Also Published As

Publication number Publication date
JP3290954B2 (ja) 2002-06-10
GB2325836B (en) 2001-08-15
DE19807053A1 (de) 1998-12-03
US6014143A (en) 2000-01-11
GB9810151D0 (en) 1998-07-08
GB2325836A (en) 1998-12-02
JPH117546A (ja) 1999-01-12

Similar Documents

Publication Publication Date Title
DE19807053B4 (de) Strahltransformationsverfahren für eine schnelle Volumenaufbereitung für eine perspektivische Betrachtung
DE19646194B4 (de) Echtzeit-Wiedergabeverfahren zum wahlweisen Ausführen von Bump-Mapping- und Phong-Schattierungs-Prozessen und zugehörige Vorrichtung
DE4314265B4 (de) Displaysystem
DE69816824T2 (de) Texturabbildung in 3-d-rechnergraphik
DE102005035012B4 (de) Hochleistungsschattierung von großen volumetrischen Daten unter Verwendung von partiellen Schirmraumableitungen
DE19807013B4 (de) Volumetrisches Vorabschneidungsverfahren, das eine minimale Anzahl von Abtastpunkten durch ein Volumen gewährleistet
EP0318176B1 (de) Bildverarbeitungsverfahren und -gerät
DE102005008824B4 (de) Verfahren zum Registrieren von zwei Bildern unter Verwendung eines Graphikprozessors und die computerlesbare Programmspeichervorrichtung hierfür
DE60012917T2 (de) Verfahren und vorrichtung für eine antialiasing-operation auf impliziten kanten
DE3832222A1 (de) Vorrichtung und verfahren zum anzeigen eines 2-dimensionalen bildes eines 3-dimensionalen gegenstandes
DE102005023964A1 (de) Volumenvisualisierung mittels Texturverschiebung
DE69926986T2 (de) Rechnergrafiken-animationsverfahren und vorrichtung
DE69916808T2 (de) Verfahren und system zur strahlverfolgung
DE19806985B4 (de) Organisationsverfahren für volumetrische Daten, das effiziente Cache-Aufbereitungsbeschleunigungen und einen effizienten Graphik-Hardwareentwurf ermöglicht
DE4224568C2 (de) Vorrichtung und Verfahren zur Bildung der Anzeige eines dreidimensionalen sequentiellen tomografischen Flächenschattierungsbildes
DE69921608T2 (de) Verfahren und vorrichtung zum zoomen von digitalen bilddateien
DE102006023633A1 (de) Gleichzeitige Projektion von mehrfach verzweigten Gefäßen und ihrer Umgebung auf einem einzigen Bild
DE102005035796A1 (de) System und Verfahren zum Polygon-Glätten beim texturbasierten Volumen-Rendering
EP2528042A1 (de) Verfahren und Vorrichtung zum Re-Meshing von 3D-Polygonmodellen
DE112011105126T5 (de) Texturkartierungsvorrichtung
DE3837068B4 (de) Bildverarbeitungsverfahren zur Gewinnung eines Schattenbildes
DE3512681C2 (de)
DE60020234T2 (de) Verfahren und vorrichtung zur bildwiedergabe
EP2893510B1 (de) Verfahren und bildverarbeitungsanlage zum entfernen eines visuellen objektes aus einem bild
DE60030401T2 (de) Anzeigetechniken für dreidimensionale virtuelle Realität

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: HEWLETT-PACKARD CO. (N.D.GES.D.STAATES DELAWARE),

8327 Change in the person/name/address of the patent owner

Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE

8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20140902