Forum czerwiec 28.indd - Pomiary Automatyka Robotyka
Transkrypt
Forum czerwiec 28.indd - Pomiary Automatyka Robotyka
Nr 6/2010 Pomiary Automatyka Robotyka 6/2010 Modelowanie psychoakustyczne w perceptualnym kodowaniu MPEG-1 Layer 3 Dariusz Łukasz Kania – Politechnika Wrocławska ermin MP3 (pełna nazwa MPEG-1 Wejściowy Layer-3) oznacza standard zapisu dźwięsygnał ku poddanego stratnej kompresji. To jeden foniczny z trzech algorytmów kodowania zaproponowanych w 1991 r. przez komitet standaryzacyjny MPEG (Moving Pictures Expert Group), który powstał trzy lata wcześniej. Komitet ten jest twórcą kilku standardów kodowania sygnału audiowizualnego o niskiej przepływności binarnej, które weszły do powszechnego użytku pod nazwą MPEG. Pierwszym był standard MPEG-1 zoptymalizowany do kompresji filmów o rozdzielczości 288 × 352 pikseli oraz związanego z nim sygnału audio. Sygnał dźwiękowy mógł być kodowany z wykorzystaniem trzech różnych algorytmów (na trzech różnych warstwach), potocznie zwanych MP1, MP2 i MP3. Im wyższy numer warstwy, tym większa kompresja, a więc niższe pasmo transmisji i wielkość pliku wyjściowego. Norma dopuszczała kompresję sygnału monofonicznego lub stereofonicznego próbkowanego z częstotliwością 32 Kb/s, 44,1 Kb/s lub 48 Kb/s. Swoją popularność algorytm MP3 zawdzięcza przyzwoitej jakości zapisu przy akceptowalnym dla większości odbiorców współczynniku kompresji. Poza tym Instytut Fraunhofera bezpłatnie udostępnił kod źródłowy przykładowych programów kodujących i dekodujących. Spowodowało to powstanie konkurencji i pozwoliło na stworzenie szerokiej gamy zróżnicowanego oprogramowania implementującego ten algorytm. Algorytm koderów Ogólny algorytm działania koderów MPEG-1 jest następujący: sygnał wejściowy zostaje podzielony na odpowiednie podzakresy częstotliwościowe. Podzakresy porównywane są z oryginałem i na podstawie analizy modelu psychoakustycznego koder określa próg słyszalności dla danej próbki. Następnie każda z próbek jest kwantowana tak, by słowo ją opisujące było na tyle małe, żeby szum kwantowania znajdował się poniżej progu słyszalności. Długość słowa uzyskuje się przez podzielenie wartości poziomu stosunku sygnału do szumu przez 6 (1 bit kwantyzacji to poprawa dynamiki o 6 dB) i zaokrąglenie wyniku wzwyż. Z gotowych danych koder formuje strumień, dzieląc go na czasowe ramki, dodatkowo umieszczając informacje o układzie bitów na przestrzeni widma (ile bitów opisuje dane próbki). Kodowanie wymaga dużo więcej operacji obliczeniowych niż dekodowanie (asymetria) – dekoder nie wymaga modelu psychoakustycznego. Schemat blokowy kodera w standardzie MPEG-1 Layer 3 (rys. 1) różni się od schematów na pozostałych poziomach. Poziom 1 dzieli pasmo na równe podzakresy, a model psychoakustyczny wykorzystuje tylko maskowanie częstotliwo- Zespół 32 filtrów MDCT Kwantyzator Koder Huffmana Formowanie strumienia bitów Wy jściowy strumień bitów Kontrola zniekształceń 1024punktowa FFT Model psychoakustyczny Wtórne kodowanie informacji Rys. 1. Ogólny schemat kodera MP3 ściowe. Poziom 2 w filtrowaniu kieruje się trzema ramkami: poprzednią, obecną i następną, wykorzystując element maskowania czasowego. Poziom 3 wprowadza nierówny rozdział częstotliwości w podzakresach (uwzględnia różną czułość ucha ludzkiego dla różnych częstotliwości - z naciskiem na przedział 2 – 4 kHz), używa zaawansowanego maskowania czasowego, redukuje powtarzalność sygnałów stereo i używa znanego algorytmu kompresji Huffmana. Bardzo ważnym blokiem w kodowaniu dźwięku na wszystkich poziomach jest tzw. model psychoakustyczny, na podstawie którego koder określa próg słyszalności. Model psychoakustyczny Ludzkie zdolności percepcji słuchowej to kwestia osobnicza. Teoretycznie człowiek słyszy dźwięki z zakresu od 20 Hz do 20 kHz. W rzeczywistości jednak dla większości ludzi górna granica percepcji to ok. 16 kHz. Zakres największej czułości słuchu to pasmo w granicach 2 – 4 kHz, co najprawdopodobniej wynika z naturalnego dostosowania percepcji słuchowej do sygnału mowy (zakres częstotliwości od 500 Hz do 2 kHz). Częstotliwości położone w środku pasma słyszymy lepiej niż częstotliwości skrajne, zaś czułość ucha w zakresie wysokich częstotliwości spada wraz z wiekiem oraz pod wpływem długotrwałego narażenia na dźwięki o znacznym natężeniu. Psychoakustyka to jeden z działów psychofizyki zajmujący się badaniem relacji między fizyczną charakterystyką dźwięków, a wywoływanymi przez nie wrażeniami słuchowymi. Model psychoakustyczny jest matematycznym modelem ludzkiego słuchu, który informuje koder jakie informacje o dźwięku są rozpoznawalne przez ludzkie ucho, a jakie – nie i mogą być pominięte w procesie kodowania. Należy on do grupy modeli układu słuchowego, w której wytyczne do modelowania pochodzą z pomiarów psychoakustycznych. Modele psychoakustyczne zwykle przewidują zakres słyszalności od 20 Hz do 20 kHz i maksymalną czułość w zakresie od 2 kHz do 4 kHz. Zjawiskami słuchowymi najczęściej wykorzystywanymi przy opracowywaniu modeli psychoakustycznych są: maskowanie dźwięków, percepcja wysokości dźwięków oraz dyskryminacja modulacji amplitudy. 53 Forum Młodych Pomiary Automatyka Robotyka 6/2010 Wyznaczenie modelu psychoakustycznego słuchu, wymaga dokładnego poznania budowy ucha ludzkiego oraz sposobu jego działania. System słuchowy człowieka jest drugim po systemie analizatora wzrokowego systemem pod względem złożoności. W jego skład oprócz części mechanicznej oraz neuronowej wchodzi mózg. Traktowany jest on jako filtr uwypuklający najważniejsze informacje oraz modyfikujący i ignorujący dane nadmiarowe, tak aby świadomość mogła koncentrować się na kwestiach najważniejszych do przetrwania w danym środowisku. W skład ucha wchodzi tzw. część mechaniczna oraz część neuronowa. Rola części mechanicznej w całości analizatora jest pomocnicza. To konieczne elementy ze względu na funkcjonowanie całego systemu słuchowego, jednak z punktu widzenia procesów przetwarzania sygnałów wprowadzają zniekształcenia, deformując widmo podlegającego analizie dźwięku. Małżowina uszu z przewodem słuchowym tworzą rodzaj elastycznej tuby, wprowadzającej dźwięk z otoczenia do błony bębenkowej. Przewód słuchowy zewnętrzny ochrania delikatną i łatwą do uszkodzenia błonę bębenkową oraz zapewnia dobre warunki do jej pracy (stabilna temperatura oraz odpowiednia wilgotność). Aby fala dźwiękowa nie została odbita, konieczne jest dopasowanie warunków propagacji fali dźwiękowej w płynie wypełniającym ślimak ucha wewnętrznego (perylimfa), do warunków rozchodzenia się dźwięków w powietrzu. Zajmuje się tym układ kinematyczny złożony z młoteczka, kowadełka i strzemiączka. Przewód ślimakowy będący jednym z kilku kanałów ucha wewnętrznego spełRys. 2. Budowa ucha ludzkiego [źródło:www.wypadek.pl] nia rolę analizatora dźwięku. Światło kanału ślimaka jest przedzielone poprzecznie na całej odległości blaszką spiralną tworząc w ten sposób odcinek dolny i górny. Elastyczna część blaszki jest nazywana błoną podstawną, która spełnia rolę analizatora częstotliwościowego drgań akustycznych. Na błonie znajduje się skupisko komórek słuchowych (rzęsatych) zwane narzędziem Cortiego. Każda komórka ma rzęski o różnej długości. Rzęski dłuższe dotykają błony pokrywającej, która wraz z zespołem komórek tworzy system przetwarzający sygnały mechaniczne na sygnały nerwowe. W analizatorze słuchowym istnieje duża różnica potencjałów między wnętrzem komórki rzęsatej a kanałem ślimakowym (ok. 160 mV), co umożliwia sterowanie systemem na drodze elektrycznej. Dużą rolę spełnia błona podstawna. Jej funkcja polega na zamianie zmian ciśnienia akustycznego w perylimfie, na poprzeczne oscylacje poszczególnych punktów błony. Błona ta wzdłuż kanału ślimaka zmienia swą szerokość, masę i sztywność, w wyniku czego drgania mechaniczne strzemiączka w okienku owalnym ślimaka (przenosząc się poprzez perylimfę) wywołują nierównomierne oscylacje poszczególnych punktów błony. 54 Kodowanie perceptualne sygnału fonicznego Kodowanie perceptualne wykorzystuje model psychoakustyczny i jest powszechnie stosowane w systemach transmisji i rejestracji sygnału fonicznego. Dzięki niemu możliwe jest obniżenie przepływności binarnej do nie powodując zauważalnego wzrostu szumu. Takie kodowanie powoduje nieodwracalną utratę informacji, co jednak nie pogarsza zauważalnie subiektywnie postrzeganej jakości dźwięku. Absolutny próg słyszenia Ważną cechą słuchu ludzkiego jest dolna granica słyszenia, tzw. absolutny próg słyszenia (rys. 3). Poniżej tego poziomu głośności dźwięki nie są słyszalne dla ucha ludzkiego, co wy- Rys. 3. Absolutny próg słyszenia u człowieka korzystuje się przy kodowaniu perceptualnym. Na podstawie danych eksperymentalnych można znaleźć wyrażenie opisujące zależność absolutnego progu słyszenia od częstotliwości. Najbardziej powszechny jest model zaproponowany przez Terharda, wykorzystany w wielu współczesnych standardach kompresji. Funkcja aproksymująca ma postać: 4 −0,8 RdB = 3, 64 ⋅ fkHz − 6, 5 ⋅ e −0,6⋅( fkHz −3,3) + 10−3 ⋅ fkHz 2 (1) Pasma krytyczne słuchu Ogólnie przyjęte jest rozpatrywanie zjawisk maskowania w świetle teorii pasm krytycznych, związanych z selektywnością częstotliwościową błony podstawnej. Pasmo krytyczne to pasmo, wewnątrz którego nie słyszy się tonów o niższej, niż ton maskujący amplitudzie. Jest ono miarą rozdzielczości częstotliwościowej słuchu. W 1940 r. Fletcher założył, że błonę podstawną można traktować jako układ filtrów pasmowo-przepustowych o zmieniających się częstotliwościach środkowych, by odpowiadały wszystkim częstotliwościom słyszalnym. Szerokość danego pasma jest równa szerokości odpowiedniego pasma krytycznego. Każdemu pasmu odpowiada odcinek na błonie podstawnej ślimaka równy ok. 1,3 mm. Oszacowanie szerokości pasma krytycznego dokonywane jest najczęściej na podstawie następującej zależności: ( 2 ∆fHz = 25 + 75 ⋅ 1 + 1, 4 ⋅ fkHz ) 0,69 (2) Ze względu na szerokie zastosowanie teorii pasm krytycznych zdefiniowano perceptualną jednostkę dźwięku – Bark (ku pamięci naukowca Barkhausena). Jeden Bark odpowiada Nr 6/2010 Pomiary Automatyka Robotyka 6/2010 szerokości pojedynczego pasma krytycznego. Zależność na Bark od częstotliwości wg Zwickera: ⎡⎛ f ⎞ 2 ⎤ bBark = 13 ⋅ arctg (0, 76 ⋅ fkHz ) + 3, 5 ⋅ arctg ⎢⎜ kHz ⎟ ⎥ ⎢⎣⎝ 7, 5 ⎠ ⎥⎦ (3) Pobudzenie błony podstawnej w funkcji czasu i częstotliwości o danym natężeniu i częstotliwości. Wszystkie dźwięki, dla których wartości natężenia leżą poniżej takiej krzywej, zostają zamaskowane i stają się niesłyszalne. Najczęściej tony o niższej częstotliwości maskują tony o wyższych częstotliwościach. Im ton maskujący jest głośniejszy tym zbocze jest bardziej płaskie i wzrasta efekt maskowania tonów o wyższych częstotliwościach. Aproksymacja wychyleń błony podstawnej System słuchowy człowieka nie może odbierać bodźców słuchowych przez zakończenia nerwowe, jeśli bodźce te mają podobne częstotliwości i poziomy. Ta „wada” słuchu powoduje, że można z obieranego sygnału dźwiękowego pozbyć się nadmiarowych składowych jego widma, zmniejszając w ten sposób wielkość wynikowego pliku dźwiękowego, przy równoczesnym zachowaniu dobrej jakości dźwięku. W kodowaniu perceptualnym modelowane są zjawiska maskowania dźwięku. Rozróżniane są dwa rodzaje maskowania: w dziedzinie czasu (nierównoczesne) w dziedzinie częstotliwości (równoczesne). Maskowanie w dziedzinie czasu (rys. 4) polega na tym, że słuch ludzki nie jest w stanie odróżnić odrębnych dźwięków, które następują tuż przed (premaskowanie: do kilkunastu ms) oraz tuż po (postmaskowanie: do 200 ms) dźwięku głośnym. Każdy głośny dźwięk powoduje stan przesterowania receptorów ucha wewnętrznego. Na ich powrót do stanu normal- W wyniku pobudzenia błony podstawnej zostaje ona odchylona od położenia równowagi. W skali barków kształt owego odchylenia oraz kształt progu maskowania są liniami prostymi. Aby wyznaczyć próg maskowania należy znać poziom pobudzenia oraz różnicę tych poziomów O(i) (rys. 6). Poziom natężenia[ dB] Przyjmując, że nachylenia odcinków S1= tgα1 oraz S2= tgα2 to przy pobudzeniu L o danej częstotliwości fx można je wyznaczyć z zależności (4): O (i ) T O (i −1) ton zamaskowany i −1 Kr zywa natężenia[ dB] maskowania Próg maskowania O (i +1) bx i α2 i +1 b [Bark] Rys. 6. Wyznaczanie progu maskowania ⎧ ⎡ dB ⎤ S1 = 31 ⎢ ⎪ ⎣ Bark ⎥⎦ ⎪ ⎨ ⎛ ⎞ ⎪ S = 22 + min 0, 23 , 10 − 0, 2 ⋅ L ⎡ dB ⎤ ⎜ ⎟ 2 ⎢⎣ Bark ⎥⎦ ⎪ ⎝ f x[kHz ] ⎠ ⎩ ton niezamaskowany Rys. 4. Maskowanie w dziedzinie czasu Poziom Poziom pobudzenia α1 t[ s] tx ton maskujący L G [dB ] Natomiast przesunięcie progu maskowania (masking offset) od poziomu wychylenia błony podstawnej, dla i-tego pasma krytycznego wynosi: O(i ) = a(14, 5 + i ) + (1 − a) a n f [ Hz ] fx ton maskujący ton zamaskowany (4) ton niezamaskowany Rys. 5. Maskowanie w dziedzinie częstotliwości nego konieczny jest czas relaksacji. Im wyższy jest poziom sygnału maskowanego, tym krótszy jest czas postmaskowania (w inżynieryjnych modelach psychoakustycznych brane jest pod uwagę jedynie postmaskowanie). Kluczem do skutecznego wykorzystania efektu maskowania czasowego jest określenie długości odcinka czasu, który musi oddzielać dwa dźwięki, by stały się one rozróżnialne (co oznacza konieczność zapisania informacji o obu z nich do wynikowego strumienia bitowego). Maskowanie w dziedzinie częstotliwości (rys. 5) polega na tym, że dźwięk o określonej częstotliwości (masker) maskuje dźwięki o innych częstotliwościach. Zależy ono od natężenia tonów maskującego i maskowanego oraz ich częstotliwości. Zależność tę opisuje tzw. krzywa maskowania dla maskerów (5) gdzie a – indeks tonalności, an– indeks maskowania. Indeks tonalności wskazuje na charakter sygnału pobudzenia i jest wyznaczany z zależności: ⎛ SFM ⎞ , 1⎟ a = min ⎜ ⎝ SFM max ⎠ SFM max =− 60dB (6) Do jego wyliczenia stosuje się geometryczną i arytmetyczną średnią spektrum mocy: ⎛ MG ⎞ SFM dB = 10 log10 ⎜ = 10 ⎡⎣log10 ( MG ) − log10 ( MA) ⎤⎦ ⎝ MA ⎟⎠ gdzie log10 ( MG ) = 1 N ∑ log10 ( P(n)) N n =1 ⎡1 N ⎤ log10 ( MA) = log10 ⎢ ∑ P (n) ⎥ ⎣ N n =1 ⎦ (7) (8) 55 Forum Młodych Pomiary Automatyka Robotyka 6/2010 SFM (ang. Spectral Flatness Measure) – miara płaskości widmowej, pozwalająca określić charakter sygnału maskującego (widmo płaskie – charakter szumowy, widmo prążkowe – suma tonów). Indeks maskowania wyznaczany jest z zależności: 25 EC (i ) = X (i ) ∗ B (i, j ) = ∑ X ( j ) ⋅ B (i − j ) (9) j=1 Pobudzenie błony podstawnej Pojedyncze pobudzenie błony podstawnej w określonym miejscu powoduje jej wychylenie w innym miejscu. Przy modelowaniu zjawisk maskowania dźwięku istotnym problemem jest określenie wpływu pobudzeń w różnych miejscach błony podstawnej na poziom wychylenia błony w innym miejscu. W dziedzinie maskowania równoczesnego sumaryczne pobudzenie można wyznaczyć ze wzoru: ⎛ x −1 Ex = ⎜ ∑ E j,x ⎝ j =1 2 a 2 N ( ) + ∑ (E ) i,x i=x a 2 ⎞a ⎟ ⎠ (10) Algorytmiczna realizacja tego wzoru jest bardzo kosztowna obliczeniowo, dlatego w wielu praktycznych modelach psychoakustycznych stosuje się uproszczone podejście. Sumaryczne wychylenie błony podstawnej modeluje się przy pomocy splotu, wyrażającego wpływ mocy sygnału X(i) w i-tym paśmie krytycznym na sąsiednie pasma krytyczne, co przedstawia się jako: 25 (11) EC (i ) = X (i ) ∗ B (i, j ) = ∑ X ( j ) ⋅ B (i − j ) j=1 lub macierzowo: ⎡ EC (1) ⎤ ⎡ X (1) ⎤ ⎡ B ( 0) B ( −1) B ( −2) ⎢ ⎥ ⎢ ⎥ ⎢ B ( 0) B ( −1) ⎢ EC ( 2) ⎥ = ⎢ X ( 2) ⎥ ⋅ ⎢ B (1) ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎢ ⎥ ⎢ ⎢⎣ EC ( 25) ⎥⎦ ⎢⎣ X ( 25) ⎥⎦ ⎢⎣ B ( 24) B ( 23) B ( 22) B ( −24) ⎤ ⎥ B ( −23) ⎥ ⎥ ⎥ B ( 0) ⎥⎦ gdzie: EC – sumaryczne pobudzenie błony podstawnej w i-tym paśmie krytycznym, B(i, j) – funkcja rozkładu energii wzdłuż błony podstawnej, X(i) – moc w i-tym paśmie krytycznym. Funkcja rozkładu energii odkształcenia wzdłuż błony podstawnej (ang. spreading function) B(i, j), zależy od względnej odległości między i-tym a j-tym pasmem krytycznym (rys. 7). Algorytm generacji wartości elementów macierzy B(i, j) jest podany w [4]. Podsumowanie Kodowanie dźwięku za pomocą algorytmu MP3 jest wciąż bardzo popularne. Za jego pomocą możliwa jest kompresja plików bez straty jakości dźwięku (im większy stopień kompresji tym gorsza jakość zrekonstruowanego sygnału). Termin MP3 stał się synonimem wysokiej jakości zapisu dźwięku przy małej objętości plików muzycznych. MPEG-1 na wszystkich poziomach kodowania wykorzystuje tzw. model psychoakustyczny. Dzięki niemu można modelować zachowanie układu słuchowego i następnie wykorzystać w algorytmach kodowania. System słuchowy człowieka jest skomplikowany i trudny do modelowania. Dokładna analiza jego działania jest konieczna do poszerzania wiedzy w zakresie modelowania psychoakustycznego. W przekazywaniu informacji akustycznej do systemu nerwowego uczestniczą komórki rzęskowate podlegające naprężeniom mechanicznym podczas drgań błony podstawnej. Naprężenia te zmieniają się na impulsy nerwowe przekazywane do neuronów zwoju spiralnego, a potem nerwem słuchowym do pnia mózgu. System słuchowy realizuje więc odwzorowanie: js = p®N , gdzie p jest zbiorem funkcji czasu reprezentujących przebiegi ciśnienia akustycznego na zewnątrz przewodu słuchowego zewnętrznego, a N jest dynamicznym rozkładem pobudzeń neuronów ostatniej warstwy jąder ślimakowych. W praktyce upraszczane są wyniki modelowania ze względu na długi czas ich algorytmicznej realizacji. Modelowanie psychoakustyczne to trudny dział psychofizyki, wymaga dużej wiedzy z zakresu przetwarzania sygnałów, matematyki, akustyki oraz audiologii. Jest jednak niezbędne do kodowania w standardach MPEG-1. Bibliografia 1 Zieliński T. P.: Cyfrowe przetwarzanie sygnałów. Od teorii do zastosowań. WKiŁ, Warszawa 2005. 2. Butrym W.: Dźwięk cyfrowy. Systemy wielokanałowe. WKiŁ, Warszawa 2001. 3. Tadeusiewicz R.: Sygnał mowy. WKiŁ, Warszawa 1988. 4. ISO/IEC-11172: Coding of Moving Pictures and Associated Audio for Digital Storage Media at up to about 1,5 Mbit/s. MPEG-1 International Standard. 1991. Dariusz Łukasz Kania jest studentem IV roku Wydziału Elektroniki Politechniki Wrocławskiej. Na kierunku Elektronika i Telekomunikacja wybrał specjalizację Aparatura Elektroniczna i zamierza pisać magisterską pracę dyplomową w Katedrze Metrologii Elektronicznej i Fotonicznej na temat cyfrowej filtracji sygnałów na procesorze DSP. Interesuje się elektroniką i technikami komputerowymi, szczególnie mikroprocesorami i przetwarzaniem sygnałów. W wolnych chwilach znajduje czas dla swojego hobby – muzyki i uprawiania sportu. Rys. 7. Rozkład energii odkształcenia wzdłuż błony podstawnej w wyniku pobudzenia tonowego 56 Kontakt: [email protected], [email protected] Nr 6/2010 Pomiary Automatyka Robotyka 6/2010 Emotiv EPOC Neuroheadset w autorskim systemie do analizy sygnałów elektroencefalograficznych sterujący inspekcyjnym robotem mobilnym Andrzej Błachowicz, Szczepan Paszkiel – SKN Nano Politechnika Opolska, Wydział Elektrotechniki, Automatyki i Informatyki ózg człowieka składa się z bardzo dużej liczby połączonych neuronów. To dzięki oddziaływaniom, jakie pomiędzy nimi zachodzą możemy myśleć i wykonywać określone czynności. Neurony mogą przyjmować potencjał spoczynkowy -70 mV oraz potencjał pobudzenia w granicy +50 mV. Każdy neuron składa się z aksonu oraz dendrytów [2]. Większość aksonów otoczona jest osłonkami, tzw. otoczką mielinową. W pewnych odstępach występuje przerwa w osłonie, tworząc przewężenie Ranviera, pełniące funkcję elementu przyspieszającego w procesie przewodzenia impulsów nerwowych wzdłuż aksonów [3]. Wykorzystując Emotiv EPOC Neuroheadset można zbierać, a następnie poddawać analizie impulsy występujące między poszczególnymi neuronami, stosując autorskie oprogramowanie. Znane są dwie metody akwizycji sygnału elektroencefalograficznego: inwazyjna i nieinwazyjna [4]. Dalej opisana została metoda nieinwazyjna ze względu na dużo większą łatwość jej implementacji i brak ingerencji w strukturę ciała osób badanych. Metoda inwazyjna wiąże się z wszczepieniem pod skórę osoby badanej elektrod do zbierania informacji w aspekcie aktywności neuronów. Jest tym samym o wiele bardziej złożona, ale dzięki niej uzyskuje się mniej zaszumiony sygnał. kładność w odwzorowaniu sygnału analogowego na cyfrowy [6]. Zastosowany został zespół filtrów usuwających z sygnału niepożądane harmoniczne oraz kilka stopni wzmacniaczy, w tym również wzmacniacze pomiarowe, aby otrzymać na wyjściu amplitudę o wystarczającej wartości [7]. Ogólna budowa systemu System do analizy sygnału EEG (rys. 2) składa się między innymi z urządzenia Emotiv EPOC Neuroheadset oraz elektrod aktywnych umieszczonych na głowie osoby badanej. Sposób rozmieszczenie elektrod określa układ 10 – 20 Międzynarodowej Federacji do spraw Neurofizjologii Klinicznej. Drugą Urządzenie Emotiv EPOC Neuroheadset W nieinwazyjnej metodzie pomiaru elektrycznej aktywności mózgu człowieka jest wykorzystywany elektroencefalograf wbudowany w urządzenie Emotiv EPOC Neuroheadset. Za pomocą technologii Bluetooth przesyła on sygnał na stację roboczą do dalszego procesu analizy. Sygnał rejestrowany przez elektroencefalograf składa się z różnego rodzaju fal, typu alfa, beta, gamma etc. Aktywność poszczególnych obszarów fal mózgowych jest adekwatna do stanu, w jakim znajduje się w danej chwili badana osoba. Inna jest amplituda fal dla osób będących w stanie snu, inna dla pobudzonych [5]. Użyte w opisanym systemie urządzenie firmy Emotiv Systems Inc. (rys. 1) zostało tak skonstruowane, aby uzyskać jak najlepsze parametry, przy jak najmniejszej liczbie elementów elektronicznych. Praca z sygnałami elektroencefalograficznymi wymaga, aby urządzenie miało dużą czułość oraz do- Rys. 1. Urządzenie Emotiv EPOC Neuroheadset Rys. 2. Ogólny schemat systemu do sterowania sygnałem EEG Rys. 3. Elektrody przygotowane do zamieszczenia w specjalnie przygotowanych w Emotiv EPOC Neuroheadset nóżkach ważną częścią składową systemu jest odpowiednio zaprojektowana aplikacja do analizy sygnału EEG. Dane mogą podlegać procesowi archiwizacji w repozytorium danych historycznych bądź w zwykłych systemach baz danych [8, 9]. Komunikacja między elektrodami (rys. 3) zamocowanymi na głowie osoby badanej a stacją roboczą jest możliwa poprzez wykorzystanie technologii bezprzewodowej Bluetooth [10]. Podczas pobierania danych na styku powierzchni elektrod i skóry głowy konieczne jest użycie płynu do zastosowań elektroencefalograficznych. Zwiększa to efektywność odbierania sygnału elektroencefalograficznego. 57 Forum Młodych Pomiary Automatyka Robotyka 6/2010 Aplikacja do analizy danych Zaprojektowana aplikacja EEGVis do akwizycji danych sygnału EEG zawiera wiele przydatnych opcji ułatwiających pracę z tym sygnałem. Aplikacja została napisana w języku JAVA, korzysta z możliwości tego języka w ramach standardowych pakietów: AWT, SWING, wizualizacji 3D – JAVA 3D API oraz komunikacji komputera osobistego z peryferiami – JAVA COMM API. Okno wizualizacji 3D (rys. 4) służy do obserwacji zachowań sygnału, którego zmiany prezentowane są w trzech wymiarach. Aplikacja umożliwia wszelkie dogodne zdefiniowanie osi. Istnieje możliwość usytuowaniu na osi Y wartości widma gęstości mocy bądź napięcia, na osiach X i Z zamiennie czasu lub częstotliwości. Tym samym możliwe jest obserwowanie wszystkich tych wielkości jednocześnie bez konieczności przełączenia okien analizy 2D. Przy pomocy myszy układ współrzędnych można dowolnie rozmieszczać w przestrzeni trójwymiarowej. Spektrogram składa się z dwóch osi, czasowej oraz częstotliwościowej. Efekt działania wizualizacji widma chwilowej gęstości mocy przedstawiono na rys. 5. Do uzyskania wyniku w postaci widma gęstości mocy użyto Szybkiej Transformaty Fouriera (FFT). Gdy zostanie zaznaczona odpowiednia opcja i ustalone jest połączenie dane są magazynowane w bazie wiedzy. Na rys. 6 przedstawiono okno wizualizacji przebiegu sygnału rejestrowanego. Obrazuje on wartości potencjału wy- Rys. 6. Okno analizy oscylograficznej stępującego na skórze głowy pacjenta w funkcji czasu. Sygnał ma wiele składowych harmonicznych. Do połączenia urządzenia Emotiv EPOC Neuroheadset z komputerem osobistym, na którym pracuje aplikacja EEGVis, wykorzystany został wirtualny port szeregowy, do którego podłączono moduł Bluetooth. Komunikację uzyskano dzięki implementacji biblioteki JAVA COMM API. Sterowniki modułu Bluetooth tworzą w systemie wirtualne porty szeregowe, które widziane są przez pakiet komunikacyjny JAVA, jako rzeczywiste interfejsy. Po zainstalowaniu sterowników system emuluje kilkanaście wirtualnych portów szeregowych. Do transmisji danych wykorzystywany jest tylko jeden z nich o nazwie Serial Port. Jest to port dedykowany do przesyłu danych. Do konfiguracji parametrów połączenia napisany został dedykowany interfejs. W prezentowanym systemie wykorzystano serwer bazodanowy firmy ORACLE w wersji 9i. Pakiet komunikacyjny JAVA przesyła polecenia języka PL/SQL w formie tekstowej. Odpowiedzi są przesyłane zwrotnie przez serwer i umieszczane w obiektach typu ArrayList, które są bardzo często wykorzystywane w języku JAVA listy obiektów. Następnie dane są przesyłane z list do odpowiednich obiektów aplikacji lub podczas operacji rejestrowania danych w odpowiednich tabelach bazy wiedzy. Robot mobilny SQ1 Rys. 4. Okno aplikacji EEGVis Rys. 5. Okno FFT – Szybkiej Transformaty Fouriera 58 Prowadzone badania mają na celu osiągnięcie zadowalającego stopnia rewizji rytmów elektroencefalograficznych, aby możliwe było za ich pośrednictwem przekazywanie informacji, czyli sygnałów sterujących generowanych przez zespoły neuronów, do mobilnego robota inspekcyjnego [11] (rys. 7). Warto jednak zaznaczyć, iż aspekt sterowania może także dotyczyć innych urządzeń, których obecność w środowisku życia człowieka jest niezbędna. Osiągnięcie zakładanego celu, którym jest możliwość bezproblemowego sterowania wieloma urządzeniami i aplikacjami, stanie się rewolucyjnym w wielu wymiarach. Niezliczona liczba dziedzin przemysłu, jak również życia ludzkiego w chwili obecnej przeżywa ekspansję robotyzacji w szerokim znaczeniu. Niewątpliwą zaletę zaprojektowanej i wykonanej mobilnej jednostki badawczej, robota SQ1, jest możliwość transportowania przedmiotów. Głównym zadaniem SQ1 jest przemieszczanie aparatury pomiarowej do miejsc gdzie kolejnym etapem jest przeprowadzenie rejestracji zjawisk fizycznych. Szereg technologii, Nr 6/2010 w które wyposażono mobilnego robota umożliwia jego pracę w trudno dostępnych, zurbanizowanych obszarach. Komunikacja operatora z robotem odbywa się bezprzewodowo z wykorzystaniem standaryzowanej technologii IEEE 802.11 (ang. Wireless Fidelity – WiFi) [12]. Operator przy wykorzystaniu autorskiej aplikacji z zaimplementowaną analizą sygnału elektroencefalograficznego jest w stanie prowadzić robota znajdującego się w przestrzeni architektonicznej. Jest to niezmiernie utrudnione zadanie, gdyż wymagane jest pełne skupienie operatora. Kolejny etap badań zostanie ukierunkowany na kooperację zarówno procesu sterowania jak i nadzorowania pracy robota, tak by proces ten stał się zupełnie naturalny dla osoby pracującej przy pulpicie sterowniczym. Robota inspekcyjnego wyposażono w szereg czujników, których obecność jest niezbędna do monitorowania stanu maszyny podczas sterowania. Osiągnięcie skutecznej współpracy pomiędzy świadomością operatora, za pośrednictwem elektroencefalografu oraz aplikacji sterującej, a komputerem pokładowym jednostki mobilnej możliwe jest dzięki wykorzystaniu opracowanego na potrzeby niniejszego projektu języka. Oprogramowanie mobilnego systemu pomiarowego wykonano przy wsparciu systemu czasu rzeczywistego (RTOS, ang. Real Time Operation System). Korzystanie z zasobów udostępnianych przez biblioteki systemu operacyjnego stwarza możliwość szybkiej realizacji nowych funkcji. Jednoczesny nadzór RTOS nad pracą poszczególnych wątków umożliwia niesprawiającą trudności synchronizację współpracy poszczególnych elementów oprogramowania. Robot mobilny posiada następujące moduły nadzorujące pracę poszczególnych elementów jego konstrukcji: moduł bezprzewodowej sieci Ethernet, umożliwiającego bezpośrednią komunikację z aplikacją sterującą moduł główny zawierający część pomiarową, sterownik aktywnego podwozia tor transmisji bezprzewodowej (Bluetooth) umożliwiający komunikację z czujnikami pomiarowymi zestaw czujników położenia typu MEMS czujniki przestrzeni otaczającej robota (ultradźwiękowe, skaner laserowy) system monitorujący parametry krytyczne całej jednostki mobilnej (temperatury w newralgicznych punktach, kondensację wilgoci wewnątrz obudowy, stan elementów sys- Pomiary Automatyka Robotyka 6/2010 Rys. 8. Stanowisko badawcze - badania laboratoryjne temu zasilania, spełnia funkcję watchdoga nadzorując pracę pozostałych modułów). Na rys. 8 przedstawiony został robot mobilny SQ1 podczas badań laboratoryjnych. Osoby sterujące mają założone na głowie urządzenie Emotiv EPOC Neuroheadset z wbudowanym elektroencefalografem. Wyposażenie robota w manipulator umożliwia operatorowi montaż na powierzchni obiektu badanego elementów systemu pomiarowego. System chwytaków magnetycznych ułatwia operowanie niewielkimi czujnikami i przytwierdzaniem ich do powierzchni obiektu. Procesowi diagnozy towarzyszy wykonywanie analiz otrzymywanych danych. Jednocześnie w bazie wiedzy rejestrowane są parametry konieczne do prowadzenia badań porównawczych [13]. Automatyzacja procesu eliminuje konieczność narażania życia i zdrowia człowieka, skutecznie izolując operatora od miejsca, w którym przebywanie jest niebezpieczne. Również aspekt finansowy ma znaczny wpływ na proces wdrażania nowych technologii w miejscach, w których do tej pory nie miały one reprezentanta. W przypadku okresowego monitorowania stanu elementów sieci elektroenergetycznej, podczas której konieczne jest wyłączanie energii elektrycznej dla pewnego obszaru, co jednoznacznie wiąże się ze stratami finansowymi, umożliwia wykonanie diagnostyki podzespołów podczas ich normalnej pracy. Dodatkowo zachowanie ciągłości w zasilaniu pozwala zaoszczędzić czas konieczny na ponowny rozruch oraz ponowne ustalanie się parametrów diagnozowanego urządzenia. Artefakty w sygnale EEG Rys. 7. Aktywne podwozie mobilnego robota inspekcyjnego Podczas sterowania robotem mobilnym SQ1 występuje wiele problemów z dopasowaniem sygnału EEG do poszczególnych funkcji sterujących z poziomu aplikacji. Największym zagrożeniem dla poprawnie prowadzonego procesu sterowania są w tym przypadku artefakty zakłócające. Stanowią one duże utrudnienie dla zespołów badawczych. W sygnale elektroencefalograficznym wyróżnia się dwie główne grupy artefaktów zakłócających takie jak: biologiczne i techniczne. Artefakty techniczne związane są z różnego rodzaju zakłóceniami powodowanymi przez urządzenia elektryczne pracujące w pobliżu osoby poddawanej badaniu. Artefakty biologicz- 59 Forum Młodych Pomiary Automatyka Robotyka 6/2010 ne wynikają z stanu fizycznego człowieka, pulsacji tętniczej, ciśnienia etc. Nieprzewidziane mrugnięcie okiem powoduje również zakłócenia w mierzonym sygnale. Dlatego też tak istotne jest analizowanie sygnału na przestrzeni czasu i próba eliminacji różnego rodzaju szumów, które mogą się w nim pojawić [14, 15]. Podsumowanie Szybki rozwój nowoczesnych dziedzin nauk ścisłych odzwierciedla się także w aspekcie komunikacji człowieka z komputerem, za pomocą mózgu. Prace badawcze w tym zakresie prowadzi coraz więcej instytutów. Przedstawiony Emotiv EPOC Neuroheadset oraz system pomiarowy wraz z aplikacją umożliwiającą kooperację z bazą danych stanowią podstawę pod budowę systemu do sterowania robotem mobilnym. Istotne na chwilę obecną są prace nad zwiększeniem prawidłowości analizowania sygnału na etapie wejściowym. Konieczne jest usprawnienie procesu przetwarzania danych pobranych z elektroencefalografu, aby sygnał poddawany analizie, a następnie implementowany w sieci neuronowej był jak najbardziej przejrzysty dla konkretnych wartości minimum oraz ekstremum, w którym ma się on zawierać. Analiza widma sygnału, poddanego na przykład przekształceniu Fourierowskiemu, pozwala w łatwiejszy sposób wydzielać interesujące badacza obszary. Filtracja cyfrowa pobranych próbek elektroencefalograficznych umożliwia wyekstrahowanie z sygnału składowych rytmów falowych. Prowadzi to do wniosku, iż konieczna jest jak największa automatyzacja wykonywanych czynności. Tak narodziła się idea stworzenia systemu, który umożliwiałby połączenie wspomnianych możliwości w jedną integralną całość. Bibliografia 1. 2. Paszkiel Sz., Błachowicz A.: Mobilny system do pomiaru wyładowań niezupełnych sterowany falami elektroencefalograficznymi, PAR 2/2010, s. 12-16. Ibrahim T., Venin J. M., Garcia G.: Brain Computer Interface in Multimedia Communication, IEEE Signal Processing Magazin, vol. 20 (1), 2003. mgr inż. Andrzej BŁACHOWICZ Andrzej Błachowicz jest doktorantem na Politechnice Opolskiej w Instytucie Elektroenergetyki. Absolwent Politechniki Opolskiej na kierunku Informatyka oraz Elektronika i Telekomunikacja. Praca badawcza doktoranta związana jest z wyładowaniami niezupełnymi, występującymi w izolatorach kondensatorów elektroenergetycznych. Adres e-mail: [email protected] 60 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Wolański N.: Rozwój biologiczny człowieka. Podstawy auksologii, gerontologii i promocji zdrowia, Warszawa 2005, s. 374. Tortella F. i in.: EEG Spectra Analysis of the Neroprotective Kappa Opioids Enadoline, Maryland 1997. Zmarzły D.: Pomiary elektrycznych wielkości medycznych, Politechnika Opolska, Opole 2004. Venter H.S., Eloff J.H.P.: Network Security: Important Issues, Department of Computer Science, Rand Afrikaans University, s.147-154, 1992. Larrieu N., Owezarski P.: Towards a Measurement Based Networking approach for Internet QoS improvement. Computer Communications, Vol. 28, s. 259-273, 2005. White T., Pagurek B., Bieszczad A.: Network Modeling for Management Applications Using Intelligent Mobile Agents, Journal of Network and Systems Management, Vol. 7, No. 3, 1999. Todorova P.: Network Control in ATM-Based LEO Satellite Networks, Telecommunication Systems 22:1–4, p. 321–335, 2003. Bush S. F., Frost V. S.: A Framework for Predictive Network Management of Predictive Mobile Networks, Journal of Network and Systems Management, Vol. 7, No. 2, 1999. Siegwart R., Nourbaksh I. R.: Introduction to autonomous mobile robots, Massachusetts Institute of Technology, 2004. Schumacher H. J., Ghosh S.: A fundamental framework for network security, Journal of Network and Computer Applications, p. 305–322, 1997. Boczar T., Błachowicz A.: Mobilny system pomiarowy do badania zjawiska wyładowań niezupełnych metodą emisji akustycznej, PAK 1/2009, s. 27-28. Dudek Z. T.: Interfejs BCI – próba przełamania bariery pomiędzy człowiekiem a komputerem, Przegląd Telekomunikacyjny i Wiadomości Telekomunikacyjne, nr 7/2003. Georgopoulos A. P., Langheim F. J., Leuthold A.C., Merkle A. N.: Magnetoencephalographic signals predict movement trajectory in space, Exp Brain Res, Vol. 25, s. 132–135, 2005. mgr inż. Szczepan PASZKIEL Szczepan Paszkiel jest doktorantem na Politechnice Opolskiej. Absolwent Politechniki Opolskiej na kierunku Informatyka oraz Zarządzanie i inżynieria produkcji. Stypendysta Ministra Nauki i Szkolnictwa Wyższego za wybitne osiągnięcia w nauce. Prowadzi badania naukowe w zakresie przetwarzania sygnału EEG. Autor oraz współautor wielu publikacji naukowych. Adres e-mail: [email protected]