-
Hintergrund der Erfindung
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft allgemein das Abbilden von dreidimensionalen
(„3D") Volumendatenmengen.
Insbesondere betrifft die vorliegende Erfindung die schnelle Visualisierung
und Analyse von Strukturen innerhalb von 3D Volumendatenmengen.
-
Stand der
Technik
-
Viele
Aufgabengebiete benötigen
die Analyse und die Darstellung von dreidimensionalen („3D") Volumendatenmengen.
Beispielsweise wird auf medizinischem Gebiet ein CAT (computerized
axial tomography) Scanner oder eine Kernspinntomographie- (MRI)
Vorrichtung verwendet, um ein „Bild" oder ein diagnostisches
Bild eines Teils eines Patientenkörpers zu erstellen. Der Scanner
oder die MRI-Vorrichtung erzeugen eine 3D-Volumendatenmenge, die abgebildet oder
dargestellt werden muss, damit das medizinische Personal das Bild
analysieren und eine Diagnose stellen kann.
-
Dreidimensionale
Volumendatenmengen werden auch in verschiedenen Aufgabengebieten, die
sich auf die Geowissenschaften beziehen, verwendet. Die seismische
Prüfung
ist ein Verfahren zum Erforschen der Geologie unterhalb der Erdoberfläche. Eine
unterirdische Explosion oder ein Erdbeben erzeugt seismische Wellen,
die Schallwellen geringer Frequenz ähnlich sind und die sich unterhalb der
Erdoberfläche
fortsetzen und mittels Seismographen detektiert werden. Die Seismographen
registrieren die Ankunftszeit sowohl der direkten als auch der reflektierten
seismischen Wellen. Kennt man die Zeit und den Ort der Explosion
oder des Erdbebens, kann die Laufzeit der Wellen durch das Erdinnere
berechnet und dazu verwendet werden, die Geschwindigkeit der Wellen
im Erdinneren zu ermitteln. Ein ähnliches
Verfahren kann zur Erkundung von Offshoreöl und Gasvorkommen verwendet
werden. Bei der Offshore-Erkundung zieht ein Schiff eine Tonquelle
und Unterwasserhydrophone. Schallwellen tiefer Frequenz (beispielsweise
50 Hz) werden beispielsweise durch eine pneumatische Vorrichtung
erzeugt, die wie das Zerplatzen eines Ballons arbeitet. Der Schall
wird von den Gesteinsschichten unterhalb des Meeresbodens zurückgeworfen
und von den Hydrophonen aufgefangen. In dieser Weise können unter
der Oberfläche
befindliche Sedimentstrukturen, die Öl einschließen, wie Verwerfungen, Falten
und Lagerstätten
mittels der reflektierten Wellen „kartographiert" werden. Die Daten
werden zu 3D-Volumendatenmengen
verarbeitet, die einen Reflexions- oder seismischen Amplitudendatenwert
an genau angegebenen (x, y, z) Orten innerhalb eines geographischen
Raumes beinhalten.
-
Eine
3D-Volumendatenmenge besteht aus „Voxeln" oder Volumenelementen. Jedes Voxel
besitzt einen numerischen Wert für
eine gemessene oder berechnete Eigenschaft, beispielsweise die seismische
Amplitude des Volumens an diesem Ort. Eine übliche Methode um ein Bild
einer 3D-Volumendatenmenge zu erstellen ist es, die 3D-Volumendatenmenge
in eine Vielzahl von zweidimensionalen („2D") Schnittflächen oder Schnitte zu schneiden. Das
Bild der 3D-Volumendatenmenge ist dann aus den 2D-Scheiben zusammengesetzt.
Beispielsweise wird das Bild der 3D-Volumendatenmenge durch Stapeln
der 2D-Schnitte in einer Reihenfolge von hinten nach vorne erzeugt
und dann zu einem kompletten Bild zusammengesetzt. Der Benutzer
sieht, wie das Bild Schicht für
Schicht mit dem Wachsen des Composits zusammengesetzt wird. Obwohl
der Benutzer die interne Organisation der Struktur des Volumens sehen
kann, während
das zusammengesetzte Bild wächst,
ist das traditionelle Schneiden und Zusammensetzverfahren gewöhnlich langsam,
insbesondere wenn sehr große
3D-Volumendatenmengen verwendet werden. Zusätzlich füllen das Schneiden und das
Zusammensetzen das Gesichtsfeld des Benutzers mit unwesentlicher
Information und beeinträchtigt
die Fähigkeit
des Benutzers, die den 3D-Volumendatenmengen innewohnenden Merkmale
akkurat zu visualisieren und zu interpretieren.
-
Speziell
zur Darstellung von 3D-seismischen Datenmengen wurde Computersoftware
für die Öl- und Gasindustrie
entwickelt. Beispiele von solchen üblichen Computerprogrammen
sind VoxelGeo, erhältlich
von Pradigm Geophysical, Houston, TX, SeisWorks und EarthCube, erhältlich von
Landmark Graphics Corporation und IESX, erhältlich von GeoQuest. Solche üblichen
Computerprogramme haben zahlreiche Schwächen, die einen Benutzer daran hindern,
die in einer 3D-seismischen Datenmenge beinhalteten Merkmale schnell
und akkurat zu visualisieren und zu interpretieren. Übliche Computerprogramme
zum Visualisieren und Interpretieren von 3D-seismischen Daten arbeiten
mit dem vollständigen
3D-Volumen der seismischen Daten. Folglich muss jedes Mal, wenn
eine Veränderung
vorgenommen wird, beispielsweise eine Veränderung an der Transparenz
oder an dem Opazitätseinstellungen, das
vollständige
3D-Volumen der seismischen Daten verarbeitet werden und das Bild
erneut gezeichnet werden. Selbst wenn solche Programme auf hoch
effizienten Graphiksupercomputern betrieben werden, ist die zeitliche
Verzögerung
beim erneuten Zeichnen des Bildes für den Benutzer wahrnehmbar.
Für ein 3D-Volumen
mit 500 Megabyte seismischen Daten kann es für übliche Programme eine Größenordnung von
30 bis 45 Sekunden beanspruchen, um das vollständige Bild erneut zu zeichnen
(Bildrate von 0,03 bis 0,02 Bilder pro Sekunde). Während der
Verzögerungszeit
von 30 bis 45 Sekunden verliert der Benutzer die Konzentration am
beobachteten Merkmal, wodurch es schwierig ist, die seismischen
Daten vollständig
und genau zu analysieren.
-
Einige
der herkömmlichen
3D-seismischen Interpretationsprogramme bieten die Möglichkeit,
ein Stück
des vollständigen
3D-Volumens der seismischen Daten zu visualisieren und zu interpretieren. Der
Benutzer gibt die Koordinaten des ausgewählten Stücks über ein Steuerungsmenü ein. Ein
Bild des ausgewählten
Stücks
wird gezeichnet. Das ausgewählte
Stück kann
dann, wenn gewünscht,
an diesem Ort gedreht werden. Um sich jedoch ein anderes Stück des vollständigen 3D-Volumens
der seismischen Daten anzusehen, beispielsweise um einem geologischen
Merkmal, das vorläufig
identifiziert wurde, zu folgen, muss das Bild abgebrochen, ein neuer Ort
oder Koordinaten für
ein anderes Stück
eingegeben und ein neues Bild mit dem anderen Stück gezeichnet werden. Diese
Unterbrechung in dem dargestellten Bild erschwert es dem Benutzer,
einen Zusammenhang zwischen zwei Stücken des vollständigen 3D-Volumens
der seismischen Daten, die abgebildet wurden, zu visualisieren.
Dieses erschwert die Fähigkeit
des Benutzers, die geologischen Merkmale, die in dem vollständigen 3D-Volumen
der seismischen Daten beinhaltet sind, zu interpretieren und zu identifizieren.
Weiterhin setzen übliche
3D-seismische Interpretationsprogramme das Verarbeiten des vollständigen 3D-Volumens
der seismischen Daten zum Zeichnen des Bildes fort, auch wenn nur
ein Stück
des vollständigen
3D-Volumens der seismischen Daten sichtbar dargestellt wird, wodurch
die Darstellung des Bildes für
den Benutzer verlangsamt ist.
-
Übliche 3D-seismische
Interpretationsprogramme bieten die Möglichkeit einer „Autoauswahl" und identifizieren
Punkte, die einem Voxel-Selektionsalgorithmus genügen. Typischerweise
iterieren diese Programme jedoch durch das vollständige 3D-Volumen
der seismischen Daten, um die Punkte zu identifizieren, die dem
Voxel-Selektionsalgorithmus genügen.
Dieses ist auch auf einem Hochgeschwindigkeitsgraphiksupercomputer
zeitaufwendig. Weiterhin bieten gewöhnliche 3D-seismische Interpretationsprogramme
nicht die Möglichkeit, aus
der Sammlung der gewählten
Voxel Streichungen vorzunehmen. Der einzige Weg Punkte aus der Sammlung
der gewählten
Voxel unter Verwendung vom üblichen
3D-seismischen Interpretationsprogrammen zu „eliminieren", ist es, wiederholt
die Auswahlkriterien für
den Voxel-Selektionsalgorithmus einzustellen, bis die zu eliminierenden
Punkte aus den Selektionskriterien für die darzustellenden Punkte,
die dem Voxel-Selektionsalgorithmus
genügen, herausfallen.
Jedes Mal wenn die Selektionskriterien angepasst werden, muss das
Bild unterbrochen werden. Dieser iterative Prozess ist zeitaufwendig
und beeinträchtigt
den Visualisierungsprozess des Benutzers.
-
Daher
besteht im Stand der Technik ein Bedürfnis nach einem System und
einem Verfahren zur Darstellung von 3D-Volumendatenmengen, die die oben
beschriebenen Nachteile überwinden.
Insbesondere besteht ein Bedarf für ein System und ein Verfahren,
das Bilder von großen
3D-Volumendatenmengen als Reaktion auf Benutzereingaben bei einer ausreichend
schnellen Rate erneut zeichnet, so dass der Benutzer einen unmittelbaren
oder Echtzeitwechsel im Bild ohne Unterbrechung oder erkennbare
zeitliche Verzögerung
wahrnimmt. Solch ein System und ein Verfahren würde es einem Benutzer ermöglichen, die
in einer 3D-Volumendatenmenge beinhalteten Merkmale schneller und
genauer zu interpretieren und zu identifizieren.
-
Curved
planar reformatted CT angiography: usefulness for the evaluation
of aneurysms at the carotid siphon, Takashi Ochi et al., American
Journal of Neuroradiology, American Society of Neuroradiology, US,
volume 20, no. 6, June 1999 (1999-06), pages 1025–1030, offenbart
ein Verfahren des Curved planar reformatting (CPR) für die CT
Angiographie und charakterisiert die Leistung dieses Verfahrens
durch Evaluierung von Aneurysmen insbesondere der Halsschlagader,
diese Dokumente offenbaren eine CPR-Technik wie folgt:
Zunächst werden
axiale Schnitte, die ein zu betrachtendes Volumen beinhalten, gestapelt,
um ein Bildvolumen zu erzeugen. Dann wird ein Reformatierungsalgorithmus
an dem beliebig gedrehten Bildvolumen angewendet. Für ein zusammengesetztes
sagittales CPR-Bild wird ein Koronalabschnitt als Referenzebene
ausgewählt.
Der Betrachter blättert
durch eine Serie von benachbarten Referenzbildern, wobei der Verlauf
des Zielgefäßes durch
eine Serie von Mausklicks verfolgt wird. Dieser Vorgang setzt sich fort,
bis der gesamte Verlauf des Zielgefäßes innerhalb des Volumens
von Interesse verfolgt worden ist. Dann wird entlang der definierten
gebogenen Linie eine ein Voxel dicke Ebene, die rechtwinklig zum
Referenzort ist, aus der gesamten Datenmenge entnommen. Schließlich wird
die resultierende „gebogene
Ebene" eingeebnet
und als ein, zusammengesetztes sagittales 2D-Bild, das dem Zielgefäß entspricht,
dargestellt. In der Praxis wurden die gestapelten CT-Scans um die
rostral-caudale Achse gedreht, um die lange Achse eines Aneurysmas
in der sagittalen Ebene anzuordnen bevor CPR angewendet wird.
-
Zusammenfassung
der Erfindung
-
Die
vorliegende Erfindung ist auf ein System und ein Verfahren zum Analysieren
und Darstellen von 3D-Volumendatenmengen gerichtet, die eine 3D-Probensonde
und andere interaktive Hilfsmittel verwenden. Nach einer Ausgestaltung
der Erfindung wird ein Verfahren und ein Computerprogramm bereit gestellt,
das zum Darstellen einer dreidimensionalen Volumendatenmenge mit
einer Vielzahl von Voxeln auf einem Speichermittel gespeichert sein
kann, wobei jedes Voxel einen dreidimensionalen Ort und ein Datenwort
aufweist. Das Datenwort kann stellvertretend für ein physikalisches Phänomen, beispielsweise
ein auf eine bestimmte Position innerhalb eines Geokörpers bezogenes
Amplitudensignal, sein. Das Verfahren kann Schritte wie das Erzeugen
von wenigstens einer dreidimensionalen Probensonde aufweisen, wobei
die dreidimensionale Probensonde dieselbe Größe oder eine Untermenge der
dreidimensionalen Volumendatenmenge ist. Die dreidimensionale Probensonde
besitzt eine Sondenoberfläche
und eine dieser gegenüberliegende
Sondenoberfläche.
Andere Schritte können
das Herstellen einer Vielzahl von Ansteuerungspunkten in der Sondenoberfläche sein,
so dass die Vielzahl von Ansteuerungspunkten eine oder mehrere Linien
auf der Sondenoberfläche
bilden und das Erstrecken eines bandartigen Abschnittes von der
einen oder den mehreren Linien in der Sondenoberfläche in Richtung
der gegenüberliegenden
Sondenoberfläche. Eine
Kante des bandartigen Abschnitts ist bevorzugt durch die eine oder
die mehreren Linien gebildet. Ein weiterer Schritt des Verfahrens
kann das selektives Darstellen der für die physikalischen Phänomene charakteristischen
Datenwörter
an dreidimensionalen Orten, die mit dem bandartigen Abschnitt und
der dreidimensionalen Probensonde schneiden, beinhalten.
-
Das
Verfahren kann weiterhin die Schritte des Editierens der Vielzahl
von Ansteuerungspunkten in der Sondenoberfläche, um dadurch die eine oder
die mehreren Linien neu zu definieren und des Ausweitens eines entsprechend
neu definierten bandförmigen
Abschnitts von der einen oder den mehreren Linien in der Sondenoberfläche in Richtung
der gegenüberliegenden
Sondenoberfläche, aufweisen.
Der Schritt des Editierens kann weiterhin Funktionen, wie beispielsweise
Löschen
eines oder mehrerer der Vielzahl von Ansteuerungspunkten, Wechseln
eines Orts eines oder mehrerer der Vielzahl von Ansteuerungspunkten
und Hinzufügen
eines oder mehrerer Ansteuerungspunkte zu der Vielzahl von Ansteuerungspunkten,
beinhalten.
-
In
einem bevorzugten Ausführungsbeispiel ist
der bandförmige
Abschnitt senkrecht zur Sondenoberfläche und der bandartige Abschnitt
kann sich von der Sondenoberfläche
zur gegenüberliegenden
Sondenoberfläche
erstrecken. Die eine oder die mehreren Linien, die die Kante des
bandförmigen
Abschnitts bilden, können
durch die Vielzahl von Ansteuerungspunkten editiert werden, um eine
Vielzahl von offenen geraden Linien oder eine geometrische Figur
mit einer geschlossenen Linie zu bilden, wenn gewünscht. Der
bandförmige
Abschnitt besteht bevorzugt aus einer Vielzahl von Ebenen. Der bandförmige Abschnitt
kann oder kann nicht parallel mit jeder der Vielzahl von Oberflächen der
Sonde sein.
-
In
einer Anordnung, die nicht die vorliegende Erfindung verkörpert und
sich auf das Verfolgen eines bestimmten physikalischen Phänomens,
beispielsweise einer geologischen Verwerfung, bezieht, kann das
Verfahren die Schritte aufweisen: Positionieren der Sondenoberfläche an einer
ersten Position innerhalb einer dreidimensionalen Volumendatenmenge
und Bilden eines ersten Satzes von Ansteuerungspunkten auf der Sondenoberfläche zum
Verfolgen eines durch die dreidimensionale Volumendatenmenge beschriebene
physikalischen Phänomens. Ein
weiterer Schritt kann sein: Interpolieren zwischen dem ersten Satz
von Ansteuerungspunkten, um eine erste Splinekurve zu definieren.
Andere Schritte können
beinhalten: Bewegen der Sonde zu einer zweiten Position innerhalb
der dreidimensionalen Volumendatenmenge, Bilden eines zweiten Satzes
von Ansteuerungspunkten in der Sondenoberfläche zum Verfolgen des physikalischen
Phänomens
und Interpolieren zwischen diesen, so dass der zweite Satz von Ansteuerungspunkten
eine zweite Splinekurve definiert. Ein anderer Schritt kann sein:
Interpolieren einer dreidimensionalen Oberfläche zwischen der ersten Splinekurve
und der zweiten Splinekurve, die charakteristisch für das physikalische
Phänomen
ist.
-
Das
Verfahren ermöglicht
weiterhin das Darstellen der interpolierten Oberfläche dort,
wo die Oberfläche
mit dem ersten Satz von Ansteuerungspunkten und dem zweiten Satz
von Ansteuerungspunkten schneidet. Es ist ein Vorteil der vorliegenden Erfindung,
dass die erste Splinekurve, die zweite Splinekurve und die folgenden
Splinekurven kurvenförmig
sind.
-
Zusätzliche
Schritte können
sein: Der iterative Prozess des Bewegens der Sonde zu einer dritten Position
innerhalb der dreidimensionalen Volumendatenmenge, Bilden eines
dritten Satzes von Ansteuerungspunkten auf der Sondenoberfläche zum
Verfolgen von physikalischen Phänomenen,
Interpolieren zwischen dem dritten Satz von Ansteuerungspunkten,
um eine dritte Splinekurve zu definieren und Interpolieren zwischen
der ersten Splinekurve, der zweiten Spline und der dritten Splinekurve
um weiterhin die für
die physikalischen Phänomene
charakteristische dreidimensionale Oberfläche zu definieren.
-
Wenn
gewünscht,
kann das Verfahren beispielsweise Schritte aufweisen wie das Editieren
der repräsentativer
Ansteuerungspunkte auf der Sondenoberfläche an der jeweiligen Position
der Sonde. Weiterhin kann das Verfahren das Darstellen einer kurvenförmigen Verbindung
(„v-Kurven") zwischen den Ansteuerungspunkten
und der jeweiligen Position der Sonde. Ein weiterer Schritt kann
das Darstellen der Splinekurven und der v-Kurven auf der dreidimensionalen
Oberfläche
sein. Die Splinekurven und die v-Kurven bilden ein dreidimensionales
Gitter, das ebenso für
die physikalischen Phänomene
charakteristisch ist. Das Gitter weist eine Vielzahl von Schnittpunkten
zwischen den Splinekurven und den v-Kurven auf. Das Verfahren kann weiterhin
das Editieren des aktuellen Satzes von Ansteuerungspunkten auf der
Sondenoberfläche,
wodurch die Oberfläche
und das Gitter zwischen der aktuellen Splinekurve und den früheren Splinekurven
neu geformt wird, aufweisen.
-
Bevorzugt
kann das Verfahren ebenso einen Schritt wie beispielsweise das Auswählen eines
der Vielzahl von Schnittpunkten, um dadurch die Sondenoberfläche zu repositionieren,
um durch den ausgewählten
Schnittpunkt zu führen,
aufweisen. Das Verfahren kann ebenso das Auswählen eines aus dem Satz von
Ansteuerungspunkten, um dadurch die Sondenoberfläche zu repositionieren, um
durch den ausgewählten
Satz von Ansteuerungspunkten zu führen aufweisen.
-
Anders
ausgedrückt
weist ein Ausführungsbeispiel
des Verfahrens die folgenden Schritte auf: Positionieren der Sondenoberfläche an einer
Vielzahl von Positionen innerhalb der dreidimensionalen Volumendatenmenge,
Bilden eines Satzes von Ansteuerungspunkten an jeder der Vielzahl
von Sondenoberflächenpositionen
derart, dass jeder Satz von Ansteuerungspunkten eine in Beziehung
stehende Splinekurve definiert, Repositionieren der Sondenoberfläche und
Interpolieren zwischen der Vielzahl von Splinekurven, um eine dreidimensionale
Oberfläche zu
bilden, die für
die physikalischen Phänomene
charakteristisch ist.
-
Merkmale und
Vorteile
-
Es
ist eine Aufgabe der Anordnungen, die nicht die vorliegende Erfindung
verkörpern,
dass ein bandförmiger
Abschnitt durch eine 3D-Probensonde erzeugt werden, erneut gezeichnet,
editiert und schnell und vorteilhaft mittels Erzeugen einer Vielzahl von
Linien, die dann durch die 3D-Probensonde projiziert werden, bewegt
werden kann. Die Linien können
mit einem Winkeloffset von einem Koordinatensystem, beispielsweise
einem x-, y-, z- oder einem Kartesischem Koordinatensystem der 3D-Probensonde
gezeichnet werden.
-
Es
ist eine weitere Aufgabe von Anordnungen, die nicht die vorliegende
Erfindung verkörpern, dass
die Strukturen in der 3D-Datenvolumenmenge, beispielsweise geologische
Strukturen, schnell durch Auswählen
von Punkten von Interesse an einer Vielzahl von Orten in der 3D-Probensonde
kartiert werden können,
die dann interpoliert werden können,
um ein Gitter oder eine Oberfläche,
die mit der Struktur in Beziehung steht, zu bilden. Das Gitter kann
schnell editiert und die Sonde an verschiedene Punkte auf der Oberfläche durch
Auswählen
der Gitterschnittpunkte bewegt werden. Es ist ein weiteres Merkmal der
Anordnungen, die nicht die vorliegende Erfindung verkörpern, dass,
wenn ein Benutzer die 3D-Probensonden interaktiv durch eine 3D-Volumendatenmenge
bewegt, das Bild auf der Oberfläche
der 3D-Probensonde „on
the fly" erneuert
wird, so dass der Benutzer den Bildwechsel in Echtzeit mit Bewegung
der 3D-Probensonde wahrnimmt. Ähnlich
wird die 3D-Probensonde volumengerendert mit unterschiedlichem Transparenzgrad „on the
fly", wenn ein Benutzer
eine 3D-Probensonde interaktiv durch eine 3D-Volumendatenmenge bewegt,
so dass der Benutzer den Bildwechsel in Echtzeit mit Bewegung der 3D-Probensonde
wahrnimmt.
-
Es
ist ein weiteres Merkmal einer Anordnung, die nicht die vorliegende
Erfindung verkörpert, dass
ein Benutzer die Form oder die Größe einer 3D-Probensonde interaktiv
verändern
kann, so dass das Bild auf den Oberflächen der 3D-Probensonde „on the
fly" erneuert wird,
so dass der Benutzer den Bildwechsel in Echtzeit mit dem Wechsel
in der Form oder der Größe der 3D-Probensonde
wahrnimmt. Ähnlich
kann ein Benutzer die Form oder die Größe einer 3D-Probensonde interaktiv verändern, so
dass die 3D-Probensonde mit veränderlichem
Transparenzgrad „on
the fly" volumengerendert
wird, so dass der Benutzer den Bildwechsel in Echtzeit mit dem Wechsel
in der Form oder der Größe der 3D-Probensonde
wahrnimmt.
-
Es
ist ein weiteres Merkmal einer Anordnung, die nicht die vorliegende
Erfindung verkörpert, dass
ein Benutzer eine 3D-Probensonde interaktiv rotieren kann, so dass
das Bild auf den Oberflächen der
3D-Probensonde „on
the fly" erneuert
wird, so dass der Benutzer den Bildwechsel in Echtzeit mit der Drehung
der 3D-Probensonde wahrnimmt. Ähnlich
kann ein Benutzer eine 3D-Probensonde interaktiv drehen, so dass
die 3D-Probensonde mit unterschiedlichem Transparenzgrad „on the
fly" volumengerendert
wird, so dass der Benutzer den Bildwechsel in Echtzeit mit der Drehung
der 3D-Probensonde wahrnimmt.
-
Es
ist ein weiteres Merkmal einer Anordnung, die nicht die vorliegende
Erfindung verkörpert, dass
eine Löschungs-3D-Probensonde
erstellt und durch den Benutzer manipuliert werden kann, um direkt
aus einem Bild ausgewählte
Punkte, die in einen bestimmten Datenwertbereich hineinfallen, zu
löschen.
-
Es
ist ein Vorteil der vorliegenden Erfindung, dass ein Benutzer eine
3D-Probensonde manipulieren kann, um eine 3D-Volumendatenmenge interaktiv
zu durchqueren, um ein Merkmal zu verfolgen und abzubilden.
-
Es
ist ein weiterer Vorteil der vorliegenden Erfindung, dass ein Benutzer
das dargestellte Bild in kontinuierlicher Weise verändern kann,
ohne Unterbrechung oder wahrnehmbare Zeitverzögerung. Dieses ermöglicht dem
Benutzer, in den 3D-Volumendatenmengen befindliche Merkmale schneller
und genauer zu interpretieren und zu identifizieren.
-
Es
ist weiterhin ein Vorteil der vorliegenden Erfindung, dass die 3D-Probensonden
durch den Benutzer interaktiv neu geformt werden können, um
mit der Form von geologischen Strukturen überein zu stimmen, wodurch
der Benutzer in die Lage versetzt wird, das Ausmaß der geologischen
Strukturen besser zu visualisieren und zu definieren.
-
Schließlich ist
es ein Vorteil der vorliegenden Erfindung, dass sie zum Visualisieren
und Interpretieren von großen
Mengen von 3D-seismischen Daten verwendet werden kann. Die vorliegende
Erfindung kann ebenso verwendet werden, um schnell und genau Bohrplätze zu identifizieren.
Die vorliegende Erfindung kann vorteilhaft verwendet werden, um
die zyklischen Zeiten von seismischen 3D-Projekten stark zu reduzieren,
die Produktion von bestehenden Quellen zu erhöhen und zusätzliche Reserven zu orten.
-
Kurze Beschreibung
der Figuren
-
Die
vorliegende Erfindung wird mit Bezug auf die beigefügten Zeichnungen
beschrieben. In den Zeichnungen bezeichnen ähnliche Bezugszeichen identische
oder funktionell ähnliche
Elemente. Zusätzlich
kennzeichnen die links stehenden Ziffern eines Bezugszeichens die
Zeichnung, in der das Bezugszeichen erstmals auftritt.
-
1 zeigt
ein Ausführungsbeispiel
einer Software oder eine Programmstruktur zum Implementieren der
vorliegenden Erfindung;
-
2 zeigt
ein Blockdiagramm eines Ausführungsbeispiels
eines 3D-Probensondenprogramms
der vorliegenden Erfindung;
-
3 zeigt
eine Kurve, die die Transparenz als Funktion der Datenwerte darstellt;
-
4 zeigt ein Flussdiagramm, das ein Ausführungsbeispiel
zum Implementieren der vorliegenden Erfindung darstellt;
-
5 zeigt
ein Flussdiagramm eines Ausführungsbeispiels
zum Verändern
einer voreingestellten Sonde;
-
6 zeigt
ein Flussdiagramm eines Ausführungsbeispiels
zum Erstellen zusätzlicher
Sonden;
-
7 zeigt
ein Flussdiagramm eines Ausführungsbeispiels
zum Bewegen einer Sonde:
-
8 zeigt
ein Flussdiagramm eines Ausführungsbeispiels
zum erneuten Formen einer Sonde;
-
9 zeigt
ein Flussdiagramm eines Ausführungsbeispiels
zum Drehen einer Sonde im 3D-Raum;
-
10 zeigt
ein Flussdiagramm eines Ausführungsbeispiels
zum Drehen einer Sonde, während diese
im Raum fixiert ist;
-
11 zeigt
ein Flussdiagramm eines Ausführungsbeispiels
zum Ausführen
der Autoauswahl oder „seed
selection";
-
12 zeigt
ein Ausführungsbeispiel
eines Computersystems, das zur Verwendung mit der vorliegenden Erfindung
geeignet ist;
-
13 zeigt
ein alternatives Ausführungsbeispiels
eines Computersystems, das zur Verwendung mit der vorliegenden Erfindung
geeignet ist;
-
14 zeigt
weiterhin ein Detail eines exemplarischen Computersystems, das zur
Verwendung mit der vorliegenden Erfindung geeignet ist;
-
15 illustriert
drei undurchlässige
Sonden der vorliegenden Erfindung, mit zwei sich schneidenden Sonden;
-
16 zeigt
drei Sonden der vorliegenden Erfindung, eine Datensonde, eine transparente Schnittsonde
und eine volumengerenderte Sonde;
-
17 illustriert
einen bandförmigen
Abschnitt nach der vorliegenden Erfindung in der Form eines Sterns;
-
18 zeigt
ein Blockdiagramm eines Systems zum Herstellen des bandförmigen Abschnitts aus 17;
-
19 stellt
ein dreidimensionales Gitter und eine dreidimensionale Oberfläche dar,
die für physikalische
Phänomene
charakteristisch ist und durch eine 3D-Volumendatenmenge nach der
vorliegenden Erfindung beschrieben ist; und
-
20 zeigt
ein Blockdiagramm eines Systems zum Erstellen des Gitters und der
Oberfläche aus 19.
-
Detaillierte Beschreibung
von bevorzugten Ausführungsbeispielen
-
Übersicht
-
Die
vorliegende Erfindung ist auf ein System und ein Verfahren zum Analysieren
und Darstellen von dreidimensionalen („3D") Volumendatenmengen unter Verwendung
einer 3D-Probensonde
gerichtet. 3D-Volumendatenmengen umfassen „Voxel" oder Volumenelemente. Jedes Voxel ist
eine Sonde oder ein Punkt innerhalb eines Volumens. Jedes Voxel kann
in der Form (x, y, z, Datenwert) ausgedrückt werden, wobei „x, y,
z" den 3D-Ort des
Punkts innerhalb des Volumens bezeichnet und „Datenwert" der Wert einer gemessenen oder berechneten
Eigenschaft oder eines physikalischen Parameters an dem bestimmten
Punkt innerhalb des Volumens ist. Beispielsweise besteht eine 3D-Volumendatenmenge, die
zur Verwendung mit der vorliegenden Erfindung geeignet ist, aus
3D-seismischen Daten. Jedes Voxel in den 3D-seismischen Daten kann
als („x,
y, z, Amplitude")
ausgedrückt
werden, mit einer Amplitude, die der Amplitude der reflektierten
Schallwellen an dem bestimmten (x, y, z) Ort entspricht.
-
Jede
Art von Information, die in der Voxel-Form (x, y, z, Datenwert)
ausgedrückt
werden kann, ist zur Verwendung mit der vorliegenden Erfindung geeignet.
Zusätzlich
zu den seismischen Daten sind Beispiele aus der Öl- und Gasindustrie, Informationen
von dicht beabstandeten Quelldiagrammen, der Schwerkraft und von
magnetischen Feldern, Fernerkundungsdaten und Sidescan-Sonarbilddaten. Andere
geologische oder physikalische Informationen können sein die Temperatur, der
Druck, die Sättigung,
die Reflektivität,
der Schallwellenwiderstand und die Geschwindigkeit.
-
Eine
andere Anwendung der vorliegenden Erfindung besteht für den Bergbau.
Beispielsweise kann die vorliegende Erfindung verwendet werden, um
geologischen und geophysikalische Daten zu visualisieren, um Abbauorte
aufzufinden, abzubauende Lagerstätten
aufzufinden und zu verfolgen oder um geologische Merkmale, beispielsweise
Verwerfungen, die den Abbau beeinflussen, aufzufinden und zu verfolgen.
Die vorliegende Erfindung findet auch Anwendung bei der Beseitigung
von toxischen, gefährlichen
oder anderen Arten von Abfall. Beispielsweise kann die vorliegende
Erfindung dazu verwendet werden, um Daten zu visualisieren und zu
interpretieren, die das geographische Ausmaß und die Verteilung von Abfall
an einem bestimmten Ort repräsentieren.
Solch eine Visualisierung unter Interpretation ist nützlich um
das Beseitigen an verschiedenen Orten zu priorisieren und um einen
Beseitigungsplan für
einen bestimmten Ort zu entwickeln.
-
Die
vorliegende Erfindung kann auch mit Informationen außerhalb
der Öl-
und Gasindustrie verwendet werden. Beispielsweise kann die vorliegende Erfindung
zur Analyse und Bilderzeugung in der Medizin verwendet werden, wobei
das Datenwertelement des Voxels von einem CAT- (computerized axial tomography)
Scanner oder durch ein Kernspinbildgebungs- (magnetic resonance
imaging; MRI) Verfahren erhalten ist.
-
Zur
besseren Erklärung
wird die vorliegende Erfindung im folgenden beispielhaft anhand
von 3D-seismischen Daten als 3D-Volumendatenmenge beschrieben. Dadurch
wird die vorliegende Erfindung in keiner Weise auf die Verwendung
von 3D-seismischen Daten eingeschränkt.
-
Die
vorliegende Erfindung ist insbesondere als Visualisierungswerkzeug
zum Interpretieren von 3D-seismischen Daten nützlich. Dabei bedeutet „Visualisierung" die Konstruktion
eines dreidimensionalen Bildes im Geist des Benutzers von physikalischen oder
geologischen Merkmalen oder physikalischen Parametern, die in der
3D-Volumendatenmenge vorhanden sind. Solche physikalischen Eigenschaften oder
Parameter sind üblicherweise
nicht mit konventionellen Mitteln der Verarbeitung von 3D-Datenmengen,
beispielsweise Scannen einer Serie von Schnitten der 3D-Volumendatenmenge,
sichtbar, da die mentale Rekonstruktion stattfinden muss, damit
ein Benutzer die dreidimensionale Eigenschaft mental „sieht". Wegen dieser mentalen
Rekonstruktion ist es unter Benutzern schwierig, dasselbe 3D-Bild
zu kommunizieren und Anteil daran zu haben. Beispielsweise wird
dasselbe 3D mentale Bild eines Terrains nicht notwendigerweise im
Geist jeder Person präsent sein,
die eine zweidimensionale („2D") Höhenliniekarte
des Terrains liest oder analysiert. Durch die Verwendung von 3D-Computergraphiksystemen
kann der Benutzer dasselbe 3D-Bild einer 3D-Volumendatenmenge visualisieren
und kommunizieren und daran teilhaben. Durch Visualisieren von 3D-seismischen
Daten kann ein Team von Geologen, Geophysikern und Ingenieuren die
visualisierten Daten interpretieren, um Entscheidungen über Erkundung
von Produktion zu treffen, wie beispielsweise über Bohrstandorte und Quellwege.
-
Um
die Visualisierungsfunktion zu erreichen, verwendet die vorliegende
Erfindung die Computergraphikverfahren des Textur-Mappings und des
Volumenrenderns. Mit „texture
map" ist das Einhüllen oder
Aufzeichnen eines 2D-Bildes oder Photos auf ein 2D- oder ein 3D-Objekt
gemeint. Beispielsweise kann eine Photographie einer Person als
Textur auf einer Kaffeetasse abgebildet werden.
-
Der
Ausdruck „Volumenrendern" oder „volume
imaging" bezieht
sich auf die Zeichnen eines dreidimensionalen Objekts in der Weise,
dass es einem Betrachter die dreidimensionale Natur des Objekts übermittelt,
auch wenn der Betrachter auf eine zweidimensionale Anzeige oder
einen Bildschirm sieht. Die Computergraphiktechnologie verwendet Farb-Licht-
und Schattentechniken, um dem Geist des Betrachters zu übermitteln,
was hoch oder tief, hinten oder vorne, hell oder dunkel etc. ist.
Die Perspektive oder der Standpunkt kann verändert werden, so dass der Betrachter
alle Seiten des 3D-Objekts sehen kann. Volumenrendern weist üblicherweise eine
Art der Steuerung der Transparenz/Opazität (Opazität = 1 – Transparenz), so dass bestimmte
Teile des 3D-Objekts stärker
transparent sind, wodurch es dem Betrachter ermöglicht wird, durch äußere Oberflächen eines
Objekts „hindurch
zu sehen" und seine
internen Strukturen zu betrachten.
-
Die
vorliegende Erfindung ermöglicht
die schnelle Visualisierung und Analyse von sehr großen 3D-Volumendatenmengen
durch die Verwendung einer „Probensonde", die auch hier als „Sonde" oder „Sondenobjekt" bezeichnet wird.
Wie im folgenden näher
erläutert
wird, besitzen die Probensonden der vorliegenden Erfindung vielfältige Eigenschaften,
von denen eine ist, dass diese üblicherweise
als ein 3D-Subvolumen der gesamten 3D-Volumendatenmenge, die visualisiert
und analysiert werden soll, erzeugt werden.
-
Eine
Anzahl von Probensonden kann erzeugt, geformt, in ihre Größe eingestellt
und interaktiv durch den Benutzer innerhalb der gesamten 3D-Volumendatenmenge
bewegt werden. Der Schnitt der Probensonde mit der gesamten 3D-Volumendatenmenge
ist auf den Oberflächen
der Probensondentextur gemappt oder mit unterschiedlichem Transparenzgrad
innerhalb der Probensonde volumengerendert. Wie hier benutzt bedeutet
der Ausdruck „interaktiv" das Verändern oder
erneute Zeichnen eines Bildes als Reaktion auf eine Benutzereingabe
mit einer Geschwindigkeit, die ausreichend schnell ist, dass der
Benutzer einen unmittelbaren oder Echtzeitwechsel des Bildes ohne
wahrnehmbare zeitliche Verzögerung
wahrnimmt. In der Praxis ist eine Bildrate von wenigstens zwischen
10 bis 15 Bildern pro Sekunde ausreichend, um die hier beschriebene
interaktive Bildgebung zu erreichen. Bewegt der Benutzer beispielsweise
die Probensonde, zum Beispiel durch „click and drag" mit einer „mouse", nimmt der Benutzer
den Wechsel der Textur auf den Oberflächen der Probensonde in „Echtzeit" mit der Bewegung
der Probensonde wahr. Während
die Probensonde ihren Umriss, ihre Größe oder ihren Ort verändert, gibt
es keine vom Benutzer wahrnehmbare zeitliche Verzögerung in
der Bildgebung der Textur oder mit unterschiedlichem Grad der Transparenz der
volumengerenderten Eigenschaften. Auf diese Weise kann der Benutzer
die Probensonden durch das gesamte 3D-Volumen bewegen und einfacher und
effektiver die Eigenschaften und physikalischen Parameter, die in
dem durch die gesamte 3D-Volumendatenmenge
repräsentierten
geographischen Raum enthalten sind, visualisieren und interpretieren.
-
Beschreibung
des Systems
-
Die
vorliegende Verwendung kann unter Verwendung Hardware, Software
oder einer Kombination davon in einem Computersystem oder einem
Verarbeitungssystem implementiert werden. Ein Ausführungsbeispiel
einer Software oder einer Programmstruktur 100 zum Implementieren
der vorliegenden Erfindung ist in 1 gezeigt.
An der Basis der Programmstruktur 100 steht das Betriebssystem 102. Geeignete
Betriebssysteme 102 sind beispielsweise das UNIX®-Betriebssystem
oder Windows NT® von der
Microsoft Corporation oder andere Betriebssysteme, wie sie einem
Fachmann bekannt sind.
-
Die
Software für
Menüs und
Fenster 104 ist dem Betriebssystem 102 aufgesetzt.
Die Software für Menüs und Fenster
wird verwendet, um verschiedene Menüs und Fenster bereit zu stellen,
um eine Interaktion mit dem Benutzer zu ermöglichen und um Eingaben und
Anweisungen des Benutzers zu erhalten. Die Software für Menüs und Fenster 104 kann beispielsweise
beinhalten Microsoft WindowsTM, X Window
SystemTM (eingetragene Marke des Massachusetts
Institute of Technology) und MOTIFTM (eingetragene
Marke der Open Software Foundation Inc.). Dem Fachmann ist es ohne
weiteres ersichtlich, dass auch andere Software für Menüs und Fenster verwendet
werden kann.
-
Eine
grundlegende Graphikbibliothek 106 ist der Software für Menüs und Fenster 104 aufgesetzt. Die
grundlegende Graphikbibliothek 106 ist ein Application
Programming Interface (API) für
3D-Computergraphik. Die von der grundlegenden Graphikbibliothek 106 ausgeführten Funktionen
sind beispielsweise geometrische und Rasterstammfunktionen, RGBA oder
Farbindexmodus, Listendarstellung oder direkter Modus, Ansicht oder
Modeling Transformationen, Beleuchtung und Schattierung, Entfernen
von versteckten Oberflächen,
alpha blending (Durchsichtigkeit), anti-aliasing, Texturmapping,
atmosphärische Effekte
(Nebel, Rauch, Dunst), Rückkopplung
aus Auswahl, Schablonenebenen und Auflaufspeicher.
-
Eine
besonders bevorzugte grundlegende Graphikbibliothek 106 ist
OpenGL®,
erhältlich
von Silicon Graphics, Inc. („SGI"), Mountain View,
Kalifornien. OpenGL® API ist ein Multiplattformindustriestandard,
der hardware-, fenster- und betriebssystemunabhängig ist. OpenGL® ist
eingerichtet um von C, C++, FORTRAN, Ada und Java Programmiersprachen
ausführbar
zu sein. OpenGL® führt jede
der oben aufgeführten
Funktionen für
die grundlegende Graphikbibliothek 106 aus. Einige Befehle
in OpenGL® spezifizieren
zu zeichnende geometrische Objekte und andere Befehle, wie die Objekte
zu behandeln sind. Alle Elemente des OpenGL®-Status, selbst
der Inhalt des Texturspeichers und des Bildspeichers, kann mit einer
Client-Anwendung unter Verwendung von OpenGL® erhalten
werden. OpenGL® und
die Client-Anwendung können
auf derselben oder auf verschiedenen Maschinen ausgeführt werden,
da OpenGL® netzwerktransparent
ist. OpenGL® wird
detailliert in der OpenGL®-Programmieranleitung
(ISBN: 0-201-63274-8) und dem OpenGL®-Referenzhandbuch
(ISBN: 0-201-63276-4) beschrieben.
-
Die
Graphikbibliothek zur visuellen Simulation 108 ist der
grundlegenden Graphikbibliothek 106 aufgesetzt. Die Graphikbibliothek
zur visuellen Simulation 108 ist ein API zum Erzeugen von
Echtzeit, multi-prozessierten 3D-visuellen Simulationsgraphikanwendungen.
Die Graphikbibliothek für
die visuelle Simulation 108 stellt Funktionen bereit, die
die Funktionen der Graphikbibliothekzustandssteuerung zusammenbündeln, wie
zum Beispiel Belichtung, Materialien, Texturen und Transparenz.
Die Funktionen verfolgen den Status und die Erzeugung von Anzeigelisten,
die später
gerendet werden können.
-
Eine
besonders bevorzugte Graphikbibliothek zur visuellen Simulation 108 ist
der IRIS Performer, erhältlich
von SGI in Mountain View, Kalifornien. Der IRIS Performer unterstützt die
OpenGL®-Graphikbibliothek,
die oben besprochen wurde. IRIS Performer enthält zwei Hauptbibliotheken,
libpf und libpr, und vier damit verbundene Bibliotheken, libpfdu,
libpfdb, libpfui und libpfutil.
-
Die
Grundlage des IRIS Performers ist die Leistungsrenderingbibliothek
libpr, eine Low-Level-Bibliothek,
die Hochgeschwindigkeitsrenderingfunktionen basierend auf GeoSets
und der Graphikzustandssteuerung unter Verwendung von GeoStates
bereitstellt. GeoSets ist eine Sammlung von zeichnungsfähigen geometrischen
Formen, die dieselbe Art von graphischen Funktionen (zum Beispiel Dreiecke
oder Rechtecke) in einem Datenobjekt gruppiert. Das GeoSet enthält keine
Geometrie an sich, sondern nur Verweise auf Datenarrays und Indexarrays.
Da all die Funktionen in GeoSet derselben Art sind und dieselben
Eigenschaften besitzen, wird das Rendern der meisten Datenbanken
mit der maximalen Hardwaregeschwindigkeit ausgeführt. GeoStates liefert die
Graphikzustandsdefinitionen (zum Beispiel Textur oder Material)
für GeoSets.
-
Über der
libpr gelagert ist libpf, eine in Echtzeit arbeitende visuelle Simulationsumgebung,
die ein hochleistungsfähiges
Multiprozeßdatenbankrenderingsystem
bereitstellt, das die Verwendung der Multiprozesshardware optimiert.
Die Datenbankutilitybibliothek, libpfdu, bietet Funktionen zum Definieren
sowohl der geometrischen als auch der Erscheinungseigenschaften
von 3D-Objekten, gibt den Zustand und das Material weiter und erzeugt
Dreiecksstreifen aus unabhängiger
Polygoneingabe. Die Datenbankbibliothek libpfdb verwendet die Einrichtungen
der libpfdu, libpf und libpr, um Datenbankdateien in einer Vielzahl
von Industriestandarddatenbankformaten zu importieren. Die libpfui
ist eine Benutzerinterfacebibliothek, die Bausteine zum Schreiben
von Manipulationskomponenten für
Benutzerinterfaces (C und C++ Programmiersprachen) bereitstellt. Schließlich ist
die libpfutil die Utilitybibliothek, die Routinen zum Implementieren
solcher Aufgaben, wie MultiChannel Option-Unterstützung und
graphischen Benutzerinterface- (GUI) Werkzeugen bereitstellt.
-
Ein
Anwendungsprogramm, das den IRIS Performer und OpenGL® API
verwendet, führt üblicherweise
die folgenden Schritte zum Vorbereiten der Echtzeit 3D-visuellen
Simulation aus:
- 1. Initialisieren des IRIS
Performers;
- 2. Spezifizieren der Graphikpipelines, Auswählen der Multiprozessingkonfiguration
und Bestimmen des benötigten
Hardwaremodus;
- 3. Initialisieren des gewählten
Multiprozessingmodus;
- 4. Initialisieren der Bildrate und Setzen der Frame-Extend-Regeln;
- 5. Erzeugen, Konfigurieren und Öffnen der benötigten Fenster
und
- 6. Erzeugen und Konfigurieren der benötigen Anzeigekanäle.
-
Hat
das Anwendungsprogramm eine graphische Renderingumgebung durch Ausführen der
oben genannten Schritte 1 bis 6 erzeugt, iteriert das Anwendungsprogramm üblicherweise
durch eine Hauptsimulationsschleife einmal pro Bild.
- 7. Berechnen der Dynamik, Erneuern der Modellmatrices, etc.;
- 8. Verzögern
bis zur nächsten
Bildzeit;
- 9. Durchführen
der latenzkritischen Ansichtupdates;
- 10. Zeichnen eines Bilds.
-
Ein
3D-Probensondenprogramm 110 der vorliegenden Erfindung
ist der graphischen Bibliothek zur visuellen Simulation 108 aufgesetzt.
Das Programm 110 interagiert mit und verwendet die von jedem
der visuellen Simulations- und Graphikbibliothek 108, der
grundlegenden Graphikbibliothek 106, der Software für Menüs und Fenster 104 und
des Betriebssystems 102 ausgeführten Funktionen in einer Weise,
die dem Fachmann bekannt ist.
-
Das
3D-Probensondenprogramm 110 der vorliegenden Erfindung
ist bevorzugt in einer objektorientierten Programmiersprache geschrieben,
die die Erzeugung und Verwendung von Objekten und der Objektfunktionalität ermöglicht.
Eine besonders bevorzugte objektorientierte Programmiersprache ist C++.
Beim Durchführen
der vorliegenden Erfindung erzeugt das Progamm 110 ein
oder mehrere Sonden-„Objekte". Wie oben gezeigt,
werden die von dem Progamm 110 erzeugten und verwendeten
Sondenobjekte hier auch als Probensonden oder Sonden bezeichnet.
Das Progamm 110 manipuliert die Sondenobjekte, so dass
sie die folgenden Eigenschaften haben.
-
Eine
Sonde korrespondiert zu einem Sub-Volumen eines größeren 3D-Volumens.
Insbesondere definiert eine Sonde eine Teilmenge, die weniger ist
als der vollständige
Datenssatz der Voxel für eine
3D-Volumendatenmenge. Eine Sonde kann zwar so eingerichtet sein,
dass sie gleich oder koextensiv mit dem vollständigen Datensatz der Voxel
für eine
3D-Volumendatenmenge ist, aber die vorliegende Erfindung wird am
besten ausgeführt,
wenn die Sonde dem Sub-Volumen entspricht und eine Teilmenge definiert,
die weniger als der vollständige
Datensatz der Voxel für
eine 3D-Volumendatenmenge ist. Beispielsweise kann eine 3D-Volumendatenmenge
von seismischen Daten ungefähr
von 500 MB (Megabyte) bis ungefähr
10 GB (Gigabyte) oder mehr Daten enthalten. Ein 2500 km2 geographischer
Raum von üblichen
3D-seismischen Daten enthält
ungefähr 8
GB Daten. Eine Sonde der vorliegenden Erfindung für einen
500 MB seismischen Datensatz würde
bevorzugt ungefähr
10 bis 20 MB Daten enthalten.
-
Durch
Verwendung von Sonden, die ein Sub-Volumen des größeren 3D-Volumens
sind, wird die Menge an Daten, die verarbeitet und für jeden Frame
eines Bilds gezeichnet werden müssen,
dramatisch reduziert, wodurch die Geschwindigkeit, mit der das Bild
gezeichnet werden kann, erhöht
wird. Das Volumen des dreidimensionalen Würfels ist proportional zu der
dritten Potenz oder „Kubus" der Dimensionen
des dreidimensionalen Würfels.
Desgleichen ist die Menge in einer 3D-Volumendatenmenge proportional
zu der dritten Potenz seiner Größe. Daher
wird die Menge der Daten in einem Sub-Volumen eines größeren 3D-Volumens
proportional zur „dritten
Wurzel" (3√)
der Menge der Daten in einem größeren 3D-Volumen
sein. Als solches wird die Menge der Daten in einer Sonde der vorliegenden
Erfindung proportional zu der „dritten
Wurzel" (3√)
der Menge der Daten in einem 3D-Volumen
sein, von denen sie ein Sub-Volumen ist. Dadurch, dass nur die Teilmenge
der Daten, die dem Sub-Volumen der Sonde entspricht, verarbeitet
werden muss, kann die vorliegende Erfindung ein Bild als Reaktion
auf die Eingabe eines Benutzers mit einer Rate zeichnen, die ausreichend
schnell ist, damit der Benutzer einen sofortigen oder Echtzeitwechsel
im Bild ohne erkennbare zeitliche Verzögerung wahrnimmt.
-
Die
Sonde der vorliegenden Erfindung kann interaktiv in ihrer Form und/oder
ihrer Größe verändert werden
und interaktiv innerhalb des größeren 3D-Volumens
bewegt werden. Die äußere Geometrie oder
die Oberfläche
einer Sonde kann interaktiv als undurchsichtig gezeichnet oder texturgemappt
werden, während
die Sonde in ihrer Form und/oder ihrer Größe verändert wird oder während die
Sonde bewegt wird. Die Sonde kann gezeichnet oder volumengerendert
werden mit einem unterschiedlichen Grad an Transparenz, während die
Sonde in ihrer Form und/oder ihrer Größe verändert oder bewegt wird, wodurch
die internen Strukturen oder Merkmale der Sonde aufgezeigt werden.
-
Die
3D-Probensonden der vorliegenden Erfindung können jede Form, einschließlich rechteckiger
Formen mit einem oder mehreren rechten Winkeln und nicht rechteckigen
Formen mit keinem rechten Winkeln haben. Die 3D-Probensonden der
vorliegenden Erfindung können
rechtwinklige oder senkrechte Ebenen als äußere Oberflächen (zum Beispiel Quadrate
oder Rechtecke), parallele Ebenen als äußere Oberflächen (zum Beispiel Parallelogramme) oder
gekrümmte äußere Oberflächen (zum
Beispiel Kugeln, Ovale oder Zylinder) haben. Die vorliegende Erfindung
ist nicht auf 3D-Probensonden einer bestimmten Form beschränkt. Die
3D-Probensonden der vorliegenden Erfindung können beliebige Formen, beispielsweise
die Form eines durch einen Benutzer identifizierten geologischen
Merkmals, haben. Beispielsweise kann ein geologisches Merkmal durch
den Benutzer visualisiert und identifiziert werden, während der
Benutzer die 3D-Probensonde durch ein 3D-Volumen von seismischen
Daten bewegt. Die 3D-Probensonde kann durch den Benutzer interaktiv
geformt werden, um mit der geologischen Eigenschaft überein zu
stimmen, wodurch der Benutzer in die Lage versetzt wird, das Ausmaß der geologischen
Eigenschaft besser zu visualisieren und zu definieren.
-
Die
Sonde kann verwendet werden, um eine andere Sonde zu schneiden und
der Schnitt der zwei Sonden kann dargestellt werden. Eine Sonde
kann verwendet werden um Daten in Übereinstimmung mit einem Ausgangsauswahlalgorithmus
herauszustellen. Eine Sonde kann ebenso verwendet werden, um Daten
in Übereinstimmung
mit einem Ausgangsselektionsalgorithmus „auszuradieren" oder zu löschen. Diese
Eigenschaften werden im folgenden näher erläutert.
-
2 zeigt
ein Blockdiagramm eines Ausführungsbeispiels
eines 3D-Probensondenprogramms 110.
Das Programm 110 weist ein User-Interface-Modul (UIM) 210,
ein Graphikprocessingmodul (GPM) 220 und ein Volumensamplingmodul (VSM) 230 auf.
Ein 3D-Volumendatensatz ist als Datenvolumen 240 dargestellt,
das hier auch als 3D-Volumen
bezeichnet wird. UIM 210 und GPM 220 kommunizieren über einen
bi-direktionellen
Pfad 212. GPM 220 sendet Anweisungen und Anfragen
für Daten
an VSM 230 über
den Pfad 222. UIM 210 sendet Anweisungen und Anfragen
an VSM 230 über
den Pfad 214. UIM 210 interagiert mit dem Datenvolumen 240 über den
Pfad 216.
-
Die
Voxeldaten des Datenvolumens 240 werden über den
Datenpfad 234 auf VSM 230 übertragen. VSM 230 überträgt die Daten
auf GPM 220 über
den Datenpfad 232. Das Datenvolumen 240 speichert
die 3D-Volumendatenmenge in einer Weise, die dem Fachmann gut bekannt
ist. Beispielsweise kann das Format des Datenvolumens 240 aus zwei
Teilen bestehen, einem Volumenheader, der von einem Datenbody gefolgt
ist, der so lang ist wie die Größe des Datensatzes.
Der Volumenheader enthält üblicherweise
Informationen in einer vorgeschriebenen Sequenz, beispielsweise
den Dateipfad (Ort) des Datensatzes, Größe, Dimensionen in der x-, y-,
und z-Richtung, Erläuterungen
für die
x-, y- und z-Achsen, Erläuterungen
für den
Datenwert etc.. Der Datenbody ist eine Binärsequenz von Bytes, ein oder mehrere
Bytes pro Datenwert, die in der folgenden Weise angeordnet sein
können.
Das erste Byte ist der Datenwert an einem Volumenort (x, y, z) =
(0, 0, 0). Das zweite Byte ist der Datenwert an dem Volumenort (1,
0, 0), das dritte Byte ist der Datenwert am Volumenort (2, 0, 0)
etc.. Wenn die x-Dimension erschöpft
ist, wird die y-Dimension schrittweise erhöht und schließlich wird
die z-Dimension schrittweise erhöht.
Die vorliegende Erfindung ist in keiner Weise auf ein besonderes
Datenformat für
das Datenvolumen 240 beschränkt.
-
Das
Benutzerinterfacemodul 210 verwaltet das Userinterface
zum Empfangen von Befehlen, Anweisungen und eingegebenen Daten vom
Benutzer. UIM 210 verbindet sich mit dem Benutzer durch
eine Vielzahl von Menüs,
mit denen der Benutzer verschiedene Optionen und Einstellungen auswählen kann,
entweder durch eine Tastenauswahl oder durch eine oder mehrere benutzergesteuerte
Eingabevorrichtungen, wie beispielsweise eine „Maus" oder eine 3D-Zeigevorrichtung. UIM 210 empfängt die
Benutzereingabe während
der Benutzer die Eingabevorrichtung steuert, um eine 3D-Probensonde zu
bewegen, in ihrer Größe zu verändern, zu
formen etc..
-
Die
primären
Funktionen, die durch UIM 210 ausgeführt werden, werden nun beschrieben.
UIM 210 erhält
vom Benutzer die Identifizierung von einem oder mehrerer 3D-Volumendatensätze (repräsentiert
durch das Datenvolumen 240) zur Verwendung für die Bildgebung
und die Analyse. Wenn eine Vielzahl von Datenvolumen verwendet wird,
repräsentiert
der Datenwert für
jedes der Vielzahl von Datenvolumen einen unterschiedlichen physikalischen Parameter
oder eine Eigenschaft für
denselben geographischen Raum. Beispielsweise kann eine Vielzahl
von Datenvolumen in einem geologischen Volumen, einem Temperaturvolumen
und einem Wassersättigungsvolumen
enthalten sein. Die Voxel in dem geologischen Volumen können in
der Form (x, y, z, seismische Amplitude) ausgedrückt sein. Die Voxel in Temperaturvolumen
können
in der Form (x, y, z, °C)
ausgedrückt
sein.
-
Die
Voxel im Wassersättigungsvolumen
können
in der Form (x, y, z, % Sättigung)
ausgedrückt sein.
Der physikalische oder geographische Raum, der in jedem dieser Volumen
durch die Voxel definiert ist, ist derselbe. Jedoch würde für jeden
bestimmten räumlichen
Ort (x0, y0, z0) die seismische Amplitude im geologischen
Volumen, die Temperatur im Temperaturvolumen und die Wassersättigung
im Wassersättigungsvolumen
enthalten sein.
-
UIM 210 erhält die Benutzerinformationen zum
Erzeugen einer oder mehrerer 3D-Probensonden.
Solche Informationen enthalten Größe, Form und anfänglichen
Ort der Sonde. Solche Informationen können ebenso Bildattribute,
wie beispielsweise Farbe, Beleuchtung, Schattierung und Transparenz (oder
Opazität)
enthalten. Durch Einstellen der Opazität als Funktion des Datenwerts
sind bestimmte Bereiche des Datenvolumens stärker transparent, wodurch einem
Betrachter ermöglicht
wird, durch die Oberflächen
hindurch zu sehen. Eine beispielhafte Opazitätskurve 300 ist in 3 gezeigt.
Die Opazitätskurve 300 zeigt
die Opazität
(1-Transparenz) als Funktion des Datenwerts. Wie es dem Fachmann
sofort ersichtlich ist, werden Datenwerte mit gößerer Opazität (geringere
Transparenz) das Bild oder die Darstellung von Datenwerten mit geringerer
Opazität (höherer Transparenz)
maskieren. Umgekehrt werden Datenwerte mit geringerer Deckkraft
und größerer Transparenz
die Bildgebung und die Darstellung von Datenwerten mit gößerer Deckkraft
und geringer Transparenz erlauben.
-
UIM 210 empfängt die
Eingabe vom Benutzer zur Größenbestimmung
und Formgebung der 3D-Probensonden. Wie unten näher beschrieben ändert der
Benutzer in einem bevorzugten Ausführungsbeispiel der vorliegenden
Erfindung die Form und/oder die Größe einer Sonde durch Klicken
auf „Größenänderungstab" auf der Sonde und
nimmt Änderung
in den Dimensionen der Sonde in einer oder mehrerer Richtungen vor.
UIM 210 empfängt
die Eingabe vom Benutzer, um die Position oder den Ort einer 3D-Probensonde
innerhalb des Datenvolumens zu bewegen. In einem bevorzugten Ausführungsbeispiel
steuert ein Benutzer eine Maus, um auf eine Oberfläche der
zu bewegenden Sonde zu „klicken" und bewegt die Maus,
um die Sonde durch den geographischen Raum, der durch das Datenvolumen
definiert ist, zu bewegen.
-
UIM 210 empfängt eine
Eingabe vom Benutzer, um die „Autoauswahl"-Vorgänge auszuführen. In einem
Autoauswahlvorgang werden die Datenpunkte (Voxel) auf Basis eines
Selektionsalgorithmus ausgewählt.
In einem bevorzugten Ausführungsbeispiel
basiert der Selektionsalgorithmus auf einem Ausgangspunkt innerhalb
des 3D-Datenvolumens. Der Selektionsalgorithmus wählt die
Datenpunkte so aus, dass: (i) die Selektionskriterien oder der Algorithmus
erfüllt ist
(zum Beispiel das ein Datenwert innerhalb eines bestimmten Filterbereichs
liegt); und (ii) eine Verbindung besitzt oder mit dem Ausgangspunkt
verbunden ist. Durch das UIM 210 wird der Benutzer aufgefordert,
einen Ausgangspunkt innerhalb des 3D-Volumens zu kennzeichnen und
einen Filterbereich der vom Selektionsalgorithmus verwendeten Datenwerte zu
benennen, um die ausgewählten
Punkte „auszuwählen". Bevorzugt ist der
Ausgangspunkt innerhalb einer der 3D-Probensonden.
-
UIM 210 empfängt ebenso
Eingaben vom Benutzer betreffend den Umfang des dargestellten Bildes.
Beispielsweise kann der Benutzer bevorzugt den Inhalt des dargestellten
Bildes auswählen.
Der Inhalt des dargestellten Bildes kann nur die 3D-Probensonde
beinhalten, d. h. seinen Schnitt mit dem 3D-Volumen. Zusätzlich kann
die 3D-Probensonde entweder mit oder ohne einem Rahmen dargestellt werden,
der die äußere Geometrie
der Sonde darstellt. Alternativ kann das dargestellte Bild die 3D-Probensonde
beinhalten wie auch die Daten, die den Hintergrund der xz-, yz-
und xy-Ebenen einnehmen, und/oder die Daten, die das 3D-Volumen außerhalb
der 3D-Probensonde(n), die dargestellt werden, einnehmen.
-
Um
die vorstehenden Funktionen auszuführen sendet UIM 210 eine
Anfrage an das Volumensamplingmodul 230, um diejenigen
3D-Volumendatensätze,
die vom Benutzer identifiziert wurden, einzuladen oder anzuschließen. UIM 210 kommuniziert über den
Pfad 212 mit dem Graphikprozessingmodul 220, das
die Darstellung und die Bildgebung ausführt.
-
Die
vom GPM 220 ausgeführten
primären Funktionen
werden nun beschrieben. GPM 220 verarbeitet die Daten zur
Bildgebung der 3D-Probensonden mit Farbe, Belichtung, Schattierung,
Transparenz und anderen vom Benutzer ausgewählten Eigenschaften. Um dieses
durchzuführen,
verwendet GPM 220 die durch die grundlegende Graphikbibliothek 106 und
die Graphikbibliothek zur visuellen Simulation 108, die
oben beschrieben wurden, verfügbaren
Funktionen. Der Benutzer kann (durch UIM 210) auswählen, dass
nur die eine oder die mehrere 3D-Probensonden, die erzeugt wurden,
dargestellt werden. Alternativ kann der Benutzer auswählen, dass
eine oder mehrere 3D-Probensonden dargestellt werden, wie auch das
3D-Datenvolumen außerhalb
der Sonden, d. h. Voxel innerhalb des 3D-Volumens, die nicht eine
der 3D-Probensonden, die dargestellt werden, schneiden. 3D-Probensonden,
die dargestellt werden, werden hier als „aktive Sonden" bezeichnet.
-
GPM 220 verarbeitet
das Umformen und Bewegungsanfragen, die vom Benutzer durch das UIM 210 empfangen
werden. GPM 220 zeichnet die umgeformte 3D-Probensonde
in Übereinstimmung
mit den vom Benutzer ausgewählten
Eigenschaften (Farbe, Belichtung, Schattierung, Transparenz etc.). Während der
Benutzer eine Veränderung
in der Form einer 3D-Probensonde eingibt, wird das Bild mit den ausgewählten Eigenschaften
ausreichend schnell gezeichnet, damit es vom Benutzer in Echtzeit
wahrgenommen wird. In ähnlicher
Weise zeichnet GPM 220 die 3D-Probensonde an einer neuen
Position oder einem Ort in Übereinstimmung
mit den von dem Benutzer ausgewählten
Eigenschaften (Farbe, Belichtung, Schattierung, Transparenz etc.).
Während der
Benutzer die 3D-Probensonde durch das 3D-Volumen bewegt, wird das Bild der 3D-Probensonde
mit den ausgewählten
Eigenschaften ausreichend schnell gezeichnet, dass es vom Benutzer
in Echtzeit wahrgenommen wird.
-
GPM 220 verarbeitet „Autoauswahl"-Anfragen, die von
UIM 210 empfangen wurden. GPM 220 wird die ausgewählten Punkte
innerhalb des 3D-Volumens in Übereinstimmung
mit dem Selektionsalgorithmus darstellen. Alternativ wird GPM 220 die
ausgewählten
Punkte innerhalb des 3D-Volumens in Übereinstimmung mit dem Selektionsalgorithmus „ausradieren".
-
Um
die vorgenannten Funktionen auszuführen, kommuniziert GPM 220 mit
UIM 210 über
den Pfad 212, so dass die von dem Benutzer abgefragte Information
mit den ausgewählten
Eigenschaften dargestellt oder abgebildet wird. GPM 220 erhält die benötigten Daten
vom Datenvolumen 240 über
Senden einer Datenanfrage über
den Pfad 222 zum Volumensamplingmodul (VSM) 230.
-
Die
primäre
Aufgabe von VSM 230 ist es, die geeigneten Daten bei Anfrage
von GPM 220 aus dem Datenvolumen 240 zu extrahieren.
VSM 230 erhält Anfragen
für Daten
von GPM 220 über
den Pfad 222. VSM 230 extrahiert die benötigen Daten
aus dem Datenvolumen 240 und überträgt die Daten auf GPM 220 über den
Datenpfad 232 zum Verarbeiten und Darstellen. VSM 230 erhält ebenso
Anweisungen von UIM 210 über den Pfad 214 zum
Laden oder Anfügen
der 3D-Datenvolumen, die vom Benutzer benannt wurden.
-
In 4A wird
ein Flussdiagramm 400, das ein Ausführungsbeispiel zum Implementieren
der vorliegenden Erfindung darstellt, gezeigt. Ein Start- oder Initialisierungsprozess
ist in Schritt 402 gezeigt. In Schritt 402 wählt der
Benutzer ein oder mehrere zu verwendende Datenvolumen 240 aus.
Die ausgewählten
3D-Volumendatenmengen werden von einer Diskette in den Hauptspeicher
geladen (eine Beschreibung einer geeigneten Hardware zum Ausführen der
vorliegenden Erfindung wird unten näher beschrieben). Eine Standard-3D-Probensonde wird
erzeugt und gezeichnet. Die Standard-3D-Probensonde ist ein Subvolumen
des ausgewählten
3D-Volumens von beliebiger Größe und Form.
Die vorliegende Erfindung ist in keiner Weise auf bestimmte Größe oder
Form der Standard-3D-Probensonde beschränkt.
-
Als
Beispiel der vorliegenden Erfindung kann die Standard-3D-Probensonde
ein Quadrat (mit gleichen Abmessungen in der x-, y- und z-Richtung) sein.
Um die quadratische Standard-3D-Probensonde
zu zeichnen, wird die begrenzende Geometrie zunächst mit einer auf der z-Achse angeordneten
Kante der begrenzenden Geometrie gezeichnet. Darauf werden die Daten
aus dem Datenvolumen 240 durch VSM 230 extrahiert,
um das Bild des Schnitts der quadratischen Standard-3D-Probensonde
mit dem 3D-Volumen (Datenvolumen 240) zu zeichnen. Insbesondere
werden Daten extrahiert, die dem Schnitt der quadratischen Standard-3D-Probensonde mit dem
3D-Volumen in den xz-, yz- und xy-Ebenen entsprechen. Diese Daten
werden dann durch VSM 230 an GPM 220 gesendet,
so dass sie auf den Ebenen des Rahmens texturgemappt werden können, um
ein Bild der quadratischen Standard-3D-Probensonde zu erzeugen.
-
Bei
einem Ausführungsbeispiel
der vorliegenden Erfindung nehmen die Daten die Hintergrund-xz-,
-yz- und -xy-Ebenen selbst ein, wie auch die Daten, die das 3D-Volumen
außerhalb
der Standard-3D-Probensonde einnehmen, ebenso während des Startschritts 402 dargestellt
und abgebildet werden (zusätzlich
zur Standard-3D-Probensonde). Alternativ kann der Startschritt 402 so
ausgeführt
werden, dass die Daten die xz-, yz- und xy-Ebenen einnehmen oder
dass die Daten das 3D-Volumen außerhalb der Standard-3D-Probensonde
nicht abgebildet oder dargestellt werden. Bevorzugt wird die vorliegende
Erfindung so ausgeführt,
dass der Benutzer die Daten, die die Hintergrund-xz, -yz- und xy-Ebenen,
wie auch die Daten, die das 3D-Volumen außerhalb der aktiven Sonden
einnehmen, selektiv dargestellt oder nicht dargestellt werden.
-
In
einem Schritt 404 wartet UIM 210, auf die Eingabe
eines Benutzers oder eine Anfrage zu Antworten. Eine Benutzereingabe
wird durch eine Benutzereingabevorrichtung, die für die Verwendung mit
einem Computer geeignet ist, aber nicht auf ein Keyboard, eine Maus,
einen Joystick, ein Trackboard, einen Rollerball, einen Rollerpointer
oder eine andere Art einer geeigneten Zeigevorrichtung etc. begrenzt
ist, empfangen. Bevorzugt besteht die Benutzereingabevorrichtung
aus einer Maus oder aus einer ähnlichen
Einrichtung, die es dem Benutzer ermöglicht, auf ein bestimmtes
dargestelltes Bild zu „klicken" und das dargestellte
Bild zu einem anderen Ort zu „ziehen". Solch ein Benutzereingabegerät ermöglicht es
dem Benutzer, die abgebildeten Sonden zu bewegen und umzuformen.
Solch eine Benutzereingabevorrichtung ermöglicht es dem Benutzer ebenso
Drop-Down-Menüs
zu aktivieren und die verschiedenen Optionen für Farbe, Schattierung, Beleuchtung
und Transparenzeigenschaften auszuwählen. Eine Tastatur kann ebenso
zur Eingabe von Informationen, die sich auf die ausgewählten Eigenschaften
beziehen, verwendet werden.
-
Das
Bezugszeichen 406 bezieht sich prinzipiell auf eine Vielzahl
von Funktionen, die durch die vorliegende Erfindung ausgeführt werden
können. Diese
Funktionen können
individuell oder simultan, abhängig
von der Eingabe des Benutzers, ausgeführt werden. Beispielsweise
kann eine Sonde gleichzeitig bewegt (Funktion 430) und
gedreht (Funktion 450) werden. Während die mit Bezugszeichen 406 bezeichneten
Funktionen ausgeführt
werden, wird das Bild der 3D-Probensonden ausreichend schnell gezeichnet,
dass es vom Benutzer in Echtzeit wahrgenommen wird. Jede der durch
Bezugszeichen 406 bezeichneten Funktionen wird nun beschrieben.
-
Will
ein Benutzer die Standardsonde verändern, wird die Funktion 410 ausgeführt. Die
Schritte zum Ausführen
der Funktion 410 sind in 5 mittels eines
Flussdiagrammkonnektors 5A gezeigt. In einem Schritt 502 werden
die Veränderungen
an der Standardsonde über
das UIM 210 vom Benutzer eingegeben. Beispielsweise können diese
Veränderungen
an der Form oder der Größe, dem
Ort oder den Eigenschaften, wie zum Beispiel Farbe, Schattierung,
Beleuchtung und Transparenz sein.
-
In
einem Schritt 504 sendet UIM 210 eine Anfrage
an GPM 220, um die veränderte
Standardsonde zu zeichnen. In einem Schritt 506 fordert
GPM 220 Daten für
die veränderte
Standardsonde von VSM 230 an. Bei Durchführung dieser
Anfrage würde GPM 220 die Funktion 430 aufrufen,
falls es notwendig wäre,
die Standardsonde zu bewegen, die Funktion 440 zum Umformen
der Standardsonde und die Funktion 450 oder 460 zum
Drehen der Standardsonde. Die vorstehenden Funktionen werden unten
näher beschrieben.
-
Die
Daten, die aus dem Datenvolumen 240 durch VSM 230 als
Reaktion auf die von GPM 220 in Schritt 506 erfolgte
Anfrage extrahiert werden, werden von den Eigenschaften, die vom
Benutzer ausgewählt
worden sind, abhängen.
Sind die Opazitätseinstellungen,
die vom Benutzer ausgewählt
sind, so, dass alle Datenwerte undurchsichtig sind, werden die von
VSM 230 extrahierten Daten auf die Oberflächen der
veränderten
Standardsonde beschränkt
sein. Wegen der ausgewählten
Opazität
wird es für
den Benutzer nicht möglich
sein, in das Innere der veränderten
Standardsonde zu sehen, so dass nur Daten, die den Oberflächen oder
der Außenseite
der veränderten
Standardsonde entsprechen, von VSM 230 extrahiert werden.
In einem Schritt 508 verarbeitet GPM 220 die von
VSM 230 für
die Oberflächen
der veränderten
Standardsonde extrahierten Daten und zeichnet die veränderte Standardsonde
durch Texturmapping auf die Oberflächen in Übereinstimmung mit den von
dem Benutzer ausgewählten
Eigenschaften. Durch Extrahieren ausschließlich der Daten, die vom Benutzer
gesehen werden können,
kann das Bild der veränderten
Standardsonde schneller gezeichnet werden, weil weniger zu verarbeitende Daten
benötigt
werden, d. h., dass die Daten, die dem „Inneren" der veränderten Standardsonde entsprechen,
nicht verarbeitet werden.
-
Wenn
die Opazitätseinstellungen,
die vom Benutzer ausgewählt
sind, so sind, dass einige der Datenwerte undurchsichtig und einige
der Datenwerte transparent sind, werden die von VSM 230 extrahierten
Daten alternativ die Daten enthalten, die dem gesamten Volumen der
veränderten
Standardsonde entsprechen. Wegen der ausgewählten Deckkraft und Transparenz
wird es für
den Benutzer möglich sein,
in die veränderte
Standardsonde zu sehen, so dass Daten, die dem gesamten Volumen
der veränderten
Standardsonde entsprechen, durch VSM 230 extrahiert werden.
In solch einer Situation verarbeitet GPM 220 die von VSM 230 extrahierten
Daten in Schritt 508 und zeichnet die veränderte Standardsonde
durch Volumenrendern in Übereinstimmung mit
den vom Benutzer ausgewählten
Eigenschaften.
-
Wünscht ein
Benutzer zusätzliche
Sonden zu erzeugen, wird die Funktion 420 ausgeführt. Die vorliegende
Erfindung ist in keiner Weise auf eine bestimmte Anzahl von aktiven
Sonden begrenzt. Die Schritte zum Ausführen der Funktion 420 sind
mittels eines Flussdiagrammkonnektors 6A in 6 gezeigt.
In einem Schritt 602 werden die Form, die Größe, der
Ort, die Eigenschaften etc. für
die zusätzlichen
Sonden durch UIM 210 vom Benutzer eingegeben. In einem
Schritt 604 sendet UIM 210 eine Anfrage an GPM 220,
um die zusätzlichen
Sonden zu zeichnen. In einem Schritt 606 fordert GPM 220 die Daten
für die
zusätzlichen
Sonden von VSM 230 an. In ähnlicher zu der oben beschriebenen
Weise zum Wechseln der Standardsonde, werden die Daten, die aus
einem 3D- oder Datenvolumen 240 durch VSM 230 extrahiert
werden, von der vom Benutzer für
die zusätzlichen
Sonden gewählten
Opazität
abhängen. Wenn
die Opazitätseinstellungen,
die vom Benutzer ausgewählt
wurden, so sind, dass alle Datenwerte für die zusätzlichen Proben undurchsichtig
sind, werden die von VSM 230 extrahierten Daten auf die
Oberflächen
der zusätzlichen
Sonden begrenzt sein. Wenn die Opazitätseinstellungen, die vom Benutzer
für die zusätzlichen
Sonden vorgenommen wurden, so sind, dass einige der Datenwerte undurchsichtig
und einige der Datenwerte transparent sind, werden die von VSM 230 extrahierten
Daten alternativ die Daten enthalten, die dem gesamten Volumen der
zusätzlichen Sonden
entsprechen. In dieser Weise können
die zusätzlichen
Sonden durch Minimieren der Datenmenge, die verarbeitet werden muss,
gezeichnet werden.
-
In
einem Schritt 608 verarbeitet GPM 220 die von
VSM 230 für
die zusätzlichen
Sonden extrahierten Daten und zeichnet die zusätzlichen Sonden in Übereinstimmung
mit den vom Benutzer ausgewählten
Eigenschaften entweder durch Texturmapping auf den Oberflächen der
zusätzlichen
Sonden oder durch Volumenrendern des gesamten Volumens der zusätzlichen
Sonden.
-
Will
ein Benutzer eine Sonde bewegen, wird die Funktion 430 ausgeführt. Die
Schritte zum Ausführen
der Funktion 430 sind in 7 mittels
eines Flussdiagrammkonnektors 7A dargestellt. In einem Schritt 702 wird
der neue Ort für
die Sonde über
UIM 210 vom Benutzer eingegeben. In einem bevorzugten Ausführungsbeispiel
der vorliegenden Erfindung gibt der Benutzer den neuen Ort der Sonde
durch Klicken einer Maus oder eines anderen geeigneten Benutzereingabegerätes zum
Einrasten eines Zeigers auf eine Oberfläche der zu bewegenden Sonde
an. Der Benutzer verändert
den Ort der Sonde durch Bewegen der Maus oder der anderen geeigneten
Benutzereingabevorrichtung in jeder Richtung, wodurch die Sonde
entlang einer Bahn gezogen wird.
-
In
einem Schritt 704 sendet UIM 210 eine Bewegungsanfrage
an GPM 220, um die Sonde am neuen Ort zu zeichnen. GPM 220 fragt
Daten für
den neuen Ort der Sonde von VSM 230 ab. In einer zu der oben
beschriebenen ähnlichen
Weise werden die Daten, die aus dem Datenvolumen 240 durch
VSM 230 extrahiert werden, von der von dem Benutzer für die zu
bewegende Sonde ausgewählte
Opazität
abhängen.
Wenn die Opazitätseinstellungen,
die vom Benutzer ausgewählt
wurden, so sind, dass alle Datenwerte für die zu bewegende Sonde undurchsichtig sind,
dann werden die durch VSM 230 extrahierten Daten auf die
Oberflächen
der zu bewegenden Sonde begrenzt sein. Wenn die Opazitätseinstellungen, die
vom Benutzer für
die zu bewegende Sonde ausgewählt
sind, so sind, dass einige der Datenwerte undurchsichtig und einige
der Datenwerte transparent sind, dann werden die Daten, die durch
VSM 230 extrahiert wurden, alternativ die Daten beinhalten,
die dem gesamten Volumen der zu bewegenden Sonde entsprechen. In
dieser Weise kann die Sonde an ihrem neuen Ort durch Minimieren
der Menge der zu verarbeitenden Daten schneller gezeichnet werden.
-
In
einem Schritt 708 verarbeitet GPM 220 die von
VSM 230 für
die zu bewegende Sonde extrahierten Daten und zeichnet die Sonde
an ihrem neuen Ort in Übereinstimmung
mit den vom Benutzer ausgewählten
Eigenschaften entweder durch Texturmapping auf den Oberflächen der
zu bewegenden Sonde oder durch Volumenrendern des gesamten Volumens
der zu bewegenden Sonde.
-
Während der
Benutzer die Sonde bewegt, werden die Schritte 702 bis 708 für jeden
neuen Ort der Sonde mit einer Rate wiederholt, die ausreichend schnell
ist, dass der Benutzer das Bild der Sonde mit Texturmapping oder
Volumenrendern die Veränderung
mit der Bewegung der Sonde in „Echtzeit" wahrnimmt. Das Bild
wird mit einer Bildrate aufgebaut, die ausreichend schnell ist,
dass sie als Echtzeit durch den Benutzer wahrgenommen wird.
-
Will
der Benutzer eine Sonde umformen, wird die Funktion 440 ausgeführt. Der
Ausdruck „umformen", wie hier benutzt,
bezieht sich auf jede Veränderung
in der Dimension einer 3D-Probensonde
in jeder Richtung. Die Form einer 3D-Probensonde kann verändert oder
umgeformt werden, zum Beispiel durch Verändern der Größe in einer
oder mehrerer Richtungen, wie durch Verändern einer quadratischen Sonde
in eine rechteckige Sonde durch Erhöhen der Größe der Sonde in der x-Richtung
und Vermindern der Größe der Sonde
in der y-Richtung. Als ein weiteres Beispiel kann die Form einer
3D-Probensonde durch Verändern
der Form von sphärisch
zu rechteckig verändert
werden. Als ein weiteres Beispiel kann eine rechteckige 3D-Probensonde
(gleiche Abmessungen in der x-, y- und z-Richtung) in Übereinstimmung
mit vorliegenden Erfindung zu einer größeren oder kleineren rechteckig
geformten Sonde umgeformt werden durch gleichförmiges Verändern der Größe in jeder
der x-, y- und z-Richtungen. Die umgeformte Sonde hat also eine
quadratische Form, aber als größeres oder
kleineres Quadrat.
-
Die
Schritte zum Ausführen
der Funktion 440 werden in 8 mittels
eines Flussdiagrammkonnektors 8A gezeigt. In einem Schritt 802 wird
die neue Form und/oder Größe für die Sonde
durch UIM 210 vom Benutzer eingegeben. In einem bevorzugten
Ausführungsbeispiel
der vorliegenden Erfindung gibt der Benutzer die neue Form der Sonde
durch Klicken einer Maus oder eines anderen geeigneten Benutzereingabegeräts zum Einrasten
eines Zeigers auf einem „Größentab" auf der umzuformenden
Sonde ein. Der „Größentab" bezieht sich, wie
hier benutzt, auf ein bestimmtes Gebiet auf einer Oberfläche der
Sonde. Solch ein bestimmtes Gebiet ist bevorzugt in einer Farbe
dargestellt, die sich von den zum Darstellen der Eigenschaften oder
physikalischen Parameter der 3D-Volumendatenmenge
verwendeten Farben unterscheidet. Wenn der Zeiger am Größentab eingerastet
ist, verändern
die Steuerung der Maus oder des Benutzereingabegeräts die Dimensionen
oder Proportionen der Oberfläche,
auf der der Größentab angeordnet
ist. Wenn die gewünschte Größe oder
Form erreicht ist, klickt der Benutzer wieder die Maus oder das
Benutzereingabegerät,
um den Zeiger vom Größentab zu
lösen.
Größentabs sind
in 15 und 16 dargestellt.
Die Größentabs
sind kleine dunkle Rechtecke, die auf der Oberfläche der Sonden entlang des
Rahmens der Sonde erscheinen. Der Ort der Größentabs ist nicht auf die Rahmen
der Sonden begrenzt. Der Benutzer verändert die Form der Sonde durch
Klicken der Maus oder des anderen geeigneten Benutzereingabegerätes auf
einem Größentab,
Bewegen der Maus bis die Oberfläche,
die verändert
wird, die gewünschte
Form hat und folgendes Loslassen der Maus von dem Größentab.
Dieser Vorgang kann, wenn notwendig, wiederholt werden, unter Verwendung
anderer Größentabs
auf der Sonde bis die Sonde zur gewünschten Form umgeformt worden
ist.
-
Es
ist dem Fachmann offensichtlich, wie solch ein Größentab zum
Umformen der Sonden der vorliegenden Erfindung realisiert werden
kann. Es versteht jedoch, dass die vorliegende Erfindung nicht auf
die Verwendung von Größentabs
zum Umformen von Sonden begrenzt ist, sondern andere geeignete Verfahren
können
verwendet werden. Beispielsweise kann der Benutzer aus einer Anzahl
von vorgeformten Formen (zum Beispiel Quadraten, Rechtecken, Zylindern,
Kugeln) durch Aktivieren eines Dropdownmenüs oder durch Scrollen durch
die Formen mittels wiederholten Klicken einer Maus auswählen.
-
In
einem Schritt 804 sendet UIM 210 eine Umformanfrage
an GPM 220, um eine umgeformte Sonde zu zeichnen. In einem
Schritt 806 wird festgestellt, ob mehr Daten zum Zeichnen
der umgeformten Sonde benötigt
werden. Ist die umgeformte Sonde beispielsweise der Form und Größe, die
in die existierende Sonde „passt", werden keine weiteren
Daten benötigt
und die Verarbeitung wird mit Schritt 810 fortgesetzt.
Ist die umgeformte Sonde alternativ dazu von einer Form und Größe, die
wenigstens teilweise außerhalb
der existierenden Sonde fällt,
dann fordert GPM 220 in einem Schritt 808 die
Daten, die für
die umgeformte Sonde benötigt
werden, von VSM 230 an. In einer Weise, die ähnlich zu
der oben beschriebenen ist, werden die Daten, die vom 3D- oder Datenvolumen 240 durch
VSM 230 extrahiert wurden, von der vom Benutzer für die umzuformende
Sonde gewählten
Opazität
abhängen.
Wenn die Opazitätseinstellungen,
die vom Benutzer gewählt
wurden, so sind, dass alle Datenwerte für die umzuformende Sonde undurchsichtig
sind, dann werden die von VSM 230 extrahierten Daten auf
die Oberfläche
der umzuformenden Sonde begrenzt. Wenn die Opazitätseinstellungen,
die vom Benutzer für
die umzuformende Sonde ausgewählt
wurden, so sind, dass einige der Datenwerte undurchsichtig und einige
der Datenwerte transparent sind, dann werden die von VSM 230 extrahierten
Daten die Daten enthalten, die dem gesamten Volumen der umzuformenden
Sonde entsprechen. In dieser Weise kann die Sonde mit ihrer neuen
Form schneller durch Minimieren der Datenmenge, die verarbeitet
werden muss, gezeichnet werden.
-
In
einem Schritt 810 verarbeitet GPM 220 die für die umzuformende
Sonde von VSM 230 extrahierten Daten und zeichnet die Sonde
mit ihrer neuen Form in Übereinstimmung
mit den vom Benutzer ausgewählten
Eigenschaften entweder durch Texturmappen auf der Oberfläche der
umzuformenden Sonde oder durch Volumenrendern des gesamten Volumens
der umzuformenden Sonde.
-
Während der
Benutzer die Form der Sonde verändert,
werden die Schritte 802 bis 810 mit einer Rate
wiederholt, die ausreichend schnell ist, so dass der Benutzer das
Bild der Sonde, wie gewählt
mit Texturmappen oder Volumenrendern, wahrnimmt mit einer Veränderung
der Form der Sonde in „Echtzeit". Das Bild wird mit
einer Bildrate aufgebaut, die ausreichend schnell ist um vom Benutzer
als Echtzeit wahrgenommen zu werden.
-
Will
ein Benutzer eine Sonde im 3D-Raum drehen, wird die Funktion 450 ausgeführt. In
Funktion 450 wird die 3D-Orientierung, die dieselbe für sowohl das
3D-Volumen als auch die Sonde ist, verändert, wodurch das 3D-Volumen
und die Sonde im Raum gedreht wird. Die Schritte zum Ausführen der
Funktion 450 sind in 9 mittels
eines Flussdiagrammkonnektors 9A gezeigt. In einem Schritt 902 wird
die neue 3D-Orientierung für
das 3D-Volumen und die Sonde über
UIM 210 vom Benutzer eingegeben. In einem bevorzugten Ausführungsbeispiel
der vorliegenden Erfindung gibt der Benutzer die neue Orientierung
durch Klicken einer Maus oder einer anderen Art einer geeigneten
Benutzereingabegerätes
zum Einrasten eines Zeigers auf einer Achse der zu drehenden Sonde
ein. Veränderungen
der Maus oder des Benutzereingabegerätes verändern die Orientierung dieser
Achse. Wenn die gewünschte
Orientierung erreicht ist, klickt der Benutzer wieder die Maus oder
das Benutzereingabegerät,
um den Zeiger von der Achse zu lösen.
Es ist dem Fachmann ersichtlich, wie solch eine Veränderung
in der Orientierung zu realisieren ist. Es versteht sich jedoch,
dass die vorliegende Erfindung nicht auf den Wechsel der Orientierung
in dieser Weise begrenzt ist. Beispielsweise kann der Benutzer aus
einer Anzahl von voreingestellten Drehungen (zum Beispiel Drehen
um 90° nach
links oder rechts; Drehen um 45° nach
links oder nach rechts etc.) durch Aktivieren eines Drop-Down-Menüs oder durch
Scrollen durch Drehungen mittels wiederholtem Klicken einer Maus auswählen.
-
In
einem Schritt 904 sendet UIM 210 eine Anfrage
zum Drehen im 3D-Raum an GPM 220, um die gedrehte Sonde
zu zeichnen. In einem Schritt 906 fragt GPM 220 Daten
für die
gedrehte Sonde von VSM 230 ab. In einer ähnlichen
Weise zu der oben beschriebenen, werden die Daten, die vom 3D- oder Datenvolumen 240 durch
VSM 230 extrahiert wurden, von der Opazität, die vom
Benutzer für
die zu drehende Sonde ausgewählt
wurde, abhängen. Wenn
die Opazitätseinstellungen,
die vom Benutzer ausgewählt
wurden, so sind, dass alle Datenwerte für die zu drehende Sonde undurchsichtig
sind, dann werden die durch VSM 230 extrahierten Daten
auf die Oberflächen
der zu drehenden Sonde begrenzt sein. Wenn die Opazitätseinstellungen,
die vom Benutzer für
die zu drehende Sonde ausgewählt
wurden, so sind, dass einige der Datenwerte undurchsichtig und einige
der Datenwerte transparent sind, dann werden die von VSM 230 extrahierten
Daten alternativ die Daten aufweisen, die dem gesamten Volumen der
zu drehenden Sonde entsprechen. In dieser Weise kann die Sonde mit
ihrer neuen Ausrichtung schneller durch Minimieren der Datenmenge, die
verarbeitet werden muss, gezeichnet werden.
-
In
einem Schritt 908 verarbeitet GPM 220 die von 230 für die zu
drehende Sonde extrahierten Daten und zeichnet die Sonde mit ihrer
neuen Ausrichtung in Übereinstimmung
mit den vom Benutzer gewählten
Eigenschaften entweder durch Texturmappen auf der Oberfläche der
zu drehenden Sonde oder durch Volumenrendern des gesamten Volumens
der zu drehenden Sonde.
-
Während der
Benutzer die Sonde im 3D-Raum dreht, werden die Schritte 902 bis 908 wiederholt
mit einer Rate ausgeführt,
die ausreichend schnell ist, dass der Benutzer den Wechsel des Bilds der
Sonde jeweils mit Texturmapping oder Volumenrendering, in Echtzeit
mit dem Wechsel der Ausrichtung der Sonde wahrnimmt. Das Bild wird
mit einer Bildrate aufgebaut, die ausreichend schnell ist, um vom
Benutzer in Echtzeit wahrgenommen zu werden.
-
Will
ein Benutzer eine Sonde drehen, während sie im 3D-Raum fixiert
ist, wird die Funktion 460 ausgeführt. In Funktion 460 wird
die 3D-Orientierung der Sonde unabhängig von der 3D-Orientierung des 3D-Volumens
gedreht, wobei die Sonde gedreht wird, während sie im 3D-Raum fixiert ist,
der durch die Orientierung des 3D-Volumens bestimmt ist. In dieser
Weise können
die Hintergrundebenen für
eine aktive Sonde in einer feststehenden Orientierung dargestellt
werden und die aktive Sonde kann innerhalb der Hintergrundebenen
gedreht werden.
-
Die
Schritte zum Ausführen
der Funktion 460 sind in 10 mittels
eines Flussdiagrammkonnektors 10A gezeigt. In einem Schritt 1002 wird
die neue 3D-Orientierung für
die Sonde mittels UIM 210 vom Benutzer eingegeben. In einem
bevorzugten Ausführungsbeispiel
der vorliegenden Erfindung wählt
der Benutzer die Option zum Drehen während der Fixierung im Raum
beispielsweise von einem „Drop-Down"-Menü. Der Benutzer
gibt dann die neue Orientierung für die Sonde durch Klicken einer
Maus oder einer anderen Art eines geeigneten Benutzereingabegerätes zum
Setzen eines Zeigers auf eine Achse der zu drehenden Sonde ein.
Durch Bewegen der Maus oder des Benutzereingabegerätes wird
die Orientierung dieser Achse verändert. Wenn die gewünschte Orientierung
erreicht ist, klickt der Benutzer wieder die Maus oder das Benutzereingabegerät, um den
Zeiger von der Achse zu lösen.
Es ist dem Fachmann ohne weiteres ersichtlich, wie solch eine Veränderung
in der Orientierung erreicht werden kann. Es versteht sich jedoch,
dass vorliegende Erfindung nicht auf den Wechsel der Orientierung
in dieser Weise begrenzt ist. Beispielsweise kann der Benutzer aus
einer Anzahl von vorgefertigten Drehungen (zum Beispiel Drehen um
90° nach
links oder rechts; Drehen um 45° nach
links oder rechts etc.) durch Aktivieren eines Drop-Down-Menüs oder durch Scrollen
durch Drehungen mittels wiederholtem Klicken einer Maus auswählen.
-
In
einem Schritt 1004 sendet UIM 210 eine Anfrage
zum Drehen während
der Fixierung im Raum an GPM 220, um die gedrehte Sonde
zu zeichnen. In einem Schritt 1006 fragt GPM 220 die
Daten für
die zu drehende Sonde von VSM 230 ab. In einer Weise die
der oben beschriebenen ähnlich
ist, werden die Daten, die vom 3D- oder Datenvolumen 240 durch VSM 230 extrahiert
werden, von der vom Benutzer für
die zu drehende Sonde ausgewählte Opazität abhängen. Wenn
die vom Benutzer ausgewählten
Opazitätseinstellungen
so sind, dass alle Datenwerte für die
drehende Sonde undurchsichtig sind, dann werden die durch VSM 230 zu
extrahierenden Daten auf die Oberflächen der zu drehenden Sonde
begrenzt sein. Wenn die Opazitätseinstellungen,
die vom Benutzer für
die drehende Sonde ausgewählt
wurden, so sind, dass einige der Datenwerte undurchsichtig und einige
der Datenwerte transparent sind, dann werde die von VSM 230 extrahierten
Daten Daten beinhalten, die dem gesamten Volumen der zu drehenden
Sonde entsprechen. In dieser Weise kann die Sonde mit ihrer neuen
Ausrichtung durch Minimieren der Datenmenge, die verarbeitet werden
muss, schneller gezeichnet werden.
-
Im
Schritt 1008 verarbeitet GPM 220 die von VSM 230 für die zu
drehende Sonde extrahierten Daten und zeichnet die Sonde mit ihrer
neuen Ausrichtung in Übereinstimmung
mit den vom Benutzer ausgewählten
Eigenschaften entweder durch Texturmappen auf der Oberfläche zu drehenden
Sonde oder durch Volumenrendern des gesamten Volumens der zu drehenden
Sonde.
-
Während der
Benutzer die Sonde dreht, während
sie im Raum fixiert ist, werden die Schritte 1002 bis 1008 wiederholt
mit einer Rate ausgeführt, die
ausreichend schnell ist, dass der Benutzer den Wechsel des Bildes
der Sonde, jeweils mit Texturmapping oder Volumenrendern, „in Echtzeit" mit dem Ändern der
Orientierung der Sonde wahrnimmt. Das Bild wird mit einer Bildrate
aufgebaut, die ausreichend ist, um vom Benutzer als Echtzeit wahrgenommen
zu werden.
-
Wenn
ein Benutzer einen „Autoauswahl"-Vorgang ausführen will,
wird die Funktion 470 ausgeführt. Die Schritte zum Ausführen der
Funktion 470 sind in 11 mittels
eines Flussdiagrammkonnektors 11A gezeigt. In einem Schritt 1102 werden ein
Ausgangspunkt innerhalb des Datensatzes des 3D-Volumens und auf
Datenwerten basierende Auswahlkriterien durch UIM 210 vom
Benutzer eingegeben. Bevorzugt liegt der Ausgangspunkt innerhalb des
Datensatzes der Voxel, die eine Sonde definieren. Wie unten beschrieben,
wird eine Sonde hier als eine Ausgangs-3D-Probensonde oder eine
Löschungs-3D-Probensonde bezeichnet.
Der Ausgangspunkt kann innerhalb des Datensatzes von Voxeln, die
das 3D-Volumen definieren und außerhalb einer aktiven Sonde
liegen. In einem bevorzugten Ausführungsbeispiel der vorliegenden
Erfindung wählt
der Benutzer die Option zum Ausführen
eines Autoauswahlvorganges beispielsweise von einem „Drop-Down"-Menü aus. Der
Benutzer wählt
dann den Ausgangspunkt durch Klicken einer Maus oder einer anderen
Art eines geeigneten Benutzereingabegeräts zum Einrasten eines Zeigers
am gewünschten
Ausgangspunkt. Die Auswahlkriterien können beispielsweise durch graphische
Auswahl eines Bereichs oder durch Eingabe eines bestimmten numerischen
Wertes eingegeben werden. Es ist für den Fachmann ohne weiteres
ersichtlich, wie ein Ausgangspunkt und Filterbereich von Datenwerten
vom Benutzer eingegeben werden kann.
-
In
einem Schritt 1104 sendet UIM 210 eine Autoauswahlanfrage
an GPM 220, um die gedrehte Sonde zu zeichnen. In einem
Schritt 1106 fragt GPM 220 die darzustellenden
ausgewählten
Punkte von VSM 230 ab. Die ausgewählten Punkte sind diejenigen,
die mit dem Ausgangspunkt verbunden sind und die einen Datenwert
innerhalb der Selektionskriterien haben.
-
In
Schritt 1008 verarbeitet GPM 220 die von VSM 230 extrahierten
Daten, um die ausgewählten Punkte
zu zeichnen. Die ausgewählten
Punkte sind bevorzugt durch Zeichnen in einer Farbe, die sich von
der zur Darstellung der Eigenschaften oder physikalischen Parametern
des 3D-Volumendatensatzes verwendeten Farbe unterscheidet. Alternativ
kann Schritt 1108 ausgeführt werden um die ausgewählten Punkte
vom Bild „zu
entfernen" oder
zu löschen.
-
In
einer ähnlichen
Weise kann die Autoauswahlfunktion 470 verwendet werden,
um Punkte zu „entfernen" oder aus der Auswahl
zu löschen.
Beispielsweise wird eine Löschungs-3D-Probensonde durch
Aufrufen der Funktion 420 zum Erzeugen einer zusätzlichen
Sonde definiert. Ein „De-Selektions"-Kriterium basierend
auf Datenwerten wird definiert. Punkte, die vorher durch einen Autoauswahlvorgang
ausgewählt
worden sind, die den De-Selektions-Kriterien genügen, werden als Kandidaten
für die
De-Selektion identifiziert. Während
sich die Lösch-3D-Probensonde
durch das 3D-Volumen bewegt, werden die de-selektierten Punkte vom
Bild gelöscht
und das Bild wird schnell genug aufgebaut, so dass es vom Benutzer
in Echtzeit wahrgenommen wird.
-
Ist
die Auswahlfunktion 470 einmal vom Benutzer ausgelöst, kann
sie simultan beispielsweise mit der Bewegungsfunktion 430 ausgeführt werden. In
dieser Weise werden die Schritte 1102 bis 1108 (und
die Schritte 702 bis 708) mit einer ausreichend schnellen
Rate wiederholt, damit der Benutzer den Wechsel des Bildes der Sonde
mit den ausgewählten Punkten
in „Echtzeit" mit Wechsel des
Orts der Sonde wahrnimmt, wenn der Benutzer die Sonde bewegt. Während die
Sonde bewegt wird, können
die ausgewählten
Punkte durch Zeichnen in einer geeigneten Farbe hervorgehoben werden,
wodurch die Autoauswahl-3D-Probensonde eine Funktion als „Marker" hat, während sie
sich durch das 3D-Volumen bewegt. Alternativ können die vorher mittels eines
Autoauswahlvorgangs ausgewählten
Punkte „ausradiert" oder vom Bild gelöscht werden,
während die
Sonde bewegt wird, wodurch die Sonde als eine „Löscheinrichtung" oder Lösch 3D-Probensonde funktioniert,
während
sie sich durch das 3D-Volumen bewegt.
In jeder Ausgestaltung wird das Bild mit einer ausreichende schnellen
Bildrate aufgebaut, um vom Nutzer in Echtzeit wahrgenommen zu werden.
-
Will
ein Benutzer einen „bandförmigen Abschnitt" erzeugen, wird die
Funktion 480 ausgeführt. Die
zum Ausführen
der Funktion 480 notwenigen Schritte sind weiter unten
in Bezug auf die 17 und mittels eines Blockdiagrammkonnektors 18A in 18 beschrieben.
-
Will
ein Benutzer eine „3D-Oberfläche", die charakteristisch
für ein
innerhalb eines 3D-Volumendatensatzes
gefundenes physikalisches Phänomen ist,
erzeugen, wird die Funktion 490 ausgeführt. Die zum Durchführen der
Funktion 490 notwendigen Schritte werden weiter unten in
Bezug auf die 19 und mittels eines Blockdiagrammkonnektors 20A in 20 beschrieben.
-
In
jedem Fall, in dem der Benutzer wünscht, eine oder mehrere der
oben beschriebenen Funktionen ausführen, wie mehr Sonden (430),
Umformen der Sonde (440), Erzeugen eines bandförmigen Abschnitts
(480) und Erzeugen einer 3D-Oberfläche (490), kann jede
Funktion unabhängig
voneinander ausgeführt
werden oder in Zusammenhang mit einer oder mehreren der anderen
Funktionen.
-
Mit
Bezug auf die 12 wird nun ein Ausführungsbeispiel
eines Computersystems gezeigt, das zur Verwendung mit der vorliegenden
Erfindung geeignet ist. Ein Graphiksupercomputer 1210 enthält eine
oder mehrere Zentralrecheneinheiten (CPU) oder Prozessoren 1212.
Der Supercomputer 1210 enthält einen Randomaccessspeicher
(RAM) 1214, der von den Prozessoren 1212 angesteuert
werden kann. Auch der Supercomputer 1210 enthält ein oder mehrere
Graphikmodule 1216, die ebenfalls auf den RAM 1214 zugreifen
können.
Die Graphikmodule 1216 führen die von den Graphik ausführenden
Modulen 220 ausgeführten
Funktionen unter Verwendung von Hardware (beispielsweise spezialisierte Graphikprozessoren)
oder einer Kombination von Hardware und Software aus. Eine Benutzereingabevorrichtung 1218 ermöglicht es
dem Benutzer, Informationen für
den Graphiksupercomputer 1210 zu steuern und einzugeben.
-
Ein
besonders bevorzugter Graphiksupercomputer ist ein Onyx2 Infinite
Reality System, erhältlich
von Silicon Graphics, Inc., Mountain View, CA, ausgestattet mit
acht Prozessoren, drei Graphikpipelines, 16 GB Hauptspeicher und
250 GB Festplattenspeicher. Solch ein Graphiksupercomputer besitzt
eine skalierbare Architektur mit hoher Bandbreite und geringer Latenz,
um eine hohe Rendergeschwindigkeit in multiplen Graphikpipelines
zu erreichen. Graphiksupercomputer von anderen Herstellern, wie
beispielsweise Hewlett-Packard Company von Palo Alto, CA oder Sun
Microsystems von Mountain View, CA können ebenso verwendet werden.
-
Die
Graphikdaten, die ein darzustellendes Bild bilden, werden vom Graphiksupercomputer 1210 zu
einem Mehrfachbildschirmabbildungssystem 1220 zur Abbildung
auf einem Bildschirm 1230 gesendet. Im in 12 gezeigten
Ausführungsbeispiel werden
drei Projektoren verwendet. Aus der Perspektive eines Benutzers,
der das Bild auf dem Bildschirm 1230 betrachtet, weisen
die drei Projektoren einen linken Projektor 1240, einen
mittig angeordneten Projektor 1250 und einen rechts angeordneten Projektor 1260 auf.
Obwohl drei Projektoren gezeigt sind, ist die vorliegende Erfindung
nicht auf eine bestimmte Anzahl von Projektoren beschränkt.
-
Der
Projektor 1240 hat ein Projektsfeld auf dem Bildschirm 1230,
das prinzipiell bei 1242 gezeigt ist, zwischen einem Punkt 1241 und
einem Punkt 1243. Der Projektor 1250 hat ein Projektionsfeld
auf dem Bildschirm 1230, das generell bei 1252 gezeigt ist,
zwischen einem Punkt 1251 und einem Punkt 1253.
Der Projektor 1260 hat ein Projektionsfeld auf dem Schirm 1230,
der generell bei 1262 gezeigt ist zwischen einem Punkt 1261 und
einem Punkt 1263. Die Projektionsfelder 1242 und 1252 haben
eine sich überlappende
Region 1244 zwischen den Punkten 1251 und 1243.
In ähnlicher
Weise besitzen die Projektionsfelder 1262 und 1252 eine überlappende
Region 1264 zwischen den Punkten 1261 und 1253. Das
darzustellende Bild ist in drei sich überlappende Teilbilder (links,
Mitte und rechts) unterteilt. Durch gleichzeitiges Projizieren der
drei sich überlappenden
Teilbilder wird das Gesichtsfeld des Benutzers über das beispielsweise auf
einem Monitor oder durch Verwendung von nur einem Projektor Verfügbare vergrößert. Beispielsweise
erhöht
sich das Gesichtsfeld durch Verwendung der in 12 gezeigten drei
sich überlappenden
Teilbilder auf ungefähr
160°. Die überlappenden
Regionen 1244 und 1264 betragen ungefähr 5,3°. Das Mehrfachbildschirmanzeigesystem 1220 ist
für die überlappenden
Regionen 1244 und 1264 in einer gut bekannten
Weise verantwortlich, um die Bilder drei Projektoren ineinander überzublenden,
um ein nahtloses Bild auf dem Schirm 1230 zu erzeugen.
Geeignete Darstellungs- und Projektionssysteme sind erhältlich von
SEOS, London, England, zum Beispiel die Barco Projektoreinheiten.
-
13 zeigt
ein alternatives Ausführungsbeispiel
eines für
die Verwendung mit der vorliegenden Erfindung geeigneten Computersystems.
In dem in 13 gezeigten Ausführungsbeispiel
ist der Graphiksupercomputer 1210 mit mehreren Prozessoren 1212,
RAM 1214 und zwei Graphikmodulen 1216 ausgerüstet. Graphikworkstations,
die zur Verwendung in dem in 13 gezeigten
Ausführungsbeispiel
geeignet sind, sind von Silicon Graphics, Inc. oder Sun Microsystems
erhältlich.
Jedes Graphikmodul 1216 ist mit einem Monitor 1320 zur
Anzeige verbunden: Der Monitor 1320 ist bevorzugt ein Farbgraphikmonitor,
der zur Darstellung von Graphiken, wie sie in den 15 und 16 sind,
geeignet ist. Bevorzugt erstellt einer der Monitore 1320 das
Bild der 3D-Probensonde und der andere der Monitore 1320 die
verschiedenen Menüs,
die zur Bedienung des 3D-Probensondenprogramms 110 verwendet
werden, dar. 13 zeigt ebenso eine Tastatur 1330 und eine
Maus 1332, die als Eingabevorrichtungen dienen.
-
Ein
Computersystem, das zur Ausführung der
hierin beschriebenen Funktionalitäten fähig ist, ist in größerem Detail
in 14 gezeigt. Das Computersystem 1402 weist
einen oder mehrere Prozessoren, wie den Prozessor 1404,
auf. Der Prozessor 1404 ist an einen Kommunikationsbus 1406 angeschlossen. Verschiedene
Softwareausgestaltungen werden als Ausdruck dieses beispielhaften
Computersystems beschrieben. Nach Lesen dieser Beschreibung ist
es dem Fachmann ersichtlich, wie die Erfindung unter Verwendung
anderer Computersysteme und/oder Computerarchitekturen realisiert
werden kann.
-
Das
Computersystem 1402 weist auch einen Hauptspeicher 1408,
bevorzugt einen Randomaccessspeicher (RAM) auf und kann auch einen
zweiten Speicher 1410 aufweisen. Der zweite Speicher 1410 enthält beispielsweise
ein Festplattenlaufwerk 1414 und/oder ein austauschbares
Speicherlaufwerk 1410, das für ein Floppydisklaufwerk, ein
magnetisches Bandlaufwerk oder ein optisches Laufwerk etc. steht.
Das auswechselbare Speicherlaufwerk 1414 liest und/oder
schreibt auf die auswechselbare Speichereinheit 1418 in
einer sehr gut bekannten Weise. Die auswechselbare Speichereinheit 1418,
die für eine
Floppy Disk, ein Magnetband, eine optische Speicherplatte etc. steht,
kann vom auswechselbaren Speicherlaufwerk 1414 gelesen
und beschrieben werden. Wie man sich bewusst sein wird, beinhaltet die
auswechselbare Speichereinheit 1418 ein von dem Computer
verwendbares Speichermedium mit darauf gespeicherter Computersoftware
und/oder Daten.
-
In
anderen Ausführungsbeispielen
kann der zweite Speicher 1410 andere ähnliche Mittel aufweisen, damit
Computerprogramme oder andere Befehle in das Computersystem 1402 geladen
werden können.
Solche Mittel können
beispielsweise eine austauschbare Speichereinheit 1422 und
ein Interface 1420 sein. Beispiele davon können eine
Programmkarte und ein Karteninterface (wie es bei Videospielgeräten gefunden
wird), ein auswechselbarer Speicherchip (wie ein EPROM oder PROM)
und eine zugehörige
Buchse und andere austauschbare Speichereinheiten 1422 und
Interfaces 1420 sein, die es ermöglichen, dass Software und
Daten von der austauschbaren Speichereinheit 1422 auf das
Computersystem 1402 übertragen
werden.
-
Das
Computersystem 1402 kann ebenso ein Kommunikationsinterface 1424 aufweisen.
Das Kommunikationsinterface 1424 ermöglicht es, dass Software und
Daten zwischen dem Computersystem 1402 und externen Geräten übertragen
werden. Beispiele eines Kommunikationsinterfaces 1424 können ein
Modem, ein Netzwerkinterface (zum Beispiel eine Ethernetkarte) ein
Kommunikationsport, ein PCMCIA-Schacht und Karte etc. sein. Die über das
Kommunikationsinterface 1424 zu übertragende Software und Daten
können
in der Form von Signalen 1426 sein, die elektronisch, elektromagnetisch,
optisch oder in Form anderer Signale, die vom Kommunikationsinterface 1424 empfangen
werden können.
Die Signale 1426 werden dem Kommunikationsinterface über einen
Kanal 1428 bereitgestellt. Der Kanal 1428 trägt die Signale 1426 und
kann durch Verwendung eines Drahtes oder eines Kabels, Glasfasern,
einer Telefonleitung, einer Mobilfunkverbindung, einer RF-Verbindung
und anderen Kommunikationskanälen
realisiert werden.
-
In
diesem Dokument beziehen sich die Ausdrücke „Computerprogrammmedium" und „computerverwendbares
Medium" generell
auf Medien, wie einer austauschbaren Speichervorrichtung 1418,
einer in einem Festplattenlaufwerk 1412 installierten Festplatte
und Signalen 1426. Diese Computerprogrammprodukte sind
Mittel zum Bereitstellen von Software an das Computersystem 1402.
-
Computerprogramme
(auch genannt Computer Control Logic) sind im Hauptspeicher 1408 und/oder
im zweiten Speicher 1410 gespeichert. Die Computerprogramme
können
ebenso über
das Kommunikationsinterface 1424 empfangen werden. Solche
Computerprogramme, wenn sie ausgeführt werden, ermöglichen
es dem Computersystem 1402, die Merkmale der vorliegenden
Erfindung, wie sie hierin beschrieben wird, durchzuführen. Insbesondere
ermöglichen
die Computerprogramme, wenn sie ausgeführt werden, dem Prozessor 1404,
die Merkmale der vorliegenden Erfindung durchzuführen. Entsprechend stellen
solche Computerprogramme die Steuerung des Computersystems 1402 dar.
-
In
einer Ausgestaltung, bei der die Erfindung unter Verwendung von
Software realisiert ist, kann die Software in einem Computerprogrammprodukt gespeichert
und in das Computersystem 1402 unter Verwendung eines austauschbaren
Speicherlaufwerks 1414, einer Festplatte 1412 oder
des Kommunikationsinterfaces 1424 geladen sein. Die Steuerungslogik
(Software), wenn sie durch den Prozessor 1404 ausgeführt wird,
veranlasst den Prozessor 1404, die Funktionen der Erfindung,
wie sie hier beschrieben sind, durchzuführen.
-
In
einer weiteren Ausgestaltung ist die Erfindung vorwiegend durch
Verwendung von Hardware, zum Beispiel Hardwarekomponenten wie anwendungsspezifischen
integrierten Schaltkreisen (ASICs), umgesetzt. Die Realisierung
einer solchen Hardwaremaschine zum Durchführen der hierin beschriebenen
Funktionen sind dem Fachmann offensichtlich.
-
In
einer weiteren Ausgestaltung wird die Erfindung unter Verwendung
einer Kombination von Hardware und Software umgesetzt.
-
Systembedienung
und Ergebnisse
-
Die
Bedienung und die Ergebnisse der vorliegenden Erfindung werden nun
unter Verwendung eines Datenvolumens 240, das seismische
Daten enthält
(Datenwerte, die seismische Amplituden darstellen), beschrieben.
Der Benutzer bestimmt das zu verwendende bestimmte seismische Datenvolumen, das
von einer Diskette in den Hauptspeicher geladen wird. Eine Standard-3D-Probensonde
wird gezeichnet. Der Benutzer bestimmt die Farbe, die für die seismischen
Amplituden verwendet werden soll. Auch der Grad an Transparenz kann
ausgewählt werden.
Die drei in 15 gezeigten Sonden sind alle
undurchsichtig mit einer Überschneidung
der Sonden und des seismischen Datenvolumens auf den Oberflächen der
Sondentextur gemappt. Eine dieser Sonden ist mit einer gezeigten
Umrahmung dargestellt; die anderen zwei Sonden sind ohne Rahmen
dargestellt.
-
15 zeigt
drei aktiven Sonden. Der Benutzer hat gewählt, dass die Daten, die in
den Hintergrundebenen und dem Restbestand des seismischen Datenvolumens
außerhalb
der aktiven Sonden enthalten sind, nicht dargestellt werden. Zwei
der in 15 dargestellten Sonden schneiden
sich und der Schnitt der zwei Sonden ist dargestellt. In dieser
Weise kann der Benutzer die in dem seismischen Datenvolumen enthaltenen
geologischen Merkmale einfacher visualisieren und interpretieren.
Beispielsweise erstreckt sich ein geologisches Merkmal, das durch ein
dunkles Band zwischen zwei hellen Bändern dargestellt ist, über die
Ansichtsfläche
der größeren schneidenden
Sonde und „biegt
um die Ecke", um sich
auf der Ansichtsseite der kleineren schneidenden Sonde senkrecht
dazu zu erstrecken. Die Möglichkeit
die Sonden, im gesamten seismischen Datenvolumen zu bewegen und
sich miteinander schneiden zu lassen, ermöglichen es einem Benutzer,
das Ausmaß eines
solchen geologischen Merkmals besser zu interpretieren und zu verfolgen.
-
16 zeigt,
wie eine Sonde verwendet werden kann, um eine andere Sonde „auszuschneiden", um ein „Loch" in einer Sonde herzustellen.
Wie in 15 hat der Benutzer ausgewählt, dass
die Daten, die in den Hintergrundebenen und in dem Restbestand des
seismischen Datenvolumens außerhalb der
aktiven Sonden enthalten ist, nicht darzustellen sind. 16 zeigt,
dass die Opazitätseinstellungen individuell
durch den Benutzer für
jede aktive Sonde ausgewählt
werden können.
Eine der in 16 gezeigten Sonden ist undurchsichtig,
so dass es nicht möglich
ist, durch die Oberfläche
dieser Sonde zu sehen. Um das Innere dieser äußeren Sonde sehen zu können, muss
sie durch eine andere Sonde weg geschnitten werden. Die äußere undurchsichtige
Sonde wird als „Datensonde" bezeichnet. Eine
zweite vollständig
transparente „Schnittsonde" wurde verwendet,
um einen 3D-Teilbereich der Datensonde auszuschneiden. Weil die
Schnittsonde vollständig
transparent ist, ist sie nicht in 16 sichtbar.
Jedoch wird der Beweis, dass die vollständig transparente Schnittsonde
da ist, dadurch erbracht, dass die undurchsichtige innere Oberfläche der
Datensonde sichtbar ist. Das Bild des Schnitts der Datensonde und
der Schnittsonde ist die innere Schnittoberfläche der Datensonde.
-
Eine
dritte aktive Sonde ist in 16 gezeigt. Die
dritte Sonde ist mit einem gezeigten Rahmen dargestellt. Die dritte
Sonde ist volumengerendert mit einem unterschiedlichen Grad an Transparenz,
so dass der Benutzer durch die äußeren Oberflächen der
Sonde sehen kann und die geologischen Eigenschaften innerhalb der
dritten Sonde sehen kann. Wie in 16 gezeigt,
ist die dritte Sonde innerhalb des 3D-Teilbereichs der Datensonde,
die durch die Schnittsonde weg geschnitten wurde, partiell volumengerendert.
-
Die
in 16 gezeigte dritte volumengerenderte Sonde weist
weiter ausgewählte
Punkte auf, die durch einen Ausgangsauswahlvorgang (Funktion 470)
ausgewählt
worden sind. Die ausgewählten Punkte
sind in einer Weise dargestellt, um sie für den Benutzer hervorzuheben.
Die ausgewählten
Punkte sind in 16 als Verbindungspunkte gezeigt.
Der Ausgangspunkt ist in 16 durch
die dunklere Kugel dargestellt.
-
17 zeigt
eine Anordnung eines bandförmigen
Abschnitts 1710 die nicht die vorliegende Erfindung verkörpert. Ähnlich der
Sonde sind die bandförmigen
Abschnitte ein 3D-Volumenvisualisierungsverfahren
zum Darstellen von Daten entlang einer benutzerdefinierten Traverse
durch eine 3D-Volumendatenmenge innerhalb einer Sonde. Die Traverse
schneidet durch den 3D-Volumendatensatz wie eine Plätzchenform
durch Teig und wird daher hier als Plätzchenebene, beispielsweise
die Plätzchenebenen 1712 und 1714,
bezeichnet. Die bandförmigen Abschnitte
können
die 3D-Daten in einer Ausrichtung darstellen, die nicht notwendigerweise
mit der Ausrichtung der Ordinate des 3D-Volumendatensatzes und/oder
der Sonde übereinstimmt.
Der bandförmige Abschnitt 1710 ist
durch den Benutzer in Übereinstimmung
mit dem im folgenden beschriebenen Verfahren hergestellt. Die Traversen
oder Plätzchenebenen
sind durch Digitalisieren von Ansteuerungspunkten definiert, wie
die Ansteuerungspunkte 1716, 1718 und 1720,
die von der Oberfläche
der Sonde, die als „Sondenoberfläche" bezeichnet wird,
ausgewählt sind.
Der Benutzer kann eine transparente Schnittsonde, wie oben beschrieben,
herstellen, um sich mit einem undurchsichtigen bandförmigen Abschnitt
zu verbinden. Alternativ kann die Sonde auch undurchsichtig hergestellt
werden und der bandförmige
Abschnitt kann transparent gemacht werden, wenn gewünscht.
-
Die
Ansteuerungspunkte können
verwendet werden, um eine Vielzahl von Liniensegmenten, wie die
Liniensegmente 1722, 1724 und 1726 herzustellen,
die kollektiv als Polylinie 1728 bezeichnet wird, die einem
Polygon ähnlich
ist, aber geschlossen oder nicht geschlossen ist. Daher bilden die
Liniensegmente eine offene oder geschlossene Linie, so dass einzelne
oder viele Plätzchenebenen
hergestellt werden können.
In einem bevorzugten Ausführungsbeispiel
ist der Bereich der Datendarstellung, d. h. die Plätzchenebenen,
entlang einer Richtung, die senkrecht zur Sondenoberfläche ist,
projiziert und die dargestellten Daten können sich zu einer gegenüberliegenden
Fläche
der Sonde, die als „gegenüberliegende
Sondenoberfläche" bezeichnet wird,
erstrecken. Nach Erzeugen eines bandförmigen Abschnitts kann der
Benutzer die Maussteuerung oder die Tastatur benutzen um die Ansteuerungspunkte
auszuwählen, zu
bewegen, zu ziehen oder zu ergreifen, um den bandförmigen Abschnitt 1710 in
Echtzeit zu editieren und verschiedene Daten aus dem 3D-Volumendatensatz
entlang der Plätzchenebenen 1712 und 1714 darzustellen.
Zusätzlich
zum Editieren des bandförmigen
Abschnitts 1710 zum Betrachten der verschiedenen Daten
des 3D-Volumendatensets innerhalb der Sonde, können der gesamte bandförmige Abschnitt 1710 und
die Sonde gleichzeitig an eine unterschiedliche Position verschoben
werden, um verschiedene Daten des 3D-Volumendatensatzes außerhalb
der Abgrenzungen der Sonde an ihrer Position zu sehen. Der aktive
Ansteuerungspunkt 1720 ist bevorzugt hervorgehoben oder
verglichen zu den anderen Ansteuerungspunkten unterschiedlich gefärbt, um
anzuzeigen, dass der Ansteuerungspunkt 1720 in einem aktiven
Zustand für
einen Arbeitsvorgang, wie Bewegen, Entfernen oder anderes Editieren
wie weiter unten beschrieben, ist. Ansteuerungspunkte können nach
der ersten bandförmigen
Abschnittskonstruktion eingesetzt oder entfernt werden. Die Geometrie
des bandförmigen
Abschnitts und Ausrichtung können
auch für
zukünftige
Arbeitssitzungen abgespeichert werden.
-
18 zeigt
ein Blockdiagramm des Systems 1810 für Programmmodule in einem bevorzugt ausgestalteten
Beispiel der Erfindung zum Herstellen von bandförmigen Abschnitten bei Echtzeitbildraten, wie
sie hier vorgestellt wurden. Das Sondenmodul 1822 stellt
einen anfänglichen
Kontext zum Zeichnen der Polylinie 1728 bereit. Das Sondenmodul 1822 stellt
die Benutzeraktivitätsdaten,
wie Mausklicks und Tastenanschläge
an den Plätzchenmanager 1824 bereit.
Daher werden die Benutzeraktivitätsdaten
wie Erzeugen von Ansteuerungspunkten, Löschen von Ansteuerungspunkten,
Bewegen von Ansteuerungspunkten, Bewegen der gesamten Sonde und ähnliches
in das System 1810 eingefügt.
-
Der
Plätzchenmanager 1824 verwaltet
die von der Sonde 1822 bereitgestellten Benutzereingaben.
Der Plätzchenmanager 1824 verteilt
die Daten, beispielsweise Ansteuerungspunkte hinzufügen, bewegen
und entfernen, sowohl an das Polylinienmodul 1826 und das
Plätzchenebenenmodul 1828.
Für einige
Daten, wie Einfügen
eines Ansteuerungspunktes, empfängt
der Plätzchenmanager 1824 Daten
vom Polylinienmodul 1826 und übergibt die Daten zum Plätzchenebenenmodul 1828.
-
Das
Polylinienmodul 1826 verwaltet die Daten, die mit der Polylinie 1728 und
den damit verbundenen Ansteuerungspunkten in Verbindung mit dem Polymarkermodul 1832 und
dem Polystatemodul 1830 in Verbindung stehen. Die Polylinie 1728 ist
im wesentlichen als visuelle Referenz bereitgestellt. Das Polylinienmodul 1826 verwaltet
in Verbindung mit dem Polystatemodul 1830 den Zustand der
Ansteuerungspunkte. Beispielsweise kann ein Ansteuerungspunkt in
seinem aktiven Zustand bewegt oder gelöscht werden. Der aktive Ansteuerungspunkt,
wie der aktive Ansteuerungspunkt 1720, ist bevorzugt hervorgehoben.
Die Ansteuerungspunkte können
für eine
einfachere Ansicht vergrößert oder
in ihrer Größe verkleinert
sein. Das Polymarkermodul 1832 stellt einen visuellen Kontext
wie Hervorheben oder Verändern
der Farben für
die Ansteuerungspunkte bereit, so dass ein Benutzer weiß, welcher
Punkt im aktiven Zustand zum Bewegen, Löschen und anderweitigem Editieren
ist. Das Polymarkermodul 1832 kann ebenso Text, wie die
Bezeichnung des Orts, am aktiven Ansteuerungspunkt 1720 bereitstellen.
-
Das
Plätzchenebenenmodul 1828 bietet
eine texturierte Geometrie, die beispielsweise für geologische Daten Lithographie
bezogen sein kann, für
die Oberfläche
der Plätzchenebenen,
wie die Plätzchenebenen 1712 und 1714.
Das Plätzchenzustandsmodul 1834 überwacht
den Zustand der Plätzchenebene,
so dass im aktiven Zustand eine oder mehrere Plätzchenebenen bewegt oder anderweitig
editiert werden können,
wobei im inaktiven Zustand keine Veränderungen gemacht werden.
-
Während des
Betriebs des Systems 1810 kann das Sondenmodul 1822 den
Plätzchenmanager 1824 davon
unterrichten, dass ein Ereignis eingetreten ist, beispielsweise
das Löschen
eines Markers, d. h. das Löschen
eines Ansteuerungspunktes. Der Plätzchenmanager 1824 benachrichtigt
darauf das Polylinienmodul 1826, das den Marker oder den
Ansteuerungspunkt löscht
und die zwei umgebenden Linien zu einer Linie verbindet und das
Polymarkermodul unterrichtet, den gelöschten Marker von der Liste der
Polymarker, die vom Polymarkermodul 1832 verwaltet wird,
zu entfernen. Der Plätzchenmanager 1824 und
das Plätzchenebenenmodul
wandeln die zwei Ebenen dann in eine um.
-
19 zeigt
eine Ausgestaltung der Erfindung zum Erstellen einer dreidimensionalen
Oberfläche,
die für
ein physikalisches Phänomen
charakteristisch ist, das durch einen 3D-Volumendatensatz, wie beispielsweise
einer geologischen Verwerfungsoberfläche, beschrieben wird. Tatsächlich eignet
sich dieses Verfahren um eine 3D-Volumenvisualisierung zur
schnellen Identifizierung und Interpretation von geologischen Verwerfungsoberflächen einfach
und schnell zu erreichen. Jedoch können auch andere Arten von
Oberflächen
für andere
Arten von Daten ebenso durch Verwendung des Verfahrens der vorliegenden
Erfindung beschrieben werden. Obwohl das Verfahren im folgenden
näher beschrieben
wird, wird das Verfahren allgemein dazu verwendet, Ansteuerungspunkte,
wie die Ansteuerungspunkte 1902, 1904, 1906 und 1908 entlang
der Sondenoberfläche 1910 zu
digitalisieren. Die visuelle Überprüfung der texturierten
Oberfläche
der Sondenoberfläche 1910 erlaubt
es einem Benutzer, die Ansteuerungspunkte auf einer Struktur von
Interesse, beispielsweise einer vermuteten Verwerfungslinie, visuell
zu orten. Die Sondenoberfläche 1910 wird
dann bewegt und ein neuer Satz von Ansteuerungspunkten digitalisiert. Die
Oberfläche 1912 wird
dann zwischen den initialen Punkten und den neuen Ansteuerungspunkten
interpoliert. Die Ansteuerungspunkte können einfach editiert oder
bewegt werden, um eine genauere Oberfläche zu bilden, möglicherweise
die Oberfläche 1912,
mit einer oben beschrieben Echtzeitbildrate. Dieser Vorgang kann
wiederholt werden bis die Interpretation der Oberfläche vollständig ist,
wobei zu dieser Zeit die Oberfläche 1912 gespeichert
werden kann.
-
Daher
stellt ein Ausführungsbeispiel
der Erfindung, wie durch 19 offenbart,
ein Verfahren zum schnellen Konstruieren einer dreidimensionalen Oberfläche oder
einer Verwerfung bereit, die innerhalb eines 3D-Volumendatensatzes
gefunden wurde. In einem bevorzugten Ausführungsbeispiel werden 3D-Sonden,
wie oben beschrieben, verwendet. Das Verfahren umfasst das Konstruieren
einer Vielzahl von Splinekurven, wie dies bei Kurve 1914 auf
der Sondenoberfläche 1910,
die interaktiv konstruiert werden kann, wenn die auf der Sondenoberfläche 1910 abgebildeten
Daten visualisiert werden. Die Splinekurve 1914 wird unter
Verwendung eines Algorithmus interpoliert, in derselben Weise, wie
die Splinekurven 1916, 1918 und 1920 interpoliert
werden. Die Splinekurven und v-Kurven 1922, 1924 und 1926 werden
gebildet um ein Gitter zu bilden. Das Gitter stellt die dreidimensionale
Oberfläche 1912 dar.
-
Zur
Konstruktion der initialen Splinekurve, wie beispielsweise die Splinekurve 1914,
digitalisiert der Benutzer Ansteuerungspunkte, wie die Ansteuerungspunkte 1902, 1904, 1906 und 1908 auf
der Sondenoberfläche 1910.
Marker werden an diesen Ansteuerungspunkten hergestellt und die
Splinekurve 1914 ist zwischen den Kontrollpunkten 1902, 1904, 1906 und 1908 interpoliert.
Die Ansteuerungspunkte 1902, 1904, 1906 und 1908 können innerhalb
der Sondenoberfläche 1910 bewegt
werden, wodurch eine neue Splinekurve 1914 interpoliert
wird. Ist die Sondenoberfläche 1910 einmal
ausgewählt,
werden die anderen Sondenoberflächen
für eine
einfachere Handhabung transparent gesetzt. Zusätzlich kann die ausgewählte Sondenoberfläche 1910 undurchsichtig
gemacht werden, um die Oberfläche 1912 durch
die Sondenoberfläche 1910 zu
betrachten.
-
Der
Benutzer bewegt dann die Sondenoberfläche 1910 zu einer
anderen Position und wählt neue
Ansteuerungspunkte. Der Benutzer kann sich einfach zwischen den
vorher erzeugten Splinekurven durch Auswählen der Gitterschnittpunkte,
wie die Schnittpunkte 1928 oder 1930, vor und
zurück
bewegen. Während
zusätzliche
Splinekurven erzeugt werden, können
die v-Kurven auch sanft und schnell unter Verwendung eines weiteren
Algorithmus interpoliert werden. Der Benutzer erzeugt bevorzugt
eine Vielzahl von Splinekurven in derselben Art und die Interpolation
der Oberfläche 1912 wird
unverzüglich mit
Echtzeitbildraten, wie oben beschrieben, dargestellt.
-
Der
Benutzer kann die Sonde anhalten und einen oder mehrere Ansteuerungspunkte,
etwa die Ansteuerungspunkte 1902, 1904, 1906 und 1908, bewegen,
um die Position der Splinekurve, etwa die Splinekurve 1914,
einzustellen. Alle anderen Splinekurven, wie die Splinekurven 1916, 1918 und 1920, bleiben
unberührt,
während
die Oberfläche 1912 sanft
zwischen der derzeitigen Splinekurve 1914 auf der Sondenoberfläche 1910 und
der vorherigen Splinekurve 1920 interpoliert wird. Der
Restbestandteil der Oberfläche 1912 bleibt
so, außer
wenn der Benutzer die Sondenoberfläche 1910 zu einer
anderen Splinekurve, beispielsweise 1920, bewegt, und fährt fort
dieselbe zu editieren, wodurch die Oberfläche 1912 zwischen
der derzeitigen Splinekurve 1920 und der Sondenoberfläche 1910 und
der vorherigen Splinekurve 1918 neu gebildet wird.
-
Zusätzliche
Splinekurven können,
falls gewünscht,
zwischen den existierenden Splinekurven hinzugefügt werden. Durch Auswählen der
Gitterschnittpunkte, wie die Gitterschnittpunkte 1928 oder 1930 oder
durch Auswählen
der Ansteuerungspunkte der Sondenoberfläche, wie die Ansteuerungspunkte 1902, 1904, 1906 und 1908,
kann der Benutzer die Sondenoberfläche 1910 wie gewünscht schneller nach
hinten und nach vorne bewegen. Ist ein Gitterschnittpunkt einmal
ausgewählt,
kann der Benutzer die Ansteuerungspunkte innerhalb der Sondenoberfläche 1910,
die wie in 19 gezeigt, dargestellt werden,
bewegen und die Oberfläche 1912 mit
ihren Splinekurven und v-Kurven wird interaktiv folgen. Die Splinekurven
und die v-Kurven können
dargestellt oder nicht dargestellt werden, abhängig von den Einstellungen
des Benutzers. Bevorzugt wird zur Klarheit nur eine Sondenoberfläche 1910 zur
Zeit dargestellt.
-
20 offenbart
ein modulares System 2000, das die Software zum Durchführen der
in Verbindung mit 19 beschriebenen Funktionen
beschreibt. In einer Ausgestaltung weist das modulare System 2000 viele
derselben Module wie in dem modularen System 1810 zum Herstellen
eines bandförmigen
Abschnitts auf. Daher ermöglicht
der Aufbau eine stärker
allgemeine Steuerung, die sowohl die bandförmigen Abschnittsfunktionen
als auch die Oberflächenmappingfunktionen
effektiv umsetzen kann. Beispielsweise kann das Plätzchenmodul 2018,
Polymarkermodul 2012 und Polylinienmodul 2014 in
der oben in Bezug auf die Herstellung von bandförmigen Abschnitten beschriebene
Weise verwendet werden. Ebenso führt
das Sondenmodul 2010 daher wieder die Funktionen, wie sie
vorher beschrieben sind, wie beispielsweise Bereitstellen von ersten
Zeichnungsplines, wie Spline 1914, aus, welche ebenso als ähnlich zu
den oben beschriebenen Polylinien erachtet werden. Das Sondenmodul 2010 stellt
Benutzeraktivitätsdaten,
wie Mausklicks und Tastenanschläge,
an verschiedene andere Module bereit. Das Kubussplinemodul 2016 betrifft
Funktionen für
die editierbare Oberfläche
oder Mappingeigenschaften, wie die in 19 gezeigte
Oberfläche 1912.
Das Kubussplinemodul 2016, das Splinemanagermodul 2020,
das Splinekurvenmodul 2022 und das Splineoberflächenmodul 2024 sind
Funktionen, die von denen unterschiedlich sind, die nur in den bandförmigen Abschnittssektionen
verwendet werden. Der Splinemanager 2020 führt eine
Anzahl von verschiedenen Funktionen durch, beispielsweise Erzeugen
oder Löschen
von Oberflächen, Ändern von Funktionsmodi
von Erzeugen einer Oberfläche
zu Editieren einer Oberfläche,
wie auch Lesen und Schreiben von Funktionen. Beispielsweise kann
der Splinemanager 2020 eine Oberflächenattributsdatei lesen und
schreiben, die solche Attribute betrifft wie Farbe, Zeigen des Gitters,
Markerfarbe und ähnliches.
Das Splinekurvenmodul 2022 macht Aufzeichnungen über die
Splinekurven, welche Splinekurve in der Editier- oder Erzeugungsphase
ist und welche Veränderungen
an Splinekurven vorgenommen wurden. Das Splineoberflächenmodul 2024 reagiert
auf die Veränderungen,
die zur Interpolation der resultierenden Oberflächenänderungen durchgeführt wurden.
-
Durch
Verwenden des System und des Verfahrens der vorliegenden Erfindung
können
Geologen und Geophysiker seismische 3D-Daten schneller und genauer
visualisieren und interpretieren. Dieses reduziert stark die seismische
3D-Projektdurchlaufzeit, erhöht
die Produktion von existierenden Feldern und findet weitere Reserven.
-
Ergebnis
-
Während verschiedene
Ausgestaltungen der vorliegenden Erfindung oben beschrieben worden sind,
versteht es sich, dass diese lediglich beispielhaft und nicht beschränkend vorgestellt
worden sind. Daher soll der Schutzumfang der vorliegenden Erfindung
nicht durch irgendeines der oben beschriebenen Ausführungsbeispiele
eingeschränkt
werden, sondern in Übereinstimmung
mit den folgenden Ansprüche
definiert werden.