Wpracy przedstawiono wyniki wykorzystania możliwości obliczeniowych kart graficznych

Wielkość: px
Rozpocząć pokaz od strony:

Download "Wpracy przedstawiono wyniki wykorzystania możliwości obliczeniowych kart graficznych"

Transkrypt

1 Przetwarzanie wstępne obrazów z wykorzystaniem możliwości obliczeniowych kart graficznych Łukasz Furman, Krzysztof Jaskot Politechnika Ślaska, krzysztof.jaskot@polsl.pl Wpracy przedstawiono wyniki wykorzystania możliwości obliczeniowych kart graficznych w przetwarzaniu wstępnym obrazów. Porównano czasy realizacji przykładowych zadań przetwarzania wstępnego realizowanych z wykorzystaniem procesora głównego i karty graficznej wspierającej technologię CUDA.. Wstęp Rozwój technologii osiągnął etap, w którym dalsze zwiększanie częstotliwości pracy procesorów staje się coraz trudniejsze. Z tego względu producenci procesorów umieszczają w nich kilka rdzeni umożliwiając w ten sposób równoległe wykonywanie obliczeń. Przykładowo procesor Intel Core I7 posiada cztery rdzenie, a dzięki technologii Hyper-Threading w danym momencie korzystać może z niego osiem wątków. Pod względem liczby wątków karty graficzne przewyższają nawet najlepsze procesory. Dla przykładu karta graficzna GeForce GTX 56M (która wydana została w roku) posiada 9 rdzenie CUDA, natomiast najnowsza karta graficzna GeForce GTX 78 posiada ich aż 34. Oczywiście częstotliwość pracy procesorów jest znacznie większa niż karty graficznej. Firma NVIDIA opracowała technologię CUDA - (ang. Compute Unified Device Architecture) pozwalającą na wykorzystanie mocy obliczeniowej karty graficznej do rozwiązywania problemów niekoniecznie związanych z grafiką, które mogą zostać wykonane w sposób równoległy. Mimo, że technologia CUDA została opracowana już jakiś czas temu (listopad 6), literatura jej dotycząca jest bardzo uboga. Na uwagę zasługują dwie pozycje [9] oraz [4]. Dodatkowo przyjrzeć warto się publikacjom dotyczącym ogólnemu przetwarzaniu danych w sposób równoległy jak [3] oraz [7]. Mimo tak małej liczby pozycji książkowych, cała dokumentacja jest dostępna w wersji elektronicznej [5], co pozwala na przystępne zrozumienie zasad działania. Technologia CUDA bywała już tematem tego typu prac. Między innymi w jednej z prac skupiono się na wykorzystaniu technologii CUDA w sieciach neuronowych [8]. Inna praca opisuje wykorzystanie CUDA do jednej z technik generowania obrazów trójwymiarowych. Dlatego dziedziny, w których można wykorzystać karty graficzne do równoległego przetwarzania danych są bardzo rozległe oraz zróżnicowane. Aktualnie CUDA wykorzystywana jest w dziedzinach takich jak: przetwarzanie wideo, astrofizyka, biologia obliczeniowa i chemia, symulacja dynamiki płynów, rekonstrukcja obrazu w tomografii komputerowej czy analiza sejsmiczna. Technologia CUDA jest wykorzystywana między innymi do przyspieszania obliczeń oprogramowania AMBER program do symulacji dynamiki

2 molekularnej wykorzystywany w środowiskach akademickich oraz przez firmy farmaceutyczne w celu skrócenia czasu opracowywania nowych leków. W każdej dziedzinie, w której wykorzystywana jest wizja wykonuje się operacje przekształceń obrazu. Obrazy mogą mieć różny charakter z jednej strony obrazy mogą oddawać wartości estetyczne, z drugiej zawierać mogą pewne informacje, które muszą zostać wydobyte przez system. W zależności od celu, przekształcenia mogą być prostymi operacjami, lub opisane skomplikowanymi algorytmami zajmującymi dużo czasu. Ze względu na to, że w niektórych przypadkach operacje wykonywane na obrazach powinny zajmować jak najmniej czasu, jednym ze sposobów przyspieszania przekształceń jest użycie specjalnych bibliotek zoptymalizowanych pod kątem takich operacji jak np. OpenCV [6]. Oprócz rozwiązań programowych realizujących przyśpieszenie operacji na obrazach istnieją również rozwiązania sprzętowe [3]. Z drugiej strony operacji przetwarzania obrazu można przyjrzeć się jako zadaniu, które w łatwy sposób może zostać rozbite na wątki, które mogłyby być wykonywane równoległe. W większości przypadków dla każdego z pikseli obrazu wykonywana jest identyczna funkcja. Wartość piksela obliczanego w danym momencie nie zależy od wartości pikseli już przetworzonych. Kolejność przetwarzania również nie ma w takim przypadku znaczenia. Ze względu na cechy tego typu operacji, można więc wykorzystać technologię CUDA do wykonania zadania przetwarzania obrazów przy pomocy karty graficznej. W ramach pracy przygotowano środowisko programistycznego w taki sposób, by możliwe było tworzenie programów wykorzystujących możliwości obliczeniowe kart graficznych. Stworzono aplikację przetwarzającą obrazy wykorzystującą możliwości obliczeniowe karty graficznej. Za pomocą napisanego oprogramowania można porównać czasy wykonywania operacji z wykorzystaniem możliwości obliczeniowych kart graficznych z tymi wykonanymi z wykorzystaniem procesora głównego, oraz oszacowanie przyspieszenia czasu obliczeń.. Środowisko testowe Jako środowisko testowe stworzono aplikację wykorzystującą technologię CUDA służącą do przetwarzania obrazów. Aplikacja była uruchamiana pod kontrolą systemu operacyjnego Windows 7. Ze względu na dużo prostszą implementację GUI w języku C#, zdecydowano się na niego zamiast WinAPI w C + +. Ze względu na to, że funkcje CUDA są rozszerzeniami języka C, pojawił się problem połączenia dwóch języków. Zdecydowano się na rozbicie całej aplikacji na dwa projekty. W pierwszym, pisanym w C + + [5], zaimplementowane zostały wszystkie funkcje wykonujące operacje na obrazach. Projekt jest kompilowany do biblioteki DLL. Drugi projekt pisany w języku C# odpowiada za GUI całej aplikacji []. Operacje na obrazach wykonywane są poprzez odwołanie się do wcześniej utworzonego pliku DLL. W przypadku języka C# wczytanie pliku z obrazem odbywa się z wykorzystaniem jednego polecenia (Listing ): Listing : Wczytanie pliku Image obraz=image. FromFile ( s c i e z k a d o p l i k u ) ; To rozwiązanie pozwala na szybkie wczytanie pliku niezależne od jego rozszerzenia. Ma jednak wadę ze względu na to, że obraz wczytywany jest jako obiekt typu Image. Tak wczytany obraz nie może być przekazany do funkcji znajdującej się w pliku DLL ze względu na to, że jest ona pisana w języku C i nie obsługuje danych tego typu. Przed przekształceniami obrazu konieczna jest więc zmiana typu reprezentującego obraz na tablicę pikseli. Dostęp do pikseli obiektu Image można uzyskać przez dwa sposoby. Pierwszym z nich jest skorzystanie z funkcji obraz.getp ixsel(x, y), oraz obraz.setp ixel(x, y) gdzie x, y oznaczają współrzędne pożądanego piksela. W rezultacie zwracany jest obiekt typu Color zawierające informację o składowych RGB danego piksela. Zaletą tego

