Entdecken Sie Millionen von E-Books, Hörbüchern und vieles mehr mit einer kostenlosen Testversion

Nur $11.99/Monat nach der Testphase. Jederzeit kündbar.

Bilineare Interpolation: Verbesserung der Bildauflösung und -klarheit durch bilineare Interpolation
Bilineare Interpolation: Verbesserung der Bildauflösung und -klarheit durch bilineare Interpolation
Bilineare Interpolation: Verbesserung der Bildauflösung und -klarheit durch bilineare Interpolation
eBook116 Seiten50 Minuten

Bilineare Interpolation: Verbesserung der Bildauflösung und -klarheit durch bilineare Interpolation

Bewertung: 0 von 5 Sternen

()

Vorschau lesen

Über dieses E-Book

Was ist bilineare Interpolation


In der Mathematik ist die bilineare Interpolation eine Methode zur Interpolation von Funktionen zweier Variablen mithilfe wiederholter linearer Interpolation. Es wird normalerweise auf Funktionen angewendet, die auf einem geradlinigen 2D-Gitter abgetastet werden, kann jedoch auf Funktionen verallgemeinert werden, die auf den Eckpunkten beliebiger konvexer Vierecke definiert sind.


Ihr Nutzen


(I) Einblicke und Validierungen zu den folgenden Themen:


Kapitel 1: Bilineare Interpolation


Kapitel 2: Interpolation


Kapitel 3: Linear Interpolation


Kapitel 4: Polynominterpolation


Kapitel 5: Newton-Polynom


Kapitel 6: Lagrange-Polynom


Kapitel 7: Spline-Interpolation


Kapitel 8: Kubischer Hermite-Spline


Kapitel 9: Trilineare Interpolation


Kapitel 10: Bikubische Interpolation


(II) Beantwortung der öffentlichen Frage Fragen zur bilinearen Interpolation.


(III) Beispiele aus der Praxis für die Verwendung der bilinearen Interpolation in vielen Bereichen.


Für wen dieses Buch gedacht ist


Profis, Studenten und Doktoranden, Enthusiasten, Hobbyisten und diejenigen, die über Grundkenntnisse oder Informationen für jede Art von bilinearer Interpolation hinausgehen möchten.


 


 

SpracheDeutsch
Erscheinungsdatum4. Mai 2024
Bilineare Interpolation: Verbesserung der Bildauflösung und -klarheit durch bilineare Interpolation

Mehr von Fouad Sabry lesen

Ähnlich wie Bilineare Interpolation

Titel in dieser Serie (100)

Mehr anzeigen

Ähnliche E-Books

Künstliche Intelligenz (KI) & Semantik für Sie

Mehr anzeigen

Ähnliche Artikel

Rezensionen für Bilineare Interpolation

Bewertung: 0 von 5 Sternen
0 Bewertungen

0 Bewertungen0 Rezensionen

Wie hat es Ihnen gefallen?

Zum Bewerten, tippen

