GKIW Moduł 5

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania















Parser nie mógł rozpoznać (nieznana funkcja „\wector”): {\displaystyle \wector(Y)\,}


Zaproponowane macierze rzutowania, zarówno perspektywicznego jak równoległego mają jedną zerową kolumnę lub wiersz. Oznacza to że nie jest możliwe wyznaczenie macierzy odwrotnej. Czyli nie jest możliwe odtworzenie trzeciego wymiaru tylko i wyłącznie na podstawie rzutu obiektu. Oczywiście jest to zgodne definicją rzutowania: rzutem całej prostej rzutującej jest dokładnie jeden punkt.

Często do następnych operacji (na przykład do eliminacji elementów zasłoniętych) niezbędna jest informacja o trzecim wymiarze (odległości od obserwatora - głębokości). Rozwiązanie tego problemu przynosi przekształcenie perspektywiczne. Jest to operacja, która pozwala wyznaczyć rzut perspektywiczny i jednocześni daje informację o odległości.

Jeśli rozpatrzymy znormalizowaną bryłę widzenia perspektywicznego – ostrosłup ścięty, to promienie rzutujące tworzą pęk prostych w wierzchołku tego ostrosłupa. Można dokonać przekształcenia, które przekształci ostrosłup ścięty na prostopadłościan. Wtedy pęk prostych (promieni rzutujących) stanie się zbiorem prostych równoległych. A to oznacza, że po takim zniekształceniu przestrzeni wszystkie punkty leżące na prostej rzutującej będą miały jednakowe współrzędne odpowiadające współrzędnym rzutu.


Macierz przekształcenia perspektywicznego wymaga normalizacji operacji. Wynik na rysunku jest podany z uwzględnieniem normalizacji.

Jak widać współrzędne x i y obrazu punktu odpowiadają współrzędnym rzutu perspektywicznego przy założeniu, że środek rzutowania jest w początku układu współrzędnych. Jednocześnie współrzędna z obrazu daje informację o położeniu względem osi OZ. Warto zwrócić uwagę na fakt, że przekształcenie wartości głębokości jest operacją nieliniową, ale zachowującą porządek na prostej, co w zupełności wystarcza do oceny głębokości.


 Translacja obiektu kamery w układzie współrzędnych świata, odpowiadająca przesuwaniu aparatu w dowolnym kierunku (przemieszczanie się fotografa).  Obroty wokół osi własnego układu współrzędnych kamery, pozwalające symulować skierowanie aparatu w dowolnie wybranym kierunku.  Zmiany kątów ostrosłupa widzenia np. poprzez definicję odległości rzutni o zadanym prostokącie obrazu od środka rzutowania (obserwatora). Odpowiada to zmianie ogniskowej (kąta „widzenia”) obiektywu. Związanie definicji kształtu ostrosłupa widzenia i obrotów z własnym układem współrzędnych wirtualnej kamery zapewnia wygodę manipulacji oraz zgodność symulacji z rzeczywistością.


Parametrem aparatu fotograficznego, o którym nie było dotychczas mowy, jest ostrość. Parametr ten nie daje się w prosty sposób przenieść na opis rzutowania. Ostrość zdjęcia jest wynikiem zależności między właściwościami optycznymi obiektywu, a odległością obiektu od obiektywu. Rzutowanie natomiast odwzorowuje wszystkie obiekty w sposób ostry. Niestety, nie jest to zaletą wirtualnej kamery, jeśli obraz ma być zgodny z naszym widzeniem, gdyż akomodacja oka powoduje powstanie widocznych sfer ostrości. Szczególnie jest to niekorzystne w sytuacji wykorzystywania grafiki komputerowej w kinematografii, gdzie nieostrość danego obiektu może być zamierzonym efektem reżysera.

Rzeczywisty obiektyw aparatu daje ostry obraz punktu w dokładnie określonym miejscu – na płaszczyźnie powstawania obrazu. Zarówno bliżej jak i dalej obrazem punktu jest plamka rozproszenia (rozmyte koło) – stąd nieostry obraz. Analizę zjawiska przeprowadził Lommel w końcu XIX wieku. Zaproponował on pewne uproszczenia stosowane w opisie ostrości do dzisiaj.: - Plamka rozproszenia ma średnicę wprost proporcjonalną do odległości między płaszczyzną, na której powstała, a płaszczyzną ostrego obrazu. - Wewnątrz plamki rozproszenia jasność jest w przybliżeniu odwrotnie proporcjonalna do odległości od środka plamki. W przybliżeniu, gdyż w środku plamki jasność ma pewną skończoną wartość, natomiast na brzegu plami (w skończonej odległości równej promieniowi plamki) maleje do zera. - Zmiana ostrości nie powoduje zmian jasności całego obrazu, tylko zmianę rozkładu jasności.

Stosowanym rozwiązaniem jest sztuczne rozmycie symulujące nieostrość w wybranych fragmentach obrazu. Dokonuje się tego albo stosując bufor akumulacji albo odpowiednie filtrowanie. Więcej na ten temat zainteresowani mogą przeczytać w pracy: Rokita P.: Problemy łączenia obrazów generowanych metodami grafiki komputerowej z obrazami rzeczywistymi. Prace naukowe. Elektronika. Politechnika Warszawska 2001.


Umieszczenie w wyimaginowanym świecie wirtualnej kamery, która daje możliwość manipulacji zgodnie ze znanymi realiami pozwala łączyć obrazy rzeczywiste z wirtualnymi. Przykładem takiego „graficznego świata” jest wirtualne studio, coraz częściej wykorzystywane przez stacje telewizyjne. Zamiast budować dekoracje do nowego programu, tworzy się je za pomocą grafiki komputerowej. Program powstaje w ten sposób, że niezależnie prowadzi się dwie rejestracje. Rejestrację prezenterów (lub innych osób występujących) rzeczywistą kamerą oraz „rejestrację” wirtualnej dekoracji wirtualną kamerą. Obie kamery mają odpowiednio zgodne parametry funkcjonalne oraz w pełni zsynchronizowane ruchy. Oba obrazy składa się następnie techniką blue boxu, tworząc to, co potem oglądamy na ekranie. Oczywiście możliwe są dowolne warianty łączenia elementów rzeczywistych i wirtualnych łącznie z dowolnym zasłanianiem jednych przez drugie.

Technika ta pozwala zaoszczędzić nie tylko pieniądze, czas i materiały przy tworzeniu dekoracji, pozwala też „zaoszczędzić” powierzchnię studia telewizyjnego, gdzie odbywa się realizacja programu. Oglądając program wierzymy w masywne dekoracje rozstawione na olbrzymiej przestrzeni, a w rzeczywistości prezenter może siedzieć w ciasnym wnętrzu. Zainteresowanych tematem wirtualnego studia zachęcamy do przeczytania pracy: Wojdała A., Gruszewski M., Olech R.: Real-Time Shadow Casting in Virtual Studio. Machine Graphics & Vision IPI PAN vol. 9, nos.1/2, 2000, ss.315-329.