Dokumentacja programu Psychopy
Komponenty (narzędzia)
Wstęp
Grupa komponentów to narzędzia, za pomocą których budowany będzie eksperyment. Są
one podzielone na cztery podzbiory:
- Favorites - najczęściej używane opcje.
- Stimuli - obiekty do prezentacji bodźców,
- Responses - narzędzia do udzielania odpowiedzi,
- Custom - opcje używane w niestandardowych procedurach,
- IO - Input/Output
Każdy z tych nagłówków jest rozwijany, po kliknięciu widoczne stają się poszczególne ikony.
|
Ilustracja 20. Pięć grup komponentów
Po kliknięciu ikony symbolizującej dany komponent pojawia się okno, w którym możemy modyfikować poszczególne parametry dotyczące obiektu. Każda z ikon zawiera parametry podstawowe, wspólne dla wszystkich narzędzi, oraz unikalne - związane z jego charakterystyką.
Do parametrów wspólnych należy:
- Name - nazwa obiektu, należy wpisać unikalny ciąg znaków. Program sugeruje nam własną nazwę, zależną od narzędzia, oraz przydziela jej kolejne numery tak, aby nazwy się nie powtarzały.
- Start time - [s] -czas liczony od zera, w którym momencie próby ma się obiekt pojawić (expected time - wpisywane w warunkach, gdy czas pojawienia się narzędzia nie jest elementem stałym zadania, tzn. jest zależny od zmiennej, a chcemy orientacyjnie widzieć na linii czasu okres prezentacji bodźca w porównaniu do innych bodźców)
- Stop duration - [s] - ile sekund ma trwać dany obiekt. W przypadku, gdy np. długość wyświetlania ma być regulowana przez badanego (np. obrazek wyświetla się tak długo aż zostanie udzielona odpowiedź), wtedy należy zostawić to pole puste, podobnie jak pole czasu trwania narzędzia do udzielenia odpowiedzi.
- Position - w jakim miejscu planszy bodziec będzie się znajdował. Używamy tutaj układu współrzędnych o zakresie <-1, 1>, wpisanie 0,0 spowoduje, iż bodziec będzie znajdował się na środku ekranu, -1, -1 - lewy dolny róg, -1, 1 - lewy górny róg itd.
- Units - używana jednostka, możliwe tutaj jest ustawienie jednostki jaka została zdefiniowana w ustawieniach całego eksperymentu, lub ustawienie dowolnej innej z rozwijanej listy. Jednostka „norm” oznacza znormalizowaną wielkość, przy założeniu, że wielkość całego ekranu wynosi [2,2] czyli jak wpiszemy [1,1] to będzie obiekt zajmował pół powierzchni naszego ekranu.
- Color - kolor bodźca
- Color space - przestrzeń barw wg której kodowane są kolory (dostępne: RGB, DLK, LMS).
Parametry unikalne dla danych narzędzi zostaną opisane poniżej.
Ponadto wspólną opcją dla wielu okien menu jest możliwość wybrania z listy jak często ustawiony parametr ma być modyfikowany. W przypadku gdy dana cecha bodźca jest zmienną, konieczne jest określenie jak często program ma modyfikować jej parametry. W ustawieniach programu domyślny jest „constant”, czyli dany parametr jest stały w całym bloku eksperymentu. Dostępne są również: „Set every repeat” - ustaw z każdym powtórzeniem próby, oraz „Set every frame” - ustaw z każdym odświeżeniem ekranu. W przypadku definiowania parametru jako zmienną należy jeszcze pamiętać o prawidłowym wpisaniu jej wymiarów i nazwy w macierzy zmiennych oraz w oknie właściwości narzędzia, o czym szczegółowo powiedziane będzie w podrozdziale „Zmienne”.
|
Ilustracja 21. Okno narzędzia do wstawiania plansz z tekstem do eksperymentu. Po prawej stronie za pomocą rozwijanych list mamy możliwość ustawienia czy i jak często będą się zmieniały wymiary zmiennych. Do dyspozycji jest opcja „constant” - jeżeli parametr przyjmuje tylko jeden wymiar i nie zmienia się w ramach bloku, „set every repeat” - ustaw z każdym powtórzeniem próby, oraz „set every frame” - ustaw z każdym odświeżeniem ekranu.Parametry charakterystyczne dla poszczególnych narzędzi będą opisane według grup, na jakie komponenty zostały podzielone.
W zakładce "Advanced" istnieje możliwość zdefiniowanie znacznika (taga), który zostanie wygenerowany i zapisany do pliku z wynikami (*.psychopy.tag). Znaczniki wystąpienia bodźca w eksperymencie są niezbędne do zsynchronizowania czasu wystąpienia bodźców podczas eksperymentu z równolegle rejestrowanym sygnałem fizjologicznym. Parametry definiujące znacznik dostępne w zakładce "Advanced" to:
- Tag name - nazwa taga (znacznika) - nazwa ta powinna charakteryzować warunek eksperymentalny danej próby, tak więc zazwyczaj powinna tu być użyta zmienna pętli. Np. w przypadku prostego eksperymentu w paradygmacie „Odd-ball” będziemy mieli zmienną „condition” przyjmującą wartości „target” i „non-target”. Względem tej zmiennej będziemy chcieli uśredniać sygnał EEG, tak więc pole 'Tag Name' powinno zawierać odwołanie do tej zmiennej ($condition).
- Tag parameters - słownik dodatkowych parametrów związanych z Tagiem w formacie obiektu „dictionary” języka Python.
Komponenty z grupy Stimuli
 |
