Komunikacja człowiek-komputer
W pierwszej części zajęć laboratoryjnych przedmiotu KCK zapoznamy się ze środowiskiem python. Następnie zajmiemy się podstawami przetwarzania obrazu. Zajęcia #3 są poświęcone zapoznaniu się z możliwościami biblioteki openCV, a zajęcia #4-#6 – zaproponowaniu i implementacji własnej aplikacji dokonującej przetwarzania obrazu. Dalsze części laboratoriów będą poświęcone przetwarzaniu dźwięku, sensorom (Leap Motion, ew. EEG) oraz użyteczności oprogramowania.
Rezultaty poszczególnych części powinny zostać opisane w sprawozdaniach przygotowywanych samodzielnie lub w parach (ogłaszane przez prowadzącego dla poszczególnych zadań). Środowiskiem zalecanym do pisania sprawozdań jest LaTeX, a do tworzenia ewentualnych wykresów – matplotlib lub inny automatyczny generator taki jak R (ich znajomość przyda się na przyszłość).
Sprawozdania [szablon]
Tematyka | Elementy | Termin: 23:59 |
---|---|---|
Podstawy pythona (2 pkt) Uzupełnienie do laboratorium (~50min): historia i specyfika pythona, składnia i podstawowe polecenia [video]. Unikanie powtórzeń, "wierszyków" w źródle, zaszytych/ukrytych stałych – tworzenie uniwersalnych funkcji, czyli podstawowy refactoring podczas pisania kodu. |
| Dzień przed zajęciami #2 |
Przetwarzanie obrazu – zadanie wstępne (3 pkt) Przydatne materiały: OpenCV oraz bindings: java, C# i inne. Uzupełnienie do laboratorium (~40min [video]): obraz rastrowy, reprezentacje koloru (RGB, CMY, CMYK, HSV). Tajemnica fioletu i purpury/magenty/fuksji [1], [2], [3]. Operacje na histogramie, na charakterystyce (we/wy) oraz filtrowanie obrazu [video]. |
| Dzień przed zajęciami #x |
Przetwarzanie obrazu – aplikacja (5 pkt) Uzupełnienie do laboratorium (~40min): grafika wektorowa a rastrowa; zalety i zastosowania [video]. Jak działa i kiedy używać png, a kiedy jpg. Momenty Hu [1], [2], [3a], [3b] i transformata Hougha [video]. Macierz pomyłek i trafność klasyfikowania; automatyzacja; optymalizacja [video]. |
Popularne przykłady zadań to
| Dzień przed zajęciami #x |
Dźwięk i mowa (3 pkt) Uzupełnienie do laboratoriach (~90min): parametry analogowego i cyfrowego sygnału dźwiękowego, zasada działania FT (ciekawostka: IFT, FT), widmo, spektrogram, aliasing i metody zabezpieczenia się przed nim, autokorelacja, wykrywanie częstotliwości podstawowej w mowie. Dla chętnych: analiza widma oraz zaawansowane informacje o cepstrum.
|
Wczytywanie plików/strumieni dźwiękowych (java): tutorial, pakiet sampled
Biblioteka do wczytywania wav'ów Biblioteka do FFT
| Dzień przed zajęciami #x |
Użyteczność (waga 3) |
Prezentacja 10–12 minut (przetestujcie, czy się mieścicie w czasie!) zawierająca:
| Pokaz na ostatnich zajęciach (każdy członek zespołu zabiera głos podczas prezentacji) |
Przed wysłaniem sprawozdania upewnij się, że:
- Podałeś pochodzenie źródłowe wszystkich cytowanych w sprawozdaniu fragmentów i wykorzystanych materiałów (literatura)
- Sprawdziłeś pisownię tekstu (spell-check)
- Wykresy (i w miarę możliwości rysunki) są wektorowe (pdf, ps, svg itp.)
- Zatytułowałeś mail tak:
[KCK] sprawozdanie 1, Janek Kowalski & Marcin Nowak
- Wysyłasz do prowadzącego laboratorium (
maciej.komosinski@cs.put.poznan.pl / pawel.liskowski@cs.put.poznan.pl / agnieszka.mensfelt@cs.put.poznan.pl / michal.tomczyk@cs.put.poznan.pl
) dwa pliki:- sprawozdanie (pdf), nazwa zawiera numer sprawozdania i nazwiska autorów:
1_KowalskiNowak.pdf
- źródła programu (zip – same źródła):
1_KowalskiNowak.zip
. Jeśli źródło to jeden plik, wyślij go bezpośrednio bez kompresowania.
- sprawozdanie (pdf), nazwa zawiera numer sprawozdania i nazwiska autorów:
- Zwykle pdf powinien mieć < 1 MB, a zip < 50 KB.
Wszelkie sugestie do przedmiotu i poszczególnych zajęć możesz zgłaszać tutaj.