Antyaliasing w 1 milisekundę. Krzysztof Kluczek

Podobne dokumenty
Filtrowanie tekstur. Kinga Laurowska

Parametryzacja obrazu na potrzeby algorytmów decyzyjnych

Implementacja filtru Canny ego

WYKŁAD 12. Analiza obrazu Wyznaczanie parametrów ruchu obiektów

Analiza i Przetwarzanie Obrazów. Szyfrowanie Obrazów. Autor : Mateusz Nawrot

Detekcja twarzy w obrazie

Plan wykładu. Akcelerator 3D Potok graficzny

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

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

i ruchów użytkownika komputera za i pozycjonujący oczy cyberagenta internetowego na oczach i akcjach użytkownika Promotor: dr Adrian Horzyk

Samochodowy system detekcji i rozpoznawania znaków drogowych. Sensory w budowie maszyn i pojazdów Maciej Śmigielski

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Przetwarzanie obrazu

Wykrywanie twarzy ludzkich na kolorowych obrazach ze złożonym tłem

Diagnostyka obrazowa

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

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

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

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

Przetwarzanie obrazów wykład 4

HDR. Obrazy o rozszerzonym zakresie dynamiki

Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Proste metody przetwarzania obrazu

GIMP. Odręczne zaznaczanie obszarów (F) - Narzędzie to słuŝy do swobodnego definiowania zaznaczeń.

Analiza obrazów - sprawozdanie nr 2

Ćwiczenia z grafiki komputerowej 5 FILTRY. Miłosz Michalski. Institute of Physics Nicolaus Copernicus University. Październik 2015

Filtracja obrazu operacje kontekstowe

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

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

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Grafika 3D program POV-Ray - 1 -

Diagnostyka obrazowa

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

Karty graficzne: budowa, zasada działania, standardy, parametry, dodatkowe funkcje

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

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

6. Algorytmy ochrony przed zagłodzeniem dla systemów Linux i Windows NT.

Julia 4D - raytracing

Filtracja splotowa obrazu

Przetwarzanie obrazów wykład 7. Adam Wojciechowski

Akademia Górniczo - Hutnicza im. Stanisława Staszica w Krakowie. Projekt. z przedmiotu Analiza i Przetwarzanie Obrazów

Grafika Komputerowa Wybrane definicje. Katedra Informatyki i Metod Komputerowych Uniwersytet Pedagogiczny im. KEN w Krakowie apw@up.krakow.

Adam Korzeniewski p Katedra Systemów Multimedialnych

Wyższa Szkoła Informatyki Stosowanej i Zarządzania

ANALIZA I INDEKSOWANIE MULTIMEDIÓW (AIM)

Zaawansowana Grafika Komputerowa

Synteza i obróbka obrazu HDR. Obrazy o rozszerzonym zakresie dynamiki

Spośród licznych filtrów nieliniowych najlepszymi właściwościami odznacza się filtr medianowy prosty i skuteczny.

GIMP Grafika rastrowa (Ćwiczenia cz. 2)

Filtracja obrazu operacje kontekstowe

Zasady ekspozycji i reprodukcji znaku

Podstawy OpenCL część 2

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

Grafika komputerowa. Zajęcia IX

Metody kodowania wybranych cech biometrycznych na przykładzie wzoru naczyń krwionośnych dłoni i przedramienia. Mgr inż.

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

Grafika komputerowa. Oko posiada pręciki (100 mln) dla detekcji składowych luminancji i 3 rodzaje czopków (9 mln) do detekcji koloru Żółty

konstrukcja logo konstrukcja logo - forma wyjściowa konstrukcja logo - przekształcenie konstrukcja logo - forma ostateczna logo - wersja kolorowa

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

Przetwarzanie i Kompresja Obrazów. Segmentacja

Przetwarzanie obrazów wykład 2

Reprezentacja i analiza obszarów

ZAZNACZENIA. Zaznaczenia (inaczej maski) służą do zaznaczania obszarów rysunku.

LOGO UNIWERSYTETU ZIELONOGÓRSKIEGO KSIĄŻKA TOŻSAMOŚCI ZNAKU

Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 11. Filtracja sygnałów wizyjnych

Według raportu ISO z 1988 roku algorytm JPEG składa się z następujących kroków: 0.5, = V i, j. /Q i, j

Segmentacja obrazu. Segmentacja obrazu

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Detekcja punktów zainteresowania

Projekt witryny pt. Oko

Grafika komputerowa Wykład 2 Algorytmy rastrowe

POB Odpowiedzi na pytania

