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



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

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

Grafika 2D. Animacja - wstęp. Wykład obejmuje podstawowe pojęcia związane z animacja komputerową. 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,

Układy równań liniowych. Ax = b (1)

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

1. Prymitywy graficzne

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

Krzysztof Jakubczyk. Zadanie 2

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

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

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

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

Przygotowanie grafiki 3D do gier komputerowych

Reprezentacja i analiza obszarów

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

Autodesk 3D Studio MAX Animacja komputerowa i praca kamery

Często zadawane pytania PhoToPlan

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

Animacja Komputerowa. Animacja oparta na interpolacji

INTERAKTYWNA KOMUNIKACJA WIZUALNA ANIMACJA

Definicja pochodnej cząstkowej

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

KaŜdemu atrybutowi A przyporządkowana jest dziedzina Dom(A), czyli zbiór dopuszczalnych wartości.

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

Algebra liniowa z geometrią

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

funkcje rekurencyjne Wykład 12. Podstawy programowania (język C) Funkcje rekurencyjne (1) Funkcje rekurencyjne (2)

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

Programowanie liniowe

Grafika komputerowa. Zajęcia IX

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

Photoshop. Podstawy budowy obrazu komputerowego

Plan wykładu. Akcelerator 3D Potok graficzny


Zamiana reprezentacji wektorowej na rastrową - rasteryzacja

Grafika Komputerowa Materiały Laboratoryjne

Elementarna analiza statystyczna

LUBELSKA PRÓBA PRZED MATURĄ

Kalibracja Obrazów w Rastrowych

KP, Tele i foto, wykład 3 1

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

LUBELSKA PRÓBA PRZED MATURĄ

Wykład II Sieć krystaliczna

Spis treści. I. Czym jest Indeks Haseł 3 II. Wyszukiwanie hasła 4. 1) Alfabetyczna lista haseł 4 2) Wyszukiwarka haseł 4 3) Grupy haseł 6

Projektowanie graficzne. Wykład 2. Open Office Draw

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

PORÓWNANIE FUNKCJI PROGRAMÓW SOLIDWORKS i IRONCAD (na podstawie wykazu funkcji programu SolidWorks zamieszczonego na stronie producenta).

Techniki animacji komputerowej

OpenGL przezroczystość

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

PRÓBNY EGZAMIN MATURALNY Z MATEMATYKI

Kalibracja kamery. Kalibracja kamery

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

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

Oświetlenie obiektów 3D

Algorytmy i struktury danych

Przeciąganie po profilach, Dodanie/baza przez wyciągnięcie po ścieŝce

Kolejkowanie. Graf sekwencyjny. Graf sekwencyjny: biegunowy, acykliczny Graf acykliczny to graf nie zawierający cykli G(V,E)

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

Układy kryptograficzne z uŝyciem rejestrów LFSR

Metoda Elementów Skończonych - Laboratorium

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

Marek Miszczyński KBO UŁ. Wybrane elementy teorii grafów 1

Grafika Komputerowa Materiały Laboratoryjne

Rekurencje. Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie:

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

R n jako przestrzeń afiniczna

Techniki wstawiania tabel

Liniowe Zadanie Decyzyjne model matematyczny, w którym zarówno funkcja celu jak i warunki

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

Modelowanie dłoni. 1. Obraz referencyjny

GRAKO: ŚWIATŁO I CIENIE. Modele barw. Trochę fizyki percepcji światła. OŚWIETLENIE: elementy istotne w projektowaniu

Ćwiczenie 14. Maria Bełtowska-Brzezinska KINETYKA REAKCJI ENZYMATYCZNYCH

Lab. Metody Elementów Skończonych

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

GRK 2. dr Wojciech Palubicki

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

KONSMETAL Zamek elektroniczny NT C496-L250 (RAPTOR)

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

Modelowanie 3D. Obiekty regularne. Powierzchnie proste możliwe do wymodelowania ręcznie na podstawie poligonów lub powierzchni parametrycznych.

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

Autodesk 3D Studio MAX Podstawy modelowania 3D

Laboratorium z Systemów Wytwarzania. Instrukcja do ćw. nr 5

WIESŁAW KOTARSKI, KRZYSZTOF GDAWIEC, AGNIESZKA LISOWSKA NIELINIOWE PODZIAŁY I FRAKTALE

Laboratorium Programowanie Obrabiarek CNC. Nr H6

Operacje morfologiczne w przetwarzaniu obrazu

bo od managera wymaga się perfekcji

Zmiana baz. Jacek Jędrzejewski Macierz przejścia od bazy do bazy 2

Skrócona instrukcja obsługi darmowego programu do grafiki 3D. Anim8or. Wykonał: Rafał Wojszczyk

jest rozwiązaniem równania jednorodnego oraz dla pewnego to jest toŝsamościowo równe zeru.

Czworościany ortocentryczne zadania

Wprowadzenie do programu 3ds Max THEBRAIN

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

samopodobnym nieskończenie subtelny

Reprezentacja i analiza obszarów

Sortowanie. Kolejki priorytetowe i algorytm Heapsort Dynamiczny problem sortowania:

Transkrypt:

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

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/ 2

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 3

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) 4

Metoda filmowa przenikanie nazywana zlewanie / Ale co gdy obrazy nie są dopasowane do siebie? Najpierw dopasowanie potem przenikanie Dopasowanie wykorzystuje przekształcenie globalne (najczęściej rzut/przekrzywienie) 5

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) 6

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) 7

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 8

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 9

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ę? 10

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ą 11

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ą 12

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) 13

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ą 14

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 15

Morfing moŝna wykonać równieŝ na obrazach dynamicznie zmienianych Morfing widoku view morphing Morfowaniu podlega pozycja wirtualnej kamery 16

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 17

Illegal Edges Lemma: An edge pq is illegal iff one of its opposite vertices is inside the circle defined by the other three vertices. Proof: By Thales theorem. p q Theorem: A Delaunay triangulation does not contain illegal edges. Corollary: A triangle is Delaunay iff the circle through its vertices is empty of other sites. Corollary: The Delaunay triangulation is not unique if more than three sites are co-circular. 18