3 sposobu jest prostota, natomiast wadą szybkość działania. Drugi sposób bardziej skomplikowany jednak działający szybciej, jest oparty na wskaźnikach. W języku C# wszystkie operacje na wskaźnikach muszą być umieszczone w bloku unsaf e. Pierwszą rzeczą, którą należy zrobić jest zablokowanie obszaru bitmapy w pamięci za pomocą funkcji obraz.lockbits, która zwraca obiekt typu BitmapData. Na podstawie otrzymanego obiektu można utworzyć wskaźnik do pierwszego elementu obrazu (Listing ). Listing : Wczytanie pliku - operacja na wskaźnikach // zablokowanie obszaru do odczytu i z a p i s u BitmapData dane = obraz. LockBits ( new Rectangle (,, obraz. Width, obraz. Height ), ImageLockMode. ReadWrite, obraz. PixelFormat ) ; unsafe { byte bmpptr = ( byte ) dane. Scan ; int o f f s e t = dane. S t r i d e dane. Width 3 ; for ( int y = ; y < obraz. Height ; y++) { for ( int x = ; x < obraz. Width ; x++) { bmpptr += 3 ; // o p e r a c j e na p i k s e l u } bmpptr += o f f s e t ; // nastepny w i e r s z } } Pamiętać należy, że kolory w języku C# reprezentowane są poprzez paletę BGR. Wyliczany offset potrzebny jest, ponieważ w języku C# rozmiary bitmap muszą być potęgami. Jeśli tak nie jest do obrazu zostanie dodany padding. Stride zwraca całkowitą długość wiersza w bajtach, tak więc odjęcie od niego szerokości obrazu (pomnożonego przez 3) pozwoli otrzymać padding. Takie podejście pozwoliło na szybsze przekształcanie obiektu typu Image na wektor bajtów oraz z powrotem. Mimo to, że jest ono realizowane w ten sposób nadal operacja ta zajmuje dość dużo czasu dłużej niż same przekształcenia na obrazie, dlatego jest to swego rodzaju wąskie gardło. Aplikacja pozwala na wykonanie operacji na obrazie przy wykorzystaniu zarówno procesora jak i karty graficznej. Po wykonaniu operacji, prezentowany jest jej wynik z możliwością zapisu pod różnymi rozszerzeniami. Dodatkowo zwracany jest czas wykonania operacji (z pominięciem czasu przekształcenia obrazu z typu Image do wektora danych). Czasy wykonania poszczególnych operacji prezentowane są na wykresie. Zarówno funkcje wykonujące się przy pomocy procesora jak i karty graficznej wywoływane są poprzez odwołanie się do zewnętrznej biblioteki DLL stworzonej w osobnym projekcie. Wygląd aplikacji przedstawiony jest na rysunku. Rysunek : Aplikacja testowa. 3

4 3. Otrzymane wyniki Poniżej zostaną przedstawione przykładowe wyniki otrzymane z wykorzystaniem stworzonej aplikacji uruchomionej na komputerze PC wyposażonym w procesor INTEL i7 63QM,.9GHz, 4 rdzenie 8 wątków (testy na procesorze były wykonywane tylko dla jednego wątku), oraz z wykorzystaniem karty graficznej NVIDIA GeForce GTX56m, 775 MHz, 9 rdzenie CUDA. 3.. Poziomy szarości, binaryzacja Każdy piksel obrazu reprezentowany jest przez trzy składowe koloru RGB. Piksel, którego wszystkie trzy składowe RGB posiadają identyczne wartości posiada kolor w poziomach szarości. Algorytm przejścia z obrazu kolorowego do obrazu w poziomach szarości powoduje uśrednienie wartości RGB każdego z pikseli. Wyniki przedstawiono na rysunku. Dla obrazu o rozdzielczości 5 x 5 pikseli Rysunek : Wynik konwersji obrazu kolorowego na obraz w poziomach szarości. operacja przejścia na obraz w poziomach szarości wykonuje się poniżej ms, dlatego aby możliwe było wykonanie porównania przyspieszenia obliczeń wykonano powtórzeń funkcji. Osiągnięto następujące wyniki: Procesor 575 ms Karta graficzna 49 ms Przyspieszenie obliczeń wynosi więc 3.7x. Binaryzacja jest operacją, której wynikiem jest obraz, którego piksele posiadają jedną z dwóch wartości całkowicie białe lub czarne []. Użytkownik podaje wartość, według której progowany jest obraz. Jako, że każdy piksel reprezentowany jest przez trójelementowy wektor, przed operacją progowania obraz musi być poddany konwersji na obraz w poziomach szarości. Wyniki przedstawiono na rysunku 3. Podobnie jak w przypadku konwersji do Rysunek 3: Wynik binaryzacji obrazu dla progu 8. obrazu w poziomach szarości, operacja binaryzacji zajmuje bardzo mało czasu, dlatego aby lepiej wyznaczyć wartość przyspieszenia obliczeń wykonano serię powtórzeń. Osiągnięte wyniki przedstawiają się następująco: Procesor 7 ms Karta graficzna 697 ms Przyspieszenie obliczeń: 4.4x. 4

5 3.. Filtracja Podstawowy filtr dolnoprzepustowy o rozmiarze 3x3, którego wynikiem jest średnia wszystkich elementów okna (rysunek 4) []. Czas wykonania obliczeń dla obrazu o rozmiarze 5 x 5 pikseli: Rysunek 4: Wynik działania filtru uśredniającego. Procesor: 5 ms Karta graficzna:.94 ms Przyspieszenie obliczeń: 5.96x. Filtr kołowy jest modyfikacją filtru kwadratowego [4]. Jego maska przypomina kształtem koło piksele znajdujące się w rogu maski mają wagę, czyli nie biorą udziału w filtracji (). Wynik działania filtru kołowego przedstawiono na rysunku 5. W = () Czas wykonania obliczeń dla obrazu o rozmiarze 5 x 5 pikseli: Rysunek 5: Wynik działania filtru kołowego. Procesor: 9 ms Karta graficzna:.4 ms Przyspieszenie obliczeń:.7x. Gdyby wartości wag filtru reprezentowane były przez słupki, filtr kształtem przypominałby piramidę (). Wraz z oddalaniem się od punktu, dla którego wykonywana jest filtracja, wartości wag maleją. Wygląd filtru według [4]: W = ()

6 Wynik działania filtru piramidalnego przedstawiony jest na rysunku 6. Czas wykonania obliczeń dla Rysunek 6: Wynik działania filtru piramidalnego. obrazu o rozmiarze 5 x 5 pikseli: Procesor: 9 ms Karta graficzna:.4 ms Przyspieszenie obliczeń:.7x. Filtr stożkowy podobny jest do filtru piramidalnego. Jeśli wagi maski reprezentowane byłyby przez słupki, miałby kształt stożka (3). Piksel, dla którego wykonywana jest filtracja posiada największą wagę. Wraz z oddalaniem się od środka maski wagi poszczególnych elementów maleją. Obraz po filtracji przedstawiono na rysunku 7. W = 5 5 (3) Czas wykonania obliczeń dla obrazu o rozmiarze 5 x 5 pikseli: Rysunek 7: Wynik działania filtru stożkowego. Procesor: 9 ms Karta graficzna:.4 ms Przyspieszenie obliczeń:.7x. Jak widać z otrzymanych wyników czasy wykonania obliczeń dla filtrów kołowego, piramidalnego i stożkowego są takie same. Duży wpływ na szybkość ma rozmiar zastosowanej maski co widać w przypadku czasu obliczeń dla maski 3x3 w filtrze dolnoprzepustowym. Filtr nazywany kompresującym lub erozyjnym polegający na zastąpieniu wartości piksela wartością najmniejszą z obszaru danego punktu. Jego działanie powoduje zmniejszenie się jasności obrazu dające efekt erozji obiektów [4] (rysunek 8). Czasy wykonania funkcji są następujące: Procesor 54 ms 6

