2016-06-29 6 views
-1

Theoretisch verziehen, ich weiß, dass ein Bild verziehen, wobei jedes Pixel (x,y) in dem Quellbild wird auf (x', y') transformiert, um eine Funktion f unter Verwendung von (d x'=f(x,y) & y'=f(x,y)). Aber welche mathematischen Gleichungen kann ich anstelle der Funktion f() verwenden.Suche eine mathematische Gleichung sucht ein Bild

Zum Beispiel fand ich in einer Website der folgenden für Warping ein Bild:

X' = X + [sin(aX) + cos(cY)] . d where a,b,c and d random values. 

y'= the same above 

Meine Frage: aus, wo solche diese Gleichung kommen? Gibt es eine systematische Technik, um solche Gleichungen zu erzeugen und dann das ähnliche verzogene Bild unten zu erhalten?

warped image

Ein andere Frage How to make a wave warp effect in shader? wird über den einfachen Welleneffekt zu fragen, was aus meiner Frage völlig anders. Meine Frage ist, wie man Gleichungen aufbaut, die Abbildungsfunktionen in anderen komplizierten Verzerrungseffekten darstellen, definitiv nicht einfach wie Wellengleichung, und danach, wie man die Koeffizienten "Parameter" (a, b, c und d) für diese mathematischen Gleichungen bestimmt , nicht durch Versuch und Irrtum

+0

Math.SE ist ein besserer Ort dafür, wenn Sie Mathe Hilfe suchen – Li357

+1

Die Gleichung kommt von Ihnen. Das heißt, Sie schreiben die Funktion, die die Punkte transformiert. Es gibt eine systematische Technik, um die Gleichungen zu erzeugen. Um etwas Ähnliches wie das Bild zu erhalten, das Sie verlinkt haben, müssten Sie experimentieren. Vom Aussehen der Dinge bewegt es Pixel nach links und unten oder rechts und unten, abhängig von ihrer horizontalen Entfernung von der Mitte der Hälfte des Bildes, in dem sie sich befinden. Sie müssen experimentieren, um die genaue Formel zu finden. –

+2

Grundsätzlich verschieben sie Bereiche von Pixeln _smoothly_, dh die Verschiebungsverteilung von Pixeln variiert kontinuierlich über das Bild und "springt" nicht - was zum Zerreißen –

Antwort

0

Es tut mir leid, Ihnen zu sagen, dass es keine geheime Methode gibt, das zu tun. Sie denken einfach darüber nach, was Sie wollen, und übersetzen das dann in Mathe.

Dieser Typ, der den Welleneffekt machte, wollte einen Welleneffekt, formulierte ihn als Funktion und transformierte das Bild damit.

Natürlich werden Sie hier und da die gleichen Techniken anwenden und diese Transformationen von einigen Standard-Bricks mit Parametern hier und da erstellen.

Vielleicht hilft (Google ist dein Freund) http://groups.csail.mit.edu/graphics/classes/CompPhoto06/html/lecturenotes/14_WarpMorph_6.pdf Es geht um ein Spline-Interpolation für Ähnliche Effekte ein glattes Bild zu erhalten.