dr inż. Maciej Kraszewski

inżynier

menedżer R&D

nauczyciel akademicki

dr inż. Maciej Kraszewski

inżynier

menedżer R&D

nauczyciel akademicki

Metody rozpoznawania obrazów

Przedmiot poświęcony jest zagadnieniom widzenia maszynowego. Omówimy na nim klasyczne i nowoczesne metody rozpoznawania obrazów w kontekście praktycznych zastosowań (pomiary, rozszerzona rzeczywistość, rozpoznawanie twarzy).

Poznamy też fizykę procesu powstawania obrazów cyfrowych oraz popularne narzędzia programistyczne stosowane w widzeniu maszynowym.

Program

  • Tydzień 1: Wprowadzenie. Zajęcia organizacyjne
  • Tydzień 2: Wprowadzenie do narzędzi programistycznych
  • Tydzień 3: Detekcja prostych obiektów geometrycznych
  • Tydzień 4: Jak powstaje obraz? Geometria rzutowa
  • Tydzień 5: Lokalizacja w przestrzeni 3D
  • Tydzień 6: Jak sobie radzić ze zbyt dużym obrazem?
  • Tydzień 7: Detektor korelacyjny
  • Tydzień 8: Detektory oparte o inżynierię cech
  • Tydzień 9: Analiza składowych głównych (PCA)
  • Tydzień 10: Deep learning – wprowadzenie do sieci neuronowych
  • Tydzień 11: Deep learning – konwolucyjne sieci neuronowe
  • Tydzień 12: Deep learning – detekcja obiektów
  • Tydzień 13: Wizyta w laboratorium OptiNav
  • Tydzień 14: Seminarium
  • Tydzień 15: Prezentacja prac zaliczeniowych

Zadania przygotowawcze

Tydzień 2

Proszę zainstalować na swoich komputerach środowisko Visual Studio Code i dystrybucję Pythona – Anaconda. Następnie proszę napisać program, który będzie wyświetlał na żywo obraz z kamerki internetowej. Można do tego wykorzystać np. pakiet OpenCV (jest instalowany razem z Anacondą).

Literatura

  • R. Szeliski, Computer Vision: Algorithms and Application – e-book dostępny za darmo na stronie autora (link). Bardzo dobre omówienie wielu poruszanych przez nas zagadnień. Można go traktować jako podręcznik podstawowy.
  • A. Geron, Uczenie maszynowe z użycie Scikit-Learn i TensorFlow, Helion 2018. Dużo przydatnych ćwiczeń na temat uczenia maszynowe i deep learningu, ale od wydania pojawiła się nowa wersja frameworka TensorFlow i podane przykłady są trochę przestarzałe.

Zasady zaliczenia

Ocena końcowa jest średnią arytmetyczną oceny z seminarium oraz prezentacji wyników projektu zaliczeniowego.

Tematy seminarium

Tematy seminarium będą dostępne wkrótce.

Projekt zaliczeniowy

Proszę napisać w zespole program, który będzie wykrywał i rozpoznawał na obrazie z kamery znaki drogowe. Działanie programu należy zaprezentować na samodzielnie wykonanej rejestracji wideo przejazdu samochodem. Obrazy z nagrania, na którym będzie demonstrowane działanie programu nie mogą być użyte do trenowania wykorzystywanych przez program algorytmów, sieci neuronowych itd.