7 Rysunek 8: Wynik działania filtru erozyjnego. Karta graficzna.75 ms Osiągnięto więc przyspieszenie obliczeń równe aż 7x. Filtr nazywany dekompresującym lub ekspansywnym w działaniu podobny do filtra minimalnego. Wartość filtrowanego piksela zastępuje się wartością maksymalną z obszaru danego piksela. Powoduje to zwiększenie się jasności obrazu, dające efekt dylatacji (rozrostu) obiektów [4] (rysunek 9). Otrzymane czasy obliczeń dla filtra ekspensywnego są takie same jak w przypadku filtra erozyjnego. Rysunek 9: Wynik działania filtru ekspensywnego Deskryptor Harrisa Deskryptor Harrisa wykorzystywany jest w celu znalezieniu rogów obiektów znajdujących się na obrazie [6]. Służy to wyznaczeniu punktów charakterystycznych, które mogą być użyte do znajdywania cech wspólnych obrazów do tworzenia np. panoramy lub do rozpoznawania tekstur. W zrealizowanych testach deskryptor Harrisa został użyty w celu detekcji narożników wykorzystując następującą macierz: " # Ix Ix Iy M= (4) Ix Iy Iy Pozwala to na uniezależnienie się od translacji obiektów. Efekt detekcji narożników przedstawiony został na rysunku. Czas detekcji dla powyższego przykładu (434x34 pikseli): Procesor 37 ms Karta graficzna 67 ms Przyspieszenie obliczeń prawie 6 razy. Powodem tak małego przyspieszenia obliczeń w porównaniu z poprzednimi przykładami jest złożoność problemu składającego się z kilku etapów obliczeń. Ze względu na to skorzystano z gotowych funkcji napisanych wcześniej jak np. filtracja obrazu. Spowodowało to kopiowanie danych pomiędzy pamięcią RAM i procesorem przy użyciu każdej z funkcji składowych. Z powodu zbyt małego przyspieszenia obliczeń, zaimplementowano funkcję wykonującą się w całości przy użyciu karty graficznej, bez niepotrzebnego kopiowania danych pomiędzy poszczególnymi etapami obliczeń. Pozwoliło to na osiągnięcie następujących czasów: 7

8 Rysunek : Wynik detekcji narożników. Procesor 37 ms Karta graficzna 6 ms Przyspieszenie obliczeń ponad 3 x. Jak widać zoptymalizowana funkcja wykonuje się znacznie szybciej niż w poprzednim przypadku Porównanie szybkości działania dla różnych rozmiarów masek W celu dokładniejszego sprawdzenia wzrostu szybkości obliczeń z wykorzystaniem technologii CUDA przeprowadzono porównanie szybkości obliczeń realizowanych przez procesor i kartę graficzną dla trzech rodzajów masek (3x3, 5x4, 7x7) i sześciu rozdzielczości obrazu (56p, 5p, 8p, 4p, 68p, 9p). Dla tak przeprowadzonego eksperymentu sporządzono wykresy zależności czasu wykonania funkcji od rozmiaru obrazu dla różnych rozmiarów masek. Rysunek przedstawia otrzymane wyniki. Rysunek : Zależność czasu wykonania funkcji od rozmiaru obrazu dla procesora oraz karty graficznej przy użyciu maski 3x3, 5x5, 7x7. W tabeli przedstawiono zbiorczo pomiar czasu dla poszczególnych operacji z zastosowaniem różnych masek wykonanych z wykorzystaniem procesora i karty graficznej. Z otrzymanych czasów wynika, że obliczenia z wykorzystaniem karty graficznej z technologią CUDA w najgorszym przypadku były 4 razy szybsze niż realizując je tylko z wykorzystaniem procesora głównego (dla maski 3x3 i 5p). W najlepszym przypadku wzrost prędkości był 8 krotny (dla maski 5x5 i 5p). Co ciekawe dla maski 7x7 i 9p wzrost prędkości był 7 krotny. 8

9 Tablica : Zależność czasu wykonania funkcji od rozmiaru obrazu dla procesora oraz karty graficznej przy użyciu różnych rozmiarów masek Szerokość obrazu w pikselach 56p 5p 8p 4p 68p 9p Procesor 3x3 6 ms 4 ms 6 ms 43 ms 96 ms 7 ms Karta graficzna 3x3,3 ms ms,7 ms,7 ms 6, ms 8, ms Procesor 5x5 9 ms 4 ms 55 ms 9 ms 7 ms 8 ms Karta graficzna 5x5,4 ms,4 ms,6 ms 4, ms 9,7 ms 4,4 ms Procesor 7x7 3 ms 6 ms 95 ms 56 ms 37 ms 5 ms Karta graficzna 7x7,6 ms, ms 3,8 ms 6, ms 4, ms 8,5 ms 4. Podsumowanie Wykorzystanie mocy obliczeniowej karty graficznej pozwala na znaczne przyspieszenie wykonywania funkcji dla pewnych typów problemów. Prezentowane przekształcenia obrazów polegają na wykonywaniu pewnych obliczeń dla każdego piksela składowego. Pozwala to w dość łatwy sposób na takie przedstawienie problemu by dało się go wykonać w sposób równoległy. Średnie przyspieszenie wykonania funkcji jak np. filtracja wykorzystująca maskę, gdzie konieczne jest wykonanie pewnych obliczeń wynosi około razy. Warto zauważyć, że dla funkcji nie wykonujących żadnych obliczeń jak zastosowanie filtru erozyjnego/ekspansywnego przyspieszenie obliczeń wyniosło nawet 7 razy. Jak pokazuje przykład deskryptora Harrisa samo rozdzielenie problemu na wątki nie jest wystarczające do maksymalnego przyspieszenia wykonania funkcji. Należy również zwrócić uwagę na odpowiednie wykonanie funkcji po stronie karty graficznej. Optymalizacja przepływu danych pozwoliła na zmniejszenie czasu wykonania funkcji z 67ms do 6ms. Stosując technologię CUDA wydajność aplikacji zależy od odpowiedniego rozbicia problemu na części składowe []. Przede wszystkim skupić należy się na: maksymalnym zrównolegleniu zadań dla maksymalnego wykorzystania zasobów sprzętowych optymalizacji użycia pamięci optymalizacji używanych instrukcji Każdy z elementów może mieć różne znaczenie w zależności od rodzaju analizowanego problemu. Wyniki jakie otrzymaliśmy wykorzystując technologię CUDA w przetwarzaniu wstępnym obrazów zachęcają do wykorzystania jej w zagadnieniach związanych ze śledzeniem poruszających się obiektów np. jak w systemach wieloagentowych robotów grających w piłkę [] gdzie szybkość obliczeń ma ogromny wpływ na jakość sterowania. Przy pomocy technologii CUDA możliwe jest tworzenie bardziej wydajnych programów, przez co na odpowiedniej klasy sprzęcie można dużo szybciej wykonywać operacje, które mogą być wykonywane przez wiele wątków równolegle. Możliwe, że rozwinięcie się tej technologii spowoduje, że w przyszłości programy wykorzystujące karty graficzne w takim celu będą powszechnie stosowane. W obecnej chwili można już znaleźć programy wykorzystujące technologię CUDA w kryptografii lub kompresujące materiały wideo. 9

10 Literatura [] Almasi G.S., Gottlieb A., Highly Parallel Computing, Benjamin-Cummings Publishing Co., Inc. Redwood City, CA, (989) [] Babiarz A., Bieda R., Jaskot K., Vision System for Group of Mobile Robots, Vision Based Systems for UAV Applications, Part III, pp , Springer International Publishing (3) [3] Blelloch G. E.: Vector Models for Data-Parallel Computing, Massachusetts Institute of Technology, (99) [4] Farber R., CUDA Application Design and Development, NVIDIA () [5] Grebosz J., Symfonia C ++ Standard, Editions, Kraków () [6] Harris C., Stephens M.J., A combined corner and edge detector, In Alvey Vision Conference, pp (988) [7] Hwu W., Kirk D., Programming Massively Parallel Processors: A Hands-on Approach, NVIDIA () [8] Krizhevsky A., Ilya S., Geoffrey E. H., ImageNet Classification with Deep Convolutional Neural Networks. NIPS Vol.. No.. () [9] Sanders J., Kandrot E., CUDA by Example: An Introduction to General-Purpose GPU Programming, NVIDIA () [] Smołka B., Bieda R., Application of the adaptive noise removal technique to the enhancement of cdna microarray images, J. Med. Informat. Technol. vol. 9, pp. 3-4, (5) [] Tadeusiewicz R., Systemy wizyjne robotów przemysłowych, Wydawnictwa Naukowo-Techniczne, Warszawa (99) [] Troelsen A., Język C# i platforma.net 4., Wydawnictwo Naukowe PWN () [3] Wiatr K., Akceleracja obliczeń w systemach wizyjnych, Wydawnictwa Naukowo-Techniczne, Warszawa (3) [4] Zieliński T. P., Cyfrowe przetwarzanie sygnałów. Od teorii do zastosowań, Wydawnictwa Komunikacji i Łączności, Warszawa (9) [5] CUDA C Programming Guide, [6] OpenCV,

CUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu

CUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu CUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu inż. Daniel Solarz Wydział Fizyki i Informatyki Stosowanej AGH 1. Cel projektu. Celem projektu było napisanie wtyczki

Bardziej szczegółowo

CUDA. cudniejsze przyk ady

CUDA. cudniejsze przyk ady CUDA cudniejsze przyk ady Agenda: CPU vs. GPU Mnożenie macierzy CPU Mnożenie macierzy - GPU Sploty Macierze CPU vs. GPU CPU: GPU: Mnożenie wykonywane w kolejnych iteracjach pętli. Przechodzimy przez pierwszy

Bardziej szczegółowo

Porównanie wydajności CUDA i OpenCL na przykładzie równoległego algorytmu wyznaczania wartości funkcji celu dla problemu gniazdowego

Porównanie wydajności CUDA i OpenCL na przykładzie równoległego algorytmu wyznaczania wartości funkcji celu dla problemu gniazdowego Porównanie wydajności CUDA i OpenCL na przykładzie równoległego algorytmu wyznaczania wartości funkcji celu dla problemu gniazdowego Mariusz Uchroński 3 grudnia 2010 Plan prezentacji 1. Wprowadzenie 2.

Bardziej szczegółowo

Praca dyplomowa magisterska

Praca dyplomowa magisterska Praca dyplomowa magisterska Implementacja algorytmów filtracji adaptacyjnej o strukturze transwersalnej na platformie CUDA Dyplomant: Jakub Kołakowski Opiekun pracy: dr inż. Michał Meller Plan prezentacji

Bardziej szczegółowo

Detekcja twarzy w obrazie

Detekcja twarzy w obrazie Detekcja twarzy w obrazie Metoda na kanałach RGB 1. Należy utworzyć nowy obrazek o wymiarach analizowanego obrazka. 2. Dla każdego piksela oryginalnego obrazka pobiera się informację o wartości kanałów

Bardziej szczegółowo

Przetwarzanie obrazu

Przetwarzanie obrazu Przetwarzanie obrazu Przekształcenia kontekstowe Liniowe Nieliniowe - filtry Przekształcenia kontekstowe dokonują transformacji poziomów jasności pikseli analizując za każdym razem nie tylko jasność danego

Bardziej szczegółowo

Przetwarzanie obrazów rastrowych macierzą konwolucji

Przetwarzanie obrazów rastrowych macierzą konwolucji Przetwarzanie obrazów rastrowych macierzą konwolucji 1 Wstęp Obrazy rastrowe są na ogół reprezentowane w dwuwymiarowych tablicach złożonych z pikseli, reprezentowanych przez liczby określające ich jasność

Bardziej szczegółowo

Podsystem graficzny. W skład podsystemu graficznego wchodzą: karta graficzna monitor

Podsystem graficzny. W skład podsystemu graficznego wchodzą: karta graficzna monitor Plan wykładu 1. Pojęcie podsystemu graficznego i karty graficznej 2. Typy kart graficznych 3. Budowa karty graficznej: procesor graficzny (GPU), pamięć podręczna RAM, konwerter cyfrowo-analogowy (DAC),

Bardziej szczegółowo

dr inż. Piotr Odya dr inż. Piotr Suchomski

dr inż. Piotr Odya dr inż. Piotr Suchomski dr inż. Piotr Odya dr inż. Piotr Suchomski Podział grafiki wektorowa; matematyczny opis rysunku; małe wymagania pamięciowe (i obliczeniowe); rasteryzacja konwersja do postaci rastrowej; rastrowa; tablica

Bardziej szczegółowo

Nowinki technologiczne procesorów

Nowinki technologiczne procesorów Elbląg 22.04.2010 Nowinki technologiczne procesorów Przygotował: Radosław Kubryń VIII semestr PDBiOU 1 Spis treści 1. Wstęp 2. Intel Hyper-Threading 3. Enhanced Intel Speed Technology 4. Intel HD Graphics

Bardziej szczegółowo

Julia 4D - raytracing

Julia 4D - raytracing i przykładowa implementacja w asemblerze Politechnika Śląska Instytut Informatyki 27 sierpnia 2009 A teraz... 1 Fraktale Julia Przykłady Wstęp teoretyczny Rendering za pomocą śledzenia promieni 2 Implementacja

Bardziej szczegółowo

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

Spośród licznych filtrów nieliniowych najlepszymi właściwościami odznacza się filtr medianowy prosty i skuteczny. Filtracja nieliniowa może być bardzo skuteczną metodą polepszania jakości obrazów Filtry nieliniowe Filtr medianowy Spośród licznych filtrów nieliniowych najlepszymi właściwościami odznacza się filtr medianowy

Bardziej szczegółowo

Grafika Komputerowa Wykład 2. Przetwarzanie obrazów. mgr inż. Michał Chwesiuk 1/38

Grafika Komputerowa Wykład 2. Przetwarzanie obrazów. mgr inż. Michał Chwesiuk 1/38 Wykład 2 Przetwarzanie obrazów mgr inż. 1/38 Przetwarzanie obrazów rastrowych Jedna z dziedzin cyfrowego obrazów rastrowych. Celem przetworzenia obrazów rastrowych jest użycie edytujących piksele w celu

Bardziej szczegółowo

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

6. Algorytmy ochrony przed zagłodzeniem dla systemów Linux i Windows NT. WYDZIAŁ: GEOLOGII, GEOFIZYKI I OCHRONY ŚRODOWISKA KIERUNEK STUDIÓW: INFORMATYKA STOSOWANA RODZAJ STUDIÓW: STACJONARNE I STOPNIA ROK AKADEMICKI 2014/2015 WYKAZ PRZEDMIOTÓW EGZAMINACYJNYCH: I. Systemy operacyjne

Bardziej szczegółowo

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania, Przetwarzanie równoległe PROJEKT OMP i CUDA Temat projektu dotyczy analizy efektywności przetwarzania równoległego realizowanego przy użyciu komputera równoległego z procesorem wielordzeniowym z pamięcią

Bardziej szczegółowo

Przetwarzanie obrazu

Przetwarzanie obrazu Przetwarzanie obrazu Przegląd z uwzględnieniem obrazowej bazy danych Tatiana Jaworska Jaworska@ibspan.waw.pl www.ibspan.waw.pl/~jaworska Umiejscowienie przetwarzania obrazu Plan prezentacji Pojęcia podstawowe

Bardziej szczegółowo

Programowanie z wykorzystaniem technologii CUDA i OpenCL Wykład 1

Programowanie z wykorzystaniem technologii CUDA i OpenCL Wykład 1 Programowanie z wykorzystaniem technologii CUDA i OpenCL Wykład 1 Organizacja przedmiotu Dr inż. Robert Banasiak Dr inż. Paweł Kapusta 1 2 Nasze kompetencje R n D Tomografia 3D To nie tylko statyczny obraz!

Bardziej szczegółowo

która metoda jest najlepsza

która metoda jest najlepsza która metoda jest najlepsza dr inż. Marek Żabka Instytut Matematyki Wydział Matematyki Stosowanej Politechnika Śląska 20 września 2012r Nowa metoda tworzenia grafiki na stronie internetowej: element,,canvas

Bardziej szczegółowo

Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 9. Przetwarzanie sygnałów wizyjnych. Politechnika Świętokrzyska.

Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 9. Przetwarzanie sygnałów wizyjnych. Politechnika Świętokrzyska. Politechnika Świętokrzyska Laboratorium Cyfrowe przetwarzanie sygnałów Ćwiczenie 9 Przetwarzanie sygnałów wizyjnych. Cel ćwiczenia Celem ćwiczenia jest zapoznanie studentów z funkcjami pozwalającymi na

