Jednostka prowadząca: Katedra Informatyki i Automatyki
- 3 semestr, informatyka st. II-go stopnia
- ECTS: 3
Wykłady, 30 godzin
1. Wprowadzenie do informatyki afektywnej
-
Historia i definicja informatyki afektywnej. Przegląd zastosowań i znaczenie emocji w interakcji człowiek-komputer. Omówiony zostanie pionierski wpływ Rosalind Picard oraz rozwój dziedziny od niszowych badań do komercyjnych wdrożeń w medycynie i marketingu. Słuchacze dowiedzą się, dlaczego nadanie maszynom zdolności rozpoznawania afektu jest kluczowe dla budowania naturalnych relacji z technologią.
2. Psychologiczne podstawy emocji
-
Teorie emocji (m.in. teoria podstawowych emocji, teoria dwuczynnikowa). Behawioralne i poznawcze aspekty emocji. Analizie poddany zostanie spór między podejściem dyskretnym (np. model Paula Ekmana) a wymiarowym (walencja i pobudzenie). Wyjaśnione zostanie również, jak procesy biologiczne i fizjologiczne przekładają się na obserwowalne stany psychiczne.
3. Metody rozpoznawania emocji
-
Klasyfikacja metod: analiza obrazu, śledzenie wzroku, analiza tekstu i głosu. Problemy i wyzwania w rozpoznawaniu emocji. Przedstawione zostaną różnice w skuteczności metod zależnie od kontekstu, np. w kontrolowanych warunkach laboratoryjnych versus „w dziczy” (naturalne środowisko). Omówimy także trudności związane z subiektywizmem etykietowania danych treningowych przez ludzi.
4. Analiza ekspresji twarzy – podstawy.
-
Wprowadzenie do analizy obrazu: wykrywanie twarzy i cech kluczowych. Wprowadzenie do algorytmów rozpoznawania emocji z obrazu. Zaprezentowany zostanie system kodowania akcji twarzy (FACS), który pozwala na dekompozycję mimiki na pojedyncze jednostki ruchu (Action Units). Studenci poznają geometryczne metody opisu twarzy oparte na punktach charakterystycznych (landmarks).
5. Analiza ekspresji twarzy – metody zaawansowane.
-
Deep learning w rozpoznawaniu emocji z obrazów twarzy. Architektury sieci neuronowych używane w analizie obrazów (np. CNN). Skupimy się na procesie automatycznego wyodrębniania cech przez głębokie warstwy sieci, co eliminuje potrzebę ręcznego projektowania deskryptorów. Poruszone zostaną tematy augmentacji danych w celu poprawy odporności modeli na różne kąty nachylenia głowy i oświetlenie.
6. Śledzenie wzroku – podstawy.
-
Czym jest śledzenie wzroku i jak działa? Technologie i narzędzia do analizy ruchu gałek ocznych (np. okulografy, kamery). Wyjaśniona zostanie fizyczna zasada działania sensorów wykorzystujących odbicie światła podczerwonego od rogówki (PCCR). Omówimy parametry techniczne urządzeń stacjonarnych oraz mobilnych okularów typu smart-glasses.
7. Śledzenie wzroku w analizie emocji.
-
Korelacja ruchu wzroku z emocjami użytkownika. Przykłady aplikacji: badania UX, systemy adaptacyjne. Przedstawione zostaną pojęcia fiksacji i sakad oraz ich interpretacja w kontekście obciążenia poznawczego i zainteresowania. Dowiesz się, jak mapy cieplne (heatmaps) pomagają identyfikować elementy interfejsu budzące frustrację lub zachwyt.
8. Analiza emocji w tekście.
-
Wykorzystanie metod NLP do analizy sentymentu i emocji. Porównanie narzędzi i algorytmów (np. BERT, VADER). Wykład obejmie ewolucję metod od prostych słowników emocjonalnych po zaawansowane modele transformatorowe rozumiejące kontekst i ironię. Omówimy wyzwania specyficzne dla języka polskiego, takie jak fleksja i złożona składnia.
9. Wielomodalne podejście do rozpoznawania emocji.
-
Łączenie analizy obrazu, ruchu wzroku, głosu i tekstu. Przykłady systemów wielomodalnych w praktyce. Zaprezentowane zostaną strategie fuzji danych (early fusion i late fusion) oraz ich wpływ na precyzję predykcji. Wyjaśnimy, dlaczego integracja wielu kanałów sensorycznych drastycznie zmniejsza liczbę błędów typu „false positive”.
10. Rozpoznawanie emocji w czasie rzeczywistym.
-
Wyzwania techniczne i algorytmiczne. Wykorzystanie modeli w systemach interaktywnych. Skupimy się na optymalizacji modeli pod kątem niskich opóźnień (latency) oraz efektywnym zarządzaniu buforami danych. Omówione zostaną techniki kompresji wag sieci neuronowych, umożliwiające działanie systemów na urządzeniach o ograniczonej mocy obliczeniowej.
11. Projektowanie afektywnych interfejsów użytkownika.
-
Interakcja człowiek-komputer, oparta na emocjach. Przykłady aplikacji (np. systemy edukacyjne, gry). Przedstawione zostaną zasady projektowania systemów empatycznych, które potrafią dostosować poziom trudności zadania do poziomu stresu ucznia. Omówimy koncepcję pętli zwrotnej afektu, w której system aktywnie stara się poprawić nastrój użytkownika.
12. Informatyka afektywna w sztucznej inteligencji.
-
Jak AI rozumie i reaguje na emocje? Przegląd aplikacji w chatbotach i asystentach wirtualnych. Analizie poddane zostaną metody syntezy mowy o zabarwieniu emocjonalnym (emotional TTS) oraz generowanie empatycznych odpowiedzi tekstowych. Rozważymy, jak inteligencja emocjonalna wpływa na budowanie zaufania między człowiekiem a agentem AI.
13. Algorytmy generatywne i ich zastosowanie w interfejsach afektywnych.
-
Generatywne sieci neuronowe (GAN) a emocje w obrazach i animacjach. Praktyczne przykłady generowania emocjonalnych wyrazów twarzy. Studenci poznają techniki „image-to-image translation”, pozwalające na zmianę ekspresji na zdjęciu przy zachowaniu tożsamości osoby. Omówimy rolę modeli dyfuzyjnych w tworzeniu dynamicznych, emocjonalnych awatarów.
14. Etyka w informatyce afektywnej
-
Problemy związane z prywatnością, zgodą użytkownika i nadzorem. Przykłady dobrych praktyk. Poruszymy kontrowersyjny temat „nadzoru emocjonalnego” w miejscu pracy oraz ryzyko dyskryminacji wynikające z uprzedzeń w danych treningowych (bias). Przedstawione zostaną standardy prawne, takie jak RODO, w kontekście danych biometrycznych.
15. Podsumowanie i przegląd projektów studenckich
-
Dyskusja na temat wyzwań, zastosowań przyszłości. Dokonamy krytycznej oceny obecnych ograniczeń technologicznych w kontekście rozumienia subtelnych i złożonych stanów ludzkich. Wykład zakończy się wizją przyszłości, w której komputery stają się pełnoprawnymi partnerami społecznymi człowieka.
Laboratoria, 15 godzin
-
Wprowadzenie do narzędzi do analizy emocji
Instalacja i konfiguracja środowisk (np. Python, biblioteki: OpenCV, librosa, scikit-learn). Wykrywanie twarzy i cech kluczowych za pomocą OpenCV. Studenci nauczą się przygotowywać potoki przetwarzania danych (pipelines) oraz obsługiwać wejście z kamery internetowej. Pierwsze zadanie obejmie implementację prostego algorytmu śledzenia punktów charakterystycznych w czasie rzeczywistym.
-
Analiza emocji z ekspresji twarzy
Wykorzystanie OpenCV i OpenFace do analizy obrazów twarzy. Budowa prostego klasyfikatora emocji (np. SVM). Uczestnicy nauczą się eksportować wektory cech Action Units i wykorzystywać je jako dane wejściowe do tradycyjnych modeli uczenia maszynowego. Porównamy skuteczność różnych jąder (kernels) klasyfikatora SVM w zadaniu rozpoznawania 7 podstawowych emocji.
-
Wykorzystanie sieci neuronowych do analizy emocji z obrazów
Implementacja modelu CNN do rozpoznawania emocji. Testowanie modelu na zestawie danych (np. FER2013). Zadanie obejmie samodzielne zaprojektowanie architektury sieci oraz proces trenowania z wykorzystaniem technik zapobiegających przeuczeniu (dropout, batch normalization). Studenci przeanalizują macierze błędów, aby zrozumieć, które emocje są najczęściej mylone przez systemy wizyjne.
-
Analiza emocji z wideo
Rozpoznawanie emocji z serii klatek wideo. Przegląd narzędzi do analizy ruchu twarzy (mediapipe). Skupimy się na modelowaniu dynamiki zmian mimicznych, co pozwala odróżnić np. uśmiech szczery od wymuszonego. Wykorzystamy bibliotekę MediaPipe do stworzenia gęstej siatki 3D twarzy (Face Mesh) działającej płynnie na procesorze urządzenia.
-
Realizacja systemu analizy emocji w czasie rzeczywistym
Wykorzystanie strumienia wideo i modeli deep learning. Integracja z kamerą lub nagranymi materiałami. Studenci zaimplementują mechanizm wygładzania predykcji (np. średnia krocząca), aby uniknąć efektu „migotania” etykiet emocjonalnych. Kluczowym elementem będzie optymalizacja kodu w celu osiągnięcia stabilnej liczby klatek na sekundę (FPS).
-
Projektowanie interaktywnego systemu opartego na emocjach
Stworzenie prototypu aplikacji, która reaguje na emocje użytkownika. Przykład: interfejs adaptacyjny lub gra interaktywna. Zadanie polega na połączeniu modułu rozpoznawania emocji z logiką aplikacji, np. zmianą muzyki w tle lub kolorystyki interfejsu pod wpływem nastroju gracza. Studenci będą musieli zaprojektować scenariusze reakcji systemu na wykryte stany afektywne.
-
Prezentacja projektów końcowych
Studenci przedstawiają swoje projekty, omawiają zastosowane metody i wyniki. Dyskusja na temat napotkanych problemów i potencjalnych udoskonaleń. Każdy zespół przeprowadzi demonstrację „na żywo”, testując odporność swojego systemu na warunki oświetleniowe w sali. Sesja kończy się wspólną analizą możliwości komercjalizacji przedstawionych pomysłów.



