Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Systemy wizyjne i przetwarzanie obrazów
Tok studiów:
2019/2020
Kod:
EELT-2-302-IE-s
Wydział:
Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej
Poziom studiów:
Studia II stopnia
Specjalność:
Inżynieria elektryczna w pojazdach samochodowych
Kierunek:
Elektrotechnika
Semestr:
3
Profil:
Ogólnoakademicki (A)
Język wykładowy:
Polski
Forma studiów:
Stacjonarne
Strona www:
 
Prowadzący moduł:
dr hab. inż. Skalski Andrzej (skalski@agh.edu.pl)
Treści programowe zapewniające uzyskanie efektów uczenia się dla modułu zajęć

Celem przedmiotu jest zapoznanie studentów z algorytmami i zagadnieniami związanymi z systemami wizyjnymi oraz przetwarzania i analizy obrazów. W ramach laboratorium studenci budują prosty system wizyjny wyposażony w kamerę oraz układy mikroprocesorowe. Implementacje wybranych algorytmów zostaną przetestowane w wyżej wymienionym systemie.

Opis efektów uczenia się dla modułu zajęć
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Powiązania z KEU Sposób weryfikacji i oceny efektów uczenia się osiągniętych przez studenta w ramach poszczególnych form zajęć i dla całego modułu zajęć
Wiedza: zna i rozumie
M_W001 Zna typowe algorytmy przetwarzania i analizy obrazów w zastosowaniu do systemów wizyjnych stosowanych w samochodach ELT2A_W04, ELT2A_W01 Kolokwium
M_W002 Posiada szczegółową wiedzę dotyczącą doboru algorytmów przetwarzania i analizy obrazów umożliwiającą zaproponowanie rozwiązania konkretnego zadania problemowego z wykorzystaniem informacji wizyjnej. ELT2A_W05, ELT2A_W03, ELT2A_W04 Kolokwium
M_W003 Ma poszerzoną i uporządkowaną wiedzę teoretyczną z zakresu algorytmów segmentacji, śledzenia obiektów, rozpoznawania wzorców oraz wyznaczania cech i punktów charakterystycznych w danych wizyjnych. ELT2A_W05, ELT2A_W04, ELT2A_W01 Prezentacja,
Kolokwium
Umiejętności: potrafi
M_U001 Zna zasady budowy i implementacji typowych algorytmów wykorzystywanych w systemach wizyjnych oraz potrafi je praktycznie wykorzystać ELT2A_U05, ELT2A_U04, ELT2A_U02 Wykonanie ćwiczeń laboratoryjnych,
Prezentacja
M_U002 Potrafi pozyskiwać informacje pochodzące ze specjalistycznej literatury technicznej, którą potrafi zinterpretować i wykorzystać do budowy algorytmu rozwiązującego problem z zakresu systemów wizyjnych. ELT2A_U02, ELT2A_U01 Wykonanie ćwiczeń laboratoryjnych,
Prezentacja,
Aktywność na zajęciach
M_U003 Ma przygotowanie do projektowania, walidacji oraz porównywania rozwiązań konkretnych zadań z zakresu systemów wizyjnych. ELT2A_U03, ELT2A_U11 Prezentacja,
Aktywność na zajęciach
Kompetencje społeczne: jest gotów do
M_K001 Potrafi przygotować prezentację oraz dokumentację rozwiązania zadania problemowego, którą przedstawia w sposób zrozumiały i przystępny. ELT2A_K02 Zaangażowanie w pracę zespołu,
Prezentacja
Liczba godzin zajęć w ramach poszczególnych form zajęć:
SUMA (godz.)
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
48 28 0 20 0 0 0 0 0 0 0 0
Matryca kierunkowych efektów uczenia się w odniesieniu do form zajęć i sposobu zaliczenia, które pozwalają na ich uzyskanie
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Forma zajęć dydaktycznych
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Wiedza
M_W001 Zna typowe algorytmy przetwarzania i analizy obrazów w zastosowaniu do systemów wizyjnych stosowanych w samochodach + - - - - - - - - - -
M_W002 Posiada szczegółową wiedzę dotyczącą doboru algorytmów przetwarzania i analizy obrazów umożliwiającą zaproponowanie rozwiązania konkretnego zadania problemowego z wykorzystaniem informacji wizyjnej. + - + - - - - - - - -
M_W003 Ma poszerzoną i uporządkowaną wiedzę teoretyczną z zakresu algorytmów segmentacji, śledzenia obiektów, rozpoznawania wzorców oraz wyznaczania cech i punktów charakterystycznych w danych wizyjnych. + - - - - - - - - - -
Umiejętności
M_U001 Zna zasady budowy i implementacji typowych algorytmów wykorzystywanych w systemach wizyjnych oraz potrafi je praktycznie wykorzystać - - + - - - - - - - -
M_U002 Potrafi pozyskiwać informacje pochodzące ze specjalistycznej literatury technicznej, którą potrafi zinterpretować i wykorzystać do budowy algorytmu rozwiązującego problem z zakresu systemów wizyjnych. - - + - - - - - - - -
M_U003 Ma przygotowanie do projektowania, walidacji oraz porównywania rozwiązań konkretnych zadań z zakresu systemów wizyjnych. - - + - - - - - - - -
Kompetencje społeczne
M_K001 Potrafi przygotować prezentację oraz dokumentację rozwiązania zadania problemowego, którą przedstawia w sposób zrozumiały i przystępny. - - + - - - - - - - -
Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 88 godz
Punkty ECTS za moduł 3 ECTS
Udział w zajęciach dydaktycznych/praktyka 48 godz
Przygotowanie do zajęć 10 godz
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 5 godz
Samodzielne studiowanie tematyki zajęć 25 godz
Szczegółowe treści kształcenia w ramach poszczególnych form zajęć (szczegółowy program wykładów i pozostałych zajęć)
Wykład (28h):
  1. Systemy wizyjne stosowane w pojazdach sachodowych – 2h

    • budowa i zadania systemów wizyjnych (segmentacja, rozpoznawanie obiektów, śledzenie, lokalizacja);
    • komputerowa wizja vs. przetwarzanie i analiza obrazów;
    • rozwiązania komercyjne stosowane w pojazdach samochodowych;

  2. Kamera -2h

    • Budowa kamery;
    • Rodzaje kamer wykorzystywanych w pojazdach (vis, IR);
    • Modele kamer;
    • Kalibracja kamer;

  3. Informacja wizyjna oraz przetwarzanie wstępne – 3h

    • typowe reprezentacje informacji wizyjnej;
    • problemy związane z wizją (rozbłyski, cienie, światło);
    • histogram, wyrównanie histogramu;
    • transformacje obrazu;
    • przestrzenie barw

  4. Gradient, krawędzie -2h

    • Gradient obrazu;
    • Algorytmy detekcji krawędzi;
    • CAD – Detektor krawędzi Cannego;

  5. Segmentacja – 4h

    • Definicja segmentacji;
    • progowanie, progowanie z histerezą;
    • rozrost obszarów;
    • metody aktywnych konturów;

  6. Mean Shift – 3h

    • Grupowanie, segmentacja oraz śledzenie obiektów z wykorzystaniem algorytmu Mean Shift; CamShift;

  7. Detekcja Cech – 3h

    • wprowadzenie do detekcji cech;
    • detektor Harisa
    • transformacja Hough’a;

  8. Deskryptory – 2h

    • SIFT;
    • Rozpoznawanie wzorców (ang. Template Matching);

  9. Przepływ optyczny, śledzenie – 2h
  10. Flitracja Kalmana – 2h
  11. Grupowanie, Klasyfikacja – 2h

    • Klasyfikatory;
    • k-means;
    • kNN;
    • SVM;

  12. Walidacja algorytmów – 1h

    • Macierz pomyłek;
    • Współczynnik Dice’a;
    • Odległość Hausdorff’a;

