MAKE SOME NOISE … von Perlin Noise zu Wavelet Noise

Slides:



Advertisements
Ähnliche Präsentationen
Developing your Business to Success We are looking for business partners. Enterprise Content Management with OS|ECM Version 6.
Advertisements

Polynome und mehrfache Nullstellen
Filterung der räumlichen Frequenzen
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Telefonnummer.
CPCP Institute of Clinical Pharmacology AGAH Annual Meeting, 29. Februar 2004, Berlin, Praktischer Umgang mit den Genehmigungsanträgen gemäß 12. AMG Novelle.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2012.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Optische Eigenschaften von Werkstoffen
1 JIM-Studie 2010 Jugend, Information, (Multi-)Media Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
= = = = 47 = 47 = 48 = =
Scratch Der Einstieg in das Programmieren. Scatch: Entwicklungsumgebung Prof. Dr. Haftendorn, Leuphana Universität Lüneburg,
Dynamik komplexer Systeme
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
© 2006 W. Oberschelp, G. Vossen Rechneraufbau & Rechnerstrukturen, Folie 2.1.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Astronomisch, Physikalische und Mathematische Geodäsie II
Das freie Randwertproblem von Stokes
AC Analyse.
Differentielles Paar UIN rds gm UIN
Schieferdeckarten Dach.ppt
Bildtransformationen
Rechneraufbau & Rechnerstrukturen, Folie 12.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 12.
1. 2 Schreibprojekt Zeitung 3 Überblick 1. Vorstellung ComputerLernWerkstatt 2. Schreibprojekt: Zeitung 2.1 Konzeption des Kurses 2.2 Projektverlauf.
20:00.
Computergrafik – Inhalt Achtung! Kapitel ist relevant für CG-2!
Die Geschichte von Rudi
„Küsse deine Freunde“ – FlexKom-App teilen
Zusatzfolien zu B-Bäumen
Eine Einführung in die CD-ROM
für Weihnachten oder als Tischdekoration für das ganze Jahr
Wir üben die Malsätzchen
Polynome und schnelle Fourier-Transformation
Das 19. Jahrhundert: John Ruskin ( ) und die Kunsterziehungsbewegung in England.
NEU! 1 2. Wo kommt diese Art von Rezeptor im Körper vor?
PROCAM Score Alter (Jahre)
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Geometrische Aufgaben
Objekte und ihre Beschreibung
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
Das ist die Geschichte eines kleinen Jungen aus der Schweiz.
Symmetrische Blockchiffren DES – der Data Encryption Standard
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Großer Altersunterschied bei Paaren fällt nicht auf!
Zahlentheorie und Zahlenspiele Hartmut Menzer, Ingo Althöfer ISBN: © 2014 Oldenbourg Wissenschaftsverlag GmbH Abbildungsübersicht / List.
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
LOD Levels of Detail Oliver Gassner Christian Troger.
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Pigmentierte Läsionen der Haut
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Einführung in die Astronomie und Astrophysik I Kapitel III: Das Planetensystem 1 Kapitel III: Das Planetensystem.
Vortrag von Rechtsanwältin Verena Nedden, Fachanwältin für Steuerrecht zur Veranstaltung Wege zum bedingungslosen Grundeinkommen der Piratenpartei Rhein-Hessen.
1 Mathematical Programming Nichtlineare Programmierung.
Imperfekt Wie sagt man das mit Imperfekt
Arne Vater Wintersemester 2006/ Vorlesung
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Bildergalerie PRESEASON CAMP Juni 2014 Romanshorn Get ready for the Season!
Kw MoDiMiDoFrSaSo 14 1 Semester- beginn: SS Vorlesungs- beginn: SS April 2008.
Dimension 4 !... nicht zu fassen ? Lange Nacht der Wissenschaft 24. September 2010 Wiland Schmale Institut für Mathematik.
Es war einmal ein Haus
J-Team: Gymnasium Ulricianum Aurich und MTV Aurich Ein Projekt im Rahmen von UlricianumBewegt.de Euro haben wir schon…  8000 mal habt ihr bereits.
Datum:17. Dezember 2014 Thema:IFRS Update zum Jahresende – die Neuerungen im Überblick Referent:Eberhard Grötzner, EMA ® Anlass:12. Arbeitskreis Internationale.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Wie.
Technische Kommunikation
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
 Präsentation transkript:

MAKE SOME NOISE … von Perlin Noise zu Wavelet Noise Von Christian Ritter Seminar Computergrafik SS 2006 Institut für Informatik Johannes Gutenberg Universität Mainz