Die Rezension muss mindestens 10 Wörter umfassen

    Buchvorschau

    Bilineare Interpolation - Fouad Sabry

    Kapitel 1: Bilineare Interpolation

    Bilineare Interpolation ist eine Technik zur Interpolation von Funktionen mit zwei Variablen (z. B. x und y) unter Verwendung wiederholter linearer Interpolation. Sie wird häufig auf Funktionen angewendet, die auf einem geradlinigen 2D-Gitter abgetastet werden, kann aber auch auf Funktionen erweitert werden, die auf den Scheitelpunkten beliebiger konvexer Vierecke angegeben sind.

    Die bilineare Interpolation wird durch lineare Interpolation in die eine und dann in die andere Richtung erreicht. Obwohl jeder Schritt in Bezug auf die abgetasteten Werte und die Position linear ist, ist die Interpolation als Ganzes quadratisch in Bezug auf die Abtastposition.

    Die bilineare Interpolation ist eine der grundlegenden Resampling-Methoden in der Computer Vision und Bildverarbeitung, wo sie auch als bilineare Filterung und bilineares Textur-Mapping bezeichnet wird.

    Nehmen wir an, wir wollen den Wert einer unbekannten Funktion f an der Position (x, y), y) bestimmen.

    Es wird angenommen, dass wir den Wert von f an den vier Punkten Q11 = (x1, y1), Q12 = (x1, y2), Q21 = (x2, y1) und Q22 = (x2, y2) kennen.

    Zuerst führen wir eine lineare Interpolation entlang der x-Achse durch. Dies führt dazu, dass

    {\displaystyle {\begin{aligned}f(x,y_{1})={\frac {x_{2}-x}{x_{2}-x_{1}}}f(Q_{11})+{\frac {x-x_{1}}{x_{2}-x_{1}}}f(Q_{21}),\\f(x,y_{2})={\frac {x_{2}-x}{x_{2}-x_{1}}}f(Q_{12})+{\frac {x-x_{1}}{x_{2}-x_{1}}}f(Q_{22}).\end{aligned}}}

    Anschließend interpolieren wir entlang der y-Achse, um die entsprechende Schätzung zu erhalten:

    {\displaystyle {\begin{aligned}f(x,y)&={\frac {y_{2}-y}{y_{2}-y_{1}}}f(x,y_{1})+{\frac {y-y_{1}}{y_{2}-y_{1}}}f(x,y_{2})\\&={\frac {y_{2}-y}{y_{2}-y_{1}}}\left({\frac {x_{2}-x}{x_{2}-x_{1}}}f(Q_{11})+{\frac {x-x_{1}}{x_{2}-x_{1}}}f(Q_{21})\right)+{\frac {y-y_{1}}{y_{2}-y_{1}}}\left({\frac {x_{2}-x}{x_{2}-x_{1}}}f(Q_{12})+{\frac {x-x_{1}}{x_{2}-x_{1}}}f(Q_{22})\right)\\&={\frac {1}{(x_{2}-x_{1})(y_{2}-y_{1})}}\left(f(Q_{11})(x_{2}-x)(y_{2}-y)+f(Q_{21})(x-x_{1})(y_{2}-y)+f(Q_{12})(x_{2}-x)(y-y_{1})+f(Q_{22})(x-x_{1})(y-y_{1})\right)\\&={\frac {1}{(x_{2}-x_{1})(y_{2}-y_{1})}}{\begin{bmatrix}x_{2}-x&x-x_{1}\end{bmatrix}}{\begin{bmatrix}f(Q_{11})&f(Q_{12})\\f(Q_{21})&f(Q_{22})\end{bmatrix}}{\begin{bmatrix}y_{2}-y\\y-y_{1}\end{bmatrix}}.\end{aligned}}}

    Beachten Sie, dass das Ergebnis identisch ist, wenn die Interpolation zuerst entlang der y-Richtung und dann entlang der x-Richtung durchgeführt wird.

    Alternativ kann die Lösung des Interpolationsproblems als multilineares Polynom ausgedrückt werden.

    {\displaystyle f(x,y)\approx a_{00}+a_{10}x+a_{01}y+a_{11}xy,}

    bei der Ermittlung der Koeffizienten über eine lineare Systemlösung

    {\displaystyle {\begin{aligned}{\begin{bmatrix}1&x_{1}&y_{1}&x_{1}y_{1}\\1&x_{1}&y_{2}&x_{1}y_{2}\\1&x_{2}&y_{1}&x_{2}y_{1}\\1&x_{2}&y_{2}&x_{2}y_{2}\end{bmatrix}}{\begin{bmatrix}a_{00}\\a_{10}\\a_{01}\\a_{11}\end{bmatrix}}={\begin{bmatrix}f(Q_{11})\\f(Q_{12})\\f(Q_{21})\\f(Q_{22})\end{bmatrix}},\end{aligned}}}

    Das Ergebnis zu erzielen

    {\displaystyle {\begin{aligned}{\begin{bmatrix}a_{00}\\a_{10}\\a_{01}\\a_{11}\end{bmatrix}}={\frac {1}{(x_{2}-x_{1})(y_{2}-y_{1})}}{\begin{bmatrix}x_{2}y_{2}&-x_{2}y_{1}&-x_{1}y_{2}&x_{1}y_{1}\\-y_{2}&y_{1}&y_{2}&-y_{1}\\-x_{2}&x_{2}&x_{1}&-x_{1}\\1&-1&-1&1\end{bmatrix}}{\begin{bmatrix}f(Q_{11})\\f(Q_{12})\\f(Q_{21})\\f(Q_{22})\end{bmatrix}}.\end{aligned}}}

    Die Antwort kann auch als gewichteter Mittelwert der f-Werte (Q) ausgedrückt werden:

    {\displaystyle f(x,y)\approx w_{11}f(Q_{11})+w_{12}f(Q_{12})+w_{21}f(Q_{21})+w_{22}f(Q_{22}),}

    Wenn die Summe der Gewichte 1 ist und das transponierte lineare System erfüllt ist

    {\displaystyle {\begin{bmatrix}1&1&1&1\\x_{1}&x_{1}&x_{2}&x_{2}\\y_{1}&y_{2}&y_{1}&y_{2}\\x_{1}y_{1}&x_{1}y_{2}&x_{2}y_{1}&x_{2}y_{2}\end{bmatrix}}{\begin{bmatrix}w_{11}\\w_{12}\\w_{21}\\w_{22}\end{bmatrix}}={\begin{bmatrix}1\\x\\y\\xy\end{bmatrix}},}

    Das Ergebnis zu erzielen

    {\displaystyle {\begin{aligned}{\begin{bmatrix}w_{11}\\w_{21}\\w_{12}\\w_{22}\end{bmatrix}}={\frac {1}{(x_{2}-x_{1})(y_{2}-y_{1})}}{\begin{bmatrix}x_{2}y_{2}&-y_{2}&-x_{2}&1\\-x_{2}y_{1}&y_{1}&x_{2}&-1\\-x_{1}y_{2}&y_{2}&x_{1}&-1\\x_{1}y_{1}&-y_{1}&-x_{1}&1\end{bmatrix}}{\begin{bmatrix}1\\x\\y\\xy\end{bmatrix}},\end{aligned}}}

    was die Vereinfachung der

    {\displaystyle {\begin{aligned}w_{11}&=(x_{2}-x)(y_{2}-y)/((x_{2}-x_{1})(y_{2}-y_{1})),\\w_{12}&=(x_{2}-x)(y-y_{1})/((x_{2}-x_{1})(y_{2}-y_{1})),\\w_{21}&=(x-x_{1})(y_{2}-y)/((x_{2}-x_{1})(y_{2}-y_{1})),\\w_{22}&=(x-x_{1})(y-y_{1})/((x_{2}-x_{1})(y_{2}-y_{1})),\end{aligned}}}

    konsistent mit dem Ergebnis der sukzessiven linearen Interpolation. Die Auflistung von Gewichtungen kann auch als ein Satz baryzentrischer Koordinaten für ein Rechteck interpretiert werden, die verallgemeinert wurden.

    In Anbetracht des oben Gesagten haben wir

    {\displaystyle {\begin{aligned}f(x,y)\approx {\frac {1}{(x_{2}-x_{1})(y_{2}-y_{1})}}{\begin{bmatrix}f(Q_{11})&f(Q_{12})&f(Q_{21})&f(Q_{22})\end{bmatrix}}{\begin{bmatrix}x_{2}y_{2}&-y_{2}&-x_{2}&1\\-x_{2}y_{1}&y_{1}&x_{2}&-1\\-x_{1}y_{2}&y_{2}&x_{1}&-1\\x_{1}y_{1}&-y_{1}&-x_{1}&1\end{bmatrix}}{\begin{bmatrix}1\\x\\y\\xy\end{bmatrix}}.\end{aligned}}}

    Wenn die vier Positionen, an denen f bekannt ist, (0, 0), (1, 0), (0, 1) und (1, 1) sind, reduziert sich die Interpolationsformel auf

    {\displaystyle f(x,y)\approx f(0,0)(1-x)(1-y)+f(1,0)x(1-y)+f(0,1)(1-x)y+f(1,1)xy,}

    Entsprechend gilt in Matrixoperationen:

    {\displaystyle f(x,y)\approx {\begin{bmatrix}1-x&x\end{bmatrix}}{\begin{bmatrix}f(0,0)&f(0,1)\\f(1,0)&f(1,1)\end{bmatrix}}{\begin{bmatrix}1-y\\y\end{bmatrix}}.}

    Darüber hinaus erkennen wir die Gewichte an:

    {\displaystyle {\begin{aligned}w_{11}&=(1-x)(1-y),\\w_{12}&=(1-x)y,\\w_{21}&=x(1-y),\\w_{22}&=xy.\end{aligned}}}

    Alternativ kann die Einheitsquadrat-Interpolante wie folgt ausgedrückt werden:

    {\displaystyle f(x,y)=a_{00}+a_{10}x+a_{01}y+a_{11}xy,}

    wo

    {\displaystyle {\begin{aligned}a_{00}&=f(0,0),\\a_{10}&=f(1,0)-f(0,0),\\a_{01}&=f(0,1)-f(0,0),\\a_{11}&=f(1,1)-f(1,0)-f(0,1)+f(0,0).\end{aligned}}}

    Vier Konstanten entsprechen der Anzahl der Datenpunkte, wobei f in beiden Fällen gegeben ist.

    Wie der Name schon sagt, ist die bilineare Interpolante nicht linear. Nichtsdestotrotz ist sie linear (d. h. affin) entlang von Linien, die entweder parallel zur x- oder y-Achse verlaufen, wenn entweder x oder y konstant gehalten wird. Die Interpolante entlang einer anderen Geraden ist quadratisch. Auch wenn die Interpolation an der Position (x und y) nicht linear ist, sind die Interpolationswerte an einem festen Punkt linear, wie in den vorherigen (Matrix-)Berechnungen gezeigt.

    Die bilineare Interpolation führt zum gleichen Ergebnis, unabhängig davon, welche Achse zuerst und welche als zweite interpoliert wird. Wenn wir eine lineare Interpolation in y-Richtung vor der x-Richtung durchgeführt hätten, wäre die resultierende Näherung die gleiche gewesen.

    Die Interpolation wird mit einem bilinearen Polynom durchgeführt, es erfüllt auch die Laplace-Gleichung für eine harmonische Funktion.

    Der Graph ist ein bilinearer Bézier-Flächenfleck.

    Die Interpolation ist nicht invertierbar, da die Interpolante an einer unendlichen Anzahl von Punkten einen beliebigen Wert (innerhalb der konvexen Hülle der Scheitelpunktwerte) annimmt (wodurch Verzweigungen von Hyperbeln entstehen).

    Wenn die bilineare Interpolation gleichzeitig für zwei Funktionen verwendet wird, z. B. bei der Interpolation eines Vektorfeldes, ist die Interpolation (unter bestimmten Bedingungen) invertierbar. Insbesondere kann diese Umkehrung verwendet werden, um die Einheitsquadratkoordinaten eines Punktes zu bestimmen, der sich innerhalb eines konvexen Vierecks befindet (indem die Koordinaten des Vierecks als Vektorfeld betrachtet werden, das bilinfrüh auf das Einheitsquadrat interpoliert wird). Mit dieser Methode kann die bilineare Interpolation auf jedes konvexe Viereck angewendet werden, die Berechnung ist jedoch wesentlich schwieriger, wenn das Viereck kein Parallelogramm ist. Bilineare Transformation, bilineare

    Gefällt Ihnen die Vorschau?
    Seite 1 von 1