DE69816824T2 - Texturabbildung in 3-d-rechnergraphik - Google Patents

Texturabbildung in 3-d-rechnergraphik Download PDF

Info

Publication number
DE69816824T2
DE69816824T2 DE69816824T DE69816824T DE69816824T2 DE 69816824 T2 DE69816824 T2 DE 69816824T2 DE 69816824 T DE69816824 T DE 69816824T DE 69816824 T DE69816824 T DE 69816824T DE 69816824 T2 DE69816824 T2 DE 69816824T2
Authority
DE
Germany
Prior art keywords
computer
transformation
implemented process
source image
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69816824T
Other languages
English (en)
Other versions
DE69816824D1 (de
Inventor
A. Garth DICKIE
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avid Technology Inc
Original Assignee
Avid Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Avid Technology Inc filed Critical Avid Technology Inc
Publication of DE69816824D1 publication Critical patent/DE69816824D1/de
Application granted granted Critical
Publication of DE69816824T2 publication Critical patent/DE69816824T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/18Image warping, e.g. rearranging pixels individually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Description

  • Die Erfindung bezieht sich auf das Editieren von Graphiken und insbesondere auf das Bestimmen eines Pixelwerts in einem Bild, das durch einen Spezialeffekt erzeugt worden ist, der eine Funktion enthält, die eine nicht-gleichmäßige Skalierung oder eine beliebige Verzerrung einer Quellenbildfunktion umfasst.
  • HINTERGRUND DER ERFINDUNG
  • In vielen Computergraphikanwendungen wird ein Bild, das auf einem zweidimensionalen Anzeigebildschirm angezeigt wird, durch Transformation eines weiteren Bildes, das ein Quellenbild genannt wird, erzeugt. Beispielsweise kann das Quellenbild eine Textur sein, die auf ein dreidimensionales Objekt abgebildet wird, das auf eine durch die Anzeige definierte zweidimensionale Ebene projiziert wird. Eine weitere Anwendung umfasst Spezialeffekte bei bewegten Bildern oder bei der Animation, in denen ein Quellenbild verformt wird, um ein gewünschtes Bild zu erzeugen.
  • Das Quellenbild kann durch ein rechtwinkliges Gitter von Abtastwerten einer kontinuierlichen 2-D-Funktion f(x, y) dargestellt werden. Jeder Abtastwert ist der Wert der kontinuierlichen Funktion an einem gegebenen Abtastpunkt oder Pixel, wobei jedes Pixel einen Punkt des Bildes darstellt, der die Farbe des Bildes an diesem Punkt enthält. Eine ideale Prozedur zum Skalieren des Bildes, d. h. eines Bildes, das als diskrete Pixelorte entlang fester Abtastlinien in einer rechtwinkligen Anordnung von Abtastlinien dargestellt ist, umfasst die Rekonstruktion der kontinuierlichen Originalfunktion des Quellenbilds aus den abgetasteten Daten und daraufhin das Verformen des kontinuierlichen Bildes. Um Frequenzen in dem Zielbild über einer Nyquist-Frequenz zu beseitigen, wird ein Tiefpassfilter angewendet. Die Nyquist-Frequenz bestimmt die niedrigste Abtastrate, die möglich ist, um Einzelheiten in dem Bild zu erhalten, und ist gleich dem Doppelten der Frequenz der höchsten Frequenzkomponente in einem Quellensignal. Das Tiefpassfilter wird verwendet, da irgendeine Frequenzkomponente, die höher als die Hälfte der Abtastrate ist, falsch abgetastet und in eine tiefere Frequenz verfälscht wird. Nach Anwendung des Filters wird an der kontinuierlichen Funktion des verformten Bildes eine Abtastung unter Verwendung einer anderen Abtastauflösung ausgeführt, um ein Zielbild zu erzeugen. Gemäß der Abtasttheorie ist die sinc-Funktion f(x, y) = [sin(πx)sin(πy)]/π2x ideal für die Rekonstruktion eines zweidimensionalen Bildes. Die Abtastung bestimmt den Farbwert jedes Punktes in dem Ziel, um das endgültige Zielbild zu erzeugen. Der gesamte Prozess der Rekonstruktion, der Verformung, der Filterung und der Abtastung ist als Resampling bekannt.
  • Allerdings ist der ideale Prozess, wie er oben umrissen wurde, in der Praxis hauptsächlich deshalb unpraktisch, weil praktisch kein ideales Rekonstruktionsfilter implementiert werden kann. Da die sinc-Funktion an Punkten, die beliebig weit vom Ursprung entfernt sind, von Null verschieden ist, ist beispielsweise die Ausführung von Berechnungen an allen Punkten unpraktisch. Somit wird zur Filterung des Signals, das ein Quellenbild darstellt, ein endliches Rekonstruktionsfilter versucht, wobei etwa häufig bilineare und bikubische Filter verwendet werden. Außerdem kann ein tatsächliches kontinuierliches Bild in einer Computerumgebung nicht dargestellt werden und ein kontinuierliches Bild nicht leicht verzerrt werden.
  • Eine Möglichkeit, den idealen Prozess zu simulieren, umfasst das Anwenden einer Transformation auf regelmäßig beabstandete Pixel von einem Quellenbild und daraufhin das Anwenden eines Tiefpassfilters auf das transformierte Bild. Allerdings ist es möglich, dass das transformierte Bild nach Anwendung der Transformation keine regelmäßig beabstandeten Punkte mehr enthält, wobei das Anwenden eines Tiefpassfilters auf die unregelmäßig beabstandeten Punkte schwierig auszuführen ist.
  • In herkömmlichen Systemen kann eine Verkleinerung unter Verwendung von MIP-Mapping-Techniken ausgeführt werden. Obgleich beim MIP-Mapping bei der Filterung eine Standardgestalt eines Quadrats verwendet wird, kann sich der Bereich des Filters ändern. Ein Quellenbild wird nacheinander auf eine niedrigere Auflösung heruntergemittelt. Jedes Bild besitzt die halbe Auflösung des vorhergehenden Bildes, d. h. die halbe lineare Abmessung und ein Viertel der Anzahl der Abtastwerte seines vorhergehenden Bildes. Unter Verwendung einer bilinearen Interpolation wird für die Werte jedes Pixels, während es herunterskaliert wird, eine Intensität bestimmt. Die lineare Interpolation zwischen den Ebenen der Filterung glättet die Werte weiter. Allerdings kann das MIP-Mapping in Bewegtbildanwendungen unerwünschte Artefakte erzeugen.
  • Die Standardboxfilterung kann ebenfalls zur Abbildung eines Bildes verwendet werden. Es kann eine rechteckige Box verwendet werden, die der genäherten Gestalt des Zielpixels entspricht, um durch Summieren aller Werte in dem Zielbild, die in dem Rechteck enthalten sind, einen gefilterten Mustennrert für das Pixel zu berechnen. Jedes Zielpixel besitzt einen Wert, der ein gewichteter Mittelwert eines Bereiches der Quellenpixel ist. Allerdings können sich unerwünschte Artefakte in dem Zielbild ergeben, wenn das transformierte Pixel nicht genähert ein ausgerichtetes Rechteck ist.
  • Das Problem der unerwünschten Artefakte kann besonders unangenehm sein, wenn ein Bild nicht-gleichmäßig skaliert wird, d. h. einer beliebigen Verformung unterliegt. Diese Artefakte entstehen besonders bei der Anwendung von Spezialeffekten auf ein Bild, die das Ändern wenigstens eines Teils des Bildes anders als andere Teile des Bildes umfassen. Zwei Beispiele einer nicht-gleichmäßigen Skalierung durch einen Spezialeffekt umfassen die Kugel und die Kräuselung. Beim Anwenden eines Kräuselungseffekts enthält das resultierende Bild ein Kräuselungsmuster wie etwa ein solches, wie es sich aus dem Werten eines Steins in einen See ergibt. Die Anwendung des Kugeleffekts erzeugt einen vergrößerten Querteil einer Kugel, d. h. eine 'Wölbung', während das umgebende Bild in der Kugel aufrechterhalten wird.
  • Es besteht ein Bedarf an einem System oder an einem Prozess zur Transformation eines Quellenbilds in ein Zielbild, das den idealen Resampling-Prozess annähert, während es die Artefakte, die von herkömmlichen Filterverfahren verursacht werden, die mit nicht-gleichmäßig skalierenden Anwendungen verwendet werden, beseitigt.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die vorliegende Erfindung nähert einen idealen Resampling-Prozess unter Verwendung eines Rekonstruktionsfilters an, das durch eine lineare Transformation modifiziert worden ist. Das modifizierte Rekonstruktionsfilter wird in dem Quellenbild angewendet, um Werte für Pixel in dem Zielbild zu bestimmen. Durch die Anwendung eines modifizierten Rekonstruktionsfilters in dem Quellenbild können Artefakte, die durch das Resampling eines gefilterten Quellenbilds verursacht werden, verringert werden.
  • Ein Aspekt der vorliegenden Erfindung ist ein Prozess zum Erhalten eines Pixelwerts in einem Zielbild, das durch nicht-gleichmäßige Skalierung erzeugt wird. Es wird ein Rekonstruktionsfilter gewählt und ein Einheitskreis bestimmt, der in einem Pixel in einem Zielbild zentriert ist. An dem Einheitskreis wird eine durch die nichtgleichmäßige Skalierung bestimmte affine Transformationsfunktion ausgeführt, um wenigstens zwei orthogonale Achsen in einem Quellenbild zu definieren. Es wird eine lineare Transformation zwischen einem Einheitskreis in dem Quellenbildraum und den orthogonalen Achsen bestimmt. Daraufhin wird die lineare Transformation auf das Rekonstruktionsfilter angewendet. Daraufhin werden diejenigen Pixel aus dem Quellenbildraum identifiziert, die in dem modifizierten Rekonstruktionsfilter enthalten sind. Aus den Pixeln, die in dem Träger des ausgewählten Rekonstruktionsfilters enthalten sind, wird ein Wert für ein Pixel in einem Zielbild bestimmt.
  • Weitere Aspekte der vorliegenden Erfindung umfassen ein Computersystem, das diesen Prozess implementiert, sowie weitere Systeme und Prozesse, die unten und in den beigefügten Ansprüchen dargestellt sind.
  • KURZBESCHREIBUNG DER ZEICHNUNG
  • In der Zeichnung ist
  • 1 ein Blockschaltplan eines Systems zur Verarbeitung der nichtgleichmäßigen Skalierung von Bildern gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 2 ein Blockschaltplan eines Universalcomputers, der für eine Ausführungsform der Erfindung geeignet ist;
  • 3 ein Funktionsdiagramm des Prozesses einer Ausführungsform der vorliegenden Erfindung;
  • 4 ein Ablaufplan des Prozesses einer Ausführungsform der vorliegenden Erfindung; und
  • 5 ein Blockschaltplan eines Systems zur Verarbeitung der nichtgleichmäßigen Skalierung von Bildern gemäß einer Ausführungsform der vorliegenden Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die vorliegende Erfindung wird umfassender verständlich durch die folgende ausführliche Beschreibung, die in Verbindung mit der beigefügten Zeichnung gelesen werden sollte, in der gleiche Bezugszeichen ähnliche Strukturen bezeichnen.
  • Die vorliegende Erfindung nähert einen idealen Resampling-Prozess unter Verwendung eines Rekonstruktionsfilters an, das durch eine lineare Transformation modifiziert worden ist. Das modifizierte Rekonstruktionsfilter wird in dem Quellenbild angewendet, um Werte für Pixel in dem Zielbild zu bestimmen. Durch Anwendung eines modifizierten Rekonstruktionsfilters in dem Quellenbild können Artefakte, die durch das Resampling eines gefilterten Quellenbilds verursacht werden, verringert werden.
  • Dieser Prozess wird nun allgemein in Verbindung mit 1 und nachfolgend ausführlicher in Verbindung mit den 3, 4 und 5 beschrieben. Das Spezialeffekt-Hilfsmittelmodul 125 erzeugt einen Effekt, der die nicht-gleichmäßige Skalierung umfasst. Um solche Effekte zu definieren, können verschiedene Hilfsmittel verwendet werden. Die Effektdaten 130 können zur zukünftigen Verwendung gespeichert oder an den Filtermodifizierer 105 gesendet werden. Der Filtermodifizierer 105 empfängt ein ausgewähltes Filter 120, ein ausgewähltes Pixel 115 in einem Zielbild sowie Daten 130, die den Effekt angeben, der auf ein Zielbild 110 anzuwenden ist. Der Filtermodifizierer 105 modifiziert das ausgewählte Filter 120 gemäß einer durch den Effekt 130 definierten Beziehung zwischen dem ausgewählten Pixel 115 und einem Punkt in dem Zielbild 110, um ein transformiertes Filter 135 zu erzeugen. Das Filteranwendungsmodul 140 wendet das modifizierte Filter 135 auf das Quellenbild 110 an, um einen Pixelwert 145 in dem Zielbild zu erhalten. Der Pixelwert 145 wird an eine Render-Vorrichtung 150 ausgegeben, um das Zielbild anzuzeigen.
  • Die vorliegende Erfindung kann unter Verwendung eines Universalcomputers implementiert werden, der in der Weise programmiert ist, dass er durch nichtgleichmäßige Skalierung eines Quellenbilds ein Zielbild mit verringerten Artefakten erzeugt. Ein beispielhaftes Computersystem ist in 2 gezeigt. Insbesondere enthält die Vorrichtung, wie in 2 gezeigt ist, einen Universalcomputer 20 mit einem Prozessor 22, einer Eingabevorrichtung 24, einer Ausgabevorrichtung 26 und einem Speicher 28, die über einen Computerbus 30 miteinander verbunden sind. Der Speicher 28 umfasst einen primären Speicher 32 (d. h. einen schnellen flüchtigen Speicher wie etwa einen dynamischen Halbleiterspeicher) und einen sekundären Speicher 34 (d. h. einen nicht flüchtigen Speicher wie etwa Magnetplatten). Der Speicher 28 speichert eines oder mehrere Programme 36, die, wenn sie von dem Prozessor 22 ausgeführt werden, eine Transformation von einem Quellenbild in ein Zielbild ausführen. Die Eingabevorrichtung 24 empfängt Befehle von einem Graphikeditor und die Ausgabevorrichtung 26 zeigt die Ergebnisse des transformierten Bildes in dem Graphikeditor an. Die Ergebnisse des transformierten Bildes können zur zukünftigen Verwendung im Speicher 28 gespeichert werden.
  • Selbstverständlich können mit dem Computer 20 eine oder mehrere Ausgabevorrichtungen verbunden sein. Beispielhafte Ausgabevorrichtungen 26 umfassen verschiedene Abbildungsvorrichtungen einschließlich einer Katodenstrahlröhren-Anzeige (CRT-Anzeige), einer Flüssigkristallanzeige (LCD), Druckern und Kommunikationsvorrichtungen wie etwa einem Modem. Mit dem Computersystem können eine oder mehrere Eingabevorrichtungen 24 verbunden sein. Beispielhafte Eingabevorrichtungen umfassen eine Tastatur, ein Tastenfeld, einen Trackball, eine Maus, einen Stift und ein Tablett, eine Kommunikationsvorrichtung und einen Scanner. Selbstverständlich ist die Erfindung nicht auf die in Verbindung mit dem Computersystem 20 verwendeten oder hier beschriebenen besonderen Eingabeoder Ausgabevorrichtungen beschränkt. Außerdem ist die Endung nicht auf eine besondere Computerplattform, auf einen besonderen Prozessor oder auf eine besondere höhere Programmiersprache beschränkt. Außerdem kann das Computersystem 20 ein Mehrprozessorcomputersystem sein oder mehrere Computer umfassen, die über ein Computernetz verbunden sind.
  • Anhand von 3 wird nun ein allgemeines Beispiel beschrieben, das die Prinzipien eines Prozesses gemäß der vorliegenden Erfindung zeigt. In diesem Prozess wird ein Pixelwert in einem Zielbild 205 gemäß einer nicht-gleichmäßigen Skalierung eines Quellenbilds 210 bestimmt. Die nicht-gleichmäßige Skalierung kann irgendeine Verformung des Quellenbilds umfassen. Diese Skalierung kann zur Veredlung der Graphik entweder in Standbildern, z. B. in einem hochwertigen Poster, oder in bewegten Bildern, z. B. in Videospielen, Filmen usw., verwendet werden und zweidimensionale oder dreidimensionale Spezialeffekte umfassen. Die dreidimensionalen Effekte können eine beliebige Verformung eines Quellen bilds durch Abbildung eines zweidimensionalen Quellenbilds in ein weiteres zweidimensionales Bild umfassen. Insbesondere kann dies eine beliebige Verformung durch Abbildung auf eine dreidimensionale Oberfläche vor einer orthographischen oder perspektivischen Projektion umfassen. Die unter Verwendung der nichtgleichmäßigen Skalierung eine Bildes anzuwendenden zweidimensionalen Spezialeffekte können Kugel-, Kräuselungs-, Wirbel-, Umblätter-, Verzerrungs-, Taumel-, Fahnenwellen- oder Einschnüreffekte oder irgendeine Verformung, die durch eine Funktion von einer Ebene in eine andere bestimmt ist, umfassen.
  • In 3 kann sowohl das Zielbild 205 als auch das Quellenbild 210 als Menge von Abtastwerten in einer zweidimensionalen Ebene betrachtet werden, die Punkte oder Pixel genannt werden, wobei jeder Abtastwert Koordinaten in einer Ebene und einen Wert, der seine Farbe angibt, besitzt. Selbstverständlich kann die Erfindung auch auf Schwarz-Weiß-Bilder angewendet werden. Das Zielbild 205 und das Quellenbild 210 können eine beliebige Gestalt und Größe haben. Ein Punkt 225 in dem Quellenbild 210 kann gemäß der auf das Quellenbild 210 anzuwendenden Verformung zu dem Wert eines Punktes, z. B. 215 oder 230, in dem Zielbild 205 beitragen.
  • Für irgendeine beliebige Verformung des Quellenbilds 210 kann eine affine Transformation definiert werden, die einen Punkt 230 in dem Zielbild 205 in einen Punkt 225 in dem Quellenbild 210 abbildet. Ähnlich bildet diese affine Transformation einen Einheitskreis 235, der um den Punkt 230 zentriert ist, in dem Zielbild in eine Ellipse 260 in dem Quellenbild 210 ab. Die Länge und die Richtung der orthogonalen Achsen der Ellipse 260 können unter Verwendung dieser affinen Transformation bestimmt werden. Wenn die Länge einer der Achsen größer als zwei Einheiten ist, besagt die auf die Quelle anzuwendende Verformung, dass die Tiefpassfilterung in Richtung dieser Achse stattfinden sollte. Falls die Länge der Achse kleiner als zwei ist, sollte keine Tiefpassfilterung in Richtung dieser Achse stattfinden, wobei angenommen werden kann, dass die Länge dieser Achse, wie bei 220 gezeigt ist, eins ist. Eine Einheit ist der Abstand zwischen zwei benachbarten Pixeln in dem Quellenbild 210. Ausgehend von der Länge und von der Richtung der orthogonalen Achsen R1 und R2 der Ellipse 220 wird eine lineare Transformation bestimmt, die einen zu der Ellipse 220 konzentrischen Einheitskreis 240 in die Ellipse 220 abbildet. Ein gewünschtes Rekonstruktionsfilter 245, z. B. ein bilineares oder bikubisches Filter, das ebenfalls mit dem Einheitskreis 240 konzentrisch ist, wird gemäß dieser linearen Transformation modifiziert.
  • Dieses modifizierte Rekonstruktionsfilter ist bei 250 dargestellt. Die Pixel 255 des Quellenbilds 210, die in das modifizierte Rekonstruktionsfilter 250 fallen, werden verwendet, um einen Pixelwert für den Punkt 230 im Zielbild 205 zu bestimmen.
  • In Verbindung mit 4 wird nun eine Ausführungsform des oben in Verbindung mit 3 beschriebenen Prozesses ausführlicher beschrieben. Dieser Prozess beginnt in Schritt 305 mit der Auswahl eines Spezialeffekts, der die nichtgleichmäßige Skalierung oder die beliebige Verformung eines Bildes betrifft, das in einen Computer 20 (2) eingegeben werden kann. Der Spezialeffekt kann ein zweidimensionaler oder ein dreidimensionaler Effekt sein wie etwa die obenbeschriebenen, der zur Transformation eines Quellenbilds 210 in ein Zielbild 205 verwendet wird. Die vorgegebenen Spezialeffekte können im Speicher 28 (2) gespeichert sei und gemäß einer Anwendereingabe in den Computer 20 (2) ausgewählt werden. Die beispielhaften beliebigen Verformungsfunktionen umfassen die Abbildung eines zweidimensionalen Quellenbilds in eine dreidimensionale Oberfläche wie etwa bei der Texturabbildung und daraufhin die Projektion der Oberfläche als ein zweidimensionales Zielbild. Eine weitere Art einer beliebigen Verformungsfunktion ist eine inverse perspektivische Transformation in den dreidimensionalen Raum vor einer Abbildung zurück in den zweidimensionalen Raum. Weitere Funktionen, die ein Bild nicht-gleichmäßig skalieren, können ebenfalls verwendet werden.
  • In Schritt 310 wird ein Rekonstruktionsfilter gewählt. Das Filter kann aus vorgegebenen Funktionen ausgewählt werden, die im Speicher 28 gespeichert sind und ebenfalls durch den Anwender auswählbare Parameter besitzen können. Beispielhafte Rekonstruktionsfilter umfassen bilineare Filter, bikubische Filter und Boxfilter. In dem in 3 gezeigten Beispiel ist das Rekonstruktionsfilter ein bilineares Filter.
  • Daraufhin wird während der Schritte 315 bis 350, die nun beschrieben werden, ein Wert für ein Pixel in dem Zielbild 205 bestimmt. In Schritt 315 wird ein Punkt 230 in dem Zielbild 205 ausgewählt. Der Punkt kann das Zentrum eines Pixels in dem Zielbild sein oder kann ein beliebiger Punkt in dem Zielbildraum sein, der seinerseits verwendet wird, um den Wert eines besonderen Pixels zu berechnen. Die Koordinaten des ausgewählten Punktes 230 werden verwendet, um eine affine Transformation zu definieren, die einen Einheitskreis 235, der um den ausgewählten Punkt 230 zentriert ist, in eine Ellipse 260 in dem Zielbild abbildet. Diese affine Transformation nähert lokal und stellt das Inverse der beliebigen Verformungsfunktion dar, die den in Schritt 305 ausgewählten Spezialeffekt implementiert.
  • In einer Ausführungsform wird die affine Funktion durch Koordinatenfunktionen uA(x, y) und vA(x, y) dargestellt, die einen Punkt (x, y) in dem Zielbild in einen Punkt (u, v) in dem Quellenbildraum abbilden. Unter der Annahme, dass uA(x, y), vA(x, y) bei (x0, y0), im Punkt 230, partielle Ableitungen besitzen, ist die affine Transformation, die die beliebige differenzierbare Funktion von (x, y) auf (u, v) darstellt:
    Figure 00090001
    Figure 00090002
    ist hier die partielle Ableitung von u(x, y) nach x; und
    Figure 00090003
    ist diese partielle Ableitung, berechnet bei (x0, y0), was zu einem Zahlenwert führt.
  • In Schritt 320 wird die Ellipse 260 in dem Quellenbild 210 definiert, indem unter Verwendung der affinen Transformation die Länge und die Richtung ihrer orthogonalen Achsen berechnet werden. Ausgehend von einer beliebigen Verformung vom Quellenbildraum in den Zielbildraum, einem Punkt (x0, y0) in dem Zielbildraum und einer lokalen inversen Verformung mit den Koordinatenfunktionen u(x, y), v(x, y) können die Achsenrichtungen (u1, v1), (u2, v2) und die Beträge R1, R2 für die Ellipse 220 berechnet werden, die das Bild des Einheitskreises 235 mit dem Zentrum bei (x0, y0), im Punkt 230, unter der inversen Verformung ist.
  • Die Funktionen u(x, y), v(x, y) können wohldefinierte partielle Ableitungen bei (x0, y0) besitzen, die wie folgt zur Definition von Werten a, b, c, d verwendet werden können:
    Figure 00090004
    Figure 00100001
  • Falls a = b = c = d = 0 ist, gilt R1 = R2 = 0 sowie (u1, v1) = (1, 0), (u2, v2) = (0, 1). Andernfalls gilt, falls ad – bc = 0 ist,
    Figure 00100002
  • Da eines von a, b, c, d von null verschieden ist, ist entweder a2 + b2 oder c2 + d2 von null verschieden. Falls a2 + b2 von null verschieden ist, gilt
    Figure 00100003
  • Falls c2 + d2 von Null verschieden ist, gilt
    Figure 00100004
  • Ansonsten werden die Achsen wie folgt berechnet:
    Figure 00100005
    Figure 00110001
  • Falls λ = 0 ist, gilt
    Figure 00110002
    (Gl. 16) und
    Figure 00110003
    , (u1, v1) = (1, 0), (u2, v2) = (0, 1) (Gl. 17). Andernfalls wird der folgende Wert berechnet:
    Figure 00110004
    damit ist R
    Figure 00110005
    und
  • Figure 00110006
  • Nachdem durch die Bestimmung von F1, R2, (u1, v1) und (u2, v2) die Ellipse 260 definiert ist, wird die Ellipse 260 in Schritt 325 entlang ihrer Achsen gedehnt, um die Achsen wenigstens zu zwei Einheitslängen zu machen und die gedehnte Ellipse 220 zu erzeugen. Insbesondere dann, wenn entweder R1 oder R2 einen Wert kleiner als 1 hat, wird sein Wert auf 1 gesetzt. Die Achsen der Ellipse 220 haben dann in den durch die Vektoren (u1, v1) und (u2, v2) definierten Richtungen eine Länge von 2R1 bzw. 2R2, wobei R1 und R2 die halben Längen der ersten bzw. der zweiten orthogonalen Achse der Ellipse 220 sind. Somit sind die Achsen der Ellipse durch die Vektoren (R1u1, R1v1) und (R2u2, R2v2) definiert.
  • Nachfolgend wird in Schritt 330 eine lineare Transformation von einem zur Ellipse 220 konzentrischen Einheitskreis 240 in die Ellipse 220 bestimmt. Die einfachste lineare Transformation von dem Einheitskreis 240 in die Ellipse 220 bildet die Einheitsvektoren (1, 0) und (0, 1) auf die Vektoren (R1u1, R1v1) bzw. (R2u2, R2v2) ab und besitzt die folgenden Koordinatenfunktionen u'(u, v), v'(u, v): u'(u, v) = R1u1u + R2u2v (Gl. 23) v'(u, v) = R1u1u + R2u2v (Gl. 24)wobei u und v die Koordinaten in dem Quellenbild sind und wobei (u, v) = (0, 0) der Ursprung der Ellipse 220 ist. Die affine Transformation, die zur Erzeugung der Ellipse 220 verwendet wird, kann in irgendeine Transformation zwischen dem Einheitskreis 240 und der Ellipse 220 eine Dreh- oder Versatz- bzw. Schrägkomponente einführen. Die in den Gleichungen 23 und 24 gezeigte lineare Transformation besitzt eine Drehkomponente, aber keine Versatz- bzw. Schrägkomponente.
  • Außerdem kann eine lineare Transformation definiert werden, die sowohl die Versatz- bzw. Schrägkomponente als auch die Drehkomponente entfernt. Ein Beispiel einer solchen linearen Transformation bildet unter Verwendung der folgenden Koordinatenfunktionen: u'(u, v) = ((R1u1v2 – R2u2v2)u – (R1 – R2)u1u2v)/(u1v2 – v1u2) (Gl. 25) v'(u, v) = ((R1 – R2)v1v2u – (R1u2v1 – R2u1v2)v)/(u1v2 – v1u2) (Gl. 26)(u1, v1) auf (R1u1, R1v1) sowie (u2, v2) auf (R2u2, R2v2) ab. Diese Transformationen behandeln das Zentrum der Ellipse 220 als den Ursprung in dem Quellenbildraum. Eine Übersetzung in die tatsächlichen Koordinaten kann dadurch ausgeführt werden, dass zu den Gleichungen 25 und 26 oder zu der Anwendung ihrer Inversen in den Schritten 340 bis 345 unten zusätzliche Versätze addiert werden.
  • Nachfolgend wird in Schritt 335 dadurch, dass ein Filter definiert wird, das zuerst das Inverse der linearen Transformation auf die Koordinaten eines Punktes abbildet und daraufhin diese Punkte mit dem ursprünglichen ausgewählten Rekonstruktionsfilter 245 filtert, das ausgewählte um den Ursprung 225 zentrierte Rekonstruktionsfilter 245 mit dem Zentrum modifiziert, um ein neues Rekonstruktionsfilter 250 mit dem Zentrum um den Ursprung 225 zu erhalten. Es wird angemerkt, dass das modifizierte Filter und das ursprüngliche Filter gleich sein können, wenn die lineare Transformation eine Einheitstransformation ist, was die Verarbeitung der unten beschriebenen Schritte 340 und 345 vereinfacht. Wenn die Größe des ausgewählten Rekonstruktionsfilters, wenn es um den Einheitskreis 240 zentriert ist, den Bereich des Einheitskreises enthält, enthält das modifizierte Rekonstruktionsfilter wie gezeigt die gesamte Ellipse 220. Allerdings kann das ausgewählte Rekonstruktionsfilter 245 wie etwa ein Boxfilter mit einem Radius von einhalb in dem Einheitskreis 240 enthalten sein. Da das Filter 245 in diesem Fall kleiner als der Einheitskreis 240 ist, ist das modifizierte Filter 250 kleiner als die Ellipse 220.
  • In Schritt 340 werden diejenigen Pixel 255 in dem Quellenbild 210 identifiziert, die in dem durch das modifizierte Rekonstruktionsfilter 250 definierten Bereich enthalten sind. Dieser Trägerbereich des Rekonstruktionsfilters enthält alle Pixel, bei denen das Filter von Null verschieden ist. Um die Pixel zu identifizieren, deren Zentren in dem Träger des transformierten Filters 250 enthalten sind, können mehrere Prozesse verwendet werden. In einer Ausführungsform wird eine rechteckige begrenzende Box definiert, die den Träger des modifizierten Filters enthält. Diese begrenzende Box kann dadurch definiert werden, dass die in Schritt 330 bestimmte lineare Transformation auf die Koordinaten der vier Ecken des Filters angewendet wird. Für jedes Pixel in dem Quellenbild mit einem Zentrum in der begrenzenden Box wird das Inverse der Gleichungen 25 und 26 auf seine Koordinaten angewendet, um transformierte Koordinaten in dem Quellenbildraum zu erhalten. Falls die transformierten Koordinaten des Pixels innerhalb des Trägers des ursprünglichen unmodifizierten Filters in dem Quellenbildraum liegen, befindet sich das Pixel in dem Träger des modifizierten Filters.
  • In einer weiteren Ausführungsform werden lediglich diese Pixel mit Zentren in dem Träger des modifizierten Filters identifiziert, wobei der Träger durch ein Polygon definiert ist. Daraufhin kann eine Standard-Polygon-Rastertechnik wie etwa die Verwendung des Bresenham-Linienzugalgorithmus entlang der Seiten des Polygons verwendet werden. Daraufhin werden diejenigen Pixel identifiziert, die zwischen den linken und den rechten Linien liegen, wobei auf die Koordinaten jedes Pixels das Inverse der linearen Transformation der Gleichungen 25 und 26 angewendet wird, um transformierte Koordinaten in dem Quellenbildraum zu erhalten. Falls die transformierten Koordinaten des Pixels innerhalb des Trägers des ursprünglichen unmodifizierten Filters in dem Quellenbildraum liegen, liegt das Pixel innerhalb des Trägers des modifizierten Filters.
  • Daraufhin werden die Werte wie etwa die Farbe und die Intensität der in dem Träger des modifizierten Rekonstruktionsfilters 250 enthaltenen Pixel 255 in Schritt 345 verwendet, um für das ausgewählte Pixel 230 im Zielbild 205 einen Pixelwert zu bestimmen. In einer Ausführungsform wird der Farbwert jedes Pixels in dem Träger des Rekonstruktionsfilters durch einen entsprechenden Wert von dem ursprünglichen unmodifizierten Filter skaliert. Diese skalierten Werte werden Bemittelt, um einen Farbwert für das ausgewählte Pixel 230 in dem Zielbild zu liefern.
  • Falls der Wert für jedes Pixel im Zielbild 205, wie in Schritt 350 bestimmt wird, berechnet worden ist, wird der Prozess abgeschlossen und das Zielbild 205 in Schritt 355 gerendert. Andernfalls wird ein nächstes Pixel ausgewählt und der Prozess mit Schritt 315 wie oben beschrieben fortgesetzt.
  • 5 zeigt ein entsprechendes System, das die durch den Ablaufplan aus 4 beschriebene Ausführungsform implementiert, und zeigt ausführlicher eine Ausführungsform des Systems aus 1. Dieses System kann unter Verwendung einer höheren Computerprogrammiersprache in einem Computersystem wie etwa in dem oben in 2 beschriebenen implementiert werden. In diesem System empfängt ein Modul 415 zur Auswahl der affinen Transformation, typischerweise über eine graphische Anwenderschnittstelle, eine Anwendereingabe 405. Die Anwendereingabe 405 umfasst eine Angabe eines gewünschten zu erreichenden Spezialeffekts, der eine nicht-gleichmäßige Skalierung oder eine beliebige Verformung ausführt. Ausgehend von einem spezifizierten Spezialeffekt 405 wird eine affine Transformation 420 erzeugt oder ausgelesen, die die beliebige Verformung des Spezialeffekts darstellt und annähert. Wie eine solche affine Transformation erzeugt wird, ist im Gebiet wohlbekannt. Die affine Transformation 420 kann im Speicher gespeichert werden.
  • Die Ellipsendefinitionseinrichtung 430 empfängt eine Angabe eines in dem Zielbild identifizierten Punktes 425 und ein Quellenbild 410 und verwendet die affine Transformation 420, um in dem Quellenbild 410 eine Ellipse zu definieren, die einem um den Punkt 425 definierten transformierten Einheitskreis entspricht. Wie oben beschrieben wurde, wird die Ellipse in der Weise definiert, dass sie Achsen mit wenigstens zwei Längeneinheiten besitzt. Durch die Ellipsendefinitionseinrichtung 430 wird eine Angabe des Zentrums 435 der definierten Ellipse und der Länge und der Richtung ihrer orthogonalen Achsen an die Transformationseinheit 445 ausgegeben. Die Transformationseinheit 445 definiert eine lineare Transformation zwischen einem Einheitskreis 440 in dem Quellenbild um das definierte Zentrum der Ellipse 435 und der Ellipse. Eine solche lineare Transformation ist oben beschrieben. Die zum Skalieren des Einheitskreises 440 erforderliche lineare Transformation 450 kann zur späteren Verwendung im Speicher gespeichert werden.
  • Ein wie obenbeschriebenes Rekonstruktionsfilter 455 wird zusammen mit einer Angabe der linearen Transformation 450 in eine Filtertransformationseinheit 460 eingegeben. Wie oben in Schritt 335 aus 4 beschrieben worden ist, gibt die Einheit 460 ein modifiziertes Filter 465 aus. Das modifizierte Filter kann im Speicher gespeichert und auf weitere Quellenbilder angewendet werden. Die Identifizierungseinheit 470 bestimmt, welche Pixel in dem Quellenbild in dem Bereich oder Träger des modifizierten Filters 465 enthalten sind. Wie oben in Bezug auf den Schritt 340 aus 4 diskutiert worden ist, kann die Identifizierungseinheit 470 verschiedene Verfahren verwenden, um zu bestimmen, welche Pixel in dem Träger des modifizierten Filters enthalten sind. Die Werte derjenigen Pixel 475 in dem Quellenbild, die in dem Träger des Filters 465 enthalten sind, werden im Speicher gespeichert. Eine Recheneinheit 480 empfängt die Pixelwerte 475, um den Wert eines Punktes in einem Zielbild zu bestimmen. Die Recheneinheit kann irgendeine einer Vielzahl von Funktionen verwenden, um diese Bestimmung vorzunehmen. Beispielsweise können die Werte für die Pixel in dem Träger des Filters gefiltert und daraufhin gemittelt werden, um den Pixelwert für das Zielbild 485 zu bestimmen. Eine Anzeigevorrichtung 490 zeigt das nicht-gleichmäßig skalierte Bild an.
  • Der Prozess und die Vorrichtung der vorliegenden Erfindung können auf das Resampling eines Bildes mit drei oder mehr Dimensionen angewendet werden. In solchen Anwendungen ist ein Einheitskreis 240 (3) in dem Quellenbild 210 eine N-dimensionale Kugel, während eine Ellipse 220 in dem Quellenbild 210 ein N-dimensionales Ellipsoid ist. Das Quellenbild wie etwa das Bild 210 kann ein dreidimensionales Bild sein, das volumetrische Daten enthält, wie etwa die, die für die medizinische Bildererzeugung oder für Wetteranwendungen verwendet werden. Außerdem kann das Quellenbild 210 ein vierdimensionales Bild sein, das beispielsweise ein dreidimensionales Bild enthält, das sich mit der Zeit ändert. Außerdem kann das Quellenbild in irgendeiner Dimension ein einzelnes Bild oder eine Sequenz von Bildern sein.
  • Eine weitere Ausführungsform der vorliegenden Erfindung umfasst die Optimierung des in 3 gezeigten Resampling-Prozesses. Da die nicht-gleichmäßige Skalierung des Quellenbilds durch eine beliebige Funktion ausgeführt wird, können die Ellipsenberechnungen für jedes Pixel des Zielbilds für einige Anwendungen zu zeitaufwendig und aufwendig sein. Somit kann der wie in den 3 und 4 gezeigte Prozess optimiert werden, um die beliebige Skalierung unter Verwendung eines stückweisen Zugangs anzunähern. Anstatt ein einzelnes Pixel zu identifizieren, können in dieser Ausführungsform mehrere Dreiecke in dem Zielbild definiert werden. Jedes Dreieck stellt eine Zusammenstellung von Punkten in dem Zielbild dar. Daraufhin werden die Scheitel jedes Dreiecks verwendet, um die nicht-gleichmäßige Skalierungsfunktion von dem Zielbild in das Quellenbild zu bestimmen. Um eine Ellipse in einem Quellenbild zu definieren, wird eine affine Transformation ausgeführt, die die nicht-gleichmäßige Skalierungsfunktion jedes Scheitels und somit anhand jedes Scheitels eine affine Transformation an jedem einzelnen Dreieck darstellt. Die affine Transformation stellt die nicht-gleichmäßige Skalierungsfunktion des Quellenbilds dar, wobei die Ellipsenberechnungen einmal pro Dreieck ausgeführt und somit auf mehrere Pixel gleichzeitig angewendet werden. Daraufhin wird die lineare Transformation, die ausgeführt wird, um einen um einen Mittelpunkt einer Ellipse zentrierten Einheitskreis in die Ellipse zu transformieren, auf das Rekonstruktionsfilter angewendet.
  • Nachdem nun einige Ausführungsformen der Erfindung beschrieben worden sind, ist für den Fachmann auf dem Gebiet klar, dass das Vorstehende lediglich erläuternd und nicht einschränkend ist und lediglich beispielhaft dargestellt wurde. Zahlreiche Abwandlungen und weitere Ausführungsformen liegen im Umfang eines Durchschnittsfachmanns und sollen in den Umfang der Erfindung fallen, wie er durch die beigefügten Ansprüche und Entsprechungen dazu definiert ist.

Claims (30)

  1. Computerimplementierter Prozess zur Erzeugung eines nicht-gleichmäßig transformierten Zielbildes, das die Schritte enthält, wonach: eine affine Transformation eines Quellenbilds basierend auf einer nicht-gleichmäßigen Transformation bestimmt wird; Achsen in dem Quellenbild werden gemäß der affinen Transformation definiert; eine lineare Transformation wird von einem Bereich in dem Quellenbild zu den Achsen berechnet, wobei die lineare Transformation einer nicht-gleichmäßigen Transformation entspricht und die Gestalt eines Bereichs in dem Zielbild darstellt, das durch eine Transformation fransformiert wird, die gemäß dem Inversen der nicht-gleichmäßigen Transformation definiert ist; ein Rekonstruktionsfilter wird in dem Quellenbild gemäß der linearen Transformation modifiziert; Pixel des Quellenbilds, die in einem Träger des modifizierten Rekonstruktionsfilters enthalten sind, werden identifiziert; der Wert eines Punktes in dem Zielbild wird basierend auf dem Wert eines jeden identifizierten Pixel in dem Quellenbild berechnet.
  2. Computerimplementierter Prozess nach Anspruch 1, der weiter ein Anzeigen des nichtgleichmäßig transformierten Zielbildes umfasst.
  3. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem der Rekonstruktionsfilter quadrilateral ist.
  4. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem der Bereich in dem Quellenbild ein Einheitskreis ist.
  5. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem der Bereich in dem Zielbild ein Einheitskreis ist.
  6. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem der Identifizierungsschritt weiter folgendes enthält: eine rechteckige begrenzende Box wird erzeugt, die den Träger des modifizierten Filters enthält; eine inverse Transformation wird auf Koordination eines jeden Pixels angewendet, wobei ein Zentrum innerhalb der begrenzenden Box ist; und es wird bestimmt, ob die Koordinaten in dem Träger des unmodifizierten Rekonstruktionsfilters enthalten sind.
  7. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem wenigstens zwei Achsen gemäß der affinen Transformation definiert sind.
  8. Computerimplementierter Prozess nach Anspruch 7, bei welchem die wenigsten zwei Achsen wenigstens zwei Einheitslängen sind, wobei jede Einheit gleich einem Abstand zwischen zwei benachbarten Pixeln ist.
  9. Computerimplementierter Prozess nach Anspruch 7 oder 8, bei welchem der Bereich um die Mitte der wenigsten zwei Achsen zentriert ist.
  10. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, wobei die Achsen, die gemäß der affinen Transformation definiert sind, orthogonal sind.
  11. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, wobei die Achsen, die gemäß der affinen Transformation definiert sind, Eigenvektoren sind.
  12. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, wobei die Berechnung des Werts eines Punkts in dem Zielbildschritt enthält: ein Farbwert eines jeden identifizieren Pixels des Quellenbildes wird mit dem Wert von dem unmodifizierten ausgewählten Rekonstruktionsfilter multipliziert; ein gewichteter Mittelwert der Pixelwerte der identifizierten Pixel des Quellenbilds wird bestimmt.
  13. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem der Identifizierungsschritt weiter enthält: Pixel werden bestimmt, deren Zentren in dem Träger des modifizierten Konstruktionsfilters sind, indem der Träger des transformierten Filters als ein Polygon behandelt wird; und eine Polygon-Raster-Technik wird verwendet.
  14. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem die Berechnung eines linearen Transformationsschrittes für eine Vielzahl von Pixeln durchgeführt wird.
  15. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem der Schritt der Bestimmung einer affinen Transformation für eine Vielzahl von Pixeln durchgeführt wird.
  16. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem der Schritt der Berechnung einer linearen Transformation die Annäherung der nichtgleichmäßigen Transformation zur Implementierung zweidimensionaler Spezialeffekte durch eine Funktion enthält.
  17. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem der Schritt der Bestimmung einer affinen Transformation eine Annäherung der nichtgleichförmigen Transformation zur Implementierung zweidimensionaler Spezialeffekte durch eine Funktion enthält.
  18. Computerimplementierter Prozess nach einem der Ansprüche 1 bis 15, bei welchem der Schritt der Berechnung einer linearen Transformation eine Annäherung der nicht gleichmäßigen Transformation zur Implementierung dreidimensionaler Effekte durch eine Funktion enthält.
  19. Computerimplementierter Prozess nach einem der Ansprüche 1 bis 15 oder Anspruch 18, bei welchem die Bestimmung eines Schrittes einer affinen Transformation eine Annäherung der nicht-gleichmäßigen Transformation zur Implementierung dreidimensionaler Effekte durch eine Funktion enthält.
  20. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem der Schritt der Berechnung einer linearen Transformation eine Entfernung einer Versatz- bzw. Schrägkomponente enthält.
  21. Computerimplementierter Prozess nach einem der Ansprüche 1 bis 19, bei welchem der Schritt der Berechnung einer linearen Transformation die Entfernung einer Versatzbzw. Schräg- und einer Drehkomponente enthält.
  22. Computerimplementierter Prozess nach einem vorhergehenden Anspruch, bei welchem der Schritt der Bestimmung einer affinen Transformation vor der Durchführung einer perspektivischen Projektion ist.
  23. Computersystem zur Erzeugung einer Darstellung eines nicht gleichmäßig transformierten Quellenbildes, das einen Prozessor und einen Speicher enthält, der mit dem Prozessor verbunden ist, um ein Programm zu speichern, das, wenn es von dem Prozessor ausgeführt wird, die Schritte durchführt, wonach: ein Quellenbild, ein gewünschter Spezialeffekt und ein Rekonstruktionsfilter empfangen wird; Achsen in dem Quellenbild gemäß einer affmen Transformation eines Quellenbilds basierend auf einer nicht-gleichmäßigen Transformation definiert werden; eine lineare Transformation von einem Bereich in dem Quellenbild zu den Achsen berechnet wird, wobei die lineare Transformation einer nicht-gleichmäßigen Transformation entspricht und die Gestalt eines Bereichs in dem Zielbereich darstellt, der von einer Transformation transformiert wird, die gemäß der Inversen der nichtgleichmäßigen Transformation definiert ist; der Rekonstruktionsfilter wird basierend auf der Anwendung des gewünschten Spezialeffekts auf das Quellenbild modifiziert; Pixel in dem Quellenbild, die in einem Träger des modifizierten Rekonstruktionsfilters enthalten sind, werden identifiziert; der Wert eines Pixels in einem Ziel wird basierend auf den identifizierten Pixeln bestimmt; und das Zielbild wird gerendert bzw. aufbereitet.
  24. Computersystem, wie in Anspruch 23 beansprucht, bei welchem das Quellenbild ein einzelnes Bild ist.
  25. Computersystem, wie in Anspruch 23 beansprucht, bei welchem das Quellenbild eine Sequenz von Bildern ist.
  26. Computersystem, wie in einem der Ansprüche 23 bis 25 beansprucht, bei welchem der modifizierte Rekonstruktionsfilter nicht wenigsten entweder eine Versatz- bzw. Schrägoder eine Drehkomponente enthält.
  27. Computersystem, wie in einem der Ansprüche 23 bis 25 beansprucht, bei welchem der Spezialeffekt zweidimensionale oder höherdimensionale Effekte enthält.
  28. Computersystem, wie in einem der Ansprüche 23 bis 27 beansprucht, bei welchem der Rekonstruktionsfilter ein quadrilateraler ist.
  29. Computersystem, wie in einem der Ansprüche 23 bis 28 beansprucht, bei welchem der Identifizierungsschritt weiter enthält: eine rechteckige begrenzende Box wird erzeugt, die den Träger des modifizierten Filters enthält; eine inverse Transformation wird auf Koordinaten eines jeden Pixels angewendet, der ein Zentrum innerhalb der begrenzenden Box hat; und es wird bestimmt, ob die Koordinaten in dem Träger des unmodifizierten Rekonstruktionsfilters enthalten sind.
  30. Computerprogramm oder Computerprogrammprodukt, das Instruktionen umfasst, um die Schritte des computerimplementierten Prozesses eines der Ansprüche 1 bis 22 durchzuführen.
DE69816824T 1997-08-01 1998-05-27 Texturabbildung in 3-d-rechnergraphik Expired - Fee Related DE69816824T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US904470 1997-08-01
US08/904,470 US6016152A (en) 1997-08-01 1997-08-01 Apparatus and method for non-uniform image scaling
PCT/US1998/010763 WO1999006952A1 (en) 1997-08-01 1998-05-27 Texture mapping in 3-d computer graphics

Publications (2)

Publication Number Publication Date
DE69816824D1 DE69816824D1 (de) 2003-09-04
DE69816824T2 true DE69816824T2 (de) 2004-05-19

Family

ID=25419222

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69816824T Expired - Fee Related DE69816824T2 (de) 1997-08-01 1998-05-27 Texturabbildung in 3-d-rechnergraphik

Country Status (7)

Country Link
US (1) US6016152A (de)
EP (1) EP0998727B1 (de)
JP (1) JP2001512265A (de)
AU (1) AU7697498A (de)
CA (1) CA2297916C (de)
DE (1) DE69816824T2 (de)
WO (1) WO1999006952A1 (de)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6259827B1 (en) 1996-03-21 2001-07-10 Cognex Corporation Machine vision methods for enhancing the contrast between an object and its background using multiple on-axis images
US6381375B1 (en) * 1998-02-20 2002-04-30 Cognex Corporation Methods and apparatus for generating a projection of an image
US6191795B1 (en) * 1998-09-30 2001-02-20 Silicon Graphics, Inc. Ellipsoidal projection mapping
US6687402B1 (en) 1998-12-18 2004-02-03 Cognex Corporation Machine vision methods and systems for boundary feature comparison of patterns and images
US6577776B1 (en) 1999-02-24 2003-06-10 Media 100, Inc. Transforming video images
US6388673B1 (en) * 1999-09-30 2002-05-14 International Business Machines Corporation Method and system for filter type approximation in computer graphics processing
US6922483B2 (en) * 1999-12-28 2005-07-26 Texas Instruments Incorporated Methods for measuring DMD low frequency spatial uniformity
US6771841B1 (en) * 1999-12-29 2004-08-03 Intel Corporation Determining a bounding shape for a collection of points
US7367042B1 (en) * 2000-02-29 2008-04-29 Goldpocket Interactive, Inc. Method and apparatus for hyperlinking in a television broadcast
US7343617B1 (en) 2000-02-29 2008-03-11 Goldpocket Interactive, Inc. Method and apparatus for interaction with hyperlinks in a television broadcast
US6748104B1 (en) 2000-03-24 2004-06-08 Cognex Corporation Methods and apparatus for machine vision inspection using single and multiple templates or patterns
US6766281B1 (en) * 2000-05-12 2004-07-20 S3 Graphics Co., Ltd. Matched texture filter design for rendering multi-rate data samples
US6828983B1 (en) * 2000-05-12 2004-12-07 S3 Graphics Co., Ltd. Selective super-sampling/adaptive anti-aliasing of complex 3D data
WO2002019719A1 (en) * 2000-08-30 2002-03-07 Watchpoint Media, Inc. A method and apparatus for hyperlinking in a television broadcast
US6665450B1 (en) 2000-09-08 2003-12-16 Avid Technology, Inc. Interpolation of a sequence of images using motion analysis
US7545957B2 (en) * 2001-04-20 2009-06-09 Avid Technology, Inc. Analyzing motion of characteristics in images
US7043058B2 (en) * 2001-04-20 2006-05-09 Avid Technology, Inc. Correcting motion vector maps for image processing
KR100423503B1 (ko) * 2001-09-14 2004-03-18 삼성전자주식회사 디지털영상 처리 장치 및 방법
US7194676B2 (en) 2002-03-01 2007-03-20 Avid Technology, Inc. Performance retiming effects on synchronized data in an editing system
US6940511B2 (en) * 2002-06-07 2005-09-06 Telefonaktiebolaget L M Ericsson (Publ) Graphics texture processing methods, apparatus and computer program products using texture compression, block overlapping and/or texture filtering
KR20060006102A (ko) * 2003-06-04 2006-01-18 코닌클리케 필립스 일렉트로닉스 엔.브이. 이미지들의 보간법
CN101142614B (zh) * 2004-09-09 2010-04-28 奥普提克斯晶硅有限公司 使用各向异性滤波的单通道图像重采样***和方法
US7064770B2 (en) * 2004-09-09 2006-06-20 Silicon Optix Inc. Single-pass image resampling system and method with anisotropic filtering
US8111904B2 (en) * 2005-10-07 2012-02-07 Cognex Technology And Investment Corp. Methods and apparatus for practical 3D vision system
US8162584B2 (en) * 2006-08-23 2012-04-24 Cognex Corporation Method and apparatus for semiconductor wafer alignment
US8055070B2 (en) * 2007-01-05 2011-11-08 Geo Semiconductor Inc. Color and geometry distortion correction system and method
US8442316B2 (en) 2007-01-05 2013-05-14 Geo Semiconductor Inc. System and method for improving color and brightness uniformity of backlit LCD displays
US8073291B2 (en) * 2007-10-17 2011-12-06 Seiko Epson Corporation Center based image resizer
US8200037B2 (en) * 2008-01-28 2012-06-12 Microsoft Corporation Importance guided image transformation
US8086073B2 (en) * 2008-02-07 2011-12-27 Seiko Epson Corporation Non-uniform image resizer
GB2470942B (en) * 2009-06-11 2014-07-16 Snell Ltd Detection of non-uniform spatial scaling of an image
EP2860195A1 (de) * 2009-12-01 2015-04-15 Boston Medical Center Corporation Behandlung von IgE-vermittelten Erkrankungen
US8803902B2 (en) * 2009-12-03 2014-08-12 Intel Corporation Computing level of detail for anisotropic filtering
JP5559222B2 (ja) * 2012-03-01 2014-07-23 クゥアルコム・インコーポレイテッド 異方性フィルタリングを用いたシングルパス画像ワーピングシステム及び方法
US9858701B2 (en) 2015-10-05 2018-01-02 Adobe Systems Incorporated Computer animation of artwork using adaptive meshing
US9865073B2 (en) 2015-10-05 2018-01-09 Adobe Systems Incorporated Computer animation of artwork using fast 2-dimensional deformation solving
US10672155B2 (en) 2016-08-17 2020-06-02 International Business Machines Corporation Non-linear, multi-resolution visualization of a graph
US10552939B1 (en) 2019-02-12 2020-02-04 Google Llc Image processor complex transfer functions

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4602286A (en) * 1982-01-15 1986-07-22 Quantel Limited Video processing for composite images
FR2546017B1 (fr) * 1983-05-11 1986-01-17 Thomson Csf Procede pour realiser une transformation geometrique sur une image video, et dispositifs mettant en oeuvre ce procede
US4698666A (en) * 1985-07-12 1987-10-06 The Grass Valley Group, Inc. Video key glow and border generator
CA1309198C (en) * 1987-12-10 1992-10-20 Carlo J. Evangelisti Parallel rendering of smoothly shaded color triangles with anti-aliased edges for a three dimensional color display
US5179641A (en) * 1989-06-23 1993-01-12 Digital Equipment Corporation Rendering shaded areas with boundary-localized pseudo-random noise
US5204944A (en) * 1989-07-28 1993-04-20 The Trustees Of Columbia University In The City Of New York Separable image warping methods and systems using spatial lookup tables
US5153937A (en) * 1989-09-22 1992-10-06 Ampex Corporation System for generating anti-aliased video signal
US5224208A (en) * 1990-03-16 1993-06-29 Hewlett-Packard Company Gradient calculation for texture mapping
US5333245A (en) * 1990-09-07 1994-07-26 Modacad, Inc. Method and apparatus for mapping surface texture
JP2956213B2 (ja) * 1990-11-30 1999-10-04 ソニー株式会社 画像処理装置
DE69114465T2 (de) * 1991-01-07 1996-03-21 Shima Seiki Mfg Verfahren und Einrichtung zur Aufbereitung und Erzeugung von Videobildern.
GB9109999D0 (en) * 1991-05-09 1991-07-03 Quantel Ltd Improvements in or relating to keying systems and methods for television image processing
US5185808A (en) * 1991-06-06 1993-02-09 Eastman Kodak Company Method for merging images
US5339387A (en) * 1991-10-24 1994-08-16 Abekas Video Systems, Inc. Planar color gradients constructed as an arbitrary function of a distance function from an arbitrary 2-D curvilinear function
DE69216207T2 (de) * 1991-10-30 1997-04-17 Fujitsu Ltd Farbeinstellung zur Glättung der Grenzen zwischen Farbbildern
US5592599A (en) * 1991-12-18 1997-01-07 Ampex Corporation Video special effects system with graphical operator interface
WO1993013489A1 (en) * 1991-12-24 1993-07-08 Sierra Semiconductor Corporation An anti-aliasing method for polynomial curves using integer arithmetics
US5715385A (en) * 1992-07-10 1998-02-03 Lsi Logic Corporation Apparatus for 2-D affine transformation of images
US5581665A (en) * 1992-10-27 1996-12-03 Matsushita Electric Industrial Co., Ltd. Three-dimensional object movement and transformation processing apparatus for performing movement and transformation of an object in a three-diamensional space
AU6554794A (en) * 1993-04-15 1994-11-08 Ultimatte Corporation Screen filtering boundary detection for image compositing
US5644364A (en) * 1993-04-16 1997-07-01 Avid Technology, Inc. Media pipeline with multichannel video processing and playback
US5420971A (en) * 1994-01-07 1995-05-30 Panasonic Technologies, Inc. Image edge finder which operates over multiple picture element ranges
US5596687A (en) * 1994-07-29 1997-01-21 David Sarnoff Research Center, Inc. Apparatus and method for addressing pixel values within an image pyramid using a recursive technique
JPH08129647A (ja) * 1994-10-28 1996-05-21 Yamaha Corp グラフィック装置
US5710876A (en) * 1995-05-25 1998-01-20 Silicon Graphics, Inc. Computer graphics system for rendering images using full spectral illumination data
US5867166A (en) * 1995-08-04 1999-02-02 Microsoft Corporation Method and system for generating images using Gsprites
US5754180A (en) * 1996-03-11 1998-05-19 Avid Technology, Inc. Computer system and process for defining and manipulating images using structured objects with variable edge characteristics
US5835099A (en) * 1996-06-26 1998-11-10 Xerox Corporation Representing a region of a color image using a space-color separable model
US5808623A (en) * 1996-10-07 1998-09-15 Adobe Systems Incorporated System and method for perspective transform in computer using multi-pass algorithm

Also Published As

Publication number Publication date
EP0998727A1 (de) 2000-05-10
CA2297916C (en) 2009-01-27
EP0998727B1 (de) 2003-07-30
WO1999006952A8 (en) 1999-03-25
DE69816824D1 (de) 2003-09-04
WO1999006952A1 (en) 1999-02-11
CA2297916A1 (en) 1999-02-11
US6016152A (en) 2000-01-18
AU7697498A (en) 1999-02-22
JP2001512265A (ja) 2001-08-21

Similar Documents

Publication Publication Date Title
DE69816824T2 (de) Texturabbildung in 3-d-rechnergraphik
DE69822545T2 (de) Bildverbesserung unter Benutzung einer Flächeninterpolation
DE102005035012B4 (de) Hochleistungsschattierung von großen volumetrischen Daten unter Verwendung von partiellen Schirmraumableitungen
DE60032832T2 (de) Darstellung einer gekrümmten Oberfläche in mehreren Auflösungen
DE60026197T2 (de) Detailgerichtete hierarchische Distanzfelder in der Objektmodellierung
DE19646194B4 (de) Echtzeit-Wiedergabeverfahren zum wahlweisen Ausführen von Bump-Mapping- und Phong-Schattierungs-Prozessen und zugehörige Vorrichtung
DE60133166T2 (de) Verfahren und Vorrichtung zur Volumendarstellung
DE102015113240A1 (de) System, verfahren und computerprogrammprodukt für schattierung unter verwendung eines dynamischen objektraumgitters
DE19807053B4 (de) Strahltransformationsverfahren für eine schnelle Volumenaufbereitung für eine perspektivische Betrachtung
DE69926986T2 (de) Rechnergrafiken-animationsverfahren und vorrichtung
DE69720131T2 (de) System und Verfahren zur Perspektivetransformation
DE19807013B4 (de) Volumetrisches Vorabschneidungsverfahren, das eine minimale Anzahl von Abtastpunkten durch ein Volumen gewährleistet
DE3022454A1 (de) Optisches abbildesystem mit computererzeugtem bild fuer einen bodenfesten flugsimulator
DE102005050846A1 (de) Perspektiveneditierwerkzeuge für 2-D Bilder
DE4431349A1 (de) Adaptives Filtern von digitalen Bildsignalen
DE60020038T2 (de) Verfahren zum Verarbeiten eines numerischen Bildes
DE69631718T2 (de) Verfahren und Gerät zur leistungsfähigen Graphikdarstellung dreidimensionaler Szenen
DE102010046507A1 (de) Berechnung der Detailstufe für die anisotrope Filterung
DE112005002076T5 (de) Unterteilung von Geometriebildern in Grafikhardware
DE102011016347A1 (de) Hierarchisches Umgrenzen von verschobenen parametrischen Flächen
DE69916808T2 (de) Verfahren und system zur strahlverfolgung
DE69924230T2 (de) Verfahren zur Modellierung von durch Oberflächenelemente dargestellten grafischen Objekten
DE102018125472A1 (de) Grafikprozessor, der Abtastungs-basiertes Rendering durchführt, und Verfahren zum Betreiben desselben
DE19545778A1 (de) Verfahren und Einrichtung zum Maskieren von entweder durch Wendelabtastung eines interessierenden Bereichs oder durch Wendelabtastung erzeugten Kegelstrahl-Projektionsdaten
DE102005035796A1 (de) System und Verfahren zum Polygon-Glätten beim texturbasierten Volumen-Rendering

Legal Events

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