SVAROG i empi: Różnice pomiędzy wersjami

Z Brain-wiki
(Utworzono nową stronę "=SVAROG= Svarog (Signal Viewer, Recorder and Analyzer on GPL) to program do wyświetlania i analizy wielozmiennych sygnałów (głównie elektrofizjologiczych), napisany...")
 
 
(Nie pokazano 12 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 1: Linia 1:
=SVAROG=
+
=[[Analiza_sygnałów_-_lecture|⬆]] SVAROG=
Svarog (Signal Viewer, Recorder and Analyzer on GPL) to program do wyświetlania i analizy wielozmiennych sygnałów (głównie elektrofizjologiczych), napisany w Javie i dostępny na licencji GPL. Strona projektu, zawierająca Kod źródłowy, jak również gotowe pakiety, to https://gitlab.com/fuw_software/svarog3. Potrzebne do korzystania z programu skompilowane pliki znajdują się w "artefakcie" [https://gitlab.com/fuw_software/svarog3/-/jobs/10918613798/artifacts/download?file_type=archive target.zip] na stronie https://gitlab.com/fuw_software/svarog3/-/artifacts.
+
[[Plik:Svarog elektrowlosy EEG transp.png]]
 +
Svarog (Signal Viewer, Recorder and Analyzer on GPL) to tworzony na Wydziale Fizyki UW i w firmie BrainTech program do wyświetlania i analizy wielozmiennych sygnałów (głównie elektrofizjologiczych), napisany w Javie i dostępny na licencji GPL. Strona projektu, zawierająca kod źródłowy, to https://gitlab.com/fuw_software/svarog3. Potrzebne do korzystania z programu skompilowane pliki znajdują się w "artefakcie" [https://gitlab.com/fuw_software/svarog3/-/jobs/10918613798/artifacts/download?file_type=archive target.zip] na stronie https://gitlab.com/fuw_software/svarog3/-/artifacts.
  
Po rozpakowaniu pliku <code>target.zip</code> utworzy się folder svarog, w którym znajdziemy główny plik svarog-standalone.jar (Java ARchive). Ten plik — jeśli w systemie jest skonfigurowane środowisko wykonawcze Javy (Java Runtime Environment, JRE) — można zwykle uruchomić podwójnym kliknięciem. Wyjątkiem będzie tutaj pierwsze uruchomienie, gdyż współczesne systemy ze względów bezpieczeństwa ograniczają uruchamianie programów z "nieznanych" źródeł. Dlatego przy pierwszym uruchomieniu system zwykle wyświetli ostrzeżenie. Gdy wyrazimy świadomą zgodę, następne uruchomienia nie będą już jej wymagały.  
+
Po rozpakowaniu archiwum <code>target.zip</code> utworzy się folder svarog, w którym znajdziemy główny plik svarog-standalone.jar (Java ARchive). Ten plik — jeśli w systemie jest skonfigurowane środowisko wykonawcze Javy (Java Runtime Environment, JRE) — można zwykle uruchomić podwójnym kliknięciem. Wyjątkiem będzie tutaj pierwsze uruchomienie, gdyż współczesne systemy ze względów bezpieczeństwa ograniczają uruchamianie programów z "nieznanych" źródeł. Dlatego przy pierwszym uruchomieniu system zwykle wyświetli ostrzeżenie. Gdy wyrazimy świadomą zgodę, następne uruchomienia nie będą już jej wymagały.  
  
 
W przypadku kłopotów z uruchomieniem programu można skorzystać ze starszych wersji, które dystrybuowano razem z wirtualną maszyną Javy dla głównych systemów, dostępnych pod adresem https://gitlab.com/fuw_software/svarog2-packager/-/releases.
 
W przypadku kłopotów z uruchomieniem programu można skorzystać ze starszych wersji, które dystrybuowano razem z wirtualną maszyną Javy dla głównych systemów, dostępnych pod adresem https://gitlab.com/fuw_software/svarog2-packager/-/releases.
 +
 +
[[Plik:Svarog_FFT.png]]
  
 
=empi=
 
=empi=
Jednym z poleceń, które znajdziemy w menu Svaroga, jest dekompozycja wybranego odcinka sygnału algorytmem [[Reprezentacje_przybli%C5%BCone#Algorytm_matching_pursuit_i_słowniki_czas-częstość|matching pursuit]]. Ta funkcja technicznie różni się od pozostałych, gdyż wywołuje zewnętrzny program [[Reprezentacje_przybliżone#empi_.E2.80.94_implementacja_MMP|empi]], który jest napisany w w C++ ze wsparciem dla GPU, a nie w Javie, więc musi być kompilowany dla konkretnych systemów operacyjnych. Dlatego w podfolderach folderu svarog/mp znajdziemy binaria programu empi, skompilowane dla najważniejszych systemów. Aby wybrać właściwą wersję, należy uruchomić w Svarogu opcję "Preferences" z menu "Tools", gdzie w zakładce "Tools" znajduje się możliwość skonfigurowania ścieżki do właściwego kompilatu empi.
+
Jednym z poleceń, które znajdziemy w menu Svaroga, jest dekompozycja wybranego odcinka sygnału algorytmem [[Reprezentacje_przybli%C5%BCone#Algorytm_matching_pursuit_i_słowniki_czas-częstość|matching pursuit]]. Ta funkcja technicznie różni się od pozostałych, gdyż wywołuje zewnętrzny program [[Reprezentacje_przybliżone#empi_.E2.80.94_implementacja_MMP|empi]], napisany w C++ ze wsparciem dla GPU, a nie w Javie, więc musi być kompilowany dla konkretnych systemów operacyjnych. Dlatego w podfolderach folderu svarog/mp znajdziemy binaria programu empi, skompilowane dla najważniejszych systemów. Aby wybrać właściwą wersję, należy uruchomić w Svarogu opcję "Preferences" z menu "Tools", gdzie w zakładce "Tools" znajduje się możliwość skonfigurowania ścieżki do właściwego kompilatu empi.
  
Nawet po prawidłowym skonfigurowaniu ścieżki, pierwsze uruchomienie dekompozycji MP z poziomu Svaroga może zwrócić błąd. Wynika on stąd, że, podobnie jak sam Svarog, program empi również nie pochodzi ze "znanego systemowi" źródła, w związku z czym teoretycznie stanowi potencjalne niebezpieczeństwo. Dlatego przed pierwszym wywołaniem tej funkcji z poziomu Svaroga trzeba najpierw uruchomić sam program empi i udzielić odpowiedniej zgody — w przypadku systemu MacOS wymaga to np. otwarcia okna ustawień systemowych i wyrażenia odp. zgody w zakładce "prywatność i ochrona".
+
Nawet po prawidłowym skonfigurowaniu ścieżki, pierwsze uruchomienie dekompozycji MP z poziomu Svaroga może zwrócić błąd. Wynika on stąd, że, podobnie jak sam Svarog, program empi również nie pochodzi ze "znanego systemowi" źródła, w związku z czym stanowi potencjalne niebezpieczeństwo. Dlatego przed pierwszym wywołaniem tej funkcji z poziomu Svaroga trzeba najpierw uruchomić sam program empi i udzielić odpowiedniej zgody — w przypadku systemu MacOS wymaga to np. otwarcia okna ustawień systemowych i wyrażenia odp. zgody w zakładce "prywatność i ochrona".
  
==Empi do pracy wsadowej==
+
==empi do pracy wsadowej==
Empi w badaniach naukowych wykorzystujemy zwykle do dekompozycji sygnałów, której wyniki (czyli parametry dopasowanych do sygnału funkcji Gabora) zapisujemy w plikach z rozszerzeniem .db czyli bazach danych struktur. Pliki te mogą być wczytywane do Svaroga w celu wyświetlenie dekompozycji w przestrzeni czas-częstość, ale często pracujey też bezpośrednio na parametrach dopasowanych do sygnału Gaborów. Przykładowe skrypty w Pythonie i Matlabie dostępne są pod adresem https://github.com/develancer/empi/tree/master/demo
+
Empi w badaniach naukowych wykorzystujemy zwykle do dekompozycji sygnałów, której wyniki (czyli parametry dopasowanych do sygnału funkcji Gabora) zapisujemy w plikach z rozszerzeniem .db czyli bazach danych struktur. Pliki te mogą być wczytywane do Svaroga w celu wyświetlenie dekompozycji w przestrzeni czas-częstość, ale często pracujemy też bezpośrednio na parametrach dopasowanych do sygnału funkcji. Przykładowe skrypty w Pythonie i Matlabie dostępne są pod adresem https://github.com/develancer/empi/tree/master/demo
  
 
==Literatura==
 
==Literatura==
 
* S. Mallat and Z. Zhang (1993) Matching pursuit with time-frequency dictionaries. IEEE Transactions on Signal Processing, 41:3397-3415.
 
* S. Mallat and Z. Zhang (1993) Matching pursuit with time-frequency dictionaries. IEEE Transactions on Signal Processing, 41:3397-3415.
* Piotr J. Durka (2007) [http://www.scholarpedia.org/article/Matching_pursuit Matching pursuit]. [http://www.scholarpedia.org Scholarpedia], 2(11):2288
 
* P.J. Durka (2007) [http://uni.durka.info/ Matching Pursuit and Unification in EEG Analysis], [http://www.artechhouse.com/default.asp?frame=book.asp&book=978-1-58053-304-1 Artech House], ISBN 978-1-58053-304-1.
 
 
* Piotr Różański (2024) [https://dl.acm.org/doi/10.1145/3674832 empi: GPU-Accelerated Matching Pursuit with Continuous Dictionaries]. ACM Transactions on Mathematical Software Vol. 50, No. 3.
 
* Piotr Różański (2024) [https://dl.acm.org/doi/10.1145/3674832 empi: GPU-Accelerated Matching Pursuit with Continuous Dictionaries]. ACM Transactions on Mathematical Software Vol. 50, No. 3.
 +
* [https://biomedical-engineering-online.biomedcentral.com/articles/10.1186/1475-925X-12-94 Multivariate matching pursuit in optimal Gabor dictionaries: theory and software with interface for EEG/MEG via Svarog]
 +
* [https://journal.frontiersin.org/article/10.3389/fnhum.2015.00258/full Spindles in Svarog: framework and software for parametrization of EEG transients].
 +
 +
 +
 +
 +
<div align="right">
 +
[[Analiza_sygnałów_-_lecture|⬆]]
 +
</div>

Aktualna wersja na dzień 19:54, 13 gru 2025

SVAROG

Svarog elektrowlosy EEG transp.png Svarog (Signal Viewer, Recorder and Analyzer on GPL) to tworzony na Wydziale Fizyki UW i w firmie BrainTech program do wyświetlania i analizy wielozmiennych sygnałów (głównie elektrofizjologiczych), napisany w Javie i dostępny na licencji GPL. Strona projektu, zawierająca kod źródłowy, to https://gitlab.com/fuw_software/svarog3. Potrzebne do korzystania z programu skompilowane pliki znajdują się w "artefakcie" target.zip na stronie https://gitlab.com/fuw_software/svarog3/-/artifacts.

Po rozpakowaniu archiwum target.zip utworzy się folder svarog, w którym znajdziemy główny plik svarog-standalone.jar (Java ARchive). Ten plik — jeśli w systemie jest skonfigurowane środowisko wykonawcze Javy (Java Runtime Environment, JRE) — można zwykle uruchomić podwójnym kliknięciem. Wyjątkiem będzie tutaj pierwsze uruchomienie, gdyż współczesne systemy ze względów bezpieczeństwa ograniczają uruchamianie programów z "nieznanych" źródeł. Dlatego przy pierwszym uruchomieniu system zwykle wyświetli ostrzeżenie. Gdy wyrazimy świadomą zgodę, następne uruchomienia nie będą już jej wymagały.

W przypadku kłopotów z uruchomieniem programu można skorzystać ze starszych wersji, które dystrybuowano razem z wirtualną maszyną Javy dla głównych systemów, dostępnych pod adresem https://gitlab.com/fuw_software/svarog2-packager/-/releases.

Svarog FFT.png

empi

Jednym z poleceń, które znajdziemy w menu Svaroga, jest dekompozycja wybranego odcinka sygnału algorytmem matching pursuit. Ta funkcja technicznie różni się od pozostałych, gdyż wywołuje zewnętrzny program empi, napisany w C++ ze wsparciem dla GPU, a nie w Javie, więc musi być kompilowany dla konkretnych systemów operacyjnych. Dlatego w podfolderach folderu svarog/mp znajdziemy binaria programu empi, skompilowane dla najważniejszych systemów. Aby wybrać właściwą wersję, należy uruchomić w Svarogu opcję "Preferences" z menu "Tools", gdzie w zakładce "Tools" znajduje się możliwość skonfigurowania ścieżki do właściwego kompilatu empi.

Nawet po prawidłowym skonfigurowaniu ścieżki, pierwsze uruchomienie dekompozycji MP z poziomu Svaroga może zwrócić błąd. Wynika on stąd, że, podobnie jak sam Svarog, program empi również nie pochodzi ze "znanego systemowi" źródła, w związku z czym stanowi potencjalne niebezpieczeństwo. Dlatego przed pierwszym wywołaniem tej funkcji z poziomu Svaroga trzeba najpierw uruchomić sam program empi i udzielić odpowiedniej zgody — w przypadku systemu MacOS wymaga to np. otwarcia okna ustawień systemowych i wyrażenia odp. zgody w zakładce "prywatność i ochrona".

empi do pracy wsadowej

Empi w badaniach naukowych wykorzystujemy zwykle do dekompozycji sygnałów, której wyniki (czyli parametry dopasowanych do sygnału funkcji Gabora) zapisujemy w plikach z rozszerzeniem .db czyli bazach danych struktur. Pliki te mogą być wczytywane do Svaroga w celu wyświetlenie dekompozycji w przestrzeni czas-częstość, ale często pracujemy też bezpośrednio na parametrach dopasowanych do sygnału funkcji. Przykładowe skrypty w Pythonie i Matlabie dostępne są pod adresem https://github.com/develancer/empi/tree/master/demo

Literatura