Difference between revisions of "AnyWave:Faq"

From WikiMEG
Jump to: navigation, search
(Python plug-ins)
(Configure AnyWave for MATLAB compiled plugins)
 
(188 intermediate revisions by one user not shown)
Line 1: Line 1:
 
'''Frequently asked questions (FAQ)''' about '''AnyWave'''. If you don't have an answer to your question reading the Documentation, you may find useful information here.
 
'''Frequently asked questions (FAQ)''' about '''AnyWave'''. If you don't have an answer to your question reading the Documentation, you may find useful information here.
 +
=File formats=
 +
AnyWave can read and/or write to different file formats depending on the available plug-ins.<br/>
 +
==Read==
 +
{| class="wikitable"
 +
|-
 +
! Manufacturer !! modality !! file extension
 +
|-
 +
| AnyWave|| all modalities || *.ades
 +
|-
 +
| Micromed || EEG/SEEG || *.trc
 +
|-
 +
| EDF+ || EEG/SEEG || *.edf
 +
|-
 +
| BrainProducts || EEG/SEEG || *.vhdr
 +
|-
 +
| ANT EEProbe || EEG/SEEG || *.cnt
 +
|-
 +
| SPM|| all modalities || *.mat
 +
|-
 +
| EEGLAB|| all modalities || *.set
 +
|-
 +
| EGI || EEG/SEEG || *.mff
 +
|-
 +
| 4D neuroimaging|| MEG/EEG || No extension
 +
|-
 +
| Elekta|| MEG/EEG || *.fif
 +
|-
 +
| CTF|| MEG/EEG || *.ds
 +
|}
 +
==Export==
 +
AnyWave can export to the following formats:<br/>
 +
{| class="wikitable"
 +
|-
 +
! Manufacturer !! modality !! file extension
 +
|-
 +
| AnyWave|| all modalities || *.ades
 +
|-
 +
| EDF+ || EEG/SEEG || *.edf
 +
|-
 +
| BrainProducts || EEG/SEEG || *.vhdr
 +
|-
 +
| Elekta|| MEG/EEG || *.fif
 +
|-
 +
| MATLAB|| all modalities || *.mat (see documentation below)
 +
|}
  
=Donwloading AnyWave=
+
==ADES format==
 