Ilustracja 22. Ikonki narzędzi składające się na grupę komponentów „Stimuli”.
W grupie tej dostępne są następujące narzędzia:
- apertura
- kratka
- obrazek
- tekst
- film
- ruchome punkty
- dźwięk
- kształty
- stymulacja SSVEP
- stymulacja czuciowa
Apertura
Narzędzie to służy do ograniczania pola prezentacji bodźca. Tylko jedna apertura może być używana w danym momencie. Po kliknięciu na tę ikonkę mamy do dyspozycji serię opcji, których parametry możemy modyfikować.
|
Ilustracja 23. Okno opcji narzędzia Apertura
Oprócz parametrów wspólnych dla wszystkich narzędzi dostępne jest tutaj jedno dodatkowe pole:
- Size - rozmiar bodźca - wartość uzależniona jest od używanej jednostki; ważne, aby sprawdzić jaka jednostka jest ustawion okienku UNITS znajdującym się poniżej.
Kratka
Narzędzie to służy do umieszczania w eksperymencie tekstury o wzorze kratki lub pasów.
 |  |
Ilustracja 24. Okno opcji narzędzia Kratka
Poszczególne dodatkowe pola odpowiadają za następujące parametry:
- Opacity - krycie, czyli czy bodziec ma być przeźroczysty, czy ma zasłaniać elementy umieszczone pod nim. Parametr ten kodowany jest za pomocą cyfr z zakresu 0 - 1, gdzie 0 to całkowita przejrzystość a 1 - całkowite krycie, wartości pomiędzy wykorzystywane są do uzyskania pożądanego stopnia krycia obiektu.
- Orientation - orientacja bodźca wyrażona w stopniach, innymi słowy rotacja bodźca względem środka obiektu
- Texture - tekstura, czyli powtarzalne wzory 2D eksponowane na określonej powierzchni. Teksturę taką możemy stworzyć, przez opisanie jej za pomocą funkcji matematycznych, np. sin lub cos, albo przez odwołanie się do odpowiedniego pliku, którego ścieżkę umieszczamy w tym oknie.
- Mask - maska - funkcja ograniczająca obszar tekstury.
- Interpolate - jakość, zalecanym ustawieniem jest linear
- Phase - faza - przesunięcie tekstury podane w ilości powtórzeń, przyjmuje wartości z zakresu 0 - 1.
- Spatial Frequency - częstość przestrzenna - ilość powtórzeń tekstury
- Texture resolution - rozdzielczość tekstury w pixelach
Obrazek
Narzędzie to jest niezbędne do prezentacji badanemu zdjęć i obrazków. Parametry, które będą nam przydatne przy tej operacji to:
- Image - ścieżka pliku w formacie tif, jpg, bmp lub png, który ma być wyświetlany.
- Opacity - krycie, czyli czy bodziec ma być przeźroczysty, czy ma zasłaniać elementy umieszczone pod nim. Parametr ten kodowany jest za pomocą cyfr z zakresu 0 - 1, gdzie 0 to całkowita przejrzystość a 1 - całkowite krycie, wartości pomiędzy wykorzystywane są do uzyskania pożądanego stopnia krycia obiektu.
- Orientation - orientacja bodźca wyrażona w stopniach, innymi słowy rotacja bodźca względem środka obiektu
- Size - wielkość wyrażona w jednostce ustawionej z listy poniżej - w przypadku wybrania relatywnych jednostek, maksymalna wielkość wynosi [2,2], czyli w zależności od wielkości monitora konieczne jest proporcjonalne dobranie jednostek. Jeżeli chcielibyśmy, aby używany obrazek pojawiał się w zwierciadlanym odbiciu, wymiar wpisujemy ze znakiem ujemnym, czyli obrót obrazka zajmującego cały ekran względem osi rzędnych wyrażamy [-2,2], a względem osi odciętych- [2,-2].
|
Ilustracja 25. Okno opcji narzędzia Obrazek
Tekst
Narzędzie to jest używane do wstawiania plansz z tekstem do przebiegu eksperymentu. Jego edycja możliwa jest za pomocą następujących narzędzi:
- Text - pole tekstowe w którym umieszczamy tekst do wyświetlenia badanemu
- Letter high - wysokość liter wg jednostek ustawionych na poniższej liście. Względna maksymalna wysokość liter wynosi 2.
- Font - krój czcionki, w obecnej chwili dostępny jest tylko Arial
|
Ilustracja 26. Okno opcji narzędzia
Film
Komponent ten umożliwia odtworzenie materiału filmowego przy pomocy programu Psychopy. Parametry tego obiektu, których wartości można modyfikować to:
- Movie file - plik filmowy - ścieżka pliku filmowego w formacie mpeg, avi, mov.
- Opacity - krycie, czyli czy bodziec ma być przeźroczysty, czy ma zasłaniać elementy umieszczone pod nim. Parametr ten kodowany jest za pomocą cyfr z zakresu 0 - 1, gdzie 0 to całkowita przejrzystość a 1 - całkowite krycie, wartości pomiędzy wykorzystywane są do uzyskania pożądanego stopnia krycia obiektu.
- Orientation - orientacja - ilość stopni obrotu
- Size - wielkość wyrażona w jednostce ustawionej z listy poniżej - w przypadku wybrania relatywnych jednostek, maksymalna wielkość wynosi [2,2], czyli w zależności od wielkości monitora konieczne jest proporcjonalne dobranie jednostek. Jeżeli chcielibyśmy, odtwarzany film pojawiał się w zwierciadlanym odbiciu, wymiar wpisujemy ze znakiem ujemnym, czyli obrót obrazka zajmującego cały ekran względem osi rzędnych wyrażamy [-2,2], a względem osi odciętych- [2,-2].
|
Ilustracja 27. Okno opcji narzędzia Film
Ruchome punkty
Bodziec, który możemy stworzyć za pomocą tego narzędzia tworzą ruchome punkty poruszające się w różnych kierunkach. W literaturze anglojęzycznej nosi nazwę Random Dot Kinematogram. Oprócz opcji podstawowych bodziec ten możemy modyfikować za pomocą następujących parametrów:
- Coherence - spójność - określa jaka część kropek porusza się w podanym kierunku a jaka losowo.
- Direction - kierunek ruchu kropek wyrażony w stopniach
- Dot lifetime - długość wyświetlania kropki - ilość cykli odświeżania ekranu przypadająca na jedną pozycję kropki, pole puste oznacza czas nieokreślony.
- Dot size - rozmiar kropki w pixelach. Jednostka ta jest niezależna od ustawień opcji „Units”, zawsze rozmiar kropki podawany jest w pixelach
- Field position - pozycja pola po którym poruszają się kropki, wyznaczane na podstawie układu współrzędnych o zakresie osi -1 - 1, liczone względem środka bodźca
- Field shape - kształt pola po którym poruszają się kropki, możliwe jest wybranie kształtu koła i kwardatu
- Field size - rozmiar pola po którym poruszają się kropki, wymiar uzależniony od jednostek ustawionych poniżej
- Number of dots - liczba kropek
- Opacity - krycie, czyli czy bodziec ma być przeźroczysty, czy ma zasłaniać elementy umieszczone pod nim. Parametr ten kodowany jest za pomocą cyfr z zakresu 0 - 1, gdzie 0 to całkowita przejrzystość a 1 - całkowite krycie, wartości pomiędzy wykorzystywane są do uzyskania pożądanego stopnia krycia obiektu.
- Speed - prędkość kropek - liczone jako przemieszczenie kropki pomiędzy kolejnymi cyklami odświeżania ekranu
- Signal dots - właściwy ruch bodźca - bodziec może być opisany za pomocą właściwego ruchu kropek oraz szumu. Opcja ta pozwala na określenie w jakiej relacji pozostają te dwa parametry. Wybierając „same” szum i właściwy ruch są stałe, w przypadku ustawienia „different” - wartości szumu i ruchu właściwego są randomizowane i zmieniają się z każdym odświeżeniem ekranu.
- Noise dots - Szum - Określa zachowanie szumu - opcja „position” - pozycja szumu zmienia się z każdym odświeżeniem ekranu, „direction” - ruch kropek szumu jest randomizowany, ale ma określony kierunek, a „walk” - szum ma zmienny kierunek, ale zachowaną prędkość
 |  |