Ćwiczenia laboratoryjne (20h):
  1. Wprowadzenie i sprawy formalne np. BHP, warunki zaliczenia modułu
  2. Wprowadzenie i konfiguracja środowiska pracy – 2h

    • Konfiguracja zestawu Raspberry Pi + Arduino + Kamera USB.
    • Konfiguracja środowiska pracy Matlab + Simulink. Nauka tworzenia modeli w Simulinku. Budowa prostego modelu i uruchomienie go na Raspberry Pi.
    • Podstawy przetwarzania obrazów w Matlabie – operacje we/wy, operacje na wartościach pikseli.

    Informacje z wykładu – przestrzenie barw, podstawowe operacje na wartościach pikseli.

  3. Sterowanie serwomechanizmem – 2h

    • Budowa modeli Simulinka do sterowania obrotem kamery na podstawie położenia śledzonego obiektu.
    • Uruchomienie modeli na sprzęcie

  4. Podstawy przetwarzania obrazów i detekcji obiektów – 2h

    Podstawy przetwarzania obrazów i detekcji obiektów.

    • Inwersja wartości pikseli.
    • Wykrywanie i lokalizacja jednokolorowego obiektu: budowa prototypu funkcji w Matlabie, przeniesienie go do Simulinka i uruchomienie na Raspberry Pi.

    Informacje z wykładu: detekcja obiektów na podstawie barwy, binaryzacja obrazu, momenty obrazu, wyznaczanie centroidu.

  5. Kalibracja kamery i rekonstrukcja trójwymiarowa, cz. 1 – 2h

    • Wprowadzenie obiektu o kilku łatwo identyfikowalnych punktach (narożniki).
    • Detekcja narożników (detektor Harrisa) – implementacja prototypu offline w Matlabie
    • Wyznaczenie macierzy projekcji i współczynników zniekształceń nieliniowych kamery używanej w zestawie: kalibracja wzorcem szachownicy przy pomocy narzędzi Matlaba.

    Informacje z wykładu: Gradient obrazu, detektor Harrisa, powstawanie obrazu w kamerze, projekcja perspektywiczna, kalibracja kamery, współczynniki kalibracji, rekonstrukcja trójwymiarowa na podstawie obrazu z pojedynczej kamery.

  6. Kalibracja kamery i rekonstrukcja trójwymiarowa, cz. 2 – 2h

    • algorytm rekonstrukcji trójwymiarowej – prototyp offline.
    • Uruchomienie algorytmu na sprzęcie, obliczenie trójwymiarowego położenia obiektu przy pomocy wyznaczonych współczynników kalibracji i znanego kąta obrotu kamery.

  7. Algorytm CamShift, cz. 1 – 2h

    • Problem pojawienia się w obrazie kamery innych obiektów spełniających warunki detekcji.
    • Implementacja algorytmu CamShift wykorzystującego do detekcji informację o położeniu obiektu z poprzedniej klatki obrazu – prototyp offline w Matlabie.

    Informacje z wykładu: okno, lokalne przetwarzanie obrazu, algorytm CamShift.

  8. Algorytm CamShift, cz. 2 – 2h

    • Ciąg dalszy implementacji algorytmu CamShift.
    • Uruchomienie programu na sprzęcie.

  9. Filtr Kalmana. – 2h

    • Problem stabilności położenia otrzymanego w wyniku rekonstrukcji.
    • Filtr Kalmana estymujący wartości 6 zmiennych opisujących położenie i orientację prze-strzenną śledzonego obiektu (3 translacje + 3 obroty) – analiza przykładowej implementacji w Matlabie.
    • Uruchomienie algorytmu rekonstrukcji trójwymiarowej z filtrem Kalmana na sprzęcie.

  10. Zaliczenie/termin rezerwowy