+
This is a simple file format used mostly to exchange data between different software. <br />
Click on the links below to download '''AnyWave''' for your platform:
+
Here is a complete documentation of the [[AnyWave:ADES|ADES file format]]
* [http://meg.univ-amu.fr/AnyWave/AnyWave_win32.zip '''Windows 32bit - February 2014''']
+
* [http://meg.univ-amu.fr/AnyWave/AnyWave_win64.zip '''Windows 64bit - February 2014''']
+
* [http://meg.univ-amu.fr/AnyWave/AnyWave_maci64.zip '''Mac OS X - February 2014'''] and [http://meg.univ-amu.fr/AnyWave/qt-mac-opensource-4.7.4.dmg Qt 4.7.4 for Mac OS X]
+
* [http://meg.univ-amu.fr/AnyWave/anywave_1.0-1_amd64.deb '''Linux amd64 Debian''']
+
 
+
=How to install AnyWave=
+
==Windows==
+
The 32bit version of '''AnyWave''' will run on all Windows versions starting with '''Windows XP'''.<br/>
+
However, on 64bit '''Windows''' systems, it will run as a 32bit application. Therefore, '''AnyWave''' won't take advantage of all the memory installed on the system.<br/>
+
Please install the 64bit version of '''AnyWave''' on a 64bit '''Windows'''. <br/>
+
The 64bit version of '''AnyWave''' will run on '''Windows Vista x64''', '''Windows 7 x64''' '''and Windows 8 x64'''.<br/>
+
 
+
Download the zip file, uncompress it in a temporary folder then launch the isntaller. You must have administrative's privileges in order to install the software.
+
 
+
==Mac OS X==
+
The '''Mac OS X''' version of '''AnyWave''' supports '''Mac OS 10.5''' to '''10.9'''.<br/>
+
 
+
Be sure to have Qt 4.7.x installed on your Mac. If not, download and install [http://meg.univ-amu.fr/AnyWave/qt-mac-opensource-4.7.4.dmg Qt] before trying to install '''AnyWave'''.<br/>
+
Donwload the zip file, uncompress it on a temporary folder then open the package installer and follow instructions.<br/>
+
You might need to install additionnal software in order to get access to some features of '''AnyWave'''. See below.
+
 
+
'''AnyWave''' will send notifications messages during some operations. To see those messages you will need to install [http://growl.info Growl].
+
 
+
==Linux==
+
'''AnyWave''' is available as a '''Debian''' package for the '''amd64''' architecture. The package should install as well on '''Ubuntu''' Linux.
+
 
+
Download the package and install it on your system using ''dpkg -i mypackage.deb'' in a terminal or by double clicking on the file.<br/>
+
 
+
Once all the required dependencies have been installed, '''AnyWave''' will be available using the '''anywave''' command from a terminal.
+
  
 +
==MATLAB format==
 +
A new plugin allows AnyWave to export data into a MATLAB file.<br />
 +
[[AnyWave:MATLAB|Here is a complete documentation about what you will find inside the MATLAB file when exporting data.]]
 
=Plug-ins=
 
=Plug-ins=
==What is a plug-in?==
+
The application is designed to be modular by using plug-ins.<br/>
'''AnyWave''' is using external modules, called plug-ins, that are loaded at startup and extend the functionalities of the application.<br/>
+
Some plugins are provided with the application when installing:<br/>
Depending on the platform, plug-ins are files of different types.<br/>
+
- File read/export plugins.<br/>
 
+
- Data Processing plugins like h²/r² correlations, Time/Frequency using wavelet, markers tools.<br/>
On '''Windows''', for example, plug-ins are DLL files located in the '''Plugins''' folder where '''AnyWave''' is installed.<br/>
+
AnyWave also supports MATLAB/Python plugins.<br/>
Note that it is also possible to install plug-ins the user's home directory. See [[#how to install plug-ins|How to install a plug-in]].<br/>
+
 
+
There are several types of plug-ins used by '''AnyWave''':<br/>
+
- '''Reader''' plug-ins are responsible of reading data file formats.<br/>
+
- '''Writer''' plug-ins are responsible of writing data to a data file format.<br/>
+
- '''Signal processing''' plug-ins will run some processing on data and present or not the results in '''AnyWave'''.<br/>
+
- '''Display''' plug-ins are responsible of displaying specific data type. Typically, the results computed by Signal processing plug-ins.<br/>
+
 
+
 
==How to install a plug-in==
 
==How to install a plug-in==
When installing '''AnyWave''', some plug-ins are also installed, allowing to read file formats or making some basic processings on data.<br/>
+
The user may add custom plug-ins to AnyWave. Depending on the plug-in type (MATLAB, Python or Native) the location where to put the plug-in may vary.<br />
Those plug-ins are put in a folder where AnyWave is installed.<br>
+
We strongly recommend '''NOT''' to add plug-ins in the Application directory, as it may require administrative privileges and it also make the plug-ins available to all users on the computer.<br />
Depending on the platform, the path where AnyWave resides can change and the name of the plug-ins directory too.<br>
+
<br/>
 
+
Place native plugins (*.dll *.so *.dylib) on the following folder depending of your platform:<br/>
On '''Windows''', the user can choose where to install '''AnyWave'''. For example, '''AnyWave''' can be installed on ''C:\AnyWave''.<br/>
+
- Windows: the folder is created in '''Documents\AnyWave\Plugins'''.<br/>
If you look at C:\AnyWave you will notice the presence of directory called Plugins. This is the location where to put new plug-ins.<br/>
+
- Mac: the folder is created in '''/Users/johndoe/AnyWave/Plugins'''.<br/>
Note that the operation may require administrative privileges.<br/>
+
- Linux: the folder if created in '''/home/johndoe/AnyWave/Plugins'''.<br/>
 
+
<br/>
On '''Mac OS X''', '''AnyWave''' will be installed where all applications go, the '''/Applications''' folder.<br/>
+
Place MATLAB plugins on the following folder depending of your platform:<br/>
Besides the AnyWave application, there will be a directory named '''Anywave_Plugins'''. This is the place to put new plug-ins for '''AnyWave'''.<br/>
+
- Windows : the folder is created in '''Documents\AnyWave\Plugins\MATLAB'''.<br/>
Note that the operation requires administrative privileges.<br/>
+
- Mac: the folder is created in '''/Users/johndoe/AnyWave/Plugins/MATLAB'''.<br/>
 +
- Linux: the folder if created in '''/home/johndoe/AnyWave/Plugins/MATLAB'''.<br/>
 +
<br/>
 +
Place Python plugins on the following folder depending of your platform:<br/>
 +
- Windows: the folder is created in '''Documents\AnyWave\Plugins\Python '''.<br/>
 +
- Mac: the folder is created in '''/Users/johndoe/AnyWave/Plugins/Python '''.<br/>
 +
- Linux: the folder if created in '''/home/johndoe/AnyWave/Plugins/Python '''.<br/>
 +
<br/>
  
===How to install user plug-ins===
+
===Configure AnyWave for MATLAB compiled plugins===
If the user has no administrative privileges and cannot install new plug-ins where '''AnyWave''' is installed, the solution is to put plug-ins in the user's home directory.<br/>
+
The last releases of MATLAB compiled plugins require the '''MATLAB 2018b''' runtime on Windows and '''MATLAB 2020a''' runtime on Mac.<br/>
 +
- Install the required MATLAB runtime for you platform (See the mathworks website to download and install the runtime)<br/>
 +
- Configure AnyWave to use the correct version of the runtime (Mac and Linux only) :<br/>
 +
The path on Mac should be something close to '''/Applications/MATLAB_Runtime/v98'''<br/>
 +
The path on Linux should be something close to '''/usr/local/MATLAB/MATLAB_Runtime/v95'''<br/>
 +
<br/>
 +
Set the path to the MATLAB runtime in the AnyWave preferences UI then restart AnyWave.
 +
<br/>
  
On '''Windows''', '''AnyWave''' creates a folder in the user's home directory, typically the '''My Documents''' location.<br/>
+
===Configure AnyWave for MATLAB scripted plugins===
Browse the ''My Documents'' location for a directory named ''Anywave\Plugins''.<br/>
+
MATLAB plug-ins can be distributed as MATLAB .m files and thus require that MATLAB is available on the computer.<br />
On '''Linux''', the folder is created in ''/home/<username>/Anywave/Plugins''<br/>
+
AnyWave will call the MATLAB execution engine to run those files.<br />
On '''Mac OS X''' the folder is created in ''/Users/<username>/Anywave/Plugins''<br/>
+
<br />
  
Installing plug-ins on those folders will allow '''AnyWave''' to use them whithout requiring administrative privileges.<br/>
+
== Batch processing ==
More over, it allows installation of plug-ins that will only be available to the user.<br/>
+
Some processes can be executed in batch mode, using the command line.<br/>
 +
See this section [[AnyWave::CLI|Command Line Options]] for more details.<br/>
 +
List of process that can be executed in batch mode:<br>
 +
* [[AnyWave:ICA|ICA (extracts independent components)]].
 +
* [[AnyWave:H2| H2 (computes connectivity)]].
  
==Matlab plug-ins==
 
AnyWave offers the possibility to run signal processing plug-ins which was written in Matlab programming language.<br/>
 
The procedure to obtain such plug-ins involve using the Matlab Compiler. Therefore, Matlab is not needed in order to run the plug-in but the Matlab Compiler Runtime (or MCR) must be installed on the target platform.<br/>
 
  
Before installing a plug-in written with Matlab, please install the [http://www.mathworks.fr/products/compiler/mcr/ Matlab Compiler Runtime 2012b] on your computer.<br/>
 
  
'''Do not change the default installation path proposed by the Matlab installer!'''<br/>
+
=Command line options=
 +
AnyWave can also be launched using the command line. This will prevent any GUI to pop up on the screen.<br/>
 +
In this mode, you will be able to batch some operations, like converting files to another format or BIDSify some file.<br/>
 +
See this section [[AnyWave::CLI|Command Line Options]]
  
'''Note:''' The MCR need to be installed once and for all. If you already have installed it, feel free to add Matlab plug-ins to '''AnyWave'''.
+
=BIDS support=
 +
The BIDS support is under development, but there is a command line feature that can be used to launch AnyWave without any GUI and<br />
 +
ask it to convert a SEEG file into a BIDS compatible format and place it to a specified folder.<br />
 +
options:<br />
 +
--toBIDS indicates we want to convert a file to BIDS.<br />
 +
--bids_modality <ieeg|meg> specify what the file to convert contains (ieeg, meg).'''REQUIRED'''<br />
 +
--bids_sub <subject> BIDS subject  '''REQUIRED'''<br />
 +
--bids_task <task> BIDS task  '''REQUIRED'''<br />
 +
--bids_run <run> BIDS run index (optional)<br />
 +
--bids_acq <acq> BIDS acquisition (optional)<br />
 +
--bids_proc <proc> process (optional)<br />
 +
--bids_output <sidecars|all>  (sidecars : only generates .json and .tsv files. all: full conversion)<br />
 +
--bids_ses <session> BIDS session (optional)<br />
 +
--bids_format <edf | vhdr> (optional)<br />
 +
'''Note''':<br/>
 +
When converting MEG data, user input_folder not input_file option.<br/>
 +
Some MEG formats consists of several files in a folder, so the BIDS conversion will produce also a folder.<br/>
 +
==Example==
 +
Convert a file data.eeg containing SEEG recordings to BIDS for subject JohnDoe.<br />
 +
<syntaxhighlight lang='bash'>
 +
anywave --toBIDS --bids_modality ieeg --input_file d:\data\data.eeg --output_dir d:\data\BIDS --bids_format vhdr --bids_sub johndoe --bids_task rest
 +
</syntaxhighlight>
 +
Convert a MEG data file (4DNI) to BIDS for subject JohnDoe.<br />
 +
The run number must be specified.<br/>
 +
<syntaxhighlight lang='bash'>
 +
anywave --toBIDS --bids_modality meg --input_dir d:\data\MEG\run1 --output_dir d:\data\BIDS --bids_sub johndoe --bids_task rest --bids_run 01
 +
</syntaxhighlight>
 +
Convert a MEG data file (Elekta) to BIDS for subject JohnDoe.<br />
 +
As everything is stored in one file (.fif), no need here to specify a run number (but you can). <br/>
 +
However, the input is still a folder, so specifiy the folder in which the fif file is located.<br/>
 +
<syntaxhighlight lang='bash'>
 +
anywave --toBIDS --bids_modality meg --input_dir d:\data\MEG --output_dir d:\data\BIDS --bids_sub johndoe --bids_task rest
 +
</syntaxhighlight>
  
==Python plug-ins==
+
= Log files =
AnyWave allows to run some Python code within a signal processing plug-in. In order for the plug-in to be able to run on the target computer, Python 2.7 must be installed and available.<br/>
+
Every time an operation is launched, a log file is created by AnyWave.<br />
Some specific Python packages are also required, for example numpy.<br/>
+
This is also the case for command line execution.<br />
Depending on the plug-in some extra packages might be required too. Check the documentation released with the plug-in to know about which Python package is required.<br/>
+
Depending on your platform, the log files are located in the following folder:<br/>
'''Specific Windows notice:''' if the 64bit version of AnyWave is used, then the Python interpreted installed must also run in 64bit mode.<br/>
+
- Windows: '''\Documents\AnyWave\Log'''<br/>
 +
- Mac: '''/Users/johndoe/AnyWave/Log'''<br/>
 +
- Linux: '''/home/johndoe/AnyWave/Log'''<br/>

Latest revision as of 10:46, 7 September 2020

Frequently asked questions (FAQ) about AnyWave. If you don't have an answer to your question reading the Documentation, you may find useful information here.

File formats

AnyWave can read and/or write to different file formats depending on the available plug-ins.

Read

Manufacturer modality file extension
AnyWave all modalities *.ades
Micromed EEG/SEEG *.trc
EDF+ EEG/SEEG *.edf
BrainProducts EEG/SEEG *.vhdr
ANT EEProbe EEG/SEEG *.cnt
SPM all modalities *.mat
EEGLAB all modalities *.set
EGI EEG/SEEG *.mff
4D neuroimaging MEG/EEG No extension
Elekta MEG/EEG *.fif
CTF MEG/EEG *.ds

Export

AnyWave can export to the following formats:

Manufacturer modality file extension
AnyWave all modalities *.ades
EDF+ EEG/SEEG *.edf
BrainProducts EEG/SEEG *.vhdr
Elekta MEG/EEG *.fif
MATLAB all modalities *.mat (see documentation below)

ADES format

This is a simple file format used mostly to exchange data between different software.
Here is a complete documentation of the ADES file format

MATLAB format

A new plugin allows AnyWave to export data into a MATLAB file.
Here is a complete documentation about what you will find inside the MATLAB file when exporting data.

Plug-ins

The application is designed to be modular by using plug-ins.
Some plugins are provided with the application when installing:
- File read/export plugins.
- Data Processing plugins like h²/r² correlations, Time/Frequency using wavelet, markers tools.
AnyWave also supports MATLAB/Python plugins.

How to install a plug-in

The user may add custom plug-ins to AnyWave. Depending on the plug-in type (MATLAB, Python or Native) the location where to put the plug-in may vary.
We strongly recommend NOT to add plug-ins in the Application directory, as it may require administrative privileges and it also make the plug-ins available to all users on the computer.

Place native plugins (*.dll *.so *.dylib) on the following folder depending of your platform:
- Windows: the folder is created in Documents\AnyWave\Plugins.
- Mac: the folder is created in /Users/johndoe/AnyWave/Plugins.
- Linux: the folder if created in /home/johndoe/AnyWave/Plugins.

Place MATLAB plugins on the following folder depending of your platform:
- Windows : the folder is created in Documents\AnyWave\Plugins\MATLAB.
- Mac: the folder is created in /Users/johndoe/AnyWave/Plugins/MATLAB.
- Linux: the folder if created in /home/johndoe/AnyWave/Plugins/MATLAB.

Place Python plugins on the following folder depending of your platform:
- Windows: the folder is created in Documents\AnyWave\Plugins\Python .
- Mac: the folder is created in /Users/johndoe/AnyWave/Plugins/Python .
- Linux: the folder if created in /home/johndoe/AnyWave/Plugins/Python .

Configure AnyWave for MATLAB compiled plugins

The last releases of MATLAB compiled plugins require the MATLAB 2018b runtime on Windows and MATLAB 2020a runtime on Mac.
- Install the required MATLAB runtime for you platform (See the mathworks website to download and install the runtime)
- Configure AnyWave to use the correct version of the runtime (Mac and Linux only) :
The path on Mac should be something close to /Applications/MATLAB_Runtime/v98
The path on Linux should be something close to /usr/local/MATLAB/MATLAB_Runtime/v95

Set the path to the MATLAB runtime in the AnyWave preferences UI then restart AnyWave.

Configure AnyWave for MATLAB scripted plugins

MATLAB plug-ins can be distributed as MATLAB .m files and thus require that MATLAB is available on the computer.
AnyWave will call the MATLAB execution engine to run those files.

Batch processing

Some processes can be executed in batch mode, using the command line.
See this section Command Line Options for more details.
List of process that can be executed in batch mode:


Command line options

AnyWave can also be launched using the command line. This will prevent any GUI to pop up on the screen.
In this mode, you will be able to batch some operations, like converting files to another format or BIDSify some file.
See this section Command Line Options

BIDS support

The BIDS support is under development, but there is a command line feature that can be used to launch AnyWave without any GUI and
ask it to convert a SEEG file into a BIDS compatible format and place it to a specified folder.
options:
--toBIDS indicates we want to convert a file to BIDS.
--bids_modality <ieeg|meg> specify what the file to convert contains (ieeg, meg).REQUIRED
--bids_sub <subject> BIDS subject REQUIRED
--bids_task <task> BIDS task REQUIRED
--bids_run <run> BIDS run index (optional)
--bids_acq <acq> BIDS acquisition (optional)
--bids_proc <proc> process (optional)
--bids_output <sidecars|all> (sidecars : only generates .json and .tsv files. all: full conversion)
--bids_ses <session> BIDS session (optional)
--bids_format <edf | vhdr> (optional)
Note:
When converting MEG data, user input_folder not input_file option.
Some MEG formats consists of several files in a folder, so the BIDS conversion will produce also a folder.

Example

Convert a file data.eeg containing SEEG recordings to BIDS for subject JohnDoe.

anywave --toBIDS --bids_modality ieeg --input_file d:\data\data.eeg --output_dir d:\data\BIDS --bids_format vhdr --bids_sub johndoe --bids_task rest

Convert a MEG data file (4DNI) to BIDS for subject JohnDoe.
The run number must be specified.

anywave --toBIDS --bids_modality meg --input_dir d:\data\MEG\run1 --output_dir d:\data\BIDS --bids_sub johndoe --bids_task rest --bids_run 01

Convert a MEG data file (Elekta) to BIDS for subject JohnDoe.
As everything is stored in one file (.fif), no need here to specify a run number (but you can).
However, the input is still a folder, so specifiy the folder in which the fif file is located.

anywave --toBIDS --bids_modality meg --input_dir d:\data\MEG --output_dir d:\data\BIDS --bids_sub johndoe --bids_task rest

Log files

Every time an operation is launched, a log file is created by AnyWave.
This is also the case for command line execution.
Depending on your platform, the log files are located in the following folder:
- Windows: \Documents\AnyWave\Log
- Mac: /Users/johndoe/AnyWave/Log
- Linux: /home/johndoe/AnyWave/Log