Grafika 2D. Animacja Zmiany Kształtu. opracowanie: Jacek Kęsik

Podobne dokumenty
Grafika 2D. Animacja Zmiany Kształtu. Wykład przedstawia podstawy animacji zmiany kształtu - morfingu. opracowanie: Jacek Kęsik

Grafika 2D. Animacja Zmiany Kształtu. opracowanie: Jacek Kęsik

Metody animacji komputerowych

KSMM PG. Definicja. Pojęcie to obejmuje zmiany pozycji w czasie (dynamika ruchu), kształtu, barwy, przezroczystości,

Grafika 2D. Animacja - wstęp. Wykład obejmuje podstawowe pojęcia związane z animacja komputerową. opracowanie: Jacek Kęsik

0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do

Ćwiczenia nr 7. TEMATYKA: Krzywe Bézier a

Grafika Komputerowa Wykład 5. Potok Renderowania Oświetlenie. mgr inż. Michał Chwesiuk 1/38

1. Prymitywy graficzne

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

Modelowanie i wstęp do druku 3D Wykład 1. Robert Banasiak

Techniki animacji komputerowej

Autodesk 3D Studio MAX Animacja komputerowa i praca kamery

Przygotowanie grafiki 3D do gier komputerowych

Synteza i obróbka obrazu. Modelowanie obiektów 3D

Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania.

Animowana grafika 3D. Opracowanie: J. Kęsik.

Algebra liniowa z geometrią

1. Wykład NWD, NWW i algorytm Euklidesa.

1. Podstawowe algorytmy techniki rastrowe a) dwa przecinające się odcinki mogą nie mieć wspólnego piksela (T) b) odcinek o współrzędnych końcowych

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku

Grafika Komputerowa Wykład 6. Teksturowanie. mgr inż. Michał Chwesiuk 1/23

Rok akademicki: 2017/2018 Kod: JFM s Punkty ECTS: 7. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Praktyczne przykłady wykorzystania GeoGebry podczas lekcji na II etapie edukacyjnym.

INTERAKTYWNA KOMUNIKACJA WIZUALNA ANIMACJA

Photoshop. Podstawy budowy obrazu komputerowego

10.3. Typowe zadania NMT W niniejszym rozdziale przedstawimy podstawowe zadania do jakich może być wykorzystany numerycznego modelu terenu.


Opis krzywych w przestrzeni 3D. Mirosław Głowacki Wydział Inżynierii Metali i Informatyki Przemysłowej AGH

Plan wykładu. Akcelerator 3D Potok graficzny

Gramatyki grafowe. Dla v V, ϕ(v) etykieta v. Klasa grafów nad Σ - G Σ.

Grafika komputerowa Wykład 8 Modelowanie obiektów graficznych cz. II

Graficzne modelowanie scen 3D. POV-Ray. Wykład 3

Projektowanie graficzne. Wykład 2. Open Office Draw

Laboratorium grafiki komputerowej i animacji. Ćwiczenie V - Biblioteka OpenGL - oświetlenie sceny

3. Macierze i Układy Równań Liniowych

Animowana grafika 3D. Opracowanie: J. Kęsik.

Programowanie liniowe

PRÓBNY EGZAMIN MATURALNY Z MATEMATYKI

Algebra Liniowa 2 (INF, TIN), MAP1152 Lista zadań

Obrót wokół początku układu współrzędnych o kąt φ można wyrazić w postaci macierzowej następująco

Tworzenie prezentacji w MS PowerPoint

Parametryzacja obrazu na potrzeby algorytmów decyzyjnych

Oświetlenie obiektów 3D

Ćwiczenia z grafiki komputerowej 4 PRACA NA WARSTWACH. Miłosz Michalski. Institute of Physics Nicolaus Copernicus University.

Techniki wstawiania tabel

Modelowanie dłoni. 1. Obraz referencyjny

Analiza obrazu. wykład 4. Marek Jan Kasprowicz Uniwersytet Rolniczy 2009

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

GRK 2. dr Wojciech Palubicki