Pozostałe informacje
Metody i techniki kształcenia:
  • Wykład: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Ćwiczenia laboratoryjne: W trakcie zajęć laboratoryjnych studenci samodzielnie rozwiązują zadany problem praktyczny, dobierając odpowiednie narzędzia. Prowadzący stymuluje grupę do refleksji nad problemem, tak by otrzymane wyniki miały wysoką wartość merytoryczną.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Warunkiem zaliczenia modułu jest uzyskanie zaliczenia z kolokwium na wykładzie oraz z testu na platformie e-learnigowej UPEL.

Zasady udziału w zajęciach:
  • Wykład:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Ćwiczenia laboratoryjne:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci wykonują ćwiczenia laboratoryjne zgodnie z materiałami udostępnionymi przez prowadzącego. Student jest zobowiązany do przygotowania się w przedmiocie wykonywanego ćwiczenia, co może zostać zweryfikowane kolokwium w formie ustnej lub pisemnej. Zaliczenie zajęć odbywa się na podstawie zaprezentowania rozwiązania postawionego problemu. Zaliczenie modułu jest możliwe po zaliczeniu wszystkich zajęć laboratoryjnych.
Sposób obliczania oceny końcowej:

Średnia ważona:

  • Kolokwium na wykładzie – 45%;
  • Test na platformie UPEL dotyczący laboratorium – 45%;
  • Aktywność na zajęciach – 10%.

Ocena wystawiana zgodnie z regulaminem studiów AGH.

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Zaległości student wyrównuje indywidualnie po uzgodnieniach z prowadzącym. Jeżeli dopuszczalna liczba nieobecności nie jest uregulowana nadrzędnymi aktami prawnymi (np. regulamin studiów), maksymalna dopuszczalna liczba nieobecności wynosi 1.

Wymagania wstępne i dodatkowe, z uwzględnieniem sekwencyjności modułów :
  1. Znajomość zagadnień związanych z przetwarzaniem sygnałów.
  2. Podstawowe umiejętności programistyczne.
