Wpracy przedstawiono wyniki wykorzystania możliwości obliczeniowych kart graficznych
|
|
- Laura Romanowska
- 6 lat temu
- Przeglądów:
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 inż. Daniel Solarz Wydział Fizyki i Informatyki Stosowanej AGH 1. Cel projektu. Celem projektu było napisanie wtyczki
Bardziej szczegółowoCUDA. 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ółowoPoró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ółowoPraca 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ółowoDetekcja 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ółowoPrzetwarzanie 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ółowoPrzetwarzanie 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ółowoPodsystem 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ółowodr 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ółowoNowinki 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ółowoJulia 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ółowoSpoś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ółowoGrafika 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ółowo6. 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ółowoPrzygotowanie 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ółowoPrzetwarzanie 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ółowoProgramowanie 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ółowoktó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ółowoLaboratorium. 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ółowoNowinki 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ółowoTeraz 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ółowoKarty 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ółowoAutomatyka 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ółowoRDZEŃ 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ółowoDetekcja 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ółowoParametryzacja 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ółowoWykorzystanie 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ółowoFiltracja 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ółowoWymagania 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ółowoRó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ółowoMoc 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ółowoFiltracja 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ółowoRaport 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ółowoPrzetwarzanie 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ółowoi3: 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ółowoModelowanie 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ółowoDodatkowo 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ółowoTeraz 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ółowoAlgorytmy 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ółowodr 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ółowoBIBLIOTEKA 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ółowoAnaliza 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ółowoNowinkach 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ółowoAkademia 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ółowoRedukcja 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ółowoPolitechnika Ś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ółowoPOLITECHNIKA 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ółowoImplementacja 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ółowoKRYPTOGRAFIA 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ółowoGrafika 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ółowoWymagania 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ółowo1. 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
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ółowoMetody 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ółowoWtyczka 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ółowoProgramowanie 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ółowoSzacowanie 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ółowoCZYM 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ółowoZadania 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ółowoTest 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ółowoPrzetwarzanie 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ółowoSieci 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ółowoAnaliza 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ółowoLaboratorium 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ółowoProgramowanie 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ółowoAutomatyczne 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ółowoStrojenie 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ółowoStraszyń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ółowoWYDZIAŁ 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ółowoPrzykł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ółowoArchitektura 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ółowoStreszczenie 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ółowoAMD 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ółowoSCENARIUSZ 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ółowoNumeryczna 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ółowoLaboratorium. 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ółowoMaciej 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ółowo1 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ółowoWidż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ółowoAnaliza 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ółowoCyfrowe 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ółowoAnaliza 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ółowoRzeczywistość 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ółowoProgramowanie 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ółowozna 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ółowoTechnologie 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ółowoAUTOMATYCZNE 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ółowo1. 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ółowoHistogram 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ółowoAnaliza 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ółowoFormaty 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ółowoKarta 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ółowoWyż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ółowoTransformata 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ółowoWymagania 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ółowoInformatyka, 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ółowoLaboratorium 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ółowoSystem 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