Ilustracja 28. Okno opcji narzędzia Ruchome punkty
Dźwięk
Program Psychopy umożliwia również zastosowanie w przebiegu eksperymentu bodźców słuchowych w postaci dźwięków lub przygotowanych wcześniej plików muzycznych. Kontrole nad parametrami dźwięku zapewniają nam okna:
- Sound- dźwięk - możemy tutaj wpisać nazwę dźwięku, np. C. Można również korzystać z dźwięków skali chromatycznej - dźwięki podwyższone zapisujemy dodając do nazwy „sh”, np. Ash, z bemolami natomiast - Afl. Aby określić pożądany dźwięk możemy również podać jego wysokość, np. 440Hz lub załączyć gotowy plik dźwiękowy w formacie wav lub ogg.
- Volume - głośność - skala głośności rozciąga się od 0 do 1.
|
Ilustracja 29. Okno opcji narzędzia Dźwięk
Kształty
Narzędzie to umożliwia stworzenie prostych figur i nadanie im dowolnych parametrów w następujących obszarach:
- Opacity - krycie, czyli czy bodziec ma być przeźroczysty, czy ma zasłaniać elementy umieszczone pod nim. Parametr ten kodowany jest za pomocą cyfr z zakresu 0 - 1, gdzie 0 to całkowita przejrzystość a 1 - całkowite krycie, wartości pomiędzy wykorzystywane są do uzyskania pożądanego stopnia krycia obiektu.
- Orientation - orientacja bodźca wyrażona w stopniach, innymi słowy rotacja bodźca względem środka obiektu
- Num. vertices - liczba wierzchołków
- Line width - grubość linii
- Size - wielkość wyrażona w jednostce ustawionej z listy poniżej - w przypadku wybrania relatywnych jednostek, maksymalna wielkość wynosi [2,2], czyli w zależności od wielkości monitora konieczne jest proporcjonalne dobranie jednostek.
|
Ilustracja 30. Okno opcji narzędzia Kształty
Stymulacja SSVEP
Komponent Blinker umożliwia sterowanie urządeniem do stymulacji SSVEP. Urządzenie umożliwiające wyświetlanie bodźców wzrokowych z dużą częstością. Urządzenie razem ze sposobem jego uruchamiania zostało opisane w instrukcji użytkownika BCI-Appliance. Biblioteka Psychopy w wersji brain wyposażona jest w oddzielny bloczek do jego obsługi (Ilustracja 36).
PAMIĘTAJ!
W jednej rutynie możesz użyć tylko jednego bloczka Blinker.
 |  |