Zalecana literatura i pomoce naukowe:
  1. Szeliski, Richard. Computer vision: algorithms and applications. Springer Science & Business Media, 2010.
  2. Davies, E. Roy. Computer and machine vision: theory, algorithms, practicalities. Academic Press, 2012.
  3. Kim, Jaeseok, and Hyunchul Shin, eds. Algorithm & SoC Design for Automotive Vision Systems: For Smart Safe Driving System. Springer, 2014.
  4. Wybrane artykuły np. z: CVPR, IEEE Transactions on Pattern Recognition and Machine Intelligence, (dostarczone na zajęciach)
  5. R. C. Gonzalez, R. E. Woods: “Digital Image Processing”. Prentice Hall; 3 ed., 2007
  6. R. C. Gonzalez, R. E. Woods, S. L. Eddins: “Digital Image Processing Using MATLAB”. Prentice Hall; 2003
Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:
  1. Accuracy assessment of Kinect for Xbox One in point-based tracking applications / Adrian GORAL, Andrzej SKALSKI // W: ICMV 2015 : Eighth International Conference on Machine Vision : 19–21 November 2015, Barcelona, Spain / eds. Antanas Verikas, Petia Radeva, Dmitry Nikolaev. — Bellingham : SPIE, cop. 2015. — (Proceedings of SPIE / The International Society for Optical Engineering ; ISSN 0277-786X ; vol. 9875). — ISBN: 978-1-510-60116-1. — S. [1–6]. — Bibliogr. s. 6, Abstr.
  2. Metrological analysis of Microsoft kinect in the context of object localization / Andrzej SKALSKI, Bartosz Machura // Metrology and Measurement Systems : quarterly of Polish Academy of Sciences ; ISSN 2080-9050. ISSN: 0860-8229. — 2015 vol. 22 no. 4, s. 469–478. — Bibliogr. s. 478, Abstr.. — Publikacja dostępna online od: 2015-12-07
  3. Automatyczna generacja cech z wykorzystaniem anizotropowego trójwymiarowego algorytmu SIFT dla potrzeb segmentacji danych pochodzących z Tomografii Komputerowej Automatic features generation based on 3D anisotropic SIFT for Computed Tomography data segmentation / Andrzej SKALSKI, Agnieszka Szczotka, Piotr Kędzierawski, Tomasz Kuszewski, Paweł Kukołowicz // Przegląd Elektrotechniczny = Electrical Review / Stowarzyszenie Elektryków Polskich; ISSN0033-2097. 2015 R.91 nr5, s.25–28. Bibliogr. s.28, Streszcz., Abstr.
  4. Dopasowanie chmur punktów do powierzchni dla potrzeb przetwarzania i analizy obrazów medycznych oraz systemów wizyjnych Point clouds matching for medical image processing, analysis and vision systems / Andrzej SKALSKI, Mirosław SOCHA // Przegląd Elektrotechniczny = Electrical Review / Stowarzyszenie Elektryków Polskich; ISSN0033-2097. 2014 R.90 nr5, s.160–163. Bibliogr. s.163, Streszcz., Abstr.
  5. Automatic tracking of implanted fiducial markers in cone beam CT projection images / T. E.Marchant, A.SKALSKI, B. J.Matuszewski // Medical Physics; ISSN0094-2405. 2012 vol.39 no.3, s.1322–1334. Bibliogr. s.1333–1334
  6. Wizyjny system weryfikacji metod przezskórnej stymulacji nerwów Vision system for verification of transcutaneous electrical nerve stimulation methods / Andrzej SKALSKI, Mirosław SOCHA, Łukasz Malicki, Barbara Kaczmarska // W: Modelowanie iPomiary wMedycynie MPM2011 : materiały X jubileuszowego sympozjum : Krynica, 8–12 maja 2011 = Modelling and Measurements in Medicine / pod red. Janusza Gajdy ; Akademia Górniczo-Hutnicza im. Stanisława Staszica wKrakowie. Wydział Elektrotechniki, Automatyki, Informatyki iElektroniki. Katedra Metrologii, Instytut Biocybernetyki iInżynierii Biomedycznej PAN wWarszawie. Kraków : Wydawnictwo KM AGH, 2011. Opis częśc. wg okł.. ISBN:978-83-61528-24-1. S.135–138. Bibliogr. s.138, Streszcz., Abstr.
  7. The motion capture system to conduct an electrical muscle stimulation experiment on upper limb movement / Andrzej SKALSKI, Mirosław SOCHA, Łukasz MALICKI, Marek IWANIEC // Bio-Algorithms and Med-Systems (Print) / Jagiellonian University. Medical College; ISSN1895-9091. 2011 vol.7 no.4, s.83–88. Bibliogr. s.88, Abstr.
Informacje dodatkowe:

Laboratorium: praca w zespołach 2-osobowych. 10 spotkań po 2 godziny lekcyjne.