Bardziej szczegółowo

Nowinki technologiczne procesorów

Nowinki technologiczne procesorów Elbląg 22.04.2010 Nowinki technologiczne procesorów Przygotował: Radosław Kubryń VIII semestr PDBiOU 1 Spis treści 1. Wstęp 2. Intel Hyper-Threading 3. Enhanced Intel Speed Technology 4. Intel HD Graphics

Bardziej szczegółowo

Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI

Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI 1 Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI 1. Obliczenia w arkuszu kalkulacyjnym Rozwiązywanie problemów z wykorzystaniem aplikacji komputerowych obliczenia w arkuszu kalkulacyjnym wykonuje

Bardziej szczegółowo

Karty graficzne możemy podzielić na:

Karty graficzne możemy podzielić na: KARTY GRAFICZNE Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest odbiór i przetwarzanie otrzymywanych od komputera

Bardziej szczegółowo

Automatyka i Robotyka II stopień ogólno akademicki

Automatyka i Robotyka II stopień ogólno akademicki Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2013/2014

Bardziej szczegółowo

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC, RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC, zapoczątkowana przez i wstecznie zgodna z 16-bitowym procesorem

Bardziej szczegółowo

Detekcja punktów zainteresowania

Detekcja punktów zainteresowania Informatyka, S2 sem. Letni, 2013/2014, wykład#8 Detekcja punktów zainteresowania dr inż. Paweł Forczmański Katedra Systemów Multimedialnych, Wydział Informatyki ZUT 1 / 61 Proces przetwarzania obrazów

Bardziej szczegółowo

Parametryzacja obrazu na potrzeby algorytmów decyzyjnych

Parametryzacja obrazu na potrzeby algorytmów decyzyjnych Parametryzacja obrazu na potrzeby algorytmów decyzyjnych Piotr Dalka Wprowadzenie Z reguły nie stosuje się podawania na wejście algorytmów decyzyjnych bezpośrednio wartości pikseli obrazu Obraz jest przekształcany

Bardziej szczegółowo

Wykorzystanie architektury Intel MIC w obliczeniach typu stencil

Wykorzystanie architektury Intel MIC w obliczeniach typu stencil Wykorzystanie architektury Intel MIC w obliczeniach typu stencil Kamil Halbiniak Wydział Inżynierii Mechanicznej i Informatyki Kierunek informatyka, Rok IV Instytut Informatyki Teoretycznej i Stosowanej

Bardziej szczegółowo

Filtracja obrazu operacje kontekstowe

Filtracja obrazu operacje kontekstowe Filtracja obrazu operacje kontekstowe Podział metod filtracji obrazu Metody przestrzenne i częstotliwościowe Metody liniowe i nieliniowe Główne zadania filtracji Usunięcie niepożądanego szumu z obrazu

Bardziej szczegółowo