Microsoft Small Basic

Sphere tracing: integracja z klasycznymi metodami symulacji i renderingu

Rozpoznawanie Twarzy i Systemy Biometryczne

Operacje przetwarzania obrazów monochromatycznych

BIBLIOTEKA PROGRAMU R - BIOPS. Narzędzia Informatyczne w Badaniach Naukowych Katarzyna Bernat

1. Prymitywy graficzne

CEL zapoznanie z programem do tworzenia rysunków i ukazanie możliwości Edytora obrazów do sporządzania rysunków i ikon.

Przekształcenia punktowe

Diagnostyka obrazowa

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

Cyfrowe przetwarzanie obrazów. Dr inż. Michał Kruk

Znak wersja podstawowa

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

(13) B1 PL B1. fig.3. (73) Uprawniony z patentu: Przedsiębiorstwo Automatyki Przemysłowej "M ER A -P N EFA L, Warszawa, PL

Analiza obrazów - sprawozdanie nr 3

MODELE KOLORÓW. Przygotował: Robert Bednarz

Grafika komputerowa. Zajęcia 8

Obraz cyfrowy. Radosław Mantiuk. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

ANALIZA SEMANTYCZNA OBRAZU I DŹWIĘKU

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

Grafika Komputerowa Wykład 1. Wstęp do grafiki komputerowej Obraz rastrowy i wektorowy. mgr inż. Michał Chwesiuk 1/22

(12) OPIS PATENTOWY (19) PL (11)

Kodowanie podpasmowe. Plan 1. Zasada 2. Filtry cyfrowe 3. Podstawowy algorytm 4. Zastosowania



Arkadiusz Łapiński ETI V gr.9.4. Sieć neuronowa w inteligentnym pojeździe, Tribolite

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

Transkrypt:

Antyaliasing w 1 milisekundę Krzysztof Kluczek

Zasada działania Założenia: Metoda bazująca na Morphological Antialiasing (MLAA) wejście: obraz wyrenderowanej sceny wyjście: zantyaliasowany obraz Krótki czas działania (~1ms na GeForce 260 przy 1024x768) Działanie pod DirectX 9 (Shader Model 3.0) Ograniczenie długości antyaliasowanych

Zasada działania 1. Obraz wyjściowy 2. Detekcja 3. Detekcja 4. Rekonstrukcja 5. Wyznaczenie wag mieszania 6. Obraz wynikowy

Zasada działania Detekcja Wykrywanie koloru Redukcja Obraz wynikowy Potok przetwarzania Trzy pełnoekranowe przebiegi z pośrednimi rendertargetami algorytm w trzech pixel shaderach

Zasada działania Detekcja Wykrywanie koloru Redukcja Obraz wynikowy koloru Obraz, który ma być antyaliasowany.

koloru Obraz wyrenderowanej sceny (przed efektami postprocess)

Zasada działania Detekcja Wykrywanie koloru Redukcja Obraz wynikowy Detekcja określenie, czy krawędź przebiega pomiędzy sąsiadującymi pikselami

Detekcja Decyzja o istnieniu na podstawie koloru (możliwość wykorzystania również Z-bufora i informacji o normalnych) Liczona jest różnica koloru po obu stronach Jeżeli ważona suma różnic kanałów RGB jest większa od zadanego progu mamy krawędź

Zasada działania Detekcja Wykrywanie koloru Redukcja Obraz wynikowy Dla każdego piksela kanały ARGB kodują informację o istnieniu piksela z jego sąsiadami

A A R B R G G A A R B R G G A A R B R G G Informacja o otaczających ach dla każdego piksela Informacje nadmiarowe (każda krawędź trzymana w dwóch miejscach) przydatne w kolejnych przebiegach Znaczenie RGBA: B B B R krawędź u góry R R R G krawędź na prawo A G A G A G B krawędź u dołu B B B A krawędź na lewo 0 brak 255 jest krawędź

Zasada działania Detekcja Wykrywanie koloru Redukcja Obraz wynikowy Wykrywanie Na tym etapie wykrywane są ciągi tworzące kształt litery L (L-kształty)

L-kształt jest to Ciąg z określonym punktem zaczepienia z określonym kierunkiem Obowiązkowa jedna krawędź przed punktem zaczepienia Za punktem pewna (być może zerowa) liczba ciągłych zgodnych z kierunkiem L-kształtu Opcjonalnie zakończona ą odchodzącą w bok Krawędzie wewnętrzne nie mają odchodzących w bok