Agenda Grundlagen Motivation Perlin Noise Wavelet Noise Einsatzmöglichkeiten 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Grundlagen … 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Grundlagen Frequenz, Wellenlänge, Amplitude 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Grundlagen Fourier-Transformation Signale können in Elementarschwingungen zerlegt werden (Sinus- und Kosinusfunktionen) 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Grundlagen Nyquist-Limit „Ein analoges Signal muss mit mehr als der doppelten Signalfrequenz abgetastet werden, um aus dem digitalen Abbild des Signals das analoge Ausgangssignal rekonstruieren zu können“ (Internetquelle) Sonst entsteht Aliasing 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Motivation … 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Motivation Was fehlt? 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Motivation Ausgangssituation Viele Strukturen (Wasser, Holz, …) Fraktale (lat. fractus: gebrochen): Muster mit einem hohen Grad an Skaleninvarianz bzw. Selbstähnlichkeit An zwei Punkten ähnlich, aber nicht gleich Texturen geringer Auflösung: Wiederholung erkennbar Realistisch nur durch Texturen hoher Auflösung darstellbar früher: begrenzte Speicher Heute möglich, aber in vielen Fällen unnötig (z.B. 3D Nebelvolumen) 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Die optimale NOISE-Funktion soll … Fraktal sein Motivation Wunsch Die optimale NOISE-Funktion soll … Fraktal sein Stetig differenzierbar (am Besten c-differenzierbar) Leicht beschreibbar Schnell Reproduzierbar Erweiterbar auf weitere Dimensionen 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise … 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Geschichte Benannt nach ihrem Erfinder Ken Perlin „Department of Computer Sience“ New York University 1981 Walt Disney „Tron“ 1983 erste Version einer 3D Noise Funktion 1984 Erste Shader-Sprache 1997 Academy Award for Technical Achievment 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Das Ziel im Blick Fourieranalyse: komplexes Signal als Summe gewichteter Kosinusfunktionen verschiedener Frequenz Analog: NOISE als Summe gewichteter NOISE-Bänder verschiedener Frequenz 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Berechnung eines Noise-Bandes Gitter aus Zufallszahlen [0,1] erzeugen Zwischen Zufallszahlen interpolieren 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Zufallszahlen erzeugen Pseudo-Zufallsgenerator Weist einer ganzen Zahl einen Zufallswert [0,1] zu Reproduzierbar Beispiele: Multiplikationen in endlichen Körper Z/PZ 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Interpolation Erweiterung des Definitionsbereiches auf reelle Zahlen Methode Lineare Interpolation S-Kurve Interpolation Kosinus Interpolation Kubische Interpolation 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Lineare Interpolation Zwischen den benachbarten Punkten durch eine Gerade interpoliert Nachteil: nicht stetig differenzierbar 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Kosinus Interpolation Zum Interpolieren wird die Kosinuskurve verwendet stetig differenzierbar langsam 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

