Archive for the ‘Artykuły’ Category

Filtrowanie anizotropowe

piątek, grudzień 12th, 2008

Filtrowanie anizotropowe to sposób wykonywania poprawy jakości tekstur w trójwymiarowej grafice komputerowej, stosowana zwłaszcza na rzecz obiektów obserwowanych przy dużymi kątami, znajdujących się w dużych odległościach od kamery. Sposób wykonywania ta jest udoskonaleniem filtrowania trójliniowego i polega na uwzględnieniu w filtrowaniu tekstury kierunku obserwacji.

Opis

Przy obliczaniu wartości kolorów na rzecz tekstury w danym punkcie (pikselu na ekranie komputera) wykorzystuje się różne rodzaje filtrowania w celu polepszenia jakości wyświetlana teksturowanego obiektu i uniknięcia niepożądanych efektów takich jakim sposobem np. aliasing. Cedzenie trójliniowe uwzględnia okolica zadanego punktu w teksturze na podstawie odległości od obserwatora. W filtrowaniu anizotropowym wspomniane okolica jest wybierane w ów procedura tak aby wziąć w rachubę skłonność do kamery - cedzenie powinno być intensywniejsze “w osioł ekranu”.

W praktyce cedzenie anizotropowe polega na stosowaniu różnych mipmap (poziomów szczegółowości) na rzecz poszczególnych kierunków obserwacji tekstury - na rzecz każdego poziomu szczegółowości tworzony jest asortyment mipmap na rzecz każdego z kierunków. O ile tekstura jest wielkości 128×128 to jej mipmapy mogą być wymiarów 128×64, 64×128, itd.

Techniki anizotropowego filtrowania są wysoce wolniejsze od filtrowania trójliniowego i wymagają większej ilości pamięci, pomimo tego zapewniają lepszą typ renderowanego obrazu. Metody te są obecnie w szerokim zakresie wspierane sprzętowo przez karty grafiki 3D.

Przykładem zastosowania filtrowania anizotropowego przypadkiem być renderowanie rozległego oteksturowanego terenu - podziękowanie zastosowaniu powyższej techniki film terenu wyostrza się ku horyzontowi - widok wydaje się przez to być z większym natężeniem realistyczny.

Linki zewnętrzne

  • Wzywamy do tablicy zoptymalizowane cedzenie tekstur firmy ATI - towar w portalu Tom’s Sprzęt Guide

Filtrowanie dwuliniowe

piątek, listopad 28th, 2008


Powiększony kawałek bitmapy, w której używane jest cedzenie najbliższego sąsiada (po lewej), obciąganie biliniowe (po środku) i obciąganie bikubiczne (po prawej).

Filtrowanie dwuliniowe (filtrowanie biliniowe) to sposób wykonywania znana z grafiki komputerowej mająca na celu poprawę jakości wyświetlania tekstur. Polega niewiasta obliczaniu wartości między punktami w teksturze. Sposób wykonywania wygładza przez to tekstury w pobliżu powiększeniach obrazu.

Spis treści

//

Opis


Wartość w punkcie P jest obliczana na podstawie biliniowej interpolacji między narożnymi punktami Q.

Dwuwymiarowa tekstura w grafice komputerowej na ogół jest reprezentowana w charakterze dwuwymiarowa tabela teksli - punktów których atrybutem jest np. barwa. Bitmapa tego typu ma określoną rozdzielczość. Obok wyświetlaniu takiej tekstury na ekranie komputera, każdemu pikselowi przydzielany jest nadający się teksel (zwykle na podstawie metryki najbliższego sąsiada - wybierany jest bliźni teksel). W pobliżu powiększeniu takiej tekstury widoczne stają prostokątne obszary reprezentujące odpowiednie teksle. żeby temu odwrócić stosuje się obciąganie biliniowe polegające na obliczeniu zinterpolowanych wartości pośrodku punktami reprezentującymi teksle.

Niech na rzecz danego piksela na ekranie obliczony zostanie punkt programu w przestrzeni tekstury. Niech odpowiednie punkty reprezentujące teksle będą znajdowały się trafnie w punktach , , , oraz:

Wówczas obliczona zaleta tekstury w punkcie będzie wynosić:

gdzie , zaś .

Pseudokod

Procedura filtrowania dwuliniowego przypuszczalnie być przedstawiona za pomocą poniższego pseudokodu:

double getBilinearFilteredPixelColor( Texture tex, double u, double v )
{
u *= tex.size;
v *= tex.size;
int x = floor(u);
int y = floor(v);
double u_ratio = u - x;
double v_ratio = v - y;
double u_opposite = 1 - u_ratio;
double v_opposite = 1 - v_ratio;
double result = ( tex * u_ratio ) * v_opposite +
( tex * u_ratio ) * v_ratio;
return result;
}

Zobacz też

  • teksturowanie
  • filtrowanie trójliniowe
  • filtrowanie anizotropowe
  • Interpolacja (odbitka graficzna komputerowa)

Bibliografia

  1. Foley J.D., Van Dam A., Feiner S.K., Hughes J.F., Phillips R.L.: Introduction to Computer Graphics, Addison-Wesley Longman Publishing Co. Inc., 1994.

bieżnie treningowe gastric band Szkoła Kosmetyczna odżywki automaty modicodrukarki etykiet wakacje Wyszukiwarka muzyki mp3 Wino Anastazja Pustelnik praca oferty pracy
Pożyczki otwarte fundusze emerytalne Adam Zagajewski Adam Ziemianin Wynajem samochodów