Wymagania na poszczególne oceny szkolne dla klasy VI. (na podstawie Grażyny Koba, Teraz bajty. Informatyka dla szkoły podstawowej.

Wymagania na poszczególne oceny szkolne dla klasy VI. (na podstawie Grażyny Koba, Teraz bajty. Informatyka dla szkoły podstawowej. 1 Wymagania na poszczególne oceny szkolne dla klasy VI (na podstawie Grażyny Koba, Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI ) 2 1. Obliczenia w arkuszu kalkulacyjnym słucha poleceń nauczyciela

Bardziej szczegółowo

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami dr inż. Mariusz Uchroński Wrocławskie Centrum Sieciowo-Superkomputerowe Agenda Cykliczny problem przepływowy

Bardziej szczegółowo

Moc płynąca z kart graficznych

Moc płynąca z kart graficznych Moc płynąca z kart graficznych Cuda za darmo! Czyli programowanie generalnego przeznaczenia na kartach graficznych (GPGPU) 22 października 2013 Paweł Napieracz /20 Poruszane aspekty Przetwarzanie równoległe

Bardziej szczegółowo

Filtracja obrazu operacje kontekstowe

Filtracja obrazu operacje kontekstowe Filtracja obrazu operacje kontekstowe Główne zadania filtracji Usunięcie niepożądanego szumu z obrazu Poprawa ostrości Usunięcie określonych wad obrazu Poprawa obrazu o złej jakości technicznej Rekonstrukcja

Bardziej szczegółowo

Raport Hurtownie Danych

Raport Hurtownie Danych Raport Hurtownie Danych Algorytm Apriori na indeksie bitmapowym oraz OpenCL Mikołaj Dobski, Mateusz Jarus, Piotr Jessa, Jarosław Szymczak Cel projektu: Implementacja algorytmu Apriori oraz jego optymalizacja.

Bardziej szczegółowo

Przetwarzanie obrazu

Przetwarzanie obrazu Przetwarzanie obrazu Przegląd z uwzględnieniem obrazowej bazy danych Tatiana Jaworska Jaworska@ibspan.waw.pl www.ibspan.waw.pl/~jaworska Umiejscowienie przetwarzania obrazu Plan prezentacji Pojęcia podstawowe

Bardziej szczegółowo

i3: internet - infrastruktury - innowacje

i3: internet - infrastruktury - innowacje i3: internet - infrastruktury - innowacje Wykorzystanie procesorów graficznych do akceleracji obliczeń w modelu geofizycznym EULAG Roman Wyrzykowski Krzysztof Rojek Łukasz Szustak [roman, krojek, lszustak]@icis.pcz.pl

Bardziej szczegółowo

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014

Modelowanie diagramów klas w języku UML. Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Modelowanie diagramów klas w języku UML Łukasz Gorzel 244631@stud.umk.pl 7 marca 2014 Czym jest UML - Unified Modeling Language - Rodzina języków modelowania graficznego - Powstanie na przełomie lat 80

Bardziej szczegółowo

Dodatkowo planowane jest przeprowadzenie oceny algorytmów w praktycznym wykorzystaniu przez kilku niezależnych użytkowników ukończonej aplikacji.

Dodatkowo planowane jest przeprowadzenie oceny algorytmów w praktycznym wykorzystaniu przez kilku niezależnych użytkowników ukończonej aplikacji. Spis Treści 1. Wprowadzenie... 2 1.1 Wstęp... 2 1.2 Cel pracy... 2 1.3 Zakres pracy... 2 1.4 Użyte technologie... 2 1.4.1 Unity 3D... 3 2. Sztuczna inteligencja w grach komputerowych... 4 2.1 Zadanie sztucznej

Bardziej szczegółowo

Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI

Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI 1 Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI Opis założonych osiągnięć ucznia przykłady wymagań na poszczególne oceny szkolne dla klasy VI Grażyna Koba Spis treści 1. Obliczenia w arkuszu

Bardziej szczegółowo

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

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych Algorytmy decyzyjne będące alternatywą dla sieci neuronowych Piotr Dalka Przykładowe algorytmy decyzyjne Sztuczne sieci neuronowe Algorytm k najbliższych sąsiadów Kaskada klasyfikatorów AdaBoost Naiwny

Bardziej szczegółowo

dr inż. Tomasz Krzeszowski

dr inż. Tomasz Krzeszowski Metody cyfrowego przetwarzania obrazów dr inż. Tomasz Krzeszowski 2017-05-20 Spis treści 1 Przygotowanie do laboratorium... 3 2 Cel laboratorium... 3 3 Przetwarzanie obrazów z wykorzystaniem oprogramowania

Bardziej szczegółowo

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

BIBLIOTEKA PROGRAMU R - BIOPS. Narzędzia Informatyczne w Badaniach Naukowych Katarzyna Bernat BIBLIOTEKA PROGRAMU R - BIOPS Narzędzia Informatyczne w Badaniach Naukowych Katarzyna Bernat Biblioteka biops zawiera funkcje do analizy i przetwarzania obrazów. Operacje geometryczne (obrót, przesunięcie,

Bardziej szczegółowo

Analiza obrazów - sprawozdanie nr 2

Analiza obrazów - sprawozdanie nr 2 Analiza obrazów - sprawozdanie nr 2 Filtracja obrazów Filtracja obrazu polega na obliczeniu wartości każdego z punktów obrazu na podstawie punktów z jego otoczenia. Każdy sąsiedni piksel ma wagę, która

Bardziej szczegółowo

Nowinkach technologicznych procesorów

Nowinkach technologicznych procesorów Elbląg 22.04.2010 Nowinkach technologicznych procesorów Przygotował: Radosław Kubryń VIII semestr PDBiOU 1 Spis treści 1. Wstęp 2. Intel Hyper-Threading 3. Enhanced Intel Speed Technology 4. Intel HD Graphics

Bardziej szczegółowo

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie. dr inż. Adam Piórkowski. Jakub Osiadacz Marcin Wróbel

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie. dr inż. Adam Piórkowski. Jakub Osiadacz Marcin Wróbel Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Problem magazynowania i przetwarzania wielkoformatowych map i planów geologicznych. Promotor: dr inż. Adam Piórkowski Autorzy: Jakub Osiadacz

Bardziej szczegółowo

Redukcja czasu wykonania algorytmu Cannego dzięki zastosowaniu połączenia OpenMP z technologią NVIDIA CUDA

Redukcja czasu wykonania algorytmu Cannego dzięki zastosowaniu połączenia OpenMP z technologią NVIDIA CUDA Dariusz Sychel Wydział Informatyki, Zachodniopomorski Uniwersytet Technologiczny w Szczecinie 71-210 Szczecin, Żołnierska 49 Redukcja czasu wykonania algorytmu Cannego dzięki zastosowaniu połączenia OpenMP

Bardziej szczegółowo

Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 8. Filtracja uśredniająca i statystyczna.

Politechnika Świętokrzyska. Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 8. Filtracja uśredniająca i statystyczna. Politechnika Świętokrzyska Laboratorium Cyfrowe przetwarzanie sygnałów Ćwiczenie 8 Filtracja uśredniająca i statystyczna. Cel ćwiczenia Celem ćwiczenia jest zdobycie umiejętności tworzenia i wykorzystywania

Bardziej szczegółowo

POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych. Instytut Telekomunikacji Zakład Podstaw Telekomunikacji

POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych. Instytut Telekomunikacji Zakład Podstaw Telekomunikacji POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji Kamil Krawczyk Metody optymalizacji soft-procesorów NIOS Opiekun naukowy: dr

Bardziej szczegółowo

Implementacja filtru Canny ego

Implementacja filtru Canny ego ANALIZA I PRZETWARZANIE OBRAZÓW Implementacja filtru Canny ego Autor: Katarzyna Piotrowicz Kraków,2015-06-11 Spis treści 1. Wstęp... 1 2. Implementacja... 2 3. Przykłady... 3 Porównanie wykrytych krawędzi

Bardziej szczegółowo

KRYPTOGRAFIA I OCHRONA DANYCH PROJEKT

KRYPTOGRAFIA I OCHRONA DANYCH PROJEKT KRYPTOGRAFIA I OCHRONA DANYCH PROJEKT Temat: Zaimplementować system kryptografii wizualnej http://www.cacr.math.uwaterloo.ca/~dstinson/visual.html Autor: Tomasz Mitręga NSMW Grupa 1 Sekcja 2 1. Temat projektu

Bardziej szczegółowo

Grafika komputerowa. Dla DSI II

Grafika komputerowa. Dla DSI II Grafika komputerowa Dla DSI II Rodzaje grafiki Tradycyjny podział grafiki oznacza wyróżnienie jej dwóch rodzajów: grafiki rastrowej oraz wektorowej. Różnica pomiędzy nimi polega na innej interpretacji

Bardziej szczegółowo

Wymagania edukacyjne z informatyki dla uczniów klas VI SP nr 53 w Krakowie w roku szkolnym 2019/2020

Wymagania edukacyjne z informatyki dla uczniów klas VI SP nr 53 w Krakowie w roku szkolnym 2019/2020 Prowadzący: Elwira Kukiełka Ewa Pawlak-Głuc 1 Opracowano na podstawie: 1. Podstawa programowa(dz.u. z 017r. poz. ) Rozporządzenie Ministra Edukacji Narodowej z dnia 1 lutego 017 r. w sprawie podstawy programowej

Bardziej szczegółowo

1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania

1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania 1. Opis aplikacji Interfejs programu podzielony jest na dwie zakładki. Wszystkie ustawienia znajdują się w drugiej zakładce, są przygotowane do ćwiczenia i nie można ich zmieniac bez pozwolenia prowadzącego

Bardziej szczegółowo

Ćwiczenie 6. Transformacje skali szarości obrazów

Ćwiczenie 6. Transformacje skali szarości obrazów Politechnika Wrocławska Wydział Elektroniki Mikrosystemów i Fotoniki Przetwarzanie sygnałów laboratorium ETD5067L Ćwiczenie 6. Transformacje skali szarości obrazów 1. Obraz cyfrowy Obraz w postaci cyfrowej

Bardziej szczegółowo

Metody optymalizacji soft-procesorów NIOS

Metody optymalizacji soft-procesorów NIOS POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji Kamil Krawczyk Metody optymalizacji soft-procesorów NIOS Warszawa, 27.01.2011

Bardziej szczegółowo

Wtyczka Crop3D. Wstęp. Implementacja. Sprawozdanie z realizacji projektu Bartłomiej Trzewiczek Kraków,

Wtyczka Crop3D. Wstęp. Implementacja. Sprawozdanie z realizacji projektu Bartłomiej Trzewiczek Kraków, Sprawozdanie z realizacji projektu Bartłomiej Trzewiczek Kraków, 30.06.2015 Wtyczka Crop3D Wstęp Celem projektu było napisanie wtyczki do programu ImageJ pozwalającej na obcięcie tła i maksymalne skadrowanie

Bardziej szczegółowo

Programowanie procesorów graficznych GPGPU

Programowanie procesorów graficznych GPGPU Programowanie procesorów graficznych GPGPU 1 GPGPU Historia: lata 80 te popularyzacja systemów i programów z graficznym interfejsem specjalistyczne układy do przetwarzania grafiki 2D lata 90 te standaryzacja

Bardziej szczegółowo

Szacowanie wartości monet na obrazach.

Szacowanie wartości monet na obrazach. Marcin Nieściur projekt AiPO Szacowanie wartości monet na obrazach. 1. Wstęp. Celem projektu było stworzenie pluginu do programu ImageJ pozwalającego na szacowanie wartości monet znajdujących się na obrazach

Bardziej szczegółowo

CZYM JEST KARTA GRAFICZNA.

CZYM JEST KARTA GRAFICZNA. Karty Graficzne CZYM JEST KARTA GRAFICZNA. Karta graficzna jest kartą rozszerzeń, umiejscawianą na płycie głównej poprzez gniazdo PCI lub AGP, która odpowiada w komputerze za obraz wyświetlany przez monitor.

Bardziej szczegółowo

Zadania badawcze prowadzone przez Zakład Technik Programowania:

Zadania badawcze prowadzone przez Zakład Technik Programowania: Zadania badawcze prowadzone przez Zakład Technik Programowania: - Opracowanie metod zrównoleglania programów sekwencyjnych o rozszerzonym zakresie stosowalności. - Opracowanie algorytmów obliczenia tranzytywnego

Bardziej szczegółowo

Test dysku Intel SSD DC S3500 480GB. Wpisany przez Mateusz Ponikowski Wtorek, 22 Październik 2013 16:22

Test dysku Intel SSD DC S3500 480GB. Wpisany przez Mateusz Ponikowski Wtorek, 22 Październik 2013 16:22 W połowie bieżącego roku na rynku pojawiły się profesjonalne nośniki Intel z serii DC S3500. Producent deklaruje, że sprzęt przeznaczony jest do bardziej wymagających zastosowań takich jak centra danych

Bardziej szczegółowo

Przetwarzanie obrazów wykład 4

Przetwarzanie obrazów wykład 4 Przetwarzanie obrazów wykład 4 Adam Wojciechowski Wykład opracowany na podstawie Komputerowa analiza i przetwarzanie obrazów R. Tadeusiewicz, P. Korohoda Filtry nieliniowe Filtry nieliniowe (kombinowane)

Bardziej szczegółowo

Sieci obliczeniowe poprawny dobór i modelowanie

Sieci obliczeniowe poprawny dobór i modelowanie Sieci obliczeniowe poprawny dobór i modelowanie 1. Wstęp. Jednym z pierwszych, a zarazem najważniejszym krokiem podczas tworzenia symulacji CFD jest poprawne określenie rozdzielczości, wymiarów oraz ilości

Bardziej szczegółowo

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

Analiza obrazu. wykład 3. Marek Jan Kasprowicz Uniwersytet Rolniczy 2009 Analiza obrazu komputerowego wykład 3 Marek Jan Kasprowicz Uniwersytet Rolniczy 2009 Binaryzacja Binaryzacja jest jedną z ważniejszych ż czynności punktowego przetwarzania obrazów. Poprzedza prawie zawsze

Bardziej szczegółowo

Laboratorium Cyfrowego Przetwarzania Obrazów

Laboratorium Cyfrowego Przetwarzania Obrazów Laboratorium Cyfrowego Przetwarzania Obrazów Ćwiczenie 4 Filtracja 2D Opracowali: - dr inż. Krzysztof Mikołajczyk - dr inż. Beata Leśniak-Plewińska - dr inż. Jakub Żmigrodzki Zakład Inżynierii Biomedycznej,

Bardziej szczegółowo

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl Programowanie niskopoziomowe dr inż. Paweł Pełczyński ppelczynski@swspiz.pl 1 Literatura Randall Hyde: Asembler. Sztuka programowania, Helion, 2004. Eugeniusz Wróbel: Praktyczny kurs asemblera, Helion,

Bardziej szczegółowo

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych autor: Robert Drab opiekun naukowy: dr inż. Paweł Rotter 1. Wstęp Zagadnienie generowania trójwymiarowego

Bardziej szczegółowo

Strojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i

Strojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i VI Seminarium PLOUG Warszawa Styczeñ 2003 Strojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i Marcin Przepiórowski Strojenie systemu Linux pod kątem serwera bazy danych Oracle 9i 7 1. Wstęp

Bardziej szczegółowo

Straszyński Kołodziejczyk, Paweł Straszyński. Wszelkie prawa zastrzeżone. FoamPro. Instrukcja obsługi

Straszyński Kołodziejczyk, Paweł Straszyński. Wszelkie prawa zastrzeżone.  FoamPro. Instrukcja obsługi FoamPro Instrukcja obsługi 1 Spis treści 1 Wstęp... 3 2 Opis Programu... 4 2.1 Interfejs programu... 4 2.2 Budowa projektu... 5 2.2.1 Elementy podstawowe... 5 2.2.2 Elementy grupowe... 5 2.2.3 Połączenia

Bardziej szczegółowo

WYDZIAŁ FIZYKI I INFORMATYKI STOSOWANEJ

WYDZIAŁ FIZYKI I INFORMATYKI STOSOWANEJ WYDZIAŁ FIZYKI I INFORMATYKI STOSOWANEJ Hybrid Images Imię i nazwisko: Anna Konieczna Kierunek studiów: Informatyka Stosowana Rok studiów: 4 Przedmiot: Analiza i Przetwarzanie Obrazów Prowadzący przedmiot:

Bardziej szczegółowo

Przykładowe sprawozdanie. Jan Pustelnik

Przykładowe sprawozdanie. Jan Pustelnik Przykładowe sprawozdanie Jan Pustelnik 30 marca 2007 Rozdział 1 Sformułowanie problemu Tematem pracy jest porównanie wydajności trzech tradycyjnych metod sortowania: InsertionSort, SelectionSort i BubbleSort.

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 7 Jan Kazimirski 1 Pamięć podręczna 2 Pamięć komputera - charakterystyka Położenie Procesor rejestry, pamięć podręczna Pamięć wewnętrzna pamięć podręczna, główna Pamięć zewnętrzna

Bardziej szczegółowo

Streszczenie Komputery do przechowywania rysunków, zdjęć i innych obrazów używają tylko liczb. Te zajęcia mają ukazać w jaki sposób to robią.

Streszczenie Komputery do przechowywania rysunków, zdjęć i innych obrazów używają tylko liczb. Te zajęcia mają ukazać w jaki sposób to robią. Temat 2 Kolory jako liczby Kodowanie obrazów Streszczenie Komputery do przechowywania rysunków, zdjęć i innych obrazów używają tylko liczb. Te zajęcia mają ukazać w jaki sposób to robią. Wiek 7 i więcej

Bardziej szczegółowo

AMD Ryzen recenzja procesora. Wpisany przez Mateusz Ponikowski Piątek, 11 Październik :47

AMD Ryzen recenzja procesora. Wpisany przez Mateusz Ponikowski Piątek, 11 Październik :47 Sprawdzamy niedrogi procesor od AMD. Składając niedrogi komputer do pracy z multimediami i okazjonalnego grania musimy zacząć od wyboru platformy i tutaj pojawia się odwieczne pytanie, Intel czy AMD? Budując

Bardziej szczegółowo

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH Autorzy scenariusza:

Bardziej szczegółowo

Numeryczna algebra liniowa

Numeryczna algebra liniowa Numeryczna algebra liniowa Numeryczna algebra liniowa obejmuje szereg algorytmów dotyczących wektorów i macierzy, takich jak podstawowe operacje na wektorach i macierzach, a także rozwiązywanie układów

Bardziej szczegółowo

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

Laboratorium. Cyfrowe przetwarzanie sygnałów. Ćwiczenie 11. Filtracja sygnałów wizyjnych Laboratorium Cyfrowe przetwarzanie sygnałów Ćwiczenie 11 Filtracja sygnałów wizyjnych Operacje kontekstowe (filtry) Operacje polegające na modyfikacji poszczególnych elementów obrazu w zależności od stanu

Bardziej szczegółowo

Maciej Piotr Jankowski

Maciej Piotr Jankowski Reduced Adder Graph Implementacja algorytmu RAG Maciej Piotr Jankowski 2005.12.22 Maciej Piotr Jankowski 1 Plan prezentacji 1. Wstęp 2. Implementacja 3. Usprawnienia optymalizacyjne 3.1. Tablica ekspansji

Bardziej szczegółowo

1 Temat: Wprowadzenie do biblioteki OpenCV

1 Temat: Wprowadzenie do biblioteki OpenCV Instrukcja Zaawansowane przetwarzanie obrazów 1 Temat: Wprowadzenie do biblioteki OpenCV Przygotował: mgr inż. Tomasz Michno 1 Wstęp 1.1 OpenCV - krótki wstęp OpenCV (Open Source Computer Vision) jest

Bardziej szczegółowo

Widżety KIWIPortal. tworzenie umieszczanie na stronach internetowych opcje zaawansowane. Autor: Damian Rebuś Data: 29.06.2015 Wersja: 1.

Widżety KIWIPortal. tworzenie umieszczanie na stronach internetowych opcje zaawansowane. Autor: Damian Rebuś Data: 29.06.2015 Wersja: 1. Widżety KIWIPortal tworzenie umieszczanie na stronach internetowych opcje zaawansowane Autor: Damian Rebuś Data: 29.06.2015 Wersja: 1.3 Strona 1 z 17 1 SPIS TREŚCI 2 Metody osadzania widżetów... 3 2.1

Bardziej szczegółowo

Analiza i przetwarzanie obrazów

Analiza i przetwarzanie obrazów Analiza i przetwarzanie obrazów Temat projektu: Aplikacja na system Android wyodrębniająca litery(znaki) z tekstu Marcin Nycz 1. Wstęp Tematem projektu była aplikacja na system Android do wyodrębniania

Bardziej szczegółowo

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

Cyfrowe przetwarzanie obrazów i sygnałów Wykład 8 AiR III 1 Niniejszy dokument zawiera materiały do wykładu z przedmiotu Cyfrowe Przetwarzanie Obrazów i Sygnałów. Jest on udostępniony pod warunkiem wykorzystania wyłącznie do własnych, prywatnych potrzeb i może

Bardziej szczegółowo

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

Analiza obrazu. wykład 1. Marek Jan Kasprowicz Uniwersytet Rolniczy Marek Jan Kasprowicz Analiza obrazu komputerowego 2009 r. Analiza obrazu komputerowego wykład 1 Marek Jan Kasprowicz Uniwersytet Rolniczy 2009 Plan wykładu Wprowadzenie pojęcie obrazu cyfrowego i analogowego Geometryczne przekształcenia obrazu Przekształcenia

Bardziej szczegółowo

Rzeczywistość rozszerzona: czujniki do akwizycji obrazów RGB-D. Autor: Olga Głogowska 207 505 AiR II

Rzeczywistość rozszerzona: czujniki do akwizycji obrazów RGB-D. Autor: Olga Głogowska 207 505 AiR II Rzeczywistość rozszerzona: czujniki do akwizycji obrazów RGB-D Autor: Olga Głogowska 207 505 AiR II Czujniki w robotyce coraz większego znaczenia nabierają systemy pomiarowe umożliwiające interakcję robota

Bardziej szczegółowo

Programowanie aplikacji na iphone. Wstęp do platformy ios. Łukasz Zieliński

Programowanie aplikacji na iphone. Wstęp do platformy ios. Łukasz Zieliński Programowanie aplikacji na iphone. Wstęp do platformy ios. Łukasz Zieliński Plan Prezentacji. Programowanie ios. Jak zacząć? Co warto wiedzieć o programowaniu na platformę ios? Kilka słów na temat Obiective-C.

Bardziej szczegółowo

zna wybrane modele kolorów i metody transformacji między nimi zna podstawowe techniki filtracji liniowej, nieliniowej dla obrazów cyfrowych

zna wybrane modele kolorów i metody transformacji między nimi zna podstawowe techniki filtracji liniowej, nieliniowej dla obrazów cyfrowych Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Wydział Matematyki i Informatyki Instytut Informatyki Przetwarzanie i analiza obrazów cyfrowych w

Bardziej szczegółowo

Technologie Informacyjne

Technologie Informacyjne Grafika komputerowa Szkoła Główna Służby Pożarniczej Zakład Informatyki i Łączności December 12, 2016 1 Wprowadzenie 2 Optyka 3 Geometria 4 Grafika rastrowa i wektorowa 5 Kompresja danych Wprowadzenie

Bardziej szczegółowo

AUTOMATYCZNE ROZPOZNAWANIE PUNKTÓW KONTROLNYCH GŁOWY SŁUŻĄCYCH DO 3D MODELOWANIA JEJ ANATOMII I DYNAMIKI

AUTOMATYCZNE ROZPOZNAWANIE PUNKTÓW KONTROLNYCH GŁOWY SŁUŻĄCYCH DO 3D MODELOWANIA JEJ ANATOMII I DYNAMIKI AUTOMATYCZNE ROZPOZNAWANIE PUNKTÓW KONTROLNYCH GŁOWY SŁUŻĄCYCH DO 3D MODELOWANIA JEJ ANATOMII I DYNAMIKI Tomasz Huczek Promotor: dr Adrian Horzyk Cel pracy Zasadniczym celem pracy było stworzenie systemu

Bardziej szczegółowo

1. Tilt-shift. TEMAT PROJEKTU Tilt-shift - aplikacja na system mobilny ios

1. Tilt-shift. TEMAT PROJEKTU Tilt-shift - aplikacja na system mobilny ios AUTOR DATA ODDANIA Wojciech Mieszczak 29 czerwiec 2015 TEMAT PROJEKTU Tilt-shift - aplikacja na system mobilny ios 1. Tilt-shift Tilt-shift jest to technika stosowana w fotografi wykorzystywana do tworzenia

Bardziej szczegółowo

Histogram obrazu, modyfikacje histogramu

Histogram obrazu, modyfikacje histogramu March 15, 2013 Histogram Jeden z graficznych sposobów przedstawiania rozkładu cechy. Składa się z szeregu prostokatów umieszczonych na osi współrzędnych. Prostokaty te sa z jednej strony wyznaczone przez

Bardziej szczegółowo

Analiza i przetwarzanie obrazów

Analiza i przetwarzanie obrazów Analiza i przetwarzanie obrazów Pomiar pulsu za pomocą kamery Autor: Krzysztof Skowronek Zawartość I. Założenia... 3 II. Realizacja... 3 III. Szczegóły implementacji... 4 IV. Interfejs... 5 V. Wyniki...

Bardziej szczegółowo

Formaty obrazów rastrowych biblioteki PBM

Formaty obrazów rastrowych biblioteki PBM Formaty obrazów rastrowych biblioteki PBM Reprezentacja obrazu Obrazy pobierane z kamery, bądź dowolnego innego źródła, mogą być składowane na pliku dyskowym w jednym z wielu istniejących formatów zapisu

Bardziej szczegółowo

Karta przedmiotu. Podstawy programowania procesorów graficznych. realizowanego w ramach projektu PO WER

Karta przedmiotu. Podstawy programowania procesorów graficznych. realizowanego w ramach projektu PO WER Karta przedmiotu Podstawy programowania procesorów graficznych realizowanego w ramach projektu PO WER 2017-2019 Wydział Inżynierii Elektrycznej i Komputerowej Kierunek studiów: Informatyka Profil: Ogólnoakademicki

Bardziej szczegółowo

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

Wyższa Szkoła Informatyki Stosowanej i Zarządzania Wyższa Szkoła Informatyki Stosowanej i Zarządzania Grupa ID308, Zespół 11 PRZETWARZANIE OBRAZÓW Sprawozdanie z ćwiczeń Ćwiczenie 6 Temat: Operacje sąsiedztwa wyostrzanie obrazu Wykonali: 1. Mikołaj Janeczek

Bardziej szczegółowo

Transformata Fouriera

Transformata Fouriera Transformata Fouriera Program wykładu 1. Wprowadzenie teoretyczne 2. Algorytm FFT 3. Zastosowanie analizy Fouriera 4. Przykłady programów Wprowadzenie teoretyczne Zespolona transformata Fouriera Jeżeli

Bardziej szczegółowo

Wymagania edukacyjne na ocenę z informatyki klasa 3

Wymagania edukacyjne na ocenę z informatyki klasa 3 Wymagania edukacyjne na ocenę z informatyki klasa 3 0. Logo [6 godz.] PODSTAWA PROGRAMOWA: Rozwiązywanie problemów i podejmowanie decyzji z wykorzystaniem komputera, stosowanie podejścia algorytmicznego.

Bardziej szczegółowo

Informatyka, studia dzienne, mgr II st. Przetwarzanie obrazu i dźwięku 2011/2012 Prowadzący: dr inż. Bartłomiej Stasiak czwartek, 8:30

Informatyka, studia dzienne, mgr II st. Przetwarzanie obrazu i dźwięku 2011/2012 Prowadzący: dr inż. Bartłomiej Stasiak czwartek, 8:30 Informatyka, studia dzienne, mgr II st. semestr I Przetwarzanie obrazu i dźwięku 2011/2012 Prowadzący: dr inż. Bartłomiej Stasiak czwartek, 8:30 Data oddania: Ocena: Grzegorz Graczyk 178717 Andrzej Stasiak

Bardziej szczegółowo

Laboratorium Komputerowe Systemy Pomiarowe

Laboratorium Komputerowe Systemy Pomiarowe Jarosław Gliwiński, Łukasz Rogacz Laboratorium Komputerowe Systemy Pomiarowe ćw. Programowanie wielofunkcyjnej karty pomiarowej w VEE Data wykonania: 15.05.08 Data oddania: 29.05.08 Celem ćwiczenia była

Bardziej szczegółowo

System komputerowy. System komputerowy

System komputerowy. System komputerowy System komputerowy System komputerowy System komputerowy układ współdziałających ze sobą (według pewnych zasad) dwóch składowych: sprzętu komputerowego (hardware) oraz oprogramowania (software) po to,

Bardziej szczegółowo