Ilustracja 31. Bloczek blinker
Wśród parametrów znajdują się:
- Stimulating function - [str] funkcja stymulująca: 'rect' - prostokątna i 'sin' - sinus.
- Duty cycle - [float] liczba z zakresu 0-100 określająca stopień wypełnienia.
- Stimulating frequencies - [array of 16 ints] 16-elementowa lista z częstościami stymulacji dla każdego z pól BCI-appliance w hercach. Szczególne wartości: 0- pole włączone, 1- pole wyłączone.
- Stimulating phases - [array of 16 ints] 16-elementowa lista z fazami stymulacji dla każdego z pól BCI-appliance.
- Device port - port urządzenia. Domyślna wartość pola to '/dev/ttyUSB0'.
- Show preview - wyświetlenie okna z podglądem. Dopuszczalne wartości: 0 - nie wyświetlaj, 1 - wyświetlaj.
Stymulacja czuciowe
Komponent Haptic obsługuje urządzenie umożliwiające generowanie bodźców czuciowych o zadanej częstości i czasie trwania. Biblioteka Psychopy w wersji brain wyposażona jest w oddzielny bloczek do jego obsługi (Ilustracja 37).
PAMIĘTAJ!
Przed rozpoczęciem eksperymentu należy podłączyć stymulator do komputera oraz do źródła zasilania. Jeżeli nie podłączysz stymulatora do źródła zasilania lub w trakcie eksperymentu rozłączysz go ze źródłem, urządzenie nie będzie wysyłało bodźców stymulujących, a system tego nie zauważy!
|
Ilustracja 32. Okno bloczka haptic
Modyfikowalnym parametrem bloczka jest haptic channel. Wskazuje numer kanału, na który ma zostać podany bodziec czuciowy (1-4).
Komponenty z grupy Responses