L-kształt jest to Ciąg z określonym punktem zaczepienia z określonym kierunkiem Obowiązkowa jedna krawędź przed punktem zaczepienia Za punktem pewna (być może zerowa) liczba ciągłych zgodnych z kierunkiem L-kształtu Opcjonalnie zakończona ą odchodzącą w bok Krawędzie wewnętrzne nie mają odchodzących w bok

L-kształt jest to Ciąg z określonym punktem zaczepienia z określonym kierunkiem Obowiązkowa jedna krawędź przed punktem zaczepienia Za punktem pewna (być może zerowa) liczba ciągłych zgodnych z kierunkiem L-kształtu Opcjonalnie zakończona ą odchodzącą w bok Krawędzie wewnętrzne nie mają odchodzących w bok

L-kształt jest to Ciąg z określonym punktem zaczepienia z określonym kierunkiem Obowiązkowa jedna krawędź przed punktem zaczepienia Za punktem pewna (być może zerowa) liczba ciągłych zgodnych z kierunkiem L-kształtu Opcjonalnie zakończona ą odchodzącą w bok Krawędzie wewnętrzne nie mają odchodzących w bok

L-kształt jest to Ciąg z określonym punktem zaczepienia z określonym kierunkiem Obowiązkowa jedna krawędź przed punktem zaczepienia Za punktem pewna (być może zerowa) liczba ciągłych zgodnych z kierunkiem L-kształtu Opcjonalnie zakończona ą odchodzącą w bok Krawędzie wewnętrzne nie mają odchodzących w bok

L-kształt jest to Ciąg z określonym punktem zaczepienia z określonym kierunkiem Obowiązkowa jedna krawędź przed punktem zaczepienia Za punktem pewna (być może zerowa) liczba ciągłych zgodnych z kierunkiem L-kształtu Opcjonalnie zakończona ą odchodzącą w bok Krawędzie wewnętrzne nie mają odchodzących w bok

Zasada działania Detekcja Wykrywanie koloru Redukcja Obraz wynikowy Każdy piksel bufora koduje informację o czterech potencjalnych L-kształtach w danym miejscu

0 1 1+64 1+128 2 2+64 2+128 3 3+64 3+128 4 4+64 4+128 W zakresie 0-255 pojedynczego kanału rendertargetu zakodowana jest pełna informacja o długości, kierunku i zakończeniu L-kształtu

R W każdym tekselu rendertargetu przechowywana jest informacja o czterech L- kształtach w okolicy teksela B A G Położenie czterech wybrane jest tak, by móc je jednocześnie wyznaczyć na podstawie niewielkiej liczby próbek bufora Każda składowa koduje jeden L-kształt. Punkty zaczepienia i kierunki kodowanych w danym tekselu (szare koło) przedstawia rysunek.

Zasada działania Detekcja Wykrywanie koloru Redukcja Obraz wynikowy Redukcja Krawędzie obrazu sceny są rekonstruowane bazując na informacji o L-kształtach, a następnie odpowiednio rozmywane

Redukcja Odczytywana jest informacja o dwóch L-kształtach (małe koła) Wyznaczana jest zrekonstruowana krawędź na podstawie pozycji końcowych odpowiednich Jeżeli krawędź zachodzi na analizowany piksel, domieszkowany jest kolor z drugiej strony

Redukcja Odczytywana jest informacja o dwóch L-kształtach (małe koła) Wyznaczana jest zrekonstruowana krawędź na podstawie pozycji końcowych odpowiednich Jeżeli krawędź zachodzi na analizowany piksel, domieszkowany jest kolor z drugiej strony

Redukcja Odczytywana jest informacja o dwóch L-kształtach (małe koła) Wyznaczana jest zrekonstruowana krawędź na podstawie pozycji końcowych odpowiednich Jeżeli krawędź zachodzi na analizowany piksel, domieszkowany jest kolor z drugiej strony

Redukcja Jednocześnie rekonstruowane są 4 przyległe e na podstawie 8 otaczających L- kształtów W przypadku wykrycia zachodzącej, kolory sąsiednich pikseli są domieszkowane do koloru piksela

Zasada działania Detekcja Wykrywanie koloru Redukcja Obraz wynikowy Obraz wynikowy Po etapie redukcji produkowany jest finalny zantyaliasowany obraz

Podsumowanie Zalety: Prosta integracja (działanie jako postprocess) Wysoka wydajność Wsparcie dla DirectX 9 Wady: Brak obsługi długich Brak rekonstrukcji obiektów mniejszych niż 1 piksel

Prezentacja demo

Pytania?