„Beschleunigung“ und „Verzögerung“ bei Start und Ende Perlin Noise S - Kurve „Beschleunigung“ und „Verzögerung“ bei Start und Ende weichere Übergänge Stetig differenzierbar Sehr ähnlich der Kosinusinterpolation und dieser vorzuziehen 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Kubische Interpolation Berücksichtigt 4 Punkte 2 mal stetig differenzierbar rechenaufwändig 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Perlins Ansatz Wert an jedem Gitterpunkt ist 0 Zufallswert bestimmt den Anstieg an diesem Punkt Vorteil: Frequenzen der Fourieranalyse sind begrenzt auf den Bereich 2^(k+1) bis 2^k 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Zusammenfassung Komplexes Rauschen durch Addition mehrere NOISE-Bänder verschiedener Gewichtung Sehr variable, sehr intuitiv, aber oft zu granular in der Beschreibung (jedes Band muss beschrieben werden) 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Persistenz Verdopplung der Frequenz von Band zu Band (1 Oktave) Beschreibung der Amplitudenänderung durch einen konstanten Faktor genannt Persistenz Persistenz: 1 / 4 Persistenz: 1 / 1.41 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Rauschen in mehreren Dimensionen Leicht erweiterbar auf mehrere Dimensionen  Zufallszahlen abhängig von allen Dimensionen  Interpolation entlang aller Achsen Man verwendet oft 3D-Noise zum Texturieren von 2D-Oberflächen 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Probleme / Aliasing Abtastfrequenz liegt unter der Nyquistgrenze Da Frequenzen begrenzt  Bänder können abgeschnitten werden  Geometrie erscheint früher als die Textur 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Probleme / Aliasing Überblenden 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Perlin Noise Probleme / Bandbegrenzung 2D Perlin Noise 2D Schnitt durch ein 3D Perlin Noise Volumen 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise … 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Einleitung I „Wavelet Noise“ (SIGGRAPH August 2005) Robert L. Cook Academy Award of Merit (Oscar) „for significant advancements to the field of motion picture rendering as exemplified in Pixar's RenderMan“ Vizevorstand der Softwareentwicklung bei Pixar Animation Studios Tony DeRose 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Einleitung II Wavelet („kleine Welle“ – frz. Ondelette) Kein Rauschen kann Aliasing unter allen Umständen verhindern Ziel Verhinderung von Aliasing im Idealfall Aufbau wie Perlin: Summe gewichteter Rauschbänder 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Funktionsweise eines Renderers Szene S(x) Filterkern K(x) 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Bei zu kleiner Skalierung keinen Einfluss auf das Bild Wavelet Noise Ziel Bei zu kleiner Skalierung keinen Einfluss auf das Bild 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Der Idealfall I Farbe des Oberflächenpunktes wird dominiert durch M(x) 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Der Idealfall II Annahme: j=-1 für darstellbares Rauschen, j>=0 sonst Beitrag der Rauschfunktion verschwindet, wenn Aliasing auftreten würde j,l ganze Zahlen 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Erzeugung eines Bandes R(x) erzeugen Downsampling zu R-(x) Upsampling zu R-+(x) N(x) = R(x) – R-+(x) 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Upsampling I Basisfunktion Phi(x) Funktionen als Linearkombination von um i verschobene Phi(x-i) gebildet werden Alle möglichen Funktionen F(x) erzeugen einen Vektorraum S0 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Upsampling II Erzeuge Vektorraum S1 durch Linearkombination aller Phi(2x-i) Verfeinerbar: Für alle Funktionen F in S0 lassen sich Koeffizienten finden, so dass … Die Koeffizienten lassen sich berechnen durch … Für quadratische B-Splines umfasst diese Summe nur 4 Summanden! 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Upsampling III Die neue Koeffizientensequenz ist doppelt so lang, wie die Koeffizienten von F  UPSAMPLING Verfeinerbare Basisfunktionen stellen sicher, dass alle Funktionen in S0 lassen sich in S1 darstellen  S0 eine echte Teilmenge von S1 ist Beispiele für verfeinerbare Basisfunktionen Uniform B-Spline jeden Grades 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Downsampling I nicht jede Funktion in S1 ist auch in S0 enthalten, d.h. egal welche Koeffizienten ich in S0 wähle  es liegt ein Detailverlust vor Trennung in einen darstellbaren und einen nicht darstellbaren Teil G-(x) wird durch die „kleinste Quadrate-Methode“ bestimmt 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Downsampling II Beste Annäherung von D(x) in S0: alle Koeffizienten = 0  D(x) und alle ganzzahligen Verschiebungen orthogonal zu allen Funktionen in S0 sind Alle Detailfunktionen erzeugen einen Vektorraum: Wavelet-Raum W0 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Downsampling III Die Koeffizienten für G-(x) können mit Hilfe der Wavelet Analysis (insbesondere des sog. Analysis Koeffizienten) berechnet werden Für quadratische B-Splines ist die Summe unendlich lang; fällt aber schnell ab ! Die Koeffizientensequenz für G ist doppelt so lang, wie die Koeffizientensequenz für G-  Downsampling 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Die Basisfunktion Als Basisfunktion werden quadratische B-Splines verwendet Ähnlich zu den meisten verwendeten Filterkernen Geringer Grad, lokaler Einfluss  schnell und einfach Erzeugt differenzierbares Rauschen 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Erzeugung eines Bandes V R(x) erzeugen Downsampling zu R-(x) Upsampling zu R-+(x) N(x) = R(x) – R-+(x) 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Ergebnis Das Rauschband ist so konstruiert, dass es für alle Skalierungen 2^j für j>=0 keinen Beitrag mehr liefert Die Basisfunktion ist so gewählt, dass sie den meisten Filterkernen ähnlich ist 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Der Nicht-Ideale Fall j (Skalierung 2^j) und l (Verschiebung) sind ja nicht unbedingt ganze Zahlen Numerische Untersuchungen des Beitrags C(j, 0.5) zeigen: starker abfall bei steigendem j In den meisten realistischen Szenarien arbeitet die Methode gut 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Ergebnis 2D Wavelet Noise 2D Schnitt durch ein 3D Wavelet Noise Volumen War wohl nichts! 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Projektion Bisher: Abtastung des 3D-Volumen Jetzt: das Integral über alle gewichteten Werte der Rauschfunktion entlang einer Geraden orthogonal zur Schnittebene 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Ergebnis 2D Wavelet Noise 3D Wavelet Noise projiziert auf 2D 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Wavelet Noise Ergebnis 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Einsatzmöglichkeiten … 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Einsatzmöglichkeiten Prozedurale Texturen Holz, Wolken, Feuer, … Modellierung Landschaften, Lindemeyer-Systeme Animationen Partikelsysteme, natürliches Verhalten von Haaren, etc 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz

Voilà tout. Haben Sie Fragen ? Möchten Sie gerne mehr wissen ? 2006-07-07 Christian Ritter, Johannes Gutenberg Universität Mainz