Analiza obrazu. wykład 1. Marek Jan Kasprowicz Uniwersytet Rolniczy Marek Jan Kasprowicz Analiza obrazu komputerowego 2009 r.

Elementarna analiza statystyczna

10. Wstęp do Teorii Gier

Reprezentacja i analiza obszarów

W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora.

Luty 2001 Algorytmy (4) 2000/2001

Funkcje analityczne. Wykład 4. Odwzorowania wiernokątne. Paweł Mleczko. Funkcje analityczne (rok akademicki 2016/2017) dla każdego s = (s.

Modelowanie krzywych i powierzchni

Wprowadzenie do programu 3ds Max THEBRAIN

Kolorowanie płaszczyzny, prostych i okręgów

Interpolacja i modelowanie krzywych 2D i 3D

Autodesk 3D Studio MAX Podstawy modelowania 3D

Reprezentacja i analiza obszarów

Ćwiczenie nr 5 i 6 Przygotowanie dokumentacji technicznej dla brył

GRAFIKA KOMPUTEROWA. Plan wykładu. 1. Początki grafiki komputerowej. 2. Grafika komputerowa a dziedziny pokrewne. 3. Omówienie programu przedmiotu

GRK 4. dr Wojciech Palubicki

Funkcje analityczne. Wykład 4. Odwzorowania wiernokątne. Paweł Mleczko. Funkcje analityczne (rok akademicki 2017/2018)

Ćwiczenie 1 Automatyczna animacja ruchu

(1,10) (1,7) (5,5) (5,4) (2,1) (0,0) Grafika 3D program POV-Ray

Spis treści. Przedmowa... XI. Rozdział 1. Pomiar: jednostki miar Rozdział 2. Pomiar: liczby i obliczenia liczbowe... 16

OpenGL przezroczystość

Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30

Grafika Komputerowa Materiały Laboratoryjne

GIMP - Filtr Deformowanie (IWarp) r

Przegląd metod optymalizacji wielowymiarowej. Funkcja testowa. Funkcja testowa. Notes. Notes. Notes. Notes. Tomasz M. Gwizdałła

Algorytmy stochastyczne Wykład 12, Uczenie parametryczne w sieciach bayesowskich

Młodzieżowe Uniwersytety Matematyczne. dr Michał Lorens

Przekształcanie równań stanu do postaci kanonicznej diagonalnej

Funkcja kwadratowa. f(x) = ax 2 + bx + c = a

Porównanie algorytmów wyszukiwania najkrótszych ścieżek międz. grafu. Daniel Golubiewski. 22 listopada Instytut Informatyki

TEORETYCZNE PODSTAWY INFORMATYKI

Transformacje obiektów 3D

Funkcja kwadratowa. f(x) = ax 2 + bx + c,

Elastyczne projektowanie produktu w ZW3D. ZW3D CAD/CAM Biała księga

Grafika Komputerowa Materiały Laboratoryjne

Grafika Komputerowa Materiały Laboratoryjne

Przykład zastosowania poleceń 3DWYRÓWNAJ i RÓŻNICA

Waldemar Izdebski - Wykłady z przedmiotu SIT / Mapa zasadnicza 30

Teoria grafów II. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Przetwarzanie obrazów wykład 7. Adam Wojciechowski

Technologie Informacyjne

Spis treści. Księgarnia PWN: Roland Zimek - SWiSH Max2 i SWiSH Max3. Wprowadzenie... 9

Bartosz Bazyluk SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok

TWORZENIE TORU KOLEJOWEGO DLA LOKOMOTYWY - ZABAWKI. W tym przewodniku stworzymy tor kolejowy pasujący do zabawki.

Maskowanie i selekcja

Programy CAD Modelowanie geometryczne

Struktury Danych i Złożoność Obliczeniowa

Animowana grafika 3D Laboratorium 3

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 10 AiR III

Zastosowania informatyki w geologii ćwiczenia 1,2 INKSCAPE 1

Transkrypt:

Grafika 2D Animacja Zmiany Kształtu opracowanie: Jacek Kęsik

Wykład przedstawia podstawy animacji zmiany kształtu - morfingu

Animacja zmiany kształtu Podstawowe pojęcia Zlewanie (Dissolving / cross-dissolving) łączenie dwóch obrazów poprzez płynne przejście - uśrednianie Wstawianie (tweening) proces sekwencyjnej interpolacji obrazów pośrednich między dwoma stanami kluczowymi w celu uzyskania wrażenia płynnego przejścia między nimi Deformowanie (warping) zniekształcanie obrazu uzależnione od obszaru tego obrazu, matematyczny odpowiednik nadruku na elastycznej powierzchni (rozciąganej i ściskanej w różnych miejscach) Przekształcanie (morphing) jest kombinacją powyższych

Na postawie pracy dr Stevena Seitza (University of Washington) http://www.cs.washington.edu/homes/seitz/

Czym jest morphing? Próba znalezienia stanu pośredniego pomiędzy dwoma obiektami NIE stan pośredni między dwoma obrazami obiektów tylko obraz obiektu pośredniego

Próba znalezienia stanu pośredniego pomiędzy dwoma obiektami Animacja wiąże się ze znalezieniem ważonych stanów pośrednich zależnych od czasu t Jak wygląda obiekt pośredni? Nie mamy pojęcia Ale możemy sfingować coś sensownego

Morphing jest kombinacją zlewania, wstawiania i deformowania Czasem wystarczy tylko zlewanie(uśrednianie) i wstawianie Obraz pośredni = (1-t)*Obraz 1 + t*obraz 2 Najczęściej 0 < t < 1

Jak znaleźć wartość pośrednią między P i Q? v = Q - P P Q Interpolacja liniowa dowolny punkt pośredni ap + bq, Zdefiniowany tylko gdy a+b = 1 więc ap+bq = ap+(1-a)q P + 0.5v = P + 0.5(Q P) = 0.5P + 0.5 Q P + 1.5v = P + 1.5(Q P) = -0.5P + 1.5 Q (ekstrapolacja) P i Q dowolne wartości: Punkty w 2D lub 3D Kolory RGB, HSV (3D) Całe obrazy (m-na-n D)

Metoda filmowa nazywana zlewanie / przenikanie Ale co gdy obrazy nie są dopasowane do siebie?

Najpierw dopasowanie potem przenikanie Dopasowanie wykorzystuje przekształcenie globalne (najczęściej rzut/przekrzywienie)

Co gdy obiekty różnią się kształtem? Przenikanie nie działa Globalne dopasowanie nie działa Ani żadna globalna transformacja (np. afiniczna)

Rozwiązanie: Dopasowywanie szczegółów Ogon do ogona, oko do oka... Wprowadzamy tym samym zniekształcenia lokalne (nie parametryczne)

Procedura morphingu dla każdego t, 1. Znajdź kształt pośredni każdego z obrazów Lokalne zniekształcenia 2. Interpoluj kolory pikseli z tych 2 obrazów pośrednich przenikanie

Konieczność zdefiniowana bardziej złożonego przekształcenia Przekształcenia globalne były funkcjami kilku parametrów Przekształcenia lokalne u(x,y) i v(x,y) mogą być zdefiniowane niezależnie dla każdej pozycji x,y! (każdego szczegółu) Gdy znamy zbiór wektorów przekształceń u,v możemy łatwo przekształcić każdy piksel (przekształcenie odwrotne + interpolacja)

Punkty kontrolne określają krzywe zniekształcenia Krzywe zapewniają gładkość zbioru wektorów przekształceń

Jak określić przekształcenie? Zdefiniować punkty kontrolne odpowiadających sobie krzywych Interpolacja reszty pozycji by uzyskać pełne przekształcenie Ale nie chcemy definiować całej siatki a tylko kilka punktów

Jak określić przekształcenie? Zdefiniować odpowiadające sobie punkty kontrolne Interpolacja reszty pozycji by uzyskać pełne przekształcenie Ale jak? Jak zdefiniować przejście od punktów kontrolnych do pikseli?

Rozwiązanie - siatka trójkątów 1. Oznaczenie odpowiadających sobie punktów w kluczowych obszarach obiektów

Rozwiązanie - siatka trójkątów 2. Zdefiniowanie siatki trójkątów, rozpiętej na tych punktach Ta sama siatka na obu obrazach Siatki określają odpowiadające sobie trójkąty na obrazach

Rozwiązanie - siatka trójkątów 3. Każdy trójkąt jest przekształcany osobno od wyglądu początkowego do końcowego Ale jak zbudować taką siatkę?

Podział otoczki wypukłej zestawu punktów na powierzchni na trójkąty jest nazywany Triangularyzacją. Punkty znajdują się tylko i wyłącznie w wierzchołkach trójkątów Istnieje wiele wyników triangularyzacji zestawu punktów

Algorytm triangularyzacji o złożoności O(n 3 ) Powtarzaj tak długo jak możliwe Wybierz 2 wierzchołki Jeśli linia je łącząca nie przecina poprzednich linii zapisz ją

Jakość triangularyzacji Niech (T) = ( 1, 2,.., 3t ) będzie wektorem kątów triangularyzacji T Triangularyzacja T 1 będzie lepsza od T 2 jeśli (T 1 ) > (T 2 ) leksykograficznie Najlepsza triangulacja maksymalizuje najmniejsze kąty (Delaunay triangulation) dobrze źle

Poprawianie triangularyzacji W każdym czworokącie wypukłym możliwe jest odwrócenie krawędzi wewnętrznej. Jeśli poprawia to lokalną jakość triangularyzacji, poprawia również jakość triangularyzacji globalnej Jeśli odwrócenie krawędzi poprawia triangularyzację, poprzednia krawędź jest nazywana nielegalną

Naiwny algorytm Delaunay Rozpocznij z dowolną triangularyzacją Odwracaj kolejno nielegalne krawędzie, tak długo jak występują Może pracować bardzo długo

algorytm Delaunay (Delone) Wykorzystuje podział płaszczyzny na komórki Woronoja (dla danego zbioru n punktów, dzieli się płaszczyznę na n obszarów, w taki sposób, że każdy punkt w dowolnym obszarze znajduje się bliżej określonego punktu ze zbioru n punktów niż do pozostałych n 1 punktów ) Łącząc punkty z sąsiadujących ze sobą obszarów uzyskujemy triangularyzację Delaunay Złożoność zredukowana do O(nlogn)

Wiemy już jak przekształcić jeden obiekt w drugi ale jak stworzyć animowaną sekwencję morfingu? 1. Utworzyć kształty pośrednie (interpolacja siatek) 2. Przekształcić do nich oba obrazy 3. Wykonać zlanie kolorów obu przekształconych obrazów

Obraz źródłowy Siatka źródłowa Siatka pośrednia Obraz pośredni 1 Obraz pośredni 2 Obraz połączony Siatka docelowa Obraz docelowy f 0 1 czas 0 n Przekształć obraz źródłowy zgodnie z siatką Morf = f P+(1-f)Q Przekształć obraz docelowy godnie z siatką

Dla siatki trójkątnej Uzyskanie siatki pośredniej w chwili t t = [0,1] Liniowa interpolacja dla każdej pary szczegółów np. (1-t)*p1+t*p0 dla odpowiedników p0 i p1

Ograniczenie dla morfingu 2D Możliwość wystąpienia złożenia trójkątów Pojawia się w przypadku zmiany kolejności punktów kontrolnych na obrazie Z reguły w przypadku próby wykonania przekształcenia pseudo 3D Działa poprawnie tylko z danymi 3D Za pomocą ekstrapolacji można osiągnąć ciekawe efekty - karykatury

Morfing można wykonać również na obrazach dynamicznie zmienianych

Morfing widoku view morphing Morfowaniu podlega pozycja wirtualnej kamery

Morfing widoku view morphing Metoda i efekt Kamery rejestrujące ten sam obiekt w tej samej chwili Tworzą zgrubną ścieżkę ruchu wokół obiektu Płynny ruch kamery wokół obiektu uzyskany dzięki morfowaniu pozycji wirtualnej kamery pomiędzy poszczególnymi rzeczywistymi kamerami w ścieżce

That s all folks