diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/README.md b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/README.md new file mode 100644 index 0000000..1e5d3cc --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/README.md @@ -0,0 +1,11 @@ +# OpenVibe_THN-p300-bci + +Die Szenarien für das Taktile und das Visuelle BCI, basieren auf dem OpenVibeSzenrio p300-speller-xDAWN. +Die Ausführungsreihenfolge ist Acquisition -> train-xDAWN -> train-classifier -> online. + +p300-tactile: + +- benötigt die OpenVibe-Box https://github.com/Mattias2909/OpenVibe_THN_TactileBCI_UDPStimcodeSender zur Ansteuerung der Taktilos +- die 6x6 speller-Matrix des visuellen BCI ist hier durch eine 6x1 Matrix ersetzt, deren Elemente die anzusteuernden Taktilos repräsentieren +- Die StimulationCodes werden durch den UDPStimCodeSender geleitet und als UDP Nachricht an den Feather weitergeleitet um die Taktilos anzusteuern (Die Nachricht enthält dabei eine Zahl x = [1;6]) +- Zuerst wird der Target-Taktilo angesteuert und in folgedessen alle 6 Taktilos in zufälliger Reihenfolge mit einer festgelegten Anzahl von Wiederholungen und Trials diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-epoch-average.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-epoch-average.cfg new file mode 100644 index 0000000..d875a22 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-epoch-average.cfg @@ -0,0 +1,4 @@ + + Epoch block average + 1 + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-signal-decimation.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-signal-decimation.cfg new file mode 100644 index 0000000..17f549b --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-signal-decimation.cfg @@ -0,0 +1,3 @@ + + 2 + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-spatial-trainer.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-spatial-trainer.cfg new file mode 100644 index 0000000..877b7b3 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-spatial-trainer.cfg @@ -0,0 +1,6 @@ + + OVTK_StimulationId_ExperimentStop + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + 2 + true + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-stimulator.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-stimulator.cfg new file mode 100644 index 0000000..108040b --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-stimulator.cfg @@ -0,0 +1,15 @@ + + ${Player_ScenarioDirectory}/scripts/p300-tactile-stimulator.lua + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_07 + 6 + 6 + 6 + 0.2 + 0.1 + 1.0 + 3.0 + OVTK_StimulationId_Label_00 + + 20 + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-visualization.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-visualization.cfg new file mode 100644 index 0000000..ff79a80 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-visualization.cfg @@ -0,0 +1,17 @@ + + ${Player_ScenarioDirectory}/p300-tactile.ui + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_07 + 5,5,5 + 100,100,100 + 60 + 0,0,0 + 25,25,25 + 40 + 20,20,70 + 10,10,30 + 40 + 10,40,10 + 60,100,60 + 40 + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-reader.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-reader.cfg new file mode 100644 index 0000000..eb40b5a --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-reader.cfg @@ -0,0 +1,3 @@ + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-writer.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-writer.cfg new file mode 100644 index 0000000..8ec690d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-writer.cfg @@ -0,0 +1,4 @@ + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-classifier.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-classifier.cfg new file mode 100644 index 0000000..8afb5db --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + -1.065449e-02 -8.433724e-03 -8.073272e-03 -9.017780e-03 -9.777354e-03 -8.944181e-03 -6.230830e-03 -2.758279e-03 -3.235140e-04 -1.352536e-04 -1.926088e-03 -4.083097e-03 -4.692498e-03 -2.753402e-03 1.244794e-03 5.680807e-03 8.762294e-03 9.456782e-03 7.915370e-03 5.287581e-03 3.118571e-03 2.619630e-03 4.094226e-03 6.768748e-03 9.174244e-03 9.972830e-03 8.797661e-03 6.541000e-03 4.799351e-03 4.768071e-03 6.344103e-03 8.124675e-03 8.363765e-03 6.224775e-03 2.424195e-03 -1.196322e-03 -2.851123e-03 -1.915709e-03 7.530751e-04 3.396183e-03 4.368668e-03 2.963365e-03 -3.392516e-04 -4.198203e-03 -7.079456e-03 -7.969700e-03 -6.861420e-03 -4.777039e-03 -3.239701e-03 -3.388286e-03 -5.236641e-03 -7.610737e-03 -8.910818e-03 -8.244070e-03 -6.124523e-03 -4.181914e-03 -4.034294e-03 -6.119988e-03 -9.335163e-03 -1.173262e-02 -1.177178e-02 -9.257865e-03 -5.395932e-03 -2.028599e-03 -6.145408e-04 -1.541484e-03 -4.049135e-03 -6.678852e-03 -7.982786e-03 -7.200846e-03 -4.638517e-03 -1.537715e-03 5.851017e-04 8.427597e-04 -4.245259e-04 -1.824311e-03 -1.845317e-03 4.752100e-05 2.955936e-03 5.119501e-03 5.149311e-03 3.042552e-03 2.428930e-04 -1.287825e-03 -3.188279e-04 2.922254e-03 6.954850e-03 9.945371e-03 1.068628e-02 9.125222e-03 6.276736e-03 3.671370e-03 2.627163e-03 3.629881e-03 6.079055e-03 8.573383e-03 9.682944e-03 8.828090e-03 6.696685e-03 4.831422e-03 4.573125e-03 6.068291e-03 8.086901e-03 8.844321e-03 7.269914e-03 3.808607e-03 1.766968e-04 -1.741630e-03 -1.074637e-03 1.554038e-03 4.470369e-03 5.937520e-03 5.050437e-03 2.094611e-03 -1.694535e-03 -4.761485e-03 -5.956829e-03 -5.080199e-03 -2.996414e-03 -1.197241e-03 -9.487884e-04 -2.483538e-03 -4.794599e-03 -6.271835e-03 -5.825002e-03 -3.713072e-03 -1.435526e-03 -7.048042e-04 -2.216943e-03 -5.109876e-03 -7.496883e-03 -7.681639e-03 -5.207139e-03 -1.076147e-03 2.901702e-03 5.134082e-03 5.021532e-03 3.142139e-03 8.761657e-04 -2.795461e-04 5.861766e-04 3.352089e-03 6.897349e-03 9.682793e-03 1.064804e-02 9.903735e-03 8.705992e-03 8.625191e-03 1.041981e-02 1.342298e-02 1.594116e-02 1.642946e-02 1.460972e-02 2.817637e-02 -4.840407e-02 -9.976585e-02 -6.985380e-02 1.491242e-02 7.155328e-02 4.443439e-02 -3.797191e-02 -9.137803e-02 -6.061353e-02 2.481303e-02 8.074376e-02 5.333914e-02 -2.723268e-02 -7.844005e-02 -4.951793e-02 2.779827e-02 7.315535e-02 4.066951e-02 -3.419586e-02 -7.182737e-02 -3.117873e-02 4.726139e-02 8.269434e-02 3.734128e-02 -4.375073e-02 -7.782342e-02 -2.888324e-02 5.475251e-02 8.871436e-02 3.806794e-02 -4.683099e-02 -8.083197e-02 -2.985476e-02 5.485205e-02 8.865112e-02 3.879119e-02 -4.340915e-02 -7.558262e-02 -2.799611e-02 4.736031e-02 7.128999e-02 1.905085e-02 -5.465944e-02 -7.273114e-02 -1.577054e-02 5.727698e-02 6.950056e-02 5.584476e-03 -7.132660e-02 -8.340662e-02 -1.782299e-02 5.923858e-02 6.914402e-02 6.673236e-04 -7.811252e-02 -8.828058e-02 -1.966468e-02 5.907948e-02 6.992799e-02 3.895191e-03 -7.095231e-02 -7.936229e-02 -1.505279e-02 5.425062e-02 5.727324e-02 -7.536283e-03 -7.101590e-02 -6.525187e-02 5.747159e-03 6.955956e-02 5.973993e-02 -1.519179e-02 -7.931864e-02 -6.639334e-02 1.206213e-02 7.749772e-02 6.363009e-02 -1.607782e-02 -8.150926e-02 -6.658777e-02 1.412134e-02 8.033233e-02 6.715597e-02 -9.949235e-03 -7.195228e-02 -5.701572e-02 1.730200e-02 7.342040e-02 5.409701e-02 -1.892744e-02 -6.798887e-02 -4.022698e-02 3.725145e-02 8.474108e-02 5.200611e-02 -2.921481e-02 -7.662697e-02 -4.121790e-02 4.202358e-02 8.876384e-02 5.067273e-02 -3.518262e-02 -8.334376e-02 -4.609787e-02 3.849587e-02 8.526104e-02 4.784015e-02 -3.525063e-02 -8.071039e-02 -4.526235e-02 3.132817e-02 6.832485e-02 2.741037e-02 -4.827900e-02 -7.926540e-02 -3.230679e-02 4.468368e-02 7.155341e-02 1.865642e-02 -6.164462e-02 -8.763346e-02 -3.174667e-02 5.042964e-02 7.585444e-02 1.823988e-02 -6.483002e-02 -8.972530e-02 -3.110719e-02 5.265307e-02 7.859125e-02 2.267007e-02 -5.690036e-02 -7.962156e-02 -2.437293e-02 5.034890e-02 6.756062e-02 1.109532e-02 -5.827743e-02 -6.613570e-02 -1.759823e-03 7.019885e-02 7.602720e-02 9.305781e-03 -6.132959e-02 -6.165544e-02 1.205372e-02 8.825910e-02 9.222659e-02 2.198583e-02 -4.914157e-02 -4.633916e-02 3.125785e-02 + -1.96568 + + + 2.409086e-03 2.198461e-03 2.433915e-03 2.786778e-03 2.835634e-03 2.319346e-03 1.319269e-03 2.463177e-04 -3.895101e-04 -3.047498e-04 3.468884e-04 1.037339e-03 1.182314e-03 5.141635e-04 -7.405742e-04 -2.000163e-03 -2.688242e-03 -2.575711e-03 -1.890107e-03 -1.145624e-03 -8.253918e-04 -1.117923e-03 -1.846505e-03 -2.601419e-03 -2.980041e-03 -2.804876e-03 -2.215824e-03 -1.592960e-03 -1.341206e-03 -1.641963e-03 -2.315090e-03 -2.895642e-03 -2.908464e-03 -2.183725e-03 -1.001989e-03 4.985026e-05 4.373304e-04 1.995234e-05 -8.552968e-04 -1.572232e-03 -1.627130e-03 -9.223903e-04 2.051332e-04 1.213669e-03 1.678961e-03 1.513395e-03 9.761424e-04 4.988545e-04 4.389008e-04 8.878154e-04 1.624427e-03 2.236657e-03 2.359095e-03 1.905259e-03 1.152863e-03 6.043322e-04 6.804864e-04 1.432049e-03 2.469744e-03 3.183628e-03 3.123699e-03 2.291345e-03 1.143598e-03 3.074599e-04 1.973655e-04 7.838641e-04 1.645497e-03 2.244436e-03 2.237862e-03 1.644344e-03 7.956552e-04 1.293362e-04 -5.469842e-05 2.477126e-04 7.454096e-04 1.014249e-03 7.474585e-04 -3.950141e-05 -9.827824e-04 -1.567896e-03 -1.452945e-03 -7.137900e-04 1.671162e-04 5.851543e-04 1.958459e-04 -8.597379e-04 -2.040156e-03 -2.740986e-03 -2.658219e-03 -1.946669e-03 -1.092818e-03 -6.082479e-04 -7.437185e-04 -1.380879e-03 -2.134181e-03 -2.581622e-03 -2.495294e-03 -1.960393e-03 -1.327201e-03 -1.013934e-03 -1.254147e-03 -1.930003e-03 -2.609070e-03 -2.792642e-03 -2.239575e-03 -1.153674e-03 -8.997446e-05 3.806971e-04 3.515627e-05 -8.551915e-04 -1.694220e-03 -1.931892e-03 -1.389896e-03 -3.407786e-04 6.858343e-04 1.224642e-03 1.122730e-03 5.874328e-04 3.736968e-05 -1.413305e-04 1.960100e-04 8.770850e-04 1.506936e-03 1.692687e-03 1.287216e-03 5.082916e-04 -1.620141e-04 -2.654173e-04 3.252110e-04 1.288027e-03 2.025447e-03 2.033382e-03 1.226029e-03 -3.785326e-06 -1.029815e-03 -1.376807e-03 -9.922784e-04 -2.444616e-04 3.261782e-04 3.269822e-04 -2.867881e-04 -1.224122e-03 -2.046137e-03 -2.412773e-03 -2.262579e-03 -1.842008e-03 -1.567873e-03 -1.783824e-03 -2.537089e-03 -3.514779e-03 -4.205952e-03 -4.216115e-03 -3.541297e-03 -6.581993e-03 -1.424993e-03 1.320168e-02 2.098451e-02 1.257719e-02 -4.498017e-03 -1.334755e-02 -5.064049e-03 1.184138e-02 1.976790e-02 9.834123e-03 -8.909432e-03 -1.834723e-02 -9.407664e-03 8.846172e-03 1.831813e-02 9.958901e-03 -7.415151e-03 -1.633349e-02 -8.395699e-03 7.513099e-03 1.468631e-02 5.845724e-03 -9.542276e-03 -1.527563e-02 -5.316914e-03 9.889072e-03 1.422081e-02 2.683462e-03 -1.316291e-02 -1.689959e-02 -4.197565e-03 1.239718e-02 1.595179e-02 2.360225e-03 -1.523540e-02 -1.945396e-02 -6.067104e-03 1.177606e-02 1.674625e-02 4.605319e-03 -1.184376e-02 -1.594835e-02 -4.007871e-03 1.134547e-02 1.440262e-02 2.527307e-03 -1.134707e-02 -1.229705e-02 1.030356e-03 1.495831e-02 1.495232e-02 8.171389e-04 -1.282625e-02 -1.144988e-02 4.289189e-03 1.883631e-02 1.734606e-02 8.461666e-04 -1.451750e-02 -1.354941e-02 2.777988e-03 1.831901e-02 1.793993e-02 2.538220e-03 -1.219256e-02 -1.181013e-02 2.411256e-03 1.520067e-02 1.319585e-02 -1.381968e-03 -1.325155e-02 -1.005060e-02 4.779710e-03 1.552042e-02 1.049956e-02 -5.626390e-03 -1.640334e-02 -1.043949e-02 6.651778e-03 1.760798e-02 1.093456e-02 -7.266235e-03 -1.917721e-02 -1.305262e-02 5.013481e-03 1.721660e-02 1.185747e-02 -5.142642e-03 -1.654127e-02 -1.131615e-02 4.418310e-03 1.406467e-02 7.733377e-03 -7.717027e-03 -1.599491e-02 -8.378094e-03 7.184297e-03 1.428276e-02 5.125309e-03 -1.115809e-02 -1.768244e-02 -7.186074e-03 1.020478e-02 1.696643e-02 5.939719e-03 -1.218340e-02 -1.938738e-02 -8.350124e-03 1.022358e-02 1.835040e-02 8.721314e-03 -8.242182e-03 -1.520539e-02 -5.472187e-03 1.055541e-02 1.637952e-02 6.413477e-03 -8.459788e-03 -1.235637e-02 -9.556758e-04 1.396288e-02 1.671446e-02 4.074063e-03 -1.111921e-02 -1.299646e-02 9.252366e-04 1.683358e-02 1.841796e-02 3.477969e-03 -1.357535e-02 -1.601966e-02 -1.560836e-03 1.538256e-02 1.814330e-02 4.393229e-03 -1.183847e-02 -1.457514e-02 -1.975018e-03 1.219391e-02 1.295218e-02 -5.180932e-04 -1.425949e-02 -1.416985e-02 -7.052536e-04 1.153933e-02 8.964682e-03 -6.787161e-03 -2.025163e-02 -1.794231e-02 -2.400931e-03 1.001589e-02 5.587103e-03 + -0.191969 + + + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-spatial-filter.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-spatial-filter.cfg new file mode 100644 index 0000000..03b1669 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -2.559252e+00 -3.708117e+00 8.689272e-01 6.167160e-03 -6.747036e+00 3.825336e+00 -1.562881e+00 -1.609973e+00 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-classifier.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-classifier.cfg new file mode 100644 index 0000000..dc3ff8d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 5.023280e-02 3.764423e-02 2.498992e-02 2.205262e-02 2.781807e-02 3.100063e-02 2.220079e-02 4.864926e-03 -6.996999e-03 -2.782131e-03 1.307792e-02 2.415620e-02 1.749764e-02 -3.517305e-03 -2.184482e-02 -2.273431e-02 -7.547872e-03 7.923395e-03 8.754577e-03 -5.322100e-03 -2.083653e-02 -2.454778e-02 -1.606082e-02 -6.744798e-03 -6.945412e-03 -1.525904e-02 -2.092805e-02 -1.635047e-02 -6.035751e-03 -2.167437e-03 -1.122313e-02 -2.589318e-02 -3.143947e-02 -2.066732e-02 -2.266003e-03 6.603369e-03 -3.206754e-03 -2.346435e-02 -3.586774e-02 -2.919879e-02 -9.697582e-03 5.313045e-03 4.063567e-03 -9.103153e-03 -1.914333e-02 -1.557472e-02 -2.063816e-03 8.774287e-03 9.161186e-03 3.876580e-03 4.122179e-03 1.449580e-02 2.727198e-02 3.038508e-02 2.084996e-02 9.205450e-03 9.563690e-03 2.490662e-02 4.279603e-02 4.661100e-02 3.171245e-02 1.052025e-02 1.132059e-03 1.035146e-02 2.758426e-02 3.536693e-02 2.598944e-02 8.003711e-03 -3.170551e-03 -5.163085e-04 8.774646e-03 1.209871e-02 5.001533e-03 -4.754784e-03 -6.489672e-03 1.033872e-03 7.657191e-03 2.665318e-03 -1.295428e-02 -2.616189e-02 -2.461127e-02 -9.825830e-03 2.989044e-03 -8.681673e-04 -2.107953e-02 -4.196602e-02 -4.704027e-02 -3.443330e-02 -1.824967e-02 -1.475900e-02 -2.712809e-02 -4.343855e-02 -4.922771e-02 -4.149289e-02 -3.029197e-02 -2.716932e-02 -3.300389e-02 -3.791560e-02 -3.286537e-02 -2.022988e-02 -1.178634e-02 -1.596223e-02 -2.784870e-02 -3.304626e-02 -2.215497e-02 -1.275732e-03 1.271172e-02 8.152025e-03 -9.721702e-03 -2.324261e-02 -1.887286e-02 1.531826e-04 1.731281e-02 1.874798e-02 5.958592e-03 -6.839537e-03 -7.315641e-03 3.388633e-03 1.332515e-02 1.304139e-02 5.273002e-03 1.096225e-03 7.085723e-03 1.749042e-02 2.006193e-02 9.591224e-03 -5.301579e-03 -9.948866e-03 1.342265e-03 1.839647e-02 2.410050e-02 1.092700e-02 -1.123327e-02 -2.399447e-02 -1.772383e-02 -3.927396e-04 1.043981e-02 4.419368e-03 -1.248552e-02 -2.496701e-02 -2.379538e-02 -1.405836e-02 -8.532157e-03 -1.383604e-02 -2.402199e-02 -2.798091e-02 -2.235633e-02 -1.589493e-02 -2.029512e-02 -3.708372e-02 -5.467323e-02 -5.946973e-02 -5.014721e-02 -5.135034e-02 -1.900345e-02 1.366188e-02 1.959101e-02 -1.804682e-03 -2.429428e-02 -2.170582e-02 5.431877e-03 3.065392e-02 2.887963e-02 2.315960e-03 -2.156155e-02 -1.791586e-02 1.014777e-02 3.472365e-02 3.149396e-02 4.393186e-03 -1.859986e-02 -1.418825e-02 1.239693e-02 3.282673e-02 2.483622e-02 -4.716395e-03 -2.653900e-02 -1.861832e-02 1.131469e-02 3.350283e-02 2.624641e-02 -2.261078e-03 -2.253725e-02 -1.400256e-02 1.407767e-02 3.224064e-02 2.113989e-02 -8.497038e-03 -2.669075e-02 -1.477834e-02 1.548725e-02 3.381788e-02 2.213180e-02 -7.210658e-03 -2.425423e-02 -1.219759e-02 1.541762e-02 2.866546e-02 1.207253e-02 -1.922749e-02 -3.462451e-02 -1.909920e-02 1.144094e-02 2.623005e-02 1.078501e-02 -1.857256e-02 -3.154676e-02 -1.481536e-02 1.449616e-02 2.651654e-02 9.356060e-03 -1.858082e-02 -2.730675e-02 -5.890479e-03 2.626765e-02 3.904800e-02 2.210192e-02 -4.883274e-03 -1.257383e-02 7.854207e-03 3.564681e-02 4.177738e-02 1.884071e-02 -1.107272e-02 -1.867073e-02 2.752031e-03 3.041218e-02 3.510291e-02 1.076276e-02 -1.953810e-02 -2.722240e-02 -7.286541e-03 1.683023e-02 1.749296e-02 -8.601768e-03 -3.680850e-02 -3.955074e-02 -1.443572e-02 1.324683e-02 1.620245e-02 -7.216621e-03 -3.158729e-02 -3.061650e-02 -4.145223e-03 2.167276e-02 2.121186e-02 -4.217704e-03 -2.745308e-02 -2.305294e-02 6.717297e-03 3.400791e-02 3.350172e-02 7.915661e-03 -1.504487e-02 -1.109404e-02 1.588940e-02 3.800984e-02 3.208902e-02 3.573422e-03 -1.884887e-02 -1.244792e-02 1.634524e-02 3.843132e-02 3.161122e-02 3.056976e-03 -1.822127e-02 -1.116093e-02 1.579401e-02 3.341724e-02 2.179318e-02 -9.012830e-03 -2.891684e-02 -1.834306e-02 1.179193e-02 3.104644e-02 2.024197e-02 -9.259412e-03 -2.737120e-02 -1.606605e-02 1.230839e-02 2.783493e-02 1.380501e-02 -1.602520e-02 -3.136247e-02 -1.628020e-02 1.446133e-02 3.035242e-02 1.609036e-02 -1.302899e-02 -2.695394e-02 -1.171226e-02 1.631004e-02 2.725874e-02 8.601588e-03 -2.169876e-02 -3.318902e-02 -1.382094e-02 1.776046e-02 3.110367e-02 1.480713e-02 -1.205592e-02 -1.951980e-02 2.722027e-03 3.497552e-02 4.791346e-02 3.277780e-02 + -2.00902 + + + -1.037856e-02 -9.587372e-03 -4.510515e-03 -4.814465e-04 -1.365595e-03 -5.307766e-03 -6.799116e-03 -2.841571e-03 3.416342e-03 5.637051e-03 9.864054e-04 -6.398818e-03 -9.047329e-03 -3.528325e-03 5.816383e-03 1.073260e-02 6.907910e-03 -1.857532e-03 -7.285352e-03 -4.497621e-03 3.557755e-03 9.317476e-03 8.047500e-03 2.084028e-03 -2.105994e-03 -7.112330e-04 3.832027e-03 5.934121e-03 3.114346e-03 -1.290034e-03 -1.834192e-03 2.879581e-03 8.248020e-03 8.227173e-03 1.835395e-03 -5.240094e-03 -5.937098e-03 1.082545e-03 9.706521e-03 1.199168e-02 5.757992e-03 -3.294196e-03 -7.046597e-03 -2.647745e-03 5.059606e-03 8.552999e-03 4.922054e-03 -1.775570e-03 -5.129024e-03 -2.960633e-03 8.728988e-04 1.059963e-03 -3.255278e-03 -7.546460e-03 -6.928465e-03 -1.749503e-03 2.329923e-03 1.201201e-04 -7.353756e-03 -1.327471e-02 -1.156397e-02 -3.108681e-03 4.681805e-03 4.810232e-03 -2.592512e-03 -1.037811e-02 -1.122744e-02 -4.521716e-03 3.408389e-03 5.672458e-03 1.361561e-03 -4.147783e-03 -5.066912e-03 -1.019626e-03 3.079306e-03 2.668320e-03 -1.427190e-03 -3.930864e-03 -1.003416e-03 5.235001e-03 8.531200e-03 5.015074e-03 -2.325229e-03 -6.092404e-03 -1.715015e-03 7.725187e-03 1.409329e-02 1.189451e-02 3.564586e-03 -2.861733e-03 -1.425412e-03 6.249423e-03 1.288481e-02 1.277505e-02 7.047876e-03 1.922850e-03 2.097498e-03 6.173866e-03 8.666068e-03 6.198038e-03 1.214162e-03 -7.344411e-04 2.783398e-03 8.041625e-03 8.751776e-03 2.752664e-03 -5.190361e-03 -7.684737e-03 -2.054215e-03 6.651326e-03 1.021963e-02 5.107300e-03 -4.128438e-03 -9.193238e-03 -5.936476e-03 1.940963e-03 6.815780e-03 4.602046e-03 -1.684735e-03 -5.536379e-03 -3.731647e-03 7.179829e-04 2.261927e-03 -9.941728e-04 -5.228404e-03 -5.151383e-03 -1.312769e-05 5.132525e-03 4.498342e-03 -2.153442e-03 -8.655338e-03 -8.248464e-03 -4.218934e-04 8.165288e-03 9.855854e-03 3.328661e-03 -5.109280e-03 -7.563670e-03 -2.002472e-03 6.122299e-03 9.462057e-03 5.849113e-03 -1.070508e-04 -2.162151e-03 1.199286e-03 5.677542e-03 6.191633e-03 2.519113e-03 -4.758773e-04 1.751792e-03 8.182062e-03 1.287109e-02 1.107154e-02 1.716072e-02 1.179036e-02 -2.955288e-03 -1.311528e-02 -9.246707e-03 3.993599e-03 1.262045e-02 7.569479e-03 -6.111183e-03 -1.448840e-02 -9.030955e-03 4.643642e-03 1.249266e-02 6.389258e-03 -7.569885e-03 -1.527489e-02 -8.986191e-03 4.797178e-03 1.201201e-02 5.417112e-03 -8.016324e-03 -1.426516e-02 -6.646021e-03 7.281601e-03 1.338014e-02 5.362930e-03 -8.742517e-03 -1.471380e-02 -6.575543e-03 7.352504e-03 1.295972e-02 4.719211e-03 -8.727228e-03 -1.345260e-02 -4.506541e-03 9.014399e-03 1.326079e-02 3.789261e-03 -9.877897e-03 -1.394835e-02 -4.407106e-03 8.927542e-03 1.247135e-02 2.767611e-03 -9.996175e-03 -1.244389e-02 -1.749113e-03 1.139971e-02 1.366509e-02 2.680941e-03 -1.048235e-02 -1.254687e-02 -1.515896e-03 1.132367e-02 1.291797e-02 1.729481e-03 -1.075579e-02 -1.181213e-02 -5.003473e-04 1.136841e-02 1.130859e-02 -1.064107e-03 -1.360765e-02 -1.401215e-02 -2.319946e-03 9.173649e-03 8.525008e-03 -3.637077e-03 -1.476764e-02 -1.326897e-02 -4.086879e-04 1.090651e-02 9.277374e-03 -3.531811e-03 -1.433760e-02 -1.192684e-02 1.549097e-03 1.278627e-02 1.088121e-02 -1.601629e-03 -1.132586e-02 -7.866359e-03 5.605601e-03 1.554661e-02 1.187475e-02 -1.721247e-03 -1.152669e-02 -7.773158e-03 5.430763e-03 1.434519e-02 9.670841e-03 -3.940133e-03 -1.265736e-02 -7.650954e-03 5.823980e-03 1.374339e-02 7.627544e-03 -6.756626e-03 -1.520422e-02 -9.490116e-03 4.294903e-03 1.198153e-02 5.762432e-03 -7.893570e-03 -1.491077e-02 -8.028424e-03 5.760681e-03 1.234784e-02 4.925332e-03 -9.045777e-03 -1.543249e-02 -7.830977e-03 5.933881e-03 1.183938e-02 4.009536e-03 -9.291177e-03 -1.414233e-02 -5.256639e-03 8.542739e-03 1.328011e-02 4.094795e-03 -9.748802e-03 -1.424343e-02 -4.864424e-03 8.857950e-03 1.307279e-02 3.713535e-03 -9.409888e-03 -1.268625e-02 -2.639611e-03 1.050893e-02 1.328599e-02 2.742399e-03 -1.051170e-02 -1.311188e-02 -2.548509e-03 1.031480e-02 1.237425e-02 1.684543e-03 -1.057394e-02 -1.157095e-02 -1.220668e-05 1.245740e-02 1.309567e-02 1.075128e-03 -1.162555e-02 -1.238415e-02 -7.638310e-04 1.106519e-02 1.073219e-02 -1.758508e-03 -1.410179e-02 -1.431623e-02 + -0.192624 + + + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-spatial-filter.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-spatial-filter.cfg new file mode 100644 index 0000000..a4c4c7d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -1.197627e+00 2.105600e-01 -2.502675e+00 -6.337555e-01 5.800950e-01 5.214162e+00 -1.198762e-01 1.296027e+00 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-classifier.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-classifier.cfg new file mode 100644 index 0000000..b5b3e61 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 1.992349e-04 -7.101522e-02 -6.101115e-02 1.837456e-02 8.451950e-02 6.890552e-02 -1.273989e-02 -7.677335e-02 -5.759445e-02 2.487486e-02 8.539484e-02 6.074976e-02 -2.513950e-02 -8.515548e-02 -5.781966e-02 2.961841e-02 8.844873e-02 5.861412e-02 -3.006978e-02 -8.804303e-02 -5.690836e-02 3.137926e-02 8.721030e-02 5.446974e-02 -3.273200e-02 -8.533920e-02 -5.034878e-02 3.543156e-02 8.354213e-02 4.463870e-02 -4.107945e-02 -8.529944e-02 -4.234759e-02 4.375059e-02 8.421183e-02 3.655660e-02 -5.143394e-02 -9.009501e-02 -3.943200e-02 4.964065e-02 8.673025e-02 3.388695e-02 -5.561893e-02 -9.127523e-02 -3.719357e-02 5.160887e-02 8.533880e-02 3.067820e-02 -5.576284e-02 -8.561326e-02 -2.891653e-02 5.572887e-02 8.157143e-02 2.263129e-02 -5.986401e-02 -8.047555e-02 -1.737311e-02 6.503794e-02 8.198488e-02 1.536590e-02 -6.720587e-02 -8.113447e-02 -1.134800e-02 7.183194e-02 8.395275e-02 1.238461e-02 -7.063420e-02 -8.126964e-02 -9.154502e-03 7.229510e-02 8.068305e-02 8.270836e-03 -7.065540e-02 -7.588764e-02 -3.005205e-03 7.263436e-02 7.338773e-02 -1.152449e-03 -7.395180e-02 -6.973003e-02 7.629030e-03 7.881926e-02 7.031543e-02 -1.001845e-02 -8.044251e-02 -6.861530e-02 1.428943e-02 8.445408e-02 7.049683e-02 -1.381592e-02 -8.337001e-02 -6.808107e-02 1.603180e-02 8.335617e-02 6.582881e-02 -1.810695e-02 -8.281586e-02 -6.304173e-02 1.976960e-02 7.994039e-02 5.554372e-02 -2.823412e-02 -8.512472e-02 -5.642925e-02 2.857394e-02 8.243361e-02 4.916468e-02 -3.801390e-02 -9.014055e-02 -5.327591e-02 3.606835e-02 8.764745e-02 4.919107e-02 -4.028334e-02 -8.996025e-02 -4.941169e-02 4.031952e-02 8.864850e-02 4.755458e-02 -3.996037e-02 -8.420444e-02 -4.040029e-02 4.598750e-02 8.624931e-02 3.941727e-02 -4.591090e-02 -8.161477e-02 -3.061025e-02 5.489345e-02 8.673841e-02 3.127371e-02 -5.570341e-02 -8.554285e-02 -2.730365e-02 6.022422e-02 8.799954e-02 2.731039e-02 -6.083064e-02 -8.753615e-02 -2.624987e-02 6.046999e-02 8.473959e-02 2.262749e-02 -6.196672e-02 -8.288187e-02 -1.956483e-02 6.242056e-02 7.890095e-02 1.334653e-02 -6.639037e-02 -7.786407e-02 -8.791755e-03 7.010557e-02 -5.615247e-04 7.483156e-02 6.284848e-02 -2.304054e-02 -9.388252e-02 -7.630811e-02 1.245716e-02 8.227777e-02 6.236127e-02 -2.626415e-02 -9.218231e-02 -6.707967e-02 2.425210e-02 8.902756e-02 6.117237e-02 -3.105858e-02 -9.368062e-02 -6.273613e-02 3.045338e-02 9.114664e-02 5.770379e-02 -3.565109e-02 -9.379946e-02 -5.769990e-02 3.557369e-02 9.089105e-02 5.224208e-02 -4.021881e-02 -9.142095e-02 -4.865274e-02 4.458068e-02 9.312595e-02 4.756963e-02 -4.514629e-02 -8.967265e-02 -3.980462e-02 5.408174e-02 9.629405e-02 4.354225e-02 -5.067760e-02 -9.046333e-02 -3.526629e-02 5.869814e-02 9.568188e-02 3.794305e-02 -5.586529e-02 -9.056170e-02 -3.143582e-02 6.056010e-02 9.121830e-02 2.926055e-02 -6.190468e-02 -8.916862e-02 -2.494715e-02 6.468354e-02 8.765063e-02 2.013571e-02 -6.897417e-02 -8.848470e-02 -1.822506e-02 7.011663e-02 8.607157e-02 1.283464e-02 -7.536013e-02 -8.880163e-02 -1.378228e-02 7.334513e-02 8.392634e-02 7.302760e-03 -7.842094e-02 -8.606398e-02 -8.179913e-03 7.557069e-02 7.987519e-02 8.068346e-04 -8.038784e-02 -8.048918e-02 6.053229e-04 7.985220e-02 7.607283e-02 -6.937963e-03 -8.420552e-02 -7.645033e-02 8.728067e-03 8.439631e-02 7.298832e-02 -1.436799e-02 -8.896829e-02 -7.488045e-02 1.360530e-02 8.646818e-02 6.965921e-02 -1.948975e-02 -9.002703e-02 -7.013510e-02 1.976814e-02 8.808818e-02 6.564250e-02 -2.382641e-02 -8.814341e-02 -6.104658e-02 3.007882e-02 9.227659e-02 6.215646e-02 -2.919914e-02 -8.795594e-02 -5.350611e-02 3.939227e-02 9.591337e-02 5.796964e-02 -3.631159e-02 -9.126768e-02 -5.118437e-02 4.284935e-02 9.475875e-02 5.136447e-02 -4.348054e-02 -9.367112e-02 -4.881053e-02 4.458432e-02 9.077585e-02 4.258715e-02 -5.058381e-02 -9.344767e-02 -4.230373e-02 5.032885e-02 8.950351e-02 3.502797e-02 -5.734648e-02 -9.288521e-02 -3.480497e-02 5.791345e-02 9.059256e-02 2.956071e-02 -6.327357e-02 -9.339522e-02 -3.004358e-02 6.234892e-02 8.976243e-02 2.436153e-02 -6.722092e-02 -9.188361e-02 -2.492409e-02 6.498266e-02 8.605785e-02 1.710047e-02 -7.106021e-02 -8.812765e-02 -1.667591e-02 7.010703e-02 8.335692e-02 9.505115e-03 -7.575139e-02 + -1.86754 + + + 4.520025e-03 1.860010e-02 1.121634e-02 -9.526612e-03 -2.206935e-02 -1.350048e-02 7.332846e-03 1.904633e-02 9.740392e-03 -1.077739e-02 -2.109266e-02 -1.024066e-02 1.091980e-02 2.073750e-02 8.976156e-03 -1.253802e-02 -2.181898e-02 -9.125094e-03 1.298347e-02 2.226882e-02 9.350535e-03 -1.275495e-02 -2.180553e-02 -8.833959e-03 1.287559e-02 2.139641e-02 8.432157e-03 -1.242006e-02 -1.973092e-02 -6.162925e-03 1.415248e-02 2.024580e-02 5.886213e-03 -1.402755e-02 -1.880432e-02 -3.288592e-03 1.672094e-02 2.058894e-02 4.047893e-03 -1.624421e-02 -1.956902e-02 -2.303597e-03 1.823352e-02 2.125923e-02 3.603501e-03 -1.704786e-02 -2.005707e-02 -2.692211e-03 1.723442e-02 1.955385e-02 2.184331e-03 -1.695378e-02 -1.838230e-02 -9.491761e-04 1.714693e-02 1.714554e-02 -9.826170e-04 -1.851984e-02 -1.726815e-02 1.670249e-03 1.889736e-02 1.655722e-02 -3.268034e-03 -2.048766e-02 -1.740754e-02 3.156418e-03 2.057706e-02 1.727459e-02 -3.443324e-03 -2.071028e-02 -1.722719e-02 3.280705e-03 1.997974e-02 1.615205e-02 -3.915268e-03 -1.951488e-02 -1.477461e-02 5.184486e-03 1.965515e-02 1.368664e-02 -6.549141e-03 -2.011724e-02 -1.287366e-02 7.905032e-03 2.087043e-02 1.247629e-02 -9.002567e-03 -2.173394e-02 -1.254926e-02 9.523483e-03 2.228351e-02 1.283895e-02 -9.297754e-03 -2.183035e-02 -1.224474e-02 9.604475e-03 2.162626e-02 1.195660e-02 -9.130031e-03 -1.990548e-02 -9.446406e-03 1.130126e-02 2.089287e-02 9.461435e-03 -1.115129e-02 -1.958701e-02 -6.974644e-03 1.384189e-02 2.137811e-02 7.560350e-03 -1.383110e-02 -2.106887e-02 -6.634604e-03 1.498054e-02 2.186957e-02 6.917741e-03 -1.495362e-02 -2.188828e-02 -7.197601e-03 1.398074e-02 2.016843e-02 5.348754e-03 -1.509949e-02 -2.027120e-02 -5.105601e-03 1.457596e-02 1.842942e-02 2.516103e-03 -1.666331e-02 -1.915436e-02 -2.125867e-03 1.709569e-02 1.871972e-02 8.443587e-04 -1.840266e-02 -1.924333e-02 -4.632146e-04 1.918868e-02 1.993662e-02 1.038087e-03 -1.843670e-02 -1.891246e-02 -8.414417e-05 1.890837e-02 1.900492e-02 5.241281e-04 -1.737256e-02 -1.638006e-02 2.281010e-03 1.927344e-02 1.709345e-02 -1.932394e-03 -1.805311e-02 -4.853757e-03 -1.940220e-02 -1.102546e-02 1.131973e-02 2.448794e-02 1.481099e-02 -7.980413e-03 -2.077269e-02 -1.074513e-02 1.151877e-02 2.288933e-02 1.140477e-02 -1.142681e-02 -2.234868e-02 -1.014716e-02 1.280654e-02 2.310247e-02 1.016209e-02 -1.292666e-02 -2.269863e-02 -9.204296e-03 1.384754e-02 2.304199e-02 9.084499e-03 -1.377936e-02 -2.232723e-02 -8.025591e-03 1.433941e-02 2.182851e-02 6.784580e-03 -1.540118e-02 -2.208996e-02 -6.575438e-03 1.506859e-02 2.046998e-02 3.903692e-03 -1.778496e-02 -2.237006e-02 -4.999317e-03 1.675779e-02 2.077706e-02 2.957756e-03 -1.853957e-02 -2.175729e-02 -3.303776e-03 1.818310e-02 2.100731e-02 2.483695e-03 -1.838030e-02 -2.029335e-02 -1.361666e-03 1.905918e-02 2.018180e-02 1.003517e-03 -1.873854e-02 -1.880822e-02 8.149188e-04 1.993281e-02 1.883382e-02 -1.481160e-03 -2.026000e-02 -1.820008e-02 2.767847e-03 2.135820e-02 1.860694e-02 -2.756698e-03 -2.103188e-02 -1.762403e-02 4.015211e-03 2.189711e-02 1.788042e-02 -3.884197e-03 -2.123504e-02 -1.660769e-02 5.103044e-03 2.162275e-02 1.608213e-02 -5.784159e-03 -2.157119e-02 -1.516340e-02 6.775521e-03 2.164433e-02 1.407242e-02 -8.293425e-03 -2.255635e-02 -1.398243e-02 8.867444e-03 2.278833e-02 1.358152e-02 -9.423500e-03 -2.282302e-02 -1.296242e-02 1.015070e-02 2.303176e-02 1.262248e-02 -1.044915e-02 -2.274683e-02 -1.191754e-02 1.077687e-02 2.203577e-02 1.033708e-02 -1.233880e-02 -2.282413e-02 -1.049089e-02 1.188457e-02 2.122571e-02 7.817965e-03 -1.468745e-02 -2.319031e-02 -8.779569e-03 1.407428e-02 2.221274e-02 7.409747e-03 -1.518945e-02 -2.245697e-02 -6.834865e-03 1.595687e-02 2.291970e-02 7.175532e-03 -1.507811e-02 -2.111911e-02 -4.851346e-03 1.705287e-02 2.223958e-02 5.502425e-03 -1.596032e-02 -2.019315e-02 -2.961529e-03 1.793136e-02 2.089738e-02 2.708282e-03 -1.813593e-02 -2.029397e-02 -1.439449e-03 1.927045e-02 2.068908e-02 1.268575e-03 -1.930271e-02 -2.012299e-02 -3.654294e-04 1.987190e-02 2.002505e-02 -2.114387e-05 -1.986935e-02 -1.942976e-02 6.307668e-04 1.965162e-02 1.812354e-02 -2.406703e-03 -2.098877e-02 -1.874718e-02 1.799200e-03 1.933438e-02 + -0.186277 + + + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-spatial-filter.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-spatial-filter.cfg new file mode 100644 index 0000000..0ba5bae --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -7.456638e-01 4.505683e+00 -5.713293e+00 6.569946e-01 6.642618e+00 3.787215e+00 2.433134e+00 -7.012442e-01 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.md b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.md new file mode 100644 index 0000000..266b73c --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.md @@ -0,0 +1,2 @@ +# OpenViBE_visual_BCI + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test2.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test2.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test2.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-0-signal-monitoring.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-0-signal-monitoring.xml new file mode 100644 index 0000000..d965e3f --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-0-signal-monitoring.xml @@ -0,0 +1,721 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x000014bf, 0x000034db) + Identity + (0x5dffe431, 0x35215c50) + + + (0x5ba36127, 0x195feae1) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x5ba36127, 0x195feae1) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 384 + + + (0x207c9054, 0x3c841b63) + 928 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xac367a9c, 0x2da95abe) + 6 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00003f1b, 0x00003c78) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 320 + + + (0x207c9054, 0x3c841b63) + 704 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + + + (0x0000556f, 0x000055f8) + Temporal filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20.000000 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 256 + + + (0x207c9054, 0x3c841b63) + 704 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00005c5c, 0x00007610) + Raw + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Horizontal ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Vertical ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 1024 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + (0x00006b6d, 0x00002690) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 128 + + + (0x207c9054, 0x3c841b63) + 928 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00007e4e, 0x00006b7b) + Filtered + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Horizontal ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Vertical ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 832 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + + + (0x000003a7, 0x000034db) + + (0x000014bf, 0x000034db) + 2 + + + (0x00005c5c, 0x00007610) + 1 + + + + (0x00000554, 0x0000661a) + + (0x000014bf, 0x000034db) + 2 + + + (0x00007e4e, 0x00006b7b) + 1 + + + + (0x00001d33, 0x00002bb0) + + (0x00006b6d, 0x00002690) + 2 + + + (0x000014bf, 0x000034db) + 2 + + + + (0x00003f04, 0x000045c3) + + (0x000014bf, 0x000034db) + 1 + + + (0x00005c5c, 0x00007610) + 0 + + + + (0x00004b11, 0x00006a43) + + (0x00003f1b, 0x00003c78) + 0 + + + (0x000014bf, 0x000034db) + 0 + + + + (0x000056fd, 0x00004795) + + (0x000014bf, 0x000034db) + 0 + + + (0x00007e4e, 0x00006b7b) + 0 + + + + (0x000057ad, 0x000024cb) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00003f1b, 0x00003c78) + 0 + + + + (0x00005e38, 0x00005c99) + + (0x00006b6d, 0x00002690) + 1 + + + (0x000014bf, 0x000034db) + 1 + + + + (0x000073ac, 0x0000581b) + + (0x00006b6d, 0x00002690) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + + + (0x00001653, 0x00002964) + <u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 512 + + + (0x7234b86b, 0x2b8651a5) + 416 + + + + + (0x000028e8, 0x00003dee) + <u><b><big>Overview</big></b></u> + +This scenario can be used in order +to check the quality of the signals +before starting an experiment. + +One should <u>definitely</u> +check the quality of the signals +and ensure that : + +- <b>eye blinks</b> are visible +- <b>jaw clenching</b> are visible +- <b>alpha waves</b> are visible when closing eyes + + + (0x473d9a43, 0x97fc0a97) + 1184 + + + (0x7234b86b, 0x2b8651a5) + 272 + + + + + (0x000049b3, 0x00001e28) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 944 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x00004e8c, 0x000041b6) + The P300 XDawn scenarios are described in + +http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0x473d9a43, 0x97fc0a97) + 576.000000 + + + (0x7234b86b, 0x2b8651a5) + 130.000000 + + + + + (0x000059b5, 0x00001524) + The <i>Temporal Filter</i> +and <i>Signal Decimation</i> +boxes transform the signal +so you can see what is actually +used online. + + + (0x473d9a43, 0x97fc0a97) + 512 + + + (0x7234b86b, 0x2b8651a5) + 288 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"height":635,"identifier":"(0x000077ee, 0x0000254d)","name":"default","parentIdentifier":"(0xffffffff, 0xffffffff)","type":1,"width":783},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x00004579, 0x00005fcb)","index":0,"name":"Default tab","parentIdentifier":"(0x000077ee, 0x0000254d)","type":2},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":2,"dividerPosition":293,"identifier":"(0x00005446, 0x000043a1)","index":0,"maxDividerPosition":590,"name":"Vertical split","parentIdentifier":"(0x00004579, 0x00005fcb)","type":4},{"boxIdentifier":"(0x00005c5c, 0x00007610)","childCount":0,"identifier":"(0x00000e42, 0x000074b8)","index":0,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3},{"boxIdentifier":"(0x00007e4e, 0x00006b7b)","childCount":0,"identifier":"(0x00005db7, 0x000032ad)","index":1,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Signal Monitoring + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-1-acquisition.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-1-acquisition.xml new file mode 100644 index 0000000..1f5f928 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-1-acquisition.xml @@ -0,0 +1,972 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00002c69, 0x00000b43) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 400 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-tactile-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x07e64d8b) + + + + + (0x0000356c, 0x00004381) + Generic stream writer + (0x09c92218, 0x7c1216f8) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train-[$core{date}-$core{time}].ov + false + + + (0x2cdb2f0b, 0x12f231ea) + Use compression + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 623 + + + (0x4e7b798a, 0x183beafb) + (0x89a08108, 0xc8d1fac1) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-writer.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0350a9f0) + + + (0xfba64161, 0x65304e21) + + + + + + (0x00004633, 0x00007270) + UDPStimcodeSender + (0xc326e786, 0xcd512965) + + + (0x6f752dd0, 0x082a321e) + StimcodeIn + + + + + (0x6f752dd0, 0x082a321e) + StimcodeOut + + + + + (0x79a9edeb, 0x245d83fc) + FeatherIP + 192.168.4.1 + 192.168.4.1 + false + + + (0x007deef9, 0x2f3e95c6) + FeatherPort + 8888 + 8888 + false + + + (0x2c132d6e, 0x44ab0d97) + RowStimulationBase + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 320 + + + (0x207c9054, 0x3c841b63) + 752 + + + (0x4e7b798a, 0x183beafb) + (0xc475930f, 0xbea8aabd) + + + (0x666fffff, 0x666fffff) + + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + + + (0x0000470b, 0x00001b1d) + Tactile Stimulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-tactile-stimulator.lua + false + + + (0x00000000, 0xbae13066) + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x5518f982) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xc152613d) + (0x007deef9, 0x2f3e95c6) + Number of Rows + 6 + 6 + false + + + (0x00000000, 0xa0308929) + (0x007deef9, 0x2f3e95c6) + Number of Repetitions + 6 + 3 + false + + + (0x00000000, 0xcde95a6f) + (0x007deef9, 0x2f3e95c6) + Number of Trials + 6 + 3 + false + + + (0x00000000, 0x9b3f9b7b) + (0x512a166f, 0x5c3ef83f) + Flash Duration (in sec) + 0.2 + 0.2 + false + + + (0x00000000, 0x583ad367) + (0x512a166f, 0x5c3ef83f) + No Flash Duration (in sec) + 0.1 + 0.1 + false + + + (0x00000000, 0xfc1c2fb6) + (0x512a166f, 0x5c3ef83f) + Inter-Repetition Delay (in sec) + 1.0 + 1.0 + false + + + (0x00000000, 0x0d9a1e18) + (0x512a166f, 0x5c3ef83f) + Inter-Trial Delay (in sec) + 3.0 + 3.0 + false + + + (0x00000000, 0xaeefd500) + (0x2c132d6e, 0x44ab0d97) + Start Stimulation + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x00000000, 0xef5eb0e5) + (0x2cdb2f0b, 0x12f231ea) + Free Spelling + false + false + false + + + (0x00000000, 0x4ead155d) + (0x007deef9, 0x2f3e95c6) + Time To Send + 20 + 20 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 160 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-tactile-stimulator.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00004b47, 0x00000cbb) + UDPStimcodeSender + (0xc326e786, 0xcd512965) + + + (0x6f752dd0, 0x082a321e) + StimcodeIn + + + + + (0x6f752dd0, 0x082a321e) + StimcodeOut + + + + + (0x79a9edeb, 0x245d83fc) + FeatherIP + 192.168.4.1 + 192.168.4.1 + false + + + (0x007deef9, 0x2f3e95c6) + FeatherPort + 8888 + 8888 + false + + + (0x2c132d6e, 0x44ab0d97) + RowStimulationBase + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 576 + + + (0x4e7b798a, 0x183beafb) + (0xc475930f, 0xbea8aabd) + + + (0x666fffff, 0x666fffff) + + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + + + (0x00004eca, 0x00003f33) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 624 + + + (0x207c9054, 0x3c841b63) + 784 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x01070ba6) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x0000599b, 0x000026ba) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 464 + + + (0x207c9054, 0x3c841b63) + 688 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x02909b75) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00006d0d, 0x000031d8) + Tactile Target Generation + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-tactile-target.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x7534ff4f) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xeb4fffa2) + (0x007deef9, 0x2f3e95c6) + Delay Before Sending (in sec) + 2 + 2 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 256 + + + (0x207c9054, 0x3c841b63) + 752 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0334c6b7) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x00001e35, 0x00003016) + + (0x0000599b, 0x000026ba) + 2 + + + (0x00004eca, 0x00003f33) + 0 + + + + (0x00003382, 0x0000629a) + + (0x00004633, 0x00007270) + 0 + + + (0x00002c69, 0x00000b43) + 1 + + + + (0x000036a5, 0x00006190) + + (0x0000599b, 0x000026ba) + 0 + + + (0x0000356c, 0x00004381) + 0 + + + + (0x00003cf9, 0x000006e0) + + (0x00004b47, 0x00000cbb) + 0 + + + (0x00002c69, 0x00000b43) + 0 + + + + (0x0000631e, 0x000002b3) + + (0x00006d0d, 0x000031d8) + 0 + + + (0x00004633, 0x00007270) + 0 + + + + (0x000068a0, 0x0000330f) + + (0x0000599b, 0x000026ba) + 2 + + + (0x0000356c, 0x00004381) + 2 + + + + (0x00006e24, 0x000046aa) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x00006d0d, 0x000031d8) + 0 + + + + (0x00007912, 0x00002579) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x00004b47, 0x00000cbb) + 0 + + + + (0x00007bda, 0x00000772) + + (0x0000599b, 0x000026ba) + 1 + + + (0x0000356c, 0x00004381) + 1 + + + + + + (0x0000363f, 0x00001c2b) + The P300 Speller Visualization +sends the markers (stimulations) directly to +Acquisition Server using TCP Tagging. + + + (0x473d9a43, 0x97fc0a97) + 960 + + + (0x7234b86b, 0x2b8651a5) + 368 + + + + + (0x00004e8c, 0x000041b6) + The P300 XDawn scenarios are described in + +http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0x473d9a43, 0x97fc0a97) + 320.000000 + + + (0x7234b86b, 0x2b8651a5) + 176.000000 + + + + + (0x19b8795c, 0x039f26f7) + <u><b><big>Overview</big></b></u> + +This scenario can be used as a first +step to collect some training data. The +data will later be used to train a spatial +filter and a classifier for online use. + +The flast sequence will start after 20 sec. + +You will then be presented a blue letter that +you have to focus on, followed by a 12 times +flashing sequence of the whole grid. This will +be repeated 10 times. + +<small><i><b>note:</b> the recorded files go to the +folder where the scenario xml is located +(<span color="darkblue">${Player_ScenarioDirectory}/</span>).</i></small> + + + (0x473d9a43, 0x97fc0a97) + 320.000000 + + + (0x7234b86b, 0x2b8651a5) + 400.000000 + + + + + (0x24020235, 0x4f7e23eb) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 496 + + + (0x7234b86b, 0x2b8651a5) + -16 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x00002c69, 0x00000b43)","childCount":0,"identifier":"(0x0000742d, 0x000050d7)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard, Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Data Acquisition + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-2-train-xDAWN.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-2-train-xDAWN.xml new file mode 100644 index 0000000..069ec2b --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-2-train-xDAWN.xml @@ -0,0 +1,644 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00001c48, 0x00005598) + Temporal filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20.000000 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 0 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00001db8, 0x00001848) + xDAWN Trainer + (0x27542f6e, 0x14aa3548) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x5ba36127, 0x195feae1) + Session signal + + + (0x5ba36127, 0x195feae1) + Evoked potential epochs + + + + + (0x6f752dd0, 0x082a321e) + Train-completed Flag + + + + + (0x2c132d6e, 0x44ab0d97) + Train stimulation + OVTK_StimulationId_Train + OVTK_StimulationId_ExperimentStop + false + + + (0x330306dd, 0x74a95f98) + Spatial filter configuration + + ${Player_ScenarioDirectory}/p300-spatial-filter.cfg + false + + + (0x007deef9, 0x2f3e95c6) + Filter dimension + 4 + 3 + false + + + (0x2cdb2f0b, 0x12f231ea) + Save as box config + true + true + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x4b49a133, 0x42f38d94) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-trainer.cfg + + + (0xc80ce8af, 0xf699f813) + + + + (0xce18836a, 0x9c0eb403) + + + + (0xcfad85b0, 0x7c6d841c) + + + + + + (0x00002514, 0x00001614) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + C:/Users/Tobi_/Documents/ProjektarbeitBCI/OpenVibe/p300-speller-xDAWN/signals/p300-train-[2016.04.20-14.58.03].ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -128 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-reader.cfg + + + + + (0x0000267a, 0x0000427f) + Time based epoching + (0x00777fa0, 0x5dc3f560) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Epoched signal 1 + + + + + (0x512a166f, 0x5c3ef83f) + Epoch 1 duration (in sec) + 1 + 0.250000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch 1 intervals (in sec) + 0.5 + 0.250000 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 96 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0xc5ff41e9, 0xccc59a01) + + + + + (0x00004aea, 0x00001465) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_TrainCompleted + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00006be0, 0x000074b5) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 48 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + + + (0x00006fa4, 0x00003c76) + Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_Target + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + + + + + (0x000007d3, 0x000071cb) + + (0x0000267a, 0x0000427f) + 0 + + + (0x00006fa4, 0x00003c76) + 0 + + + + (0x00003582, 0x00002c04) + + (0x00006be0, 0x000074b5) + 0 + + + (0x0000267a, 0x0000427f) + 0 + + + + (0x00003920, 0x00007a30) + + (0x0000267a, 0x0000427f) + 0 + + + (0x00001db8, 0x00001848) + 1 + + + + (0x00004be2, 0x00004296) + + (0x00006fa4, 0x00003c76) + 0 + + + (0x00001db8, 0x00001848) + 2 + + + + (0x00004bf5, 0x00007908) + + (0x00001db8, 0x00001848) + 0 + + + (0x00004aea, 0x00001465) + 0 + + + + (0x000059e8, 0x00000032) + + (0x00002514, 0x00001614) + 2 + + + (0x00001db8, 0x00001848) + 0 + + + + (0x00006413, 0x00003ed2) + + (0x00001c48, 0x00005598) + 0 + + + (0x00006be0, 0x000074b5) + 0 + + + + (0x00006af9, 0x00002512) + + (0x00002514, 0x00001614) + 2 + + + (0x00006fa4, 0x00003c76) + 1 + + + + (0x000070d8, 0x00000f4e) + + (0x00002514, 0x00001614) + 1 + + + (0x00001c48, 0x00005598) + 0 + + + + + + (0x00000b43, 0x0000067f) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 48 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x000010db, 0x00003fcd) + For prerecorded data to test this P300, see + +<b>http://openvibe.inria.fr/datasets/</b> + + + + (0x473d9a43, 0x97fc0a97) + 816.000000 + + + (0x7234b86b, 0x2b8651a5) + 112.000000 + + + + + (0x000049d6, 0x00006e67) + <u><b><big>Overview</big></b></u> + +This scenario should be used to train +the spatial filter using the xDAWN algorithm. + +Just configure the <i>Generic Stream Reader</i> +box to point to the last file you recorded with +scenario <i>1-acquisition</i> and fast forward +this scenario. + +At the end of the training, you will have line in +the console about eigen values. +Using a <i>Player Controller</i> the scenario will +automatically pause at the end of the training. + +If you want details on this values, you should read +<u>http://www.icp.inpg.fr/~rivetber/Publications/references/Rivet2009a.pdf</u> + + + (0x473d9a43, 0x97fc0a97) + 800.000000 + + + (0x7234b86b, 0x2b8651a5) + -80.000000 + + + + + (0x00007b93, 0x000041da) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 304.000000 + + + (0x7234b86b, 0x2b8651a5) + -192.000000 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Spatial Filter Training + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-3-train-classifier.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-3-train-classifier.xml new file mode 100644 index 0000000..08e4b16 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-3-train-classifier.xml @@ -0,0 +1,1091 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00000b2d, 0x00006d61) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002bb807) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00000d41, 0x000013b7) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b7d6e) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00001f83, 0x00004e32) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + C:/Users/Tobi_/Documents/ProjektarbeitBCI/OpenVibe/p300-speller-xDAWN/signals/p300-train-[2016.04.20-14.58.03].ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -160 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-reader.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x008e34c7) + + + + + (0x00002c8b, 0x000001d5) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_TrainCompleted + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00301c7f) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00002f94, 0x00000341) + Non Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_NonTarget + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002bbddf) + + + + + (0x00003e14, 0x00000027) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 16 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002c5bfc) + + + + + (0x0000486f, 0x000075f4) + Temporal filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20.000000 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -32 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b9aae) + + + + + (0x000063a5, 0x0000197c) + Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_Target + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b4e91) + + + + + (0x000078d0, 0x000029bc) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b5470) + + + + + (0x000078f9, 0x000063eb) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 9.970221e-001 -3.729500e-002 -1.177390e-002 2.814447e-002 -3.772446e-003 3.371324e-002 -5.480030e-003 8.893039e-003 -1.565213e-002 -9.956694e-003 -2.347757e-002 -2.312669e-003 -1.847227e-002 -7.550644e-004 -8.423513e-003 3.243223e-002 2.079848e-002 5.079737e-001 -2.835127e-002 8.259231e-002 -3.621803e-001 -2.004259e-001 -2.432480e-001 -1.861558e-001 -3.798139e-001 9.614762e-002 3.407766e-001 -2.158597e-001 3.720552e-001 7.500469e-002 -8.628774e-002 -3.182367e-002 5.923482e-002 4.124707e-001 2.083913e-001 -2.629501e-001 2.023081e-001 -2.658446e-001 4.022738e-001 -1.785569e-001 4.450742e-001 3.549239e-001 1.550204e-002 3.750389e-002 3.114249e-002 9.273764e-002 -7.093797e-002 -2.610929e-001 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 3 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 16 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 80 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b601f) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00007b56, 0x000033f9) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002c2168) + + + + + (0x0a5a6a4a, 0x1d92a778) + Classifier trainer + (0xf3dae8a8, 0x3b444154) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x17341935, 0x152ff448) + Features for class 1 + + + (0x17341935, 0x152ff448) + Features for class 2 + + + + + (0x6f752dd0, 0x082a321e) + Train-completed Flag + + + + + (0x2c132d6e, 0x44ab0d97) + Train trigger + OVTK_StimulationId_Train + OVTK_StimulationId_ExperimentStop + false + + + (0x330306dd, 0x74a95f98) + Filename to save configuration to + ${Path_UserData}/my-classifier.xml + ${Player_ScenarioDirectory}/cfg/p300-classifier.cfg + false + + + (0xbe9eba5c, 0xa8415d37) + Multiclass strategy to apply + Native + Native + false + + + (0x2c132d6e, 0x44ab0d97) + Class 1 label + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Target + false + + + (0x2c132d6e, 0x44ab0d97) + Class 2 label + OVTK_StimulationId_Label_02 + OVTK_StimulationId_NonTarget + false + + + (0xd765a736, 0xed708c65) + Algorithm to use + Linear Discrimimant Analysis (LDA) + Linear Discrimimant Analysis (LDA) + false + + + (0x2cdb2f0b, 0x12f231ea) + Use shrinkage + false + false + false + + + (0x512a166f, 0x5c3ef83f) + Shrinkage coefficient (-1 == auto) + -1.000000 + -1.000000 + false + + + (0x2cdb2f0b, 0x12f231ea) + Shrinkage: Force diagonal cov (DDA) + false + false + false + + + (0x007deef9, 0x2f3e95c6) + Number of partitions for k-fold cross-validation test + 10 + 5 + false + + + (0x2cdb2f0b, 0x12f231ea) + Balance classes + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 448 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x9de21779, 0x37776c89) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 6 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x00000004, 0x00007d3a) + + (0x000078f9, 0x000063eb) + 0 + + + (0x000063a5, 0x0000197c) + 0 + + + + (0x00000a32, 0x00005cae) + + (0x0000486f, 0x000075f4) + 0 + + + (0x00003e14, 0x00000027) + 0 + + + + (0x00000aca, 0x000037d3) + + (0x00003e14, 0x00000027) + 0 + + + (0x000078f9, 0x000063eb) + 0 + + + + (0x00001717, 0x00003cf9) + + (0x000078d0, 0x000029bc) + 0 + + + (0x00000b2d, 0x00006d61) + 0 + + + + (0x00001770, 0x00000ded) + + (0x00001f83, 0x00004e32) + 2 + + + (0x000063a5, 0x0000197c) + 1 + + + + (0x0000227f, 0x00003a6f) + + (0x000078f9, 0x000063eb) + 0 + + + (0x00002f94, 0x00000341) + 0 + + + + (0x00002599, 0x0000329b) + + (0x000063a5, 0x0000197c) + 0 + + + (0x000078d0, 0x000029bc) + 0 + + + + (0x00004098, 0x00007e81) + + (0x00002f94, 0x00000341) + 0 + + + (0x00007b56, 0x000033f9) + 0 + + + + (0x00004674, 0x000061af) + + (0x00007b56, 0x000033f9) + 0 + + + (0x00000d41, 0x000013b7) + 0 + + + + (0x00005d56, 0x000065e9) + + (0x00001f83, 0x00004e32) + 1 + + + (0x0000486f, 0x000075f4) + 0 + + + + (0x00006821, 0x00000c75) + + (0x00001f83, 0x00004e32) + 2 + + + (0x00002f94, 0x00000341) + 1 + + + + (0x175e412c, 0x0692f4ee) + + (0x00000d41, 0x000013b7) + 0 + + + (0x0a5a6a4a, 0x1d92a778) + 2 + + + + (0x5a67b7d8, 0x1cf07f9a) + + (0x00001f83, 0x00004e32) + 2 + + + (0x0a5a6a4a, 0x1d92a778) + 0 + + + + (0x616495af, 0x5c020b32) + + (0x0a5a6a4a, 0x1d92a778) + 0 + + + (0x00002c8b, 0x000001d5) + 0 + + + + (0x63fa63da, 0x0e447c5b) + + (0x00000b2d, 0x00006d61) + 0 + + + (0x0a5a6a4a, 0x1d92a778) + 1 + + + + + + (0x00004785, 0x00007f9c) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 432 + + + (0x7234b86b, 0x2b8651a5) + -240 + + + + + (0x000047f3, 0x00004eaf) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 48 + + + (0x7234b86b, 0x2b8651a5) + 0 + + + + + (0x00005277, 0x00007fbe) + <u><b><big>Overview</big></b></u> + +This scenario should be used to train +the LDA classifier. + +Just configure the <i>Generic Stream Reader</i> +box to point to the last file you recorded with +scenario <i>1-acquisition</i> and fast forward +this scenario. + +At the end of the training, you will have an estimation +of the classifier performance printed in the console. +If this performance is lower than 70%, just run a new +<i>4-online</i> session to have better results. + +<u><b>Note:</b></u> in order to run this scenario, +the spatial filter should have been trained using +<i>2-train-xDAWN</i> ! + + + (0x473d9a43, 0x97fc0a97) + 848 + + + (0x7234b86b, 0x2b8651a5) + 96 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + LDA Classifier Trainer + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-4-online.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-4-online.xml new file mode 100644 index 0000000..0a21659 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-4-online.xml @@ -0,0 +1,1701 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x000014a9, 0x000078ed) + UDPStimcodeSender + (0xc326e786, 0xcd512965) + + + (0x6f752dd0, 0x082a321e) + StimcodeIn + + + + + (0x6f752dd0, 0x082a321e) + StimcodeOut + + + + + (0x79a9edeb, 0x245d83fc) + FeatherIP + 192.168.4.1 + 192.168.4.1 + false + + + (0x007deef9, 0x2f3e95c6) + FeatherPort + 8888 + 8888 + false + + + (0x2c132d6e, 0x44ab0d97) + RowStimulationBase + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 656 + + + (0x207c9054, 0x3c841b63) + 368 + + + (0x4e7b798a, 0x183beafb) + (0xc475930f, 0xbea8aabd) + + + (0x666fffff, 0x666fffff) + + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + + + (0x00002bb3, 0x0000133c) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -176 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007036bf) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00003d0e, 0x000025ef) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Pause + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 704 + + + (0x207c9054, 0x3c841b63) + 720 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00003dec, 0x00004c7b) + Stimulation based epoching + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.6 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_VisualStimulationStart + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 176 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x005ced91) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 2 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x0000445b, 0x000068e3) + P300 accumulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + (0x6f752dd0, 0x082a321e) + New input(1) + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6f752dd0, 0x082a321e) + New output + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-tactile-accumulator.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x2c132d6e, 0x44ab0d97) + Segment start + OVTK_StimulationId_SegmentStart + OVTK_StimulationId_TrialStart + false + + + (0x2c132d6e, 0x44ab0d97) + Segment stop + OVTK_StimulationId_SegmentStop + OVTK_StimulationId_TrialStop + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 448 + + + (0x207c9054, 0x3c841b63) + 656 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0304fb88) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000470b, 0x00001b1e) + Tactile Stimulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-tactile-stimulator.lua + false + + + (0x00000000, 0xbae13066) + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x5518f982) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xc152613d) + (0x007deef9, 0x2f3e95c6) + Number of Rows + 6 + 6 + false + + + (0x00000000, 0xa0308929) + (0x007deef9, 0x2f3e95c6) + Number of Repetitions + 6 + 3 + false + + + (0x00000000, 0xcde95a6f) + (0x007deef9, 0x2f3e95c6) + Number of Trials + 6 + 3 + false + + + (0x00000000, 0x9b3f9b7b) + (0x512a166f, 0x5c3ef83f) + Flash Duration (in sec) + 0.2 + 0.2 + false + + + (0x00000000, 0x583ad367) + (0x512a166f, 0x5c3ef83f) + No Flash Duration (in sec) + 0.1 + 0.1 + false + + + (0x00000000, 0xfc1c2fb6) + (0x512a166f, 0x5c3ef83f) + Inter-Repetition Delay (in sec) + 1.0 + 1.0 + false + + + (0x00000000, 0x0d9a1e18) + (0x512a166f, 0x5c3ef83f) + Inter-Trial Delay (in sec) + 3.0 + 3.0 + false + + + (0x00000000, 0xaeefd500) + (0x2c132d6e, 0x44ab0d97) + Start Stimulation + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x00000000, 0xef5eb0e5) + (0x2cdb2f0b, 0x12f231ea) + Free Spelling + false + true + false + + + (0x00000000, 0x4ead155d) + (0x007deef9, 0x2f3e95c6) + Time To Send + 20 + 20 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 576 + + + (0x207c9054, 0x3c841b63) + 368 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-tactile-stimulator.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00007786, 0x00001163) + Identity + (0x5dffe431, 0x35215c50) + + + (0x6f752dd0, 0x082a321e) + Input stream + + + + + (0x6f752dd0, 0x082a321e) + Output stream + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 336 + + + (0x207c9054, 0x3c841b63) + 720 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x001a8c16, 0x15ba27e3) + Temporal filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20.000000 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 0 + + + (0x207c9054, 0x3c841b63) + 480 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0040f8d4) + + + + + (0x008f57e1, 0x2790537b) + Generic stream writer + (0x09c92218, 0x7c1216f8) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-online-[$core{date}-$core{time}].ov + false + + + (0x2cdb2f0b, 0x12f231ea) + Use compression + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 144 + + + (0x207c9054, 0x3c841b63) + 816 + + + (0x4e7b798a, 0x183beafb) + (0x89a08108, 0xc8d1fac1) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007b2629) + + + (0xfba64161, 0x65304e21) + + + + + + (0x09c41dd7, 0x09f2e37b) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 240 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x000eaa12) + + + + + (0x0e30a73f, 0x7ae6d95a) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 304 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x000f9a38) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x28b5e192, 0x37431137) + Classifier processor + (0x5fe23d17, 0x95b0452c) + + + (0x17341935, 0x152ff448) + Features + + + (0x6f752dd0, 0x082a321e) + Commands + + + + + (0x6f752dd0, 0x082a321e) + Labels + + + (0x544a003e, 0x6dcba5f6) + Hyperplane distance + + + (0x544a003e, 0x6dcba5f6) + Probability values + + + + + (0x330306dd, 0x74a95f98) + Filename to load configuration from + + ${Player_ScenarioDirectory}/cfg/p300-classifier.cfg + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 368 + + + (0x207c9054, 0x3c841b63) + 560 + + + (0x4e7b798a, 0x183beafb) + (0xa6c8e548, 0x9e3e405b) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 3 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x2e63c8c5, 0x79a8ae7b) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 736 + + + (0x207c9054, 0x3c841b63) + 384 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x017985f8) + + + + + (0x40e41bf9, 0x5c44b1b1) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 64 + + + (0x207c9054, 0x3c841b63) + 480 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002cae02) + + + + + (0x6d03daab, 0x55fdea78) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 4 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 4 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 112 + + + (0x207c9054, 0x3c841b63) + 480 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x6f54afd0, 0x5f2e0f65) + Identity + (0x5dffe431, 0x35215c50) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -80 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x005f48d2) + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x0000002a, 0x00006309) + + (0x00002bb3, 0x0000133c) + 1 + + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + + (0x0000062d, 0x00006549) + + (0x0000445b, 0x000068e3) + 1 + + + (0x2e63c8c5, 0x79a8ae7b) + 3 + + + + (0x000023cd, 0x0000521b) + + (0x0000470b, 0x00001b1e) + 0 + + + (0x000014a9, 0x000078ed) + 0 + + + + (0x0000266b, 0x000033bb) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x00003dec, 0x00004c7b) + 1 + + + + (0x00002e50, 0x00003fba) + + (0x00003dec, 0x00004c7b) + 0 + + + (0x09c41dd7, 0x09f2e37b) + 0 + + + + (0x00003835, 0x000030a7) + + (0x00002bb3, 0x0000133c) + 0 + + + (0x6f54afd0, 0x5f2e0f65) + 0 + + + + (0x0000416b, 0x00000842) + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + (0x001a8c16, 0x15ba27e3) + 0 + + + + (0x00004944, 0x00005bde) + + (0x00007786, 0x00001163) + 0 + + + (0x00003d0e, 0x000025ef) + 0 + + + + (0x00004ebb, 0x00007aeb) + + (0x00002bb3, 0x0000133c) + 2 + + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + + (0x00004f08, 0x000009d9) + + (0x0000445b, 0x000068e3) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 2 + + + + (0x00006501, 0x000068bf) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x00007786, 0x00001163) + 0 + + + + (0x00006c4d, 0x0000126f) + + (0x40e41bf9, 0x5c44b1b1) + 0 + + + (0x6d03daab, 0x55fdea78) + 0 + + + + (0x0000725e, 0x00006278) + + (0x000014a9, 0x000078ed) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 0 + + + + (0x000074af, 0x000038c2) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x008f57e1, 0x2790537b) + 2 + + + + (0x0000756d, 0x000027c0) + + (0x6d03daab, 0x55fdea78) + 0 + + + (0x00003dec, 0x00004c7b) + 0 + + + + (0x00007b30, 0x00005e90) + + (0x00007786, 0x00001163) + 0 + + + (0x0000445b, 0x000068e3) + 1 + + + + (0x00f1a11e, 0x4a813bb8) + + (0x09c41dd7, 0x09f2e37b) + 0 + + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + + (0x0de02dd1, 0x545eff87) + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + (0x008f57e1, 0x2790537b) + 1 + + + + (0x136dcee0, 0x20dbb005) + + (0x28b5e192, 0x37431137) + 0 + + + (0x0000445b, 0x000068e3) + 0 + + + + (0x1a535826, 0x3804f216) + + (0x001a8c16, 0x15ba27e3) + 0 + + + (0x40e41bf9, 0x5c44b1b1) + 0 + + + + (0x2893bc68, 0x5c0429ec) + + (0x6f54afd0, 0x5f2e0f65) + 0 + + + (0x008f57e1, 0x2790537b) + 0 + + + + (0x3ccbcbed, 0x529f3e1d) + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + (0x28b5e192, 0x37431137) + 0 + + + + + + (0x1012e1de, 0x78e57c3e) + The stimulation part of the scenario is +similar to scenario <i>1-acquisition</i>. + +If you keep the <i>Target Letter Generation</i> +box, you will be able to train the algorithms +again on the recorded data. + + + + (0x473d9a43, 0x97fc0a97) + 896.000000 + + + (0x7234b86b, 0x2b8651a5) + 608.000000 + + + + + (0x11fceaee, 0x1f87d83c) + Switch from file reader +to Acquisiton client to use it online + + + (0x473d9a43, 0x97fc0a97) + 176.000000 + + + (0x7234b86b, 0x2b8651a5) + -48.000000 + + + + + (0x27567f54, 0x6e00503a) + You can configure the Flashing Sequence +and the Target Letter Generation in order to +instruct the subject to <u>spell a specific word</u>. + +Set the target word in the Lua Stimulator (e.g. "openvibe") +and adapt the number of trials in the P300 Speller Stimulator +(e.g. 8 trials for the 8 letters in "openvibe") + +<b><u>Note:</u></b> If the number of letter in the chosen word does not match +the number of trial, you won't be able to train xDAWN and +the classifier on the recorded data. + + + (0x473d9a43, 0x97fc0a97) + 32 + + + (0x7234b86b, 0x2b8651a5) + 496 + + + + + (0x3726b6f5, 0x3dea5d78) + <u><b><big>Overview</big></b></u> + +This scenario can be used online once the +spatial filter and the classifiers are trained. +The <i>Target Letter Generation</i> +box still proposes some targets in order to +eventually train the spatial filter / classifier +again, but you may want to disconnect that box +in order to have a real <i>free time</i> use of +the speller. + +The flash sequence starts automatically after 20 sec. + +You will then be presented a blue letter that +you have to focus on, followed by a 12 times +flashing sequence of the whole grid. The detected +letter will be presented in green. This will be repeated +10 times. + +If the performance of the system does not fit your +requirements, just run <i>2-train-xDAWN</i> and <i>3-train-classifier</i> +scenarios again on the data you just recorded. + +<small><i><b>note:</b> the recorded files go to the +folder where the scenario xml is located +(<span color="darkblue">${Player_ScenarioDirectory}/</span>).</i></small> + + + (0x473d9a43, 0x97fc0a97) + 192 + + + (0x7234b86b, 0x2b8651a5) + -48 + + + + + (0x421933f6, 0x00705e90) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 176 + + + (0x7234b86b, 0x2b8651a5) + 272 + + + + + (0x5bbc727e, 0x1572a9cd) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 608.000000 + + + (0x7234b86b, 0x2b8651a5) + -288.000000 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x2e63c8c5, 0x79a8ae7b)","childCount":0,"identifier":"(0x00001d62, 0x00007def)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Online Use + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-5-replay.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-5-replay.xml new file mode 100644 index 0000000..5381f23 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-5-replay.xml @@ -0,0 +1,1341 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00002db4, 0x00004e4d) + Pick target + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-tactile-filter-target.lua + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 400 + + + (0x207c9054, 0x3c841b63) + 768 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00749b30) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00002db4, 0x00004e4e) + Pick flash + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-tactile-filter-flash.lua + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 400 + + + (0x207c9054, 0x3c841b63) + 688 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007aab35) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00003d0e, 0x000025ef) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Pause + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 704 + + + (0x207c9054, 0x3c841b63) + 784 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004d93cc) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00003dec, 0x00004c7b) + Stimulation based epoching + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.6 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_VisualStimulationStart + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00b06288) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 2 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x0000445b, 0x000068e3) + P300 accumulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + (0x6f752dd0, 0x082a321e) + New input(1) + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6f752dd0, 0x082a321e) + New output + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-tactile-accumulator.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x2c132d6e, 0x44ab0d97) + Segment start + OVTK_StimulationId_TrialStart + OVTK_StimulationId_TrialStart + false + + + (0x2c132d6e, 0x44ab0d97) + Segment stop + OVTK_StimulationId_SegmentStop + OVTK_StimulationId_TrialStop + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 608 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0a2185a6) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x09c41dd7, 0x09f2e37b) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 416 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004afe07) + + + + + (0x0e30a73f, 0x7ae6d95a) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 480 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004313a5) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x28b5e192, 0x37431137) + Classifier processor + (0x5fe23d17, 0x95b0452c) + + + (0x17341935, 0x152ff448) + Features + + + (0x6f752dd0, 0x082a321e) + Commands + + + + + (0x6f752dd0, 0x082a321e) + Labels + + + (0x544a003e, 0x6dcba5f6) + Hyperplane distance + + + (0x544a003e, 0x6dcba5f6) + Probability values + + + + + (0x330306dd, 0x74a95f98) + Filename to load configuration from + + ${Player_ScenarioDirectory}/p300-classifier.cfg + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 464 + + + (0x4e7b798a, 0x183beafb) + (0xa6c8e548, 0x9e3e405b) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 3 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x2978c82c, 0x4a22f240) + Temporal filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20.000000 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 160 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x2e63c8c5, 0x79a8ae7b) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 672 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x05899984) + + + + + (0x3806695f, 0x750288cb) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 208 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + + + (0x483b59a5, 0x4318abba) + Identity + (0x5dffe431, 0x35215c50) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 64 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x634a083c, 0x52143369) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + C:/Users/Tobi_/Documents/ProjektarbeitBCI/OpenVibe/p300-speller-xDAWN/signals/p300-online-[2016.04.20-15.09.08].ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -16 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + + + (0x666e568d, 0x579616d6) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 4 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 4 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 272 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-spatial-filter.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + + + (0x0000062d, 0x00006549) + + (0x0000445b, 0x000068e3) + 1 + + + (0x2e63c8c5, 0x79a8ae7b) + 3 + + + + (0x0000121f, 0x00004438) + + (0x00002db4, 0x00004e4d) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 1 + + + + (0x00001a5d, 0x000012a3) + + (0x00002db4, 0x00004e4e) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 0 + + + + (0x000023ed, 0x00007962) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00002db4, 0x00004e4d) + 0 + + + + (0x00002e50, 0x00003fba) + + (0x00003dec, 0x00004c7b) + 0 + + + (0x09c41dd7, 0x09f2e37b) + 0 + + + + (0x00003a8e, 0x00004020) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x0000445b, 0x000068e3) + 1 + + + + (0x00004ead, 0x0000166d) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00002db4, 0x00004e4e) + 0 + + + + (0x00005b72, 0x00000606) + + (0x0000445b, 0x000068e3) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 2 + + + + (0x00005ee4, 0x00001e68) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00003d0e, 0x000025ef) + 0 + + + + (0x00006b0f, 0x00003281) + + (0x666e568d, 0x579616d6) + 0 + + + (0x00003dec, 0x00004c7b) + 0 + + + + (0x00007e4c, 0x00005f90) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00003dec, 0x00004c7b) + 1 + + + + (0x00f1a11e, 0x4a813bb8) + + (0x09c41dd7, 0x09f2e37b) + 0 + + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + + (0x04e9bcb9, 0x608aa078) + + (0x634a083c, 0x52143369) + 0 + + + (0x483b59a5, 0x4318abba) + 0 + + + + (0x087ce678, 0x55c0c4ef) + + (0x3806695f, 0x750288cb) + 0 + + + (0x666e568d, 0x579616d6) + 0 + + + + (0x22e7d928, 0x245a74de) + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + (0x28b5e192, 0x37431137) + 0 + + + + (0x335d6001, 0x4c535469) + + (0x28b5e192, 0x37431137) + 0 + + + (0x0000445b, 0x000068e3) + 0 + + + + (0x596adb78, 0x549a0689) + + (0x2978c82c, 0x4a22f240) + 0 + + + (0x3806695f, 0x750288cb) + 0 + + + + (0x666eada5, 0x09010e07) + + (0x634a083c, 0x52143369) + 1 + + + (0x483b59a5, 0x4318abba) + 1 + + + + (0x6963bf7e, 0x02c7cc5d) + + (0x483b59a5, 0x4318abba) + 1 + + + (0x2978c82c, 0x4a22f240) + 0 + + + + (0x7061b67e, 0x7c481576) + + (0x634a083c, 0x52143369) + 2 + + + (0x483b59a5, 0x4318abba) + 2 + + + + + + (0x3030288d, 0x2dbf93f2) + <u><b><big>Overview</big></b></u> + +This scenario allows to quickly replay +an online session recorded file. The +main between this scenario and +scenario <i>4-online</i> is basically +all the acquisition / stimulation part +being replaced by a file reader. + +<u><b>Note:</b></u> refer to scenario <i>4-online</i> for +details about the processing. + + + (0x473d9a43, 0x97fc0a97) + 288 + + + (0x7234b86b, 0x2b8651a5) + 16 + + + + + (0x374ccccf, 0x48c4defa) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 624 + + + (0x7234b86b, 0x2b8651a5) + -128 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x2e63c8c5, 0x79a8ae7b)","childCount":0,"identifier":"(0x000060a8, 0x0000168c)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Online File Replay + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile.ui b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile.ui new file mode 100644 index 0000000..2abccde --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile.ui @@ -0,0 +1,253 @@ + + + + + + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + 3 + 4 + + + True + 6 + 1 + True + + + True + + + True + Motor1 + True + center + + + + + 1 + 1 + + + + + True + + + True + Motor2 + True + center + + + + + 1 + 2 + + + + + True + + + True + Motor3 + True + center + + + + + 2 + 3 + + + + + True + + + True + Motor4 + True + center + + + + + 3 + 4 + + + + + True + + + True + Motor5 + True + center + + + + + 4 + 5 + + + + + True + + + True + Motor6 + True + center + + + + + 5 + 6 + + + + + + + True + 2 + 3 + 4 + 4 + + + True + 0 + True + + + 2 + 3 + 1 + 2 + GTK_FILL + + + + + True + 0 + True + + + 2 + 3 + GTK_FILL + + + + + True + 0 + Result : + True + + + 1 + 2 + 1 + 2 + GTK_FILL + GTK_FILL + + + + + True + 0 + Target : + True + + + 1 + 2 + GTK_FILL + GTK_FILL + + + + + True + gtk-select-font + + + 2 + + + + + + + 2 + 3 + GTK_FILL + + + + + True + + + 1 + 2 + GTK_FILL + GTK_FILL + + + + + + + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + P300 Speller + dialog + + + 640 + True + both + + + True + Show Target Text + gtk-info + True + + + False + True + + + + + True + Show Result Text + gtk-info + True + + + False + True + + + + + + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-accumulator.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-accumulator.lua new file mode 100644 index 0000000..ac8240d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-accumulator.lua @@ -0,0 +1,200 @@ + +function arrayMax(a) + if #a == 0 then return nil, nil end + local maxIdx, maxValue = 0, a[0] + for i = 1, (#a -1 ) do + if maxValue < a[i] then + maxIdx, maxValue = i, a[i] + end + end + return maxIdx, maxValue +end + +-- For handling target fifo + +List = {} +function List.new () + return {first = 0, last = -1} +end + +function List.pushright (list, value) + local last = list.last + 1 + list.last = last + list[last] = value +end + +function List.popleft (list) + local first = list.first + if first > list.last then + error("list is empty") + end + local value = list[first] + list[first] = nil -- to allow garbage collection + list.first = first + 1 + return value +end + +function List.isempty (list) + if list.first > list.last then + return true + else + return false + end +end + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + segment_start = _G[box:get_setting(4)] + segment_stop = _G[box:get_setting(5)] + + -- 0 inactive, 1 segment started, 2 segment stopped (can vote) + segment_status = 0 + + -- the idea is to push the flash states to the fifo, and when predictions arrive (with some delay), they are matched in oldest-first fashion. + target_fifo = List.new() + + -- box:log("Info", string.format("pop %d %d", id[1], id[2])) + + row_votes = {} + col_votes = {} + + do_debug = false + +end + +-- this function is called when the box is uninitialized +function uninitialize(box) + +end + +function process(box) + -- loops until box is stopped + while box:keep_processing() do + + -- first, parse the timeline stream + for stimulation = 1, box:get_stimulation_count(2) do + -- gets the received stimulation + local identifier, date, duration = box:get_stimulation(2, 1) + -- discards it + box:remove_stimulation(2, 1) + + if identifier == segment_start then + if do_debug then + box:log("Info", string.format("Trial start")) + box:log("Info", string.format("Clear votes")) + end + -- zero the votes + col_votes = {} + row_votes = {} + target_fifo = List.new() + -- fixme fixed 20 + for i = 0,20 do + col_votes[i] = 0 + row_votes[i] = 0 + end + segment_status = 1 + end + + -- Does the identifier code a flash? if so, put into fifo + if segment_status == 1 and identifier >= row_base and identifier <= OVTK_StimulationId_LabelEnd then + + -- assume rows before cols + if identifier < col_base then + local t = {"row", identifier - row_base} + List.pushright(target_fifo,t) + if do_debug then + box:log("Info", string.format("Push row target %d", identifier - row_base )) + end + else + local t = {"col", identifier - col_base} + List.pushright(target_fifo,t) + if do_debug then + box:log("Info", string.format("Push col target %d", identifier - col_base )) + end + end + + + end + + if identifier == segment_stop then + if do_debug then + box:log("Info", string.format("Trial stop")) + end + segment_status = 2 + end + + end + + -- then parse the classifications + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets the received stimulation + local identifier, date, duration = box:get_stimulation(1, 1) + -- discards it + box:remove_stimulation(1, 1) + + -- Is it an in-class prediction? + if identifier == OVTK_StimulationId_Target then + local t = List.popleft(target_fifo) + if do_debug then + box:log("Info", string.format("Pred fifo %s %d is target", t[1], t[2])) + end + if t[1]=="row" then + row_votes[t[2]] = row_votes[t[2]] + 1 + else + col_votes[t[2]] = col_votes[t[2]] + 1 + end + end + + if identifier == OVTK_StimulationId_NonTarget then + local t = List.popleft(target_fifo) + if do_debug then + box:log("Info", string.format("Pred fifo %s %d is nontarget", t[1], t[2])) + end + end + + end + + if segment_status == 2 and List.isempty(target_fifo) then + -- output the vote after the segment end when we've matched all predictions + + local maxRowIdx, maxRowValue = arrayMax(row_votes) + local maxColIdx, maxColValue = arrayMax(col_votes) + + if maxRowValue == 0 and maxColValue == 0 then + box:log("Warning", string.format("Classifier predicted 'no p300' for all flashes of the trial")); + end + + if do_debug then + local rowVotes = 0 + local colVotes = 0 + for ir, val in pairs(row_votes) do + rowVotes = rowVotes + val + end + for ir, val in pairs(col_votes) do + colVotes = colVotes + val + end + + box:log("Info", string.format("Vote [%d %d] wt [%d,%d]", maxRowIdx+row_base, maxColIdx+col_base, maxRowValue, maxColValue)) + box:log("Info", string.format(" Total [%d %d]", rowVotes, colVotes)) + end + + + + local now = box:get_current_time() + + box:send_stimulation(1, maxRowIdx + row_base, now, 0) + box:send_stimulation(2, maxColIdx + col_base, now, 0) + + segment_status = 0 + end + + box:sleep() + end +end + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-flash.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-flash.lua new file mode 100644 index 0000000..9f13ff0 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-flash.lua @@ -0,0 +1,61 @@ + +-- Picks out 'flashes' from a stimulation stream + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + box:set_filter_mode(1); + + state = 0 + + do_debug = false +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_SegmentStart then + state = 1 + elseif stimulation_id == OVTK_StimulationId_SegmentStop then + state = 0 + end + + -- If we're between 'rest start' and 'rest_stop', this specifies a target + if state == 1 and stimulation_id >= OVTK_StimulationId_LabelStart and stimulation_id <= OVTK_StimulationId_LabelEnd then + + box:send_stimulation(1, stimulation_id, stimulation_time, 0) + + if do_debug then + box:log("Info", string.format("Push a target %d at %f (now %f)", stimulation_id, stimulation_time, t)) + end + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-target.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-target.lua new file mode 100644 index 0000000..f8c92db --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-target.lua @@ -0,0 +1,61 @@ + +-- Picks out 'targets' from a stimulation stream + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + state = 0 + + box:set_filter_mode(1); + + do_debug = false +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_RestStart then + state = 1 + elseif stimulation_id == OVTK_StimulationId_RestStop then + state = 0 + end + + -- If we're between 'rest start' and 'rest_stop', this specifies a target + if state == 1 and stimulation_id >= OVTK_StimulationId_LabelStart and stimulation_id <= OVTK_StimulationId_LabelEnd then + + box:send_stimulation(1, stimulation_id, stimulation_time, 0) + + if do_debug then + box:log("Info", string.format("Push a target %d at %f (now = %f)", stimulation_id, stimulation_time, t)) + end + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-launch.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-launch.lua new file mode 100644 index 0000000..48f728f --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-launch.lua @@ -0,0 +1,21 @@ + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + stim = _G[box:get_setting(2)] + launchTime = box:get_setting(3) + +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + box:send_stimulation(1, stim, launchTime, 0) + +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-stimulator.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-stimulator.lua new file mode 100644 index 0000000..d9f136e --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-stimulator.lua @@ -0,0 +1,128 @@ +-- This Lua script sends Stimulations to the speller visualization box for a tactile p300-System with 6 stimulators +-- +-- Author : Tobias Baumann +-- Date : 2021-12-06 +-- Revised: 2021-19-11 + +--This function lets the box sleep until a fixed moment +function wait_until(box, time) + while box:get_current_time() < time do + box:sleep() + end +end + +--This function lets the box wait for a fixed duration +function wait_for(box, duration) + wait_until(box, box:get_current_time() + duration) +end + +--this function checks, wether value already is an element of the given stim_matrix +function is_element(matrix, value) + for i = 1, #matrix do + if #matrix == 0 then + return(false) + elseif value == matrix[i] then + return(true) + end + end + return(false) +end +--this function creates a sequence of stimulations by shuffeling the values of the given stim_matrix +function create_sequence(matrix) + math.randomseed(os.time()) + local stim_matrix = {} + local stim_code = 0 + local i = 1 + while i <= #matrix do + stim_code = matrix[math.random(1,#matrix)] + if is_element(stim_matrix, stim_code) == false then + stim_matrix[i] = stim_code + i = i + 1 + end + end + return(stim_matrix) +end + +-- this function is called when the box is initialized +function initialize(box) + --load stimulation codes + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + --load box settings + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + n_rows = box:get_setting(4) + n_repetitions = box:get_setting(5) + flash_duration = box:get_setting(7) + noflash_duration = box:get_setting(8) + inter_repetition_delay = box:get_setting(9) + inter_trial_delay = box:get_setting(10) + send_toggle = _G[box:get_setting(11)] + time_to_send = box:get_setting(13) + + if box:get_setting(12) == 'true' then + free_spelling = true + n_trials = 1 + else + free_spelling = false + n_trials = box:get_setting(6) + end + + --Lua variables + send = false + experiment_end = false + tactilo_stimcodes = {} + for x = 1, n_rows do + tactilo_stimcodes[x] = row_base + x - 1 + end +end + +-- this function is called when the box is uninitialized +function uninitialize(box) + +end + +-- this function is called once by the box +function process(box) + while box:keep_processing() do + + if send and not experiment_end then + for trial = 1, n_trials do + if not send then + break + end + box:send_stimulation(1, OVTK_StimulationId_RestStart, box:get_current_time() , 0) + wait_for(box, inter_trial_delay) + box:send_stimulation(1, OVTK_StimulationId_RestStop, box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_TrialStart ,box:get_current_time() , 0) + for segment = 1, n_repetitions do + tactilo_stimcodes = create_sequence(tactilo_stimcodes) + box:send_stimulation(1, OVTK_StimulationId_SegmentStart ,box:get_current_time() , 0) + for i = 1, #tactilo_stimcodes do + box:send_stimulation(1, tactilo_stimcodes[i] ,box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStart ,box:get_current_time() , 0) + wait_for(box, flash_duration) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStop ,box:get_current_time() , 0) + wait_for(box, noflash_duration) + end + box:send_stimulation(1, OVTK_StimulationId_SegmentStop ,box:get_current_time() , 0) + wait_for(box, inter_repetition_delay) + end + box:send_stimulation(1, OVTK_StimulationId_TrialStop ,box:get_current_time() , 0) + end + if not free_spelling then + box:send_stimulation(1, OVTK_StimulationId_ExperimentStop ,box:get_current_time() , 0) + send = false + experiment_end = true + end + else if not send and not experiment_end then + wait_for(box, time_to_send) + send = true + box:send_stimulation(1, OVTK_StimulationId_ExperimentStart ,box:get_current_time() , 0) + box:remove_stimulation(1, 1) + end + end + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-target.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-target.lua new file mode 100644 index 0000000..9565a60 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-target.lua @@ -0,0 +1,59 @@ +-- This Lua script generates target stimulations the 1x6 p300-tactile matrix +-- +-- Author : Tobias Baumann +-- Date : 2021-06-09 + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + math.randomseed(os.time()) + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + delay = box:get_setting(4) +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_RestStart then + + -- triggers the target + box:send_stimulation(1, row_base+math.random(1,6)-1, t+delay, 0) + box:send_stimulation(1, col_base, t+delay, 0) + + elseif stimulation_id == OVTK_StimulationId_ExperimentStop then + + -- triggers train stimulation + box:send_stimulation(1, OVTK_StimulationId_Train, t+delay+1, 0) + + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/signals/README.txt b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/signals/README.txt new file mode 100644 index 0000000..ac04efc --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/signals/README.txt @@ -0,0 +1,3 @@ + +The scenario will record its signals here. + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/signals/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/signals/p300-xdawn-train.ov new file mode 100644 index 0000000..bf8c485 Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-tactile/signals/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-accumulator.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-accumulator.lua new file mode 100644 index 0000000..ac8240d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-accumulator.lua @@ -0,0 +1,200 @@ + +function arrayMax(a) + if #a == 0 then return nil, nil end + local maxIdx, maxValue = 0, a[0] + for i = 1, (#a -1 ) do + if maxValue < a[i] then + maxIdx, maxValue = i, a[i] + end + end + return maxIdx, maxValue +end + +-- For handling target fifo + +List = {} +function List.new () + return {first = 0, last = -1} +end + +function List.pushright (list, value) + local last = list.last + 1 + list.last = last + list[last] = value +end + +function List.popleft (list) + local first = list.first + if first > list.last then + error("list is empty") + end + local value = list[first] + list[first] = nil -- to allow garbage collection + list.first = first + 1 + return value +end + +function List.isempty (list) + if list.first > list.last then + return true + else + return false + end +end + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + segment_start = _G[box:get_setting(4)] + segment_stop = _G[box:get_setting(5)] + + -- 0 inactive, 1 segment started, 2 segment stopped (can vote) + segment_status = 0 + + -- the idea is to push the flash states to the fifo, and when predictions arrive (with some delay), they are matched in oldest-first fashion. + target_fifo = List.new() + + -- box:log("Info", string.format("pop %d %d", id[1], id[2])) + + row_votes = {} + col_votes = {} + + do_debug = false + +end + +-- this function is called when the box is uninitialized +function uninitialize(box) + +end + +function process(box) + -- loops until box is stopped + while box:keep_processing() do + + -- first, parse the timeline stream + for stimulation = 1, box:get_stimulation_count(2) do + -- gets the received stimulation + local identifier, date, duration = box:get_stimulation(2, 1) + -- discards it + box:remove_stimulation(2, 1) + + if identifier == segment_start then + if do_debug then + box:log("Info", string.format("Trial start")) + box:log("Info", string.format("Clear votes")) + end + -- zero the votes + col_votes = {} + row_votes = {} + target_fifo = List.new() + -- fixme fixed 20 + for i = 0,20 do + col_votes[i] = 0 + row_votes[i] = 0 + end + segment_status = 1 + end + + -- Does the identifier code a flash? if so, put into fifo + if segment_status == 1 and identifier >= row_base and identifier <= OVTK_StimulationId_LabelEnd then + + -- assume rows before cols + if identifier < col_base then + local t = {"row", identifier - row_base} + List.pushright(target_fifo,t) + if do_debug then + box:log("Info", string.format("Push row target %d", identifier - row_base )) + end + else + local t = {"col", identifier - col_base} + List.pushright(target_fifo,t) + if do_debug then + box:log("Info", string.format("Push col target %d", identifier - col_base )) + end + end + + + end + + if identifier == segment_stop then + if do_debug then + box:log("Info", string.format("Trial stop")) + end + segment_status = 2 + end + + end + + -- then parse the classifications + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets the received stimulation + local identifier, date, duration = box:get_stimulation(1, 1) + -- discards it + box:remove_stimulation(1, 1) + + -- Is it an in-class prediction? + if identifier == OVTK_StimulationId_Target then + local t = List.popleft(target_fifo) + if do_debug then + box:log("Info", string.format("Pred fifo %s %d is target", t[1], t[2])) + end + if t[1]=="row" then + row_votes[t[2]] = row_votes[t[2]] + 1 + else + col_votes[t[2]] = col_votes[t[2]] + 1 + end + end + + if identifier == OVTK_StimulationId_NonTarget then + local t = List.popleft(target_fifo) + if do_debug then + box:log("Info", string.format("Pred fifo %s %d is nontarget", t[1], t[2])) + end + end + + end + + if segment_status == 2 and List.isempty(target_fifo) then + -- output the vote after the segment end when we've matched all predictions + + local maxRowIdx, maxRowValue = arrayMax(row_votes) + local maxColIdx, maxColValue = arrayMax(col_votes) + + if maxRowValue == 0 and maxColValue == 0 then + box:log("Warning", string.format("Classifier predicted 'no p300' for all flashes of the trial")); + end + + if do_debug then + local rowVotes = 0 + local colVotes = 0 + for ir, val in pairs(row_votes) do + rowVotes = rowVotes + val + end + for ir, val in pairs(col_votes) do + colVotes = colVotes + val + end + + box:log("Info", string.format("Vote [%d %d] wt [%d,%d]", maxRowIdx+row_base, maxColIdx+col_base, maxRowValue, maxColValue)) + box:log("Info", string.format(" Total [%d %d]", rowVotes, colVotes)) + end + + + + local now = box:get_current_time() + + box:send_stimulation(1, maxRowIdx + row_base, now, 0) + box:send_stimulation(2, maxColIdx + col_base, now, 0) + + segment_status = 0 + end + + box:sleep() + end +end + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-filter-flash.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-filter-flash.lua new file mode 100644 index 0000000..9f13ff0 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-filter-flash.lua @@ -0,0 +1,61 @@ + +-- Picks out 'flashes' from a stimulation stream + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + box:set_filter_mode(1); + + state = 0 + + do_debug = false +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_SegmentStart then + state = 1 + elseif stimulation_id == OVTK_StimulationId_SegmentStop then + state = 0 + end + + -- If we're between 'rest start' and 'rest_stop', this specifies a target + if state == 1 and stimulation_id >= OVTK_StimulationId_LabelStart and stimulation_id <= OVTK_StimulationId_LabelEnd then + + box:send_stimulation(1, stimulation_id, stimulation_time, 0) + + if do_debug then + box:log("Info", string.format("Push a target %d at %f (now %f)", stimulation_id, stimulation_time, t)) + end + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-filter-target.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-filter-target.lua new file mode 100644 index 0000000..f8c92db --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-filter-target.lua @@ -0,0 +1,61 @@ + +-- Picks out 'targets' from a stimulation stream + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + state = 0 + + box:set_filter_mode(1); + + do_debug = false +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_RestStart then + state = 1 + elseif stimulation_id == OVTK_StimulationId_RestStop then + state = 0 + end + + -- If we're between 'rest start' and 'rest_stop', this specifies a target + if state == 1 and stimulation_id >= OVTK_StimulationId_LabelStart and stimulation_id <= OVTK_StimulationId_LabelEnd then + + box:send_stimulation(1, stimulation_id, stimulation_time, 0) + + if do_debug then + box:log("Info", string.format("Push a target %d at %f (now = %f)", stimulation_id, stimulation_time, t)) + end + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-launch.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-launch.lua new file mode 100644 index 0000000..48f728f --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-launch.lua @@ -0,0 +1,21 @@ + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + stim = _G[box:get_setting(2)] + launchTime = box:get_setting(3) + +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + box:send_stimulation(1, stim, launchTime, 0) + +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-stimulator.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-stimulator.lua new file mode 100644 index 0000000..e71c854 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-stimulator.lua @@ -0,0 +1,139 @@ +-- This Lua script sends Stimulations to the speller visualization box for a p300-visual-speller +-- +-- Author : Tobias Baumann +-- Date : 2021-12-06 +-- Revised: 2021-19-11 + +--This function lets the box sleep until a fixed moment +function wait_until(box, time) + while box:get_current_time() < time do + box:sleep() + end +end + +--This function lets the box wait for a fixed duration +function wait_for(box, duration) + wait_until(box, box:get_current_time() + duration) +end + +--this function checks, wether value already is an element of the given stim_matrix +function is_element(matrix, value) + for i = 1, #matrix do + if #matrix == 0 then + return(false) + elseif value == matrix[i] then + return(true) + end + end + return(false) +end +--this function creates a sequence of stimulations by shuffeling the values of the given stim_matrix +function create_sequence(matrix) + math.randomseed(os.time()) + local stim_matrix = {} + local stim_code = 0 + local i = 1 + while i <= #matrix do + stim_code = matrix[math.random(1,#matrix)] + if is_element(stim_matrix, stim_code) == false then + stim_matrix[i] = stim_code + i = i + 1 + end + end + return(stim_matrix) +end + +-- this function is called when the box is initialized +function initialize(box) + --load stimulation codes + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + --load box settings + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + matrix_size = box:get_setting(4) + n_repetitions = box:get_setting(5) + flash_duration = box:get_setting(7) + noflash_duration = box:get_setting(8) + inter_repetition_delay = box:get_setting(9) + inter_trial_delay = box:get_setting(10) + send_toggle = _G[box:get_setting(11)] + time_to_send = box:get_setting(13) + + if box:get_setting(12) == 'true' then + free_spelling = true + n_trials = 1 + else + free_spelling = false + n_trials = box:get_setting(6) + end + + --Lua variables + experiment_end = false + send = false + row_stimcodes = {} + col_stimcodes = {} + for x = 1, matrix_size do + row_stimcodes[x] = row_base + x - 1 + end + for x = 1, matrix_size do + col_stimcodes[x] = col_base + x - 1 + end +end + +-- this function is called when the box is uninitialized +function uninitialize(box) + +end + +-- this function is called once by the box +function process(box) + while box:keep_processing() do + + if send and not experiment_end then + for trial = 1, n_trials do + if not send then + break + end + box:send_stimulation(1, OVTK_StimulationId_RestStart, box:get_current_time() , 0) + wait_for(box, inter_trial_delay) + box:send_stimulation(1, OVTK_StimulationId_RestStop, box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_TrialStart ,box:get_current_time() , 0) + for segment = 1, n_repetitions do + row_stimcodes = create_sequence(row_stimcodes) + col_stimcodes = create_sequence(col_stimcodes) + box:send_stimulation(1, OVTK_StimulationId_SegmentStart ,box:get_current_time() , 0) + for i = 1, matrix_size do + box:send_stimulation(1, row_stimcodes[i] ,box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStart ,box:get_current_time() , 0) + wait_for(box, flash_duration) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStop ,box:get_current_time() , 0) + wait_for(box, noflash_duration) + + box:send_stimulation(1, col_stimcodes[i] ,box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStart ,box:get_current_time() , 0) + wait_for(box, flash_duration) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStop ,box:get_current_time() , 0) + wait_for(box, noflash_duration) + end + box:send_stimulation(1, OVTK_StimulationId_SegmentStop ,box:get_current_time() , 0) + wait_for(box, inter_repetition_delay) + end + box:send_stimulation(1, OVTK_StimulationId_TrialStop ,box:get_current_time() , 0) + end + if not free_spelling then + box:send_stimulation(1, OVTK_StimulationId_ExperimentStop ,box:get_current_time() , 0) + send = false + experiment_end = true + end + else if not send and not experiment_end then + wait_for(box, time_to_send) + send = true + box:send_stimulation(1, OVTK_StimulationId_ExperimentStart ,box:get_current_time() , 0) + box:remove_stimulation(1, 1) + end + end + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-target.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-target.lua new file mode 100644 index 0000000..6b8d599 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/Scripts/p300-speller-target.lua @@ -0,0 +1,95 @@ +-- This Lua script generates target stimulations for the P300 visualization +-- box based on the matrix of letters / numbers a P300 speller has +-- +-- Author : Yann Renard, INRIA +-- Date : 2011-03-15 + +grid = +{ + { 'a', 'b', 'c', 'd', 'e', 'f' }, + { 'g', 'h', 'i', 'j', 'k', 'l' }, + { 'm', 'n', 'o', 'p', 'q', 'r' }, + { 's', 't', 'u', 'v', 'w', 'x' }, + { 'y', 'z', '1', '2', '3', '4' }, + { '5', '6', '7', '8', '9', '0' }, +} + +index = 0 + +function get_location(c) + for i = 1, 6 do + for j = 1, 6 do + if grid[i][j] == c then + return i, j + end + end + end + return 0, 0 +end + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + math.randomseed(os.time()) + target = box:get_setting(2) + row_base = _G[box:get_setting(3)] + col_base = _G[box:get_setting(4)] + delay = box:get_setting(5) + if target == "" then + for i = 1, 1000 do + a = math.random(1, #grid) + b = math.random(1, #grid[1]) + target = target .. grid[a][b] + end + end +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_RestStart then + + -- finds a new target + index = index + 1 + r, c = get_location(string.sub(target, index, index)) + + -- triggers the target + box:send_stimulation(1, row_base+r-1, t+delay, 0) + box:send_stimulation(1, col_base+c-1, t+delay, 0) + + elseif stimulation_id == OVTK_StimulationId_ExperimentStop then + + -- triggers train stimulation + box:send_stimulation(1, OVTK_StimulationId_Train, t+delay+1, 0) + + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-epoch-average.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-epoch-average.cfg new file mode 100644 index 0000000..d875a22 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-epoch-average.cfg @@ -0,0 +1,4 @@ + + Epoch block average + 1 + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-signal-decimation.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-signal-decimation.cfg new file mode 100644 index 0000000..17f549b --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-signal-decimation.cfg @@ -0,0 +1,3 @@ + + 2 + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-trainer.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-trainer.cfg new file mode 100644 index 0000000..877b7b3 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-trainer.cfg @@ -0,0 +1,6 @@ + + OVTK_StimulationId_ExperimentStop + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + 2 + true + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-stimulator.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-stimulator.cfg new file mode 100644 index 0000000..a6ff355 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-stimulator.cfg @@ -0,0 +1,15 @@ + + ${Player_ScenarioDirectory}/scripts/p300-speller-stimulator.lua + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_07 + 6 + 6 + 6 + 0.2 + 0.1 + 1.0 + 3.0 + OVTK_StimulationId_Label_00 + false + 20 + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-visualization.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-visualization.cfg new file mode 100644 index 0000000..94a29a8 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-visualization.cfg @@ -0,0 +1,17 @@ + + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_07 + 5,5,5 + 100,100,100 + 60 + 0,0,0 + 25,25,25 + 40 + 20,20,70 + 10,10,30 + 40 + 10,40,10 + 60,100,60 + 40 + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-reader.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-reader.cfg new file mode 100644 index 0000000..eb40b5a --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-reader.cfg @@ -0,0 +1,3 @@ + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-writer.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-writer.cfg new file mode 100644 index 0000000..8ec690d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-writer.cfg @@ -0,0 +1,4 @@ + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-classifier.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-classifier.cfg new file mode 100644 index 0000000..8afb5db --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + -1.065449e-02 -8.433724e-03 -8.073272e-03 -9.017780e-03 -9.777354e-03 -8.944181e-03 -6.230830e-03 -2.758279e-03 -3.235140e-04 -1.352536e-04 -1.926088e-03 -4.083097e-03 -4.692498e-03 -2.753402e-03 1.244794e-03 5.680807e-03 8.762294e-03 9.456782e-03 7.915370e-03 5.287581e-03 3.118571e-03 2.619630e-03 4.094226e-03 6.768748e-03 9.174244e-03 9.972830e-03 8.797661e-03 6.541000e-03 4.799351e-03 4.768071e-03 6.344103e-03 8.124675e-03 8.363765e-03 6.224775e-03 2.424195e-03 -1.196322e-03 -2.851123e-03 -1.915709e-03 7.530751e-04 3.396183e-03 4.368668e-03 2.963365e-03 -3.392516e-04 -4.198203e-03 -7.079456e-03 -7.969700e-03 -6.861420e-03 -4.777039e-03 -3.239701e-03 -3.388286e-03 -5.236641e-03 -7.610737e-03 -8.910818e-03 -8.244070e-03 -6.124523e-03 -4.181914e-03 -4.034294e-03 -6.119988e-03 -9.335163e-03 -1.173262e-02 -1.177178e-02 -9.257865e-03 -5.395932e-03 -2.028599e-03 -6.145408e-04 -1.541484e-03 -4.049135e-03 -6.678852e-03 -7.982786e-03 -7.200846e-03 -4.638517e-03 -1.537715e-03 5.851017e-04 8.427597e-04 -4.245259e-04 -1.824311e-03 -1.845317e-03 4.752100e-05 2.955936e-03 5.119501e-03 5.149311e-03 3.042552e-03 2.428930e-04 -1.287825e-03 -3.188279e-04 2.922254e-03 6.954850e-03 9.945371e-03 1.068628e-02 9.125222e-03 6.276736e-03 3.671370e-03 2.627163e-03 3.629881e-03 6.079055e-03 8.573383e-03 9.682944e-03 8.828090e-03 6.696685e-03 4.831422e-03 4.573125e-03 6.068291e-03 8.086901e-03 8.844321e-03 7.269914e-03 3.808607e-03 1.766968e-04 -1.741630e-03 -1.074637e-03 1.554038e-03 4.470369e-03 5.937520e-03 5.050437e-03 2.094611e-03 -1.694535e-03 -4.761485e-03 -5.956829e-03 -5.080199e-03 -2.996414e-03 -1.197241e-03 -9.487884e-04 -2.483538e-03 -4.794599e-03 -6.271835e-03 -5.825002e-03 -3.713072e-03 -1.435526e-03 -7.048042e-04 -2.216943e-03 -5.109876e-03 -7.496883e-03 -7.681639e-03 -5.207139e-03 -1.076147e-03 2.901702e-03 5.134082e-03 5.021532e-03 3.142139e-03 8.761657e-04 -2.795461e-04 5.861766e-04 3.352089e-03 6.897349e-03 9.682793e-03 1.064804e-02 9.903735e-03 8.705992e-03 8.625191e-03 1.041981e-02 1.342298e-02 1.594116e-02 1.642946e-02 1.460972e-02 2.817637e-02 -4.840407e-02 -9.976585e-02 -6.985380e-02 1.491242e-02 7.155328e-02 4.443439e-02 -3.797191e-02 -9.137803e-02 -6.061353e-02 2.481303e-02 8.074376e-02 5.333914e-02 -2.723268e-02 -7.844005e-02 -4.951793e-02 2.779827e-02 7.315535e-02 4.066951e-02 -3.419586e-02 -7.182737e-02 -3.117873e-02 4.726139e-02 8.269434e-02 3.734128e-02 -4.375073e-02 -7.782342e-02 -2.888324e-02 5.475251e-02 8.871436e-02 3.806794e-02 -4.683099e-02 -8.083197e-02 -2.985476e-02 5.485205e-02 8.865112e-02 3.879119e-02 -4.340915e-02 -7.558262e-02 -2.799611e-02 4.736031e-02 7.128999e-02 1.905085e-02 -5.465944e-02 -7.273114e-02 -1.577054e-02 5.727698e-02 6.950056e-02 5.584476e-03 -7.132660e-02 -8.340662e-02 -1.782299e-02 5.923858e-02 6.914402e-02 6.673236e-04 -7.811252e-02 -8.828058e-02 -1.966468e-02 5.907948e-02 6.992799e-02 3.895191e-03 -7.095231e-02 -7.936229e-02 -1.505279e-02 5.425062e-02 5.727324e-02 -7.536283e-03 -7.101590e-02 -6.525187e-02 5.747159e-03 6.955956e-02 5.973993e-02 -1.519179e-02 -7.931864e-02 -6.639334e-02 1.206213e-02 7.749772e-02 6.363009e-02 -1.607782e-02 -8.150926e-02 -6.658777e-02 1.412134e-02 8.033233e-02 6.715597e-02 -9.949235e-03 -7.195228e-02 -5.701572e-02 1.730200e-02 7.342040e-02 5.409701e-02 -1.892744e-02 -6.798887e-02 -4.022698e-02 3.725145e-02 8.474108e-02 5.200611e-02 -2.921481e-02 -7.662697e-02 -4.121790e-02 4.202358e-02 8.876384e-02 5.067273e-02 -3.518262e-02 -8.334376e-02 -4.609787e-02 3.849587e-02 8.526104e-02 4.784015e-02 -3.525063e-02 -8.071039e-02 -4.526235e-02 3.132817e-02 6.832485e-02 2.741037e-02 -4.827900e-02 -7.926540e-02 -3.230679e-02 4.468368e-02 7.155341e-02 1.865642e-02 -6.164462e-02 -8.763346e-02 -3.174667e-02 5.042964e-02 7.585444e-02 1.823988e-02 -6.483002e-02 -8.972530e-02 -3.110719e-02 5.265307e-02 7.859125e-02 2.267007e-02 -5.690036e-02 -7.962156e-02 -2.437293e-02 5.034890e-02 6.756062e-02 1.109532e-02 -5.827743e-02 -6.613570e-02 -1.759823e-03 7.019885e-02 7.602720e-02 9.305781e-03 -6.132959e-02 -6.165544e-02 1.205372e-02 8.825910e-02 9.222659e-02 2.198583e-02 -4.914157e-02 -4.633916e-02 3.125785e-02 + -1.96568 + + + 2.409086e-03 2.198461e-03 2.433915e-03 2.786778e-03 2.835634e-03 2.319346e-03 1.319269e-03 2.463177e-04 -3.895101e-04 -3.047498e-04 3.468884e-04 1.037339e-03 1.182314e-03 5.141635e-04 -7.405742e-04 -2.000163e-03 -2.688242e-03 -2.575711e-03 -1.890107e-03 -1.145624e-03 -8.253918e-04 -1.117923e-03 -1.846505e-03 -2.601419e-03 -2.980041e-03 -2.804876e-03 -2.215824e-03 -1.592960e-03 -1.341206e-03 -1.641963e-03 -2.315090e-03 -2.895642e-03 -2.908464e-03 -2.183725e-03 -1.001989e-03 4.985026e-05 4.373304e-04 1.995234e-05 -8.552968e-04 -1.572232e-03 -1.627130e-03 -9.223903e-04 2.051332e-04 1.213669e-03 1.678961e-03 1.513395e-03 9.761424e-04 4.988545e-04 4.389008e-04 8.878154e-04 1.624427e-03 2.236657e-03 2.359095e-03 1.905259e-03 1.152863e-03 6.043322e-04 6.804864e-04 1.432049e-03 2.469744e-03 3.183628e-03 3.123699e-03 2.291345e-03 1.143598e-03 3.074599e-04 1.973655e-04 7.838641e-04 1.645497e-03 2.244436e-03 2.237862e-03 1.644344e-03 7.956552e-04 1.293362e-04 -5.469842e-05 2.477126e-04 7.454096e-04 1.014249e-03 7.474585e-04 -3.950141e-05 -9.827824e-04 -1.567896e-03 -1.452945e-03 -7.137900e-04 1.671162e-04 5.851543e-04 1.958459e-04 -8.597379e-04 -2.040156e-03 -2.740986e-03 -2.658219e-03 -1.946669e-03 -1.092818e-03 -6.082479e-04 -7.437185e-04 -1.380879e-03 -2.134181e-03 -2.581622e-03 -2.495294e-03 -1.960393e-03 -1.327201e-03 -1.013934e-03 -1.254147e-03 -1.930003e-03 -2.609070e-03 -2.792642e-03 -2.239575e-03 -1.153674e-03 -8.997446e-05 3.806971e-04 3.515627e-05 -8.551915e-04 -1.694220e-03 -1.931892e-03 -1.389896e-03 -3.407786e-04 6.858343e-04 1.224642e-03 1.122730e-03 5.874328e-04 3.736968e-05 -1.413305e-04 1.960100e-04 8.770850e-04 1.506936e-03 1.692687e-03 1.287216e-03 5.082916e-04 -1.620141e-04 -2.654173e-04 3.252110e-04 1.288027e-03 2.025447e-03 2.033382e-03 1.226029e-03 -3.785326e-06 -1.029815e-03 -1.376807e-03 -9.922784e-04 -2.444616e-04 3.261782e-04 3.269822e-04 -2.867881e-04 -1.224122e-03 -2.046137e-03 -2.412773e-03 -2.262579e-03 -1.842008e-03 -1.567873e-03 -1.783824e-03 -2.537089e-03 -3.514779e-03 -4.205952e-03 -4.216115e-03 -3.541297e-03 -6.581993e-03 -1.424993e-03 1.320168e-02 2.098451e-02 1.257719e-02 -4.498017e-03 -1.334755e-02 -5.064049e-03 1.184138e-02 1.976790e-02 9.834123e-03 -8.909432e-03 -1.834723e-02 -9.407664e-03 8.846172e-03 1.831813e-02 9.958901e-03 -7.415151e-03 -1.633349e-02 -8.395699e-03 7.513099e-03 1.468631e-02 5.845724e-03 -9.542276e-03 -1.527563e-02 -5.316914e-03 9.889072e-03 1.422081e-02 2.683462e-03 -1.316291e-02 -1.689959e-02 -4.197565e-03 1.239718e-02 1.595179e-02 2.360225e-03 -1.523540e-02 -1.945396e-02 -6.067104e-03 1.177606e-02 1.674625e-02 4.605319e-03 -1.184376e-02 -1.594835e-02 -4.007871e-03 1.134547e-02 1.440262e-02 2.527307e-03 -1.134707e-02 -1.229705e-02 1.030356e-03 1.495831e-02 1.495232e-02 8.171389e-04 -1.282625e-02 -1.144988e-02 4.289189e-03 1.883631e-02 1.734606e-02 8.461666e-04 -1.451750e-02 -1.354941e-02 2.777988e-03 1.831901e-02 1.793993e-02 2.538220e-03 -1.219256e-02 -1.181013e-02 2.411256e-03 1.520067e-02 1.319585e-02 -1.381968e-03 -1.325155e-02 -1.005060e-02 4.779710e-03 1.552042e-02 1.049956e-02 -5.626390e-03 -1.640334e-02 -1.043949e-02 6.651778e-03 1.760798e-02 1.093456e-02 -7.266235e-03 -1.917721e-02 -1.305262e-02 5.013481e-03 1.721660e-02 1.185747e-02 -5.142642e-03 -1.654127e-02 -1.131615e-02 4.418310e-03 1.406467e-02 7.733377e-03 -7.717027e-03 -1.599491e-02 -8.378094e-03 7.184297e-03 1.428276e-02 5.125309e-03 -1.115809e-02 -1.768244e-02 -7.186074e-03 1.020478e-02 1.696643e-02 5.939719e-03 -1.218340e-02 -1.938738e-02 -8.350124e-03 1.022358e-02 1.835040e-02 8.721314e-03 -8.242182e-03 -1.520539e-02 -5.472187e-03 1.055541e-02 1.637952e-02 6.413477e-03 -8.459788e-03 -1.235637e-02 -9.556758e-04 1.396288e-02 1.671446e-02 4.074063e-03 -1.111921e-02 -1.299646e-02 9.252366e-04 1.683358e-02 1.841796e-02 3.477969e-03 -1.357535e-02 -1.601966e-02 -1.560836e-03 1.538256e-02 1.814330e-02 4.393229e-03 -1.183847e-02 -1.457514e-02 -1.975018e-03 1.219391e-02 1.295218e-02 -5.180932e-04 -1.425949e-02 -1.416985e-02 -7.052536e-04 1.153933e-02 8.964682e-03 -6.787161e-03 -2.025163e-02 -1.794231e-02 -2.400931e-03 1.001589e-02 5.587103e-03 + -0.191969 + + + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-spatial-filter.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-spatial-filter.cfg new file mode 100644 index 0000000..03b1669 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -2.559252e+00 -3.708117e+00 8.689272e-01 6.167160e-03 -6.747036e+00 3.825336e+00 -1.562881e+00 -1.609973e+00 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-classifier.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-classifier.cfg new file mode 100644 index 0000000..dc3ff8d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 5.023280e-02 3.764423e-02 2.498992e-02 2.205262e-02 2.781807e-02 3.100063e-02 2.220079e-02 4.864926e-03 -6.996999e-03 -2.782131e-03 1.307792e-02 2.415620e-02 1.749764e-02 -3.517305e-03 -2.184482e-02 -2.273431e-02 -7.547872e-03 7.923395e-03 8.754577e-03 -5.322100e-03 -2.083653e-02 -2.454778e-02 -1.606082e-02 -6.744798e-03 -6.945412e-03 -1.525904e-02 -2.092805e-02 -1.635047e-02 -6.035751e-03 -2.167437e-03 -1.122313e-02 -2.589318e-02 -3.143947e-02 -2.066732e-02 -2.266003e-03 6.603369e-03 -3.206754e-03 -2.346435e-02 -3.586774e-02 -2.919879e-02 -9.697582e-03 5.313045e-03 4.063567e-03 -9.103153e-03 -1.914333e-02 -1.557472e-02 -2.063816e-03 8.774287e-03 9.161186e-03 3.876580e-03 4.122179e-03 1.449580e-02 2.727198e-02 3.038508e-02 2.084996e-02 9.205450e-03 9.563690e-03 2.490662e-02 4.279603e-02 4.661100e-02 3.171245e-02 1.052025e-02 1.132059e-03 1.035146e-02 2.758426e-02 3.536693e-02 2.598944e-02 8.003711e-03 -3.170551e-03 -5.163085e-04 8.774646e-03 1.209871e-02 5.001533e-03 -4.754784e-03 -6.489672e-03 1.033872e-03 7.657191e-03 2.665318e-03 -1.295428e-02 -2.616189e-02 -2.461127e-02 -9.825830e-03 2.989044e-03 -8.681673e-04 -2.107953e-02 -4.196602e-02 -4.704027e-02 -3.443330e-02 -1.824967e-02 -1.475900e-02 -2.712809e-02 -4.343855e-02 -4.922771e-02 -4.149289e-02 -3.029197e-02 -2.716932e-02 -3.300389e-02 -3.791560e-02 -3.286537e-02 -2.022988e-02 -1.178634e-02 -1.596223e-02 -2.784870e-02 -3.304626e-02 -2.215497e-02 -1.275732e-03 1.271172e-02 8.152025e-03 -9.721702e-03 -2.324261e-02 -1.887286e-02 1.531826e-04 1.731281e-02 1.874798e-02 5.958592e-03 -6.839537e-03 -7.315641e-03 3.388633e-03 1.332515e-02 1.304139e-02 5.273002e-03 1.096225e-03 7.085723e-03 1.749042e-02 2.006193e-02 9.591224e-03 -5.301579e-03 -9.948866e-03 1.342265e-03 1.839647e-02 2.410050e-02 1.092700e-02 -1.123327e-02 -2.399447e-02 -1.772383e-02 -3.927396e-04 1.043981e-02 4.419368e-03 -1.248552e-02 -2.496701e-02 -2.379538e-02 -1.405836e-02 -8.532157e-03 -1.383604e-02 -2.402199e-02 -2.798091e-02 -2.235633e-02 -1.589493e-02 -2.029512e-02 -3.708372e-02 -5.467323e-02 -5.946973e-02 -5.014721e-02 -5.135034e-02 -1.900345e-02 1.366188e-02 1.959101e-02 -1.804682e-03 -2.429428e-02 -2.170582e-02 5.431877e-03 3.065392e-02 2.887963e-02 2.315960e-03 -2.156155e-02 -1.791586e-02 1.014777e-02 3.472365e-02 3.149396e-02 4.393186e-03 -1.859986e-02 -1.418825e-02 1.239693e-02 3.282673e-02 2.483622e-02 -4.716395e-03 -2.653900e-02 -1.861832e-02 1.131469e-02 3.350283e-02 2.624641e-02 -2.261078e-03 -2.253725e-02 -1.400256e-02 1.407767e-02 3.224064e-02 2.113989e-02 -8.497038e-03 -2.669075e-02 -1.477834e-02 1.548725e-02 3.381788e-02 2.213180e-02 -7.210658e-03 -2.425423e-02 -1.219759e-02 1.541762e-02 2.866546e-02 1.207253e-02 -1.922749e-02 -3.462451e-02 -1.909920e-02 1.144094e-02 2.623005e-02 1.078501e-02 -1.857256e-02 -3.154676e-02 -1.481536e-02 1.449616e-02 2.651654e-02 9.356060e-03 -1.858082e-02 -2.730675e-02 -5.890479e-03 2.626765e-02 3.904800e-02 2.210192e-02 -4.883274e-03 -1.257383e-02 7.854207e-03 3.564681e-02 4.177738e-02 1.884071e-02 -1.107272e-02 -1.867073e-02 2.752031e-03 3.041218e-02 3.510291e-02 1.076276e-02 -1.953810e-02 -2.722240e-02 -7.286541e-03 1.683023e-02 1.749296e-02 -8.601768e-03 -3.680850e-02 -3.955074e-02 -1.443572e-02 1.324683e-02 1.620245e-02 -7.216621e-03 -3.158729e-02 -3.061650e-02 -4.145223e-03 2.167276e-02 2.121186e-02 -4.217704e-03 -2.745308e-02 -2.305294e-02 6.717297e-03 3.400791e-02 3.350172e-02 7.915661e-03 -1.504487e-02 -1.109404e-02 1.588940e-02 3.800984e-02 3.208902e-02 3.573422e-03 -1.884887e-02 -1.244792e-02 1.634524e-02 3.843132e-02 3.161122e-02 3.056976e-03 -1.822127e-02 -1.116093e-02 1.579401e-02 3.341724e-02 2.179318e-02 -9.012830e-03 -2.891684e-02 -1.834306e-02 1.179193e-02 3.104644e-02 2.024197e-02 -9.259412e-03 -2.737120e-02 -1.606605e-02 1.230839e-02 2.783493e-02 1.380501e-02 -1.602520e-02 -3.136247e-02 -1.628020e-02 1.446133e-02 3.035242e-02 1.609036e-02 -1.302899e-02 -2.695394e-02 -1.171226e-02 1.631004e-02 2.725874e-02 8.601588e-03 -2.169876e-02 -3.318902e-02 -1.382094e-02 1.776046e-02 3.110367e-02 1.480713e-02 -1.205592e-02 -1.951980e-02 2.722027e-03 3.497552e-02 4.791346e-02 3.277780e-02 + -2.00902 + + + -1.037856e-02 -9.587372e-03 -4.510515e-03 -4.814465e-04 -1.365595e-03 -5.307766e-03 -6.799116e-03 -2.841571e-03 3.416342e-03 5.637051e-03 9.864054e-04 -6.398818e-03 -9.047329e-03 -3.528325e-03 5.816383e-03 1.073260e-02 6.907910e-03 -1.857532e-03 -7.285352e-03 -4.497621e-03 3.557755e-03 9.317476e-03 8.047500e-03 2.084028e-03 -2.105994e-03 -7.112330e-04 3.832027e-03 5.934121e-03 3.114346e-03 -1.290034e-03 -1.834192e-03 2.879581e-03 8.248020e-03 8.227173e-03 1.835395e-03 -5.240094e-03 -5.937098e-03 1.082545e-03 9.706521e-03 1.199168e-02 5.757992e-03 -3.294196e-03 -7.046597e-03 -2.647745e-03 5.059606e-03 8.552999e-03 4.922054e-03 -1.775570e-03 -5.129024e-03 -2.960633e-03 8.728988e-04 1.059963e-03 -3.255278e-03 -7.546460e-03 -6.928465e-03 -1.749503e-03 2.329923e-03 1.201201e-04 -7.353756e-03 -1.327471e-02 -1.156397e-02 -3.108681e-03 4.681805e-03 4.810232e-03 -2.592512e-03 -1.037811e-02 -1.122744e-02 -4.521716e-03 3.408389e-03 5.672458e-03 1.361561e-03 -4.147783e-03 -5.066912e-03 -1.019626e-03 3.079306e-03 2.668320e-03 -1.427190e-03 -3.930864e-03 -1.003416e-03 5.235001e-03 8.531200e-03 5.015074e-03 -2.325229e-03 -6.092404e-03 -1.715015e-03 7.725187e-03 1.409329e-02 1.189451e-02 3.564586e-03 -2.861733e-03 -1.425412e-03 6.249423e-03 1.288481e-02 1.277505e-02 7.047876e-03 1.922850e-03 2.097498e-03 6.173866e-03 8.666068e-03 6.198038e-03 1.214162e-03 -7.344411e-04 2.783398e-03 8.041625e-03 8.751776e-03 2.752664e-03 -5.190361e-03 -7.684737e-03 -2.054215e-03 6.651326e-03 1.021963e-02 5.107300e-03 -4.128438e-03 -9.193238e-03 -5.936476e-03 1.940963e-03 6.815780e-03 4.602046e-03 -1.684735e-03 -5.536379e-03 -3.731647e-03 7.179829e-04 2.261927e-03 -9.941728e-04 -5.228404e-03 -5.151383e-03 -1.312769e-05 5.132525e-03 4.498342e-03 -2.153442e-03 -8.655338e-03 -8.248464e-03 -4.218934e-04 8.165288e-03 9.855854e-03 3.328661e-03 -5.109280e-03 -7.563670e-03 -2.002472e-03 6.122299e-03 9.462057e-03 5.849113e-03 -1.070508e-04 -2.162151e-03 1.199286e-03 5.677542e-03 6.191633e-03 2.519113e-03 -4.758773e-04 1.751792e-03 8.182062e-03 1.287109e-02 1.107154e-02 1.716072e-02 1.179036e-02 -2.955288e-03 -1.311528e-02 -9.246707e-03 3.993599e-03 1.262045e-02 7.569479e-03 -6.111183e-03 -1.448840e-02 -9.030955e-03 4.643642e-03 1.249266e-02 6.389258e-03 -7.569885e-03 -1.527489e-02 -8.986191e-03 4.797178e-03 1.201201e-02 5.417112e-03 -8.016324e-03 -1.426516e-02 -6.646021e-03 7.281601e-03 1.338014e-02 5.362930e-03 -8.742517e-03 -1.471380e-02 -6.575543e-03 7.352504e-03 1.295972e-02 4.719211e-03 -8.727228e-03 -1.345260e-02 -4.506541e-03 9.014399e-03 1.326079e-02 3.789261e-03 -9.877897e-03 -1.394835e-02 -4.407106e-03 8.927542e-03 1.247135e-02 2.767611e-03 -9.996175e-03 -1.244389e-02 -1.749113e-03 1.139971e-02 1.366509e-02 2.680941e-03 -1.048235e-02 -1.254687e-02 -1.515896e-03 1.132367e-02 1.291797e-02 1.729481e-03 -1.075579e-02 -1.181213e-02 -5.003473e-04 1.136841e-02 1.130859e-02 -1.064107e-03 -1.360765e-02 -1.401215e-02 -2.319946e-03 9.173649e-03 8.525008e-03 -3.637077e-03 -1.476764e-02 -1.326897e-02 -4.086879e-04 1.090651e-02 9.277374e-03 -3.531811e-03 -1.433760e-02 -1.192684e-02 1.549097e-03 1.278627e-02 1.088121e-02 -1.601629e-03 -1.132586e-02 -7.866359e-03 5.605601e-03 1.554661e-02 1.187475e-02 -1.721247e-03 -1.152669e-02 -7.773158e-03 5.430763e-03 1.434519e-02 9.670841e-03 -3.940133e-03 -1.265736e-02 -7.650954e-03 5.823980e-03 1.374339e-02 7.627544e-03 -6.756626e-03 -1.520422e-02 -9.490116e-03 4.294903e-03 1.198153e-02 5.762432e-03 -7.893570e-03 -1.491077e-02 -8.028424e-03 5.760681e-03 1.234784e-02 4.925332e-03 -9.045777e-03 -1.543249e-02 -7.830977e-03 5.933881e-03 1.183938e-02 4.009536e-03 -9.291177e-03 -1.414233e-02 -5.256639e-03 8.542739e-03 1.328011e-02 4.094795e-03 -9.748802e-03 -1.424343e-02 -4.864424e-03 8.857950e-03 1.307279e-02 3.713535e-03 -9.409888e-03 -1.268625e-02 -2.639611e-03 1.050893e-02 1.328599e-02 2.742399e-03 -1.051170e-02 -1.311188e-02 -2.548509e-03 1.031480e-02 1.237425e-02 1.684543e-03 -1.057394e-02 -1.157095e-02 -1.220668e-05 1.245740e-02 1.309567e-02 1.075128e-03 -1.162555e-02 -1.238415e-02 -7.638310e-04 1.106519e-02 1.073219e-02 -1.758508e-03 -1.410179e-02 -1.431623e-02 + -0.192624 + + + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-spatial-filter.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-spatial-filter.cfg new file mode 100644 index 0000000..a4c4c7d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -1.197627e+00 2.105600e-01 -2.502675e+00 -6.337555e-01 5.800950e-01 5.214162e+00 -1.198762e-01 1.296027e+00 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-classifier.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-classifier.cfg new file mode 100644 index 0000000..b5b3e61 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 1.992349e-04 -7.101522e-02 -6.101115e-02 1.837456e-02 8.451950e-02 6.890552e-02 -1.273989e-02 -7.677335e-02 -5.759445e-02 2.487486e-02 8.539484e-02 6.074976e-02 -2.513950e-02 -8.515548e-02 -5.781966e-02 2.961841e-02 8.844873e-02 5.861412e-02 -3.006978e-02 -8.804303e-02 -5.690836e-02 3.137926e-02 8.721030e-02 5.446974e-02 -3.273200e-02 -8.533920e-02 -5.034878e-02 3.543156e-02 8.354213e-02 4.463870e-02 -4.107945e-02 -8.529944e-02 -4.234759e-02 4.375059e-02 8.421183e-02 3.655660e-02 -5.143394e-02 -9.009501e-02 -3.943200e-02 4.964065e-02 8.673025e-02 3.388695e-02 -5.561893e-02 -9.127523e-02 -3.719357e-02 5.160887e-02 8.533880e-02 3.067820e-02 -5.576284e-02 -8.561326e-02 -2.891653e-02 5.572887e-02 8.157143e-02 2.263129e-02 -5.986401e-02 -8.047555e-02 -1.737311e-02 6.503794e-02 8.198488e-02 1.536590e-02 -6.720587e-02 -8.113447e-02 -1.134800e-02 7.183194e-02 8.395275e-02 1.238461e-02 -7.063420e-02 -8.126964e-02 -9.154502e-03 7.229510e-02 8.068305e-02 8.270836e-03 -7.065540e-02 -7.588764e-02 -3.005205e-03 7.263436e-02 7.338773e-02 -1.152449e-03 -7.395180e-02 -6.973003e-02 7.629030e-03 7.881926e-02 7.031543e-02 -1.001845e-02 -8.044251e-02 -6.861530e-02 1.428943e-02 8.445408e-02 7.049683e-02 -1.381592e-02 -8.337001e-02 -6.808107e-02 1.603180e-02 8.335617e-02 6.582881e-02 -1.810695e-02 -8.281586e-02 -6.304173e-02 1.976960e-02 7.994039e-02 5.554372e-02 -2.823412e-02 -8.512472e-02 -5.642925e-02 2.857394e-02 8.243361e-02 4.916468e-02 -3.801390e-02 -9.014055e-02 -5.327591e-02 3.606835e-02 8.764745e-02 4.919107e-02 -4.028334e-02 -8.996025e-02 -4.941169e-02 4.031952e-02 8.864850e-02 4.755458e-02 -3.996037e-02 -8.420444e-02 -4.040029e-02 4.598750e-02 8.624931e-02 3.941727e-02 -4.591090e-02 -8.161477e-02 -3.061025e-02 5.489345e-02 8.673841e-02 3.127371e-02 -5.570341e-02 -8.554285e-02 -2.730365e-02 6.022422e-02 8.799954e-02 2.731039e-02 -6.083064e-02 -8.753615e-02 -2.624987e-02 6.046999e-02 8.473959e-02 2.262749e-02 -6.196672e-02 -8.288187e-02 -1.956483e-02 6.242056e-02 7.890095e-02 1.334653e-02 -6.639037e-02 -7.786407e-02 -8.791755e-03 7.010557e-02 -5.615247e-04 7.483156e-02 6.284848e-02 -2.304054e-02 -9.388252e-02 -7.630811e-02 1.245716e-02 8.227777e-02 6.236127e-02 -2.626415e-02 -9.218231e-02 -6.707967e-02 2.425210e-02 8.902756e-02 6.117237e-02 -3.105858e-02 -9.368062e-02 -6.273613e-02 3.045338e-02 9.114664e-02 5.770379e-02 -3.565109e-02 -9.379946e-02 -5.769990e-02 3.557369e-02 9.089105e-02 5.224208e-02 -4.021881e-02 -9.142095e-02 -4.865274e-02 4.458068e-02 9.312595e-02 4.756963e-02 -4.514629e-02 -8.967265e-02 -3.980462e-02 5.408174e-02 9.629405e-02 4.354225e-02 -5.067760e-02 -9.046333e-02 -3.526629e-02 5.869814e-02 9.568188e-02 3.794305e-02 -5.586529e-02 -9.056170e-02 -3.143582e-02 6.056010e-02 9.121830e-02 2.926055e-02 -6.190468e-02 -8.916862e-02 -2.494715e-02 6.468354e-02 8.765063e-02 2.013571e-02 -6.897417e-02 -8.848470e-02 -1.822506e-02 7.011663e-02 8.607157e-02 1.283464e-02 -7.536013e-02 -8.880163e-02 -1.378228e-02 7.334513e-02 8.392634e-02 7.302760e-03 -7.842094e-02 -8.606398e-02 -8.179913e-03 7.557069e-02 7.987519e-02 8.068346e-04 -8.038784e-02 -8.048918e-02 6.053229e-04 7.985220e-02 7.607283e-02 -6.937963e-03 -8.420552e-02 -7.645033e-02 8.728067e-03 8.439631e-02 7.298832e-02 -1.436799e-02 -8.896829e-02 -7.488045e-02 1.360530e-02 8.646818e-02 6.965921e-02 -1.948975e-02 -9.002703e-02 -7.013510e-02 1.976814e-02 8.808818e-02 6.564250e-02 -2.382641e-02 -8.814341e-02 -6.104658e-02 3.007882e-02 9.227659e-02 6.215646e-02 -2.919914e-02 -8.795594e-02 -5.350611e-02 3.939227e-02 9.591337e-02 5.796964e-02 -3.631159e-02 -9.126768e-02 -5.118437e-02 4.284935e-02 9.475875e-02 5.136447e-02 -4.348054e-02 -9.367112e-02 -4.881053e-02 4.458432e-02 9.077585e-02 4.258715e-02 -5.058381e-02 -9.344767e-02 -4.230373e-02 5.032885e-02 8.950351e-02 3.502797e-02 -5.734648e-02 -9.288521e-02 -3.480497e-02 5.791345e-02 9.059256e-02 2.956071e-02 -6.327357e-02 -9.339522e-02 -3.004358e-02 6.234892e-02 8.976243e-02 2.436153e-02 -6.722092e-02 -9.188361e-02 -2.492409e-02 6.498266e-02 8.605785e-02 1.710047e-02 -7.106021e-02 -8.812765e-02 -1.667591e-02 7.010703e-02 8.335692e-02 9.505115e-03 -7.575139e-02 + -1.86754 + + + 4.520025e-03 1.860010e-02 1.121634e-02 -9.526612e-03 -2.206935e-02 -1.350048e-02 7.332846e-03 1.904633e-02 9.740392e-03 -1.077739e-02 -2.109266e-02 -1.024066e-02 1.091980e-02 2.073750e-02 8.976156e-03 -1.253802e-02 -2.181898e-02 -9.125094e-03 1.298347e-02 2.226882e-02 9.350535e-03 -1.275495e-02 -2.180553e-02 -8.833959e-03 1.287559e-02 2.139641e-02 8.432157e-03 -1.242006e-02 -1.973092e-02 -6.162925e-03 1.415248e-02 2.024580e-02 5.886213e-03 -1.402755e-02 -1.880432e-02 -3.288592e-03 1.672094e-02 2.058894e-02 4.047893e-03 -1.624421e-02 -1.956902e-02 -2.303597e-03 1.823352e-02 2.125923e-02 3.603501e-03 -1.704786e-02 -2.005707e-02 -2.692211e-03 1.723442e-02 1.955385e-02 2.184331e-03 -1.695378e-02 -1.838230e-02 -9.491761e-04 1.714693e-02 1.714554e-02 -9.826170e-04 -1.851984e-02 -1.726815e-02 1.670249e-03 1.889736e-02 1.655722e-02 -3.268034e-03 -2.048766e-02 -1.740754e-02 3.156418e-03 2.057706e-02 1.727459e-02 -3.443324e-03 -2.071028e-02 -1.722719e-02 3.280705e-03 1.997974e-02 1.615205e-02 -3.915268e-03 -1.951488e-02 -1.477461e-02 5.184486e-03 1.965515e-02 1.368664e-02 -6.549141e-03 -2.011724e-02 -1.287366e-02 7.905032e-03 2.087043e-02 1.247629e-02 -9.002567e-03 -2.173394e-02 -1.254926e-02 9.523483e-03 2.228351e-02 1.283895e-02 -9.297754e-03 -2.183035e-02 -1.224474e-02 9.604475e-03 2.162626e-02 1.195660e-02 -9.130031e-03 -1.990548e-02 -9.446406e-03 1.130126e-02 2.089287e-02 9.461435e-03 -1.115129e-02 -1.958701e-02 -6.974644e-03 1.384189e-02 2.137811e-02 7.560350e-03 -1.383110e-02 -2.106887e-02 -6.634604e-03 1.498054e-02 2.186957e-02 6.917741e-03 -1.495362e-02 -2.188828e-02 -7.197601e-03 1.398074e-02 2.016843e-02 5.348754e-03 -1.509949e-02 -2.027120e-02 -5.105601e-03 1.457596e-02 1.842942e-02 2.516103e-03 -1.666331e-02 -1.915436e-02 -2.125867e-03 1.709569e-02 1.871972e-02 8.443587e-04 -1.840266e-02 -1.924333e-02 -4.632146e-04 1.918868e-02 1.993662e-02 1.038087e-03 -1.843670e-02 -1.891246e-02 -8.414417e-05 1.890837e-02 1.900492e-02 5.241281e-04 -1.737256e-02 -1.638006e-02 2.281010e-03 1.927344e-02 1.709345e-02 -1.932394e-03 -1.805311e-02 -4.853757e-03 -1.940220e-02 -1.102546e-02 1.131973e-02 2.448794e-02 1.481099e-02 -7.980413e-03 -2.077269e-02 -1.074513e-02 1.151877e-02 2.288933e-02 1.140477e-02 -1.142681e-02 -2.234868e-02 -1.014716e-02 1.280654e-02 2.310247e-02 1.016209e-02 -1.292666e-02 -2.269863e-02 -9.204296e-03 1.384754e-02 2.304199e-02 9.084499e-03 -1.377936e-02 -2.232723e-02 -8.025591e-03 1.433941e-02 2.182851e-02 6.784580e-03 -1.540118e-02 -2.208996e-02 -6.575438e-03 1.506859e-02 2.046998e-02 3.903692e-03 -1.778496e-02 -2.237006e-02 -4.999317e-03 1.675779e-02 2.077706e-02 2.957756e-03 -1.853957e-02 -2.175729e-02 -3.303776e-03 1.818310e-02 2.100731e-02 2.483695e-03 -1.838030e-02 -2.029335e-02 -1.361666e-03 1.905918e-02 2.018180e-02 1.003517e-03 -1.873854e-02 -1.880822e-02 8.149188e-04 1.993281e-02 1.883382e-02 -1.481160e-03 -2.026000e-02 -1.820008e-02 2.767847e-03 2.135820e-02 1.860694e-02 -2.756698e-03 -2.103188e-02 -1.762403e-02 4.015211e-03 2.189711e-02 1.788042e-02 -3.884197e-03 -2.123504e-02 -1.660769e-02 5.103044e-03 2.162275e-02 1.608213e-02 -5.784159e-03 -2.157119e-02 -1.516340e-02 6.775521e-03 2.164433e-02 1.407242e-02 -8.293425e-03 -2.255635e-02 -1.398243e-02 8.867444e-03 2.278833e-02 1.358152e-02 -9.423500e-03 -2.282302e-02 -1.296242e-02 1.015070e-02 2.303176e-02 1.262248e-02 -1.044915e-02 -2.274683e-02 -1.191754e-02 1.077687e-02 2.203577e-02 1.033708e-02 -1.233880e-02 -2.282413e-02 -1.049089e-02 1.188457e-02 2.122571e-02 7.817965e-03 -1.468745e-02 -2.319031e-02 -8.779569e-03 1.407428e-02 2.221274e-02 7.409747e-03 -1.518945e-02 -2.245697e-02 -6.834865e-03 1.595687e-02 2.291970e-02 7.175532e-03 -1.507811e-02 -2.111911e-02 -4.851346e-03 1.705287e-02 2.223958e-02 5.502425e-03 -1.596032e-02 -2.019315e-02 -2.961529e-03 1.793136e-02 2.089738e-02 2.708282e-03 -1.813593e-02 -2.029397e-02 -1.439449e-03 1.927045e-02 2.068908e-02 1.268575e-03 -1.930271e-02 -2.012299e-02 -3.654294e-04 1.987190e-02 2.002505e-02 -2.114387e-05 -1.986935e-02 -1.942976e-02 6.307668e-04 1.965162e-02 1.812354e-02 -2.406703e-03 -2.098877e-02 -1.874718e-02 1.799200e-03 1.933438e-02 + -0.186277 + + + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-spatial-filter.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-spatial-filter.cfg new file mode 100644 index 0000000..0ba5bae --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -7.456638e-01 4.505683e+00 -5.713293e+00 6.569946e-01 6.642618e+00 3.787215e+00 2.433134e+00 -7.012442e-01 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.md b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.md new file mode 100644 index 0000000..266b73c --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.md @@ -0,0 +1,2 @@ +# OpenViBE_visual_BCI + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test2.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test2.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test2.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-0-signal-monitoring.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-0-signal-monitoring.xml new file mode 100644 index 0000000..ebf1e4f --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-0-signal-monitoring.xml @@ -0,0 +1,721 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x000014bf, 0x000034db) + Identity + (0x5dffe431, 0x35215c50) + + + (0x5ba36127, 0x195feae1) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x5ba36127, 0x195feae1) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 384 + + + (0x207c9054, 0x3c841b63) + 928 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xac367a9c, 0x2da95abe) + 6 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00003f1b, 0x00003c78) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 320 + + + (0x207c9054, 0x3c841b63) + 800 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 208 + + + (0x207c9054, 0x3c841b63) + 800 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00005c5c, 0x00007610) + Raw + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Horizontal ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Vertical ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 1024 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + (0x00006b6d, 0x00002690) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 128 + + + (0x207c9054, 0x3c841b63) + 928 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00007e4e, 0x00006b7b) + Filtered + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Horizontal ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Vertical ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 832 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + + + (0x000003a7, 0x000034db) + + (0x000014bf, 0x000034db) + 2 + + + (0x00005c5c, 0x00007610) + 1 + + + + (0x00000554, 0x0000661a) + + (0x000014bf, 0x000034db) + 2 + + + (0x00007e4e, 0x00006b7b) + 1 + + + + (0x00001d33, 0x00002bb0) + + (0x00006b6d, 0x00002690) + 2 + + + (0x000014bf, 0x000034db) + 2 + + + + (0x00003f04, 0x000045c3) + + (0x000014bf, 0x000034db) + 1 + + + (0x00005c5c, 0x00007610) + 0 + + + + (0x00004b11, 0x00006a43) + + (0x00003f1b, 0x00003c78) + 0 + + + (0x000014bf, 0x000034db) + 0 + + + + (0x000056fd, 0x00004795) + + (0x000014bf, 0x000034db) + 0 + + + (0x00007e4e, 0x00006b7b) + 0 + + + + (0x00005703, 0x00006037) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00003f1b, 0x00003c78) + 0 + + + + (0x00005e38, 0x00005c99) + + (0x00006b6d, 0x00002690) + 1 + + + (0x000014bf, 0x000034db) + 1 + + + + (0x000073ac, 0x0000581b) + + (0x00006b6d, 0x00002690) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + + + (0x00001653, 0x00002964) + <u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 512 + + + (0x7234b86b, 0x2b8651a5) + 416 + + + + + (0x000028e8, 0x00003dee) + <u><b><big>Overview</big></b></u> + +This scenario can be used in order +to check the quality of the signals +before starting an experiment. + +One should <u>definitely</u> +check the quality of the signals +and ensure that : + +- <b>eye blinks</b> are visible +- <b>jaw clenching</b> are visible +- <b>alpha waves</b> are visible when closing eyes + + + (0x473d9a43, 0x97fc0a97) + 1184 + + + (0x7234b86b, 0x2b8651a5) + 272 + + + + + (0x000049b3, 0x00001e28) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 944 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x00004e8c, 0x000041b6) + The P300 XDawn scenarios are described in + +http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0x473d9a43, 0x97fc0a97) + 576.000000 + + + (0x7234b86b, 0x2b8651a5) + 130.000000 + + + + + (0x000059b5, 0x00001524) + The <i>Temporal Filter</i> +and <i>Signal Decimation</i> +boxes transform the signal +so you can see what is actually +used online. + + + (0x473d9a43, 0x97fc0a97) + 512 + + + (0x7234b86b, 0x2b8651a5) + 288 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"height":635,"identifier":"(0x000077ee, 0x0000254d)","name":"default","parentIdentifier":"(0xffffffff, 0xffffffff)","type":1,"width":783},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x00004579, 0x00005fcb)","index":0,"name":"Default tab","parentIdentifier":"(0x000077ee, 0x0000254d)","type":2},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":2,"dividerPosition":293,"identifier":"(0x00005446, 0x000043a1)","index":0,"maxDividerPosition":590,"name":"Vertical split","parentIdentifier":"(0x00004579, 0x00005fcb)","type":4},{"boxIdentifier":"(0x00005c5c, 0x00007610)","childCount":0,"identifier":"(0x00000e42, 0x000074b8)","index":0,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3},{"boxIdentifier":"(0x00007e4e, 0x00006b7b)","childCount":0,"identifier":"(0x00005db7, 0x000032ad)","index":1,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Signal Monitoring + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-1-acquisition.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-1-acquisition.xml new file mode 100644 index 0000000..a548ae5 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-1-acquisition.xml @@ -0,0 +1,807 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00002c69, 0x00000b43) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 336 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x07e64d8b) + + + + + (0x0000356c, 0x00004381) + Generic stream writer + (0x09c92218, 0x7c1216f8) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + + + (0x2cdb2f0b, 0x12f231ea) + Use compression + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x4e7b798a, 0x183beafb) + (0x89a08108, 0xc8d1fac1) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-writer.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0350a9f0) + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000470b, 0x00001b1d) + Speller Stimulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-speller-stimulator.lua + false + + + (0x00000000, 0xbae13066) + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x5518f982) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xc152613d) + (0x007deef9, 0x2f3e95c6) + Matrix Size (m*m) + 6 + 6 + false + + + (0x00000000, 0xa0308929) + (0x007deef9, 0x2f3e95c6) + Number of Repetitions + 6 + 3 + false + + + (0x00000000, 0xcde95a6f) + (0x007deef9, 0x2f3e95c6) + Number of Trials + 6 + 3 + false + + + (0x00000000, 0x9b3f9b7b) + (0x512a166f, 0x5c3ef83f) + Flash Duration (in sec) + 0.2 + 0.2 + false + + + (0x00000000, 0x583ad367) + (0x512a166f, 0x5c3ef83f) + No Flash Duration (in sec) + 0.1 + 0.1 + false + + + (0x00000000, 0xfc1c2fb6) + (0x512a166f, 0x5c3ef83f) + Inter-Repetition Delay (in sec) + 1.0 + 1.0 + false + + + (0x00000000, 0x0d9a1e18) + (0x512a166f, 0x5c3ef83f) + Inter-Trial Delay (in sec) + 3.0 + 3.0 + false + + + (0x00000000, 0xaeefd500) + (0x2c132d6e, 0x44ab0d97) + Start Stimulation + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x00000000, 0xef5eb0e5) + (0x2cdb2f0b, 0x12f231ea) + Free Spelling + false + false + false + + + (0x00000000, 0x4ead155d) + (0x007deef9, 0x2f3e95c6) + Time To Send + 20 + 20 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 128 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-stimulator.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00004eca, 0x00003f33) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 624 + + + (0x207c9054, 0x3c841b63) + 784 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x01070ba6) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x0000599b, 0x000026ba) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 464 + + + (0x207c9054, 0x3c841b63) + 688 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x02909b75) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00006d0d, 0x000031d8) + Target Letter Generation + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-speller-target.lua + false + + + (0x79a9edeb, 0x245d83fc) + Word to Spell (leave this empty if random) + + + false + + + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x512a166f, 0x5c3ef83f) + Delay Before Sending (in sec) + 2 + 2 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 256 + + + (0x207c9054, 0x3c841b63) + 736 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0334c6b7) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x00000ea4, 0x000068ff) + + (0x0000599b, 0x000026ba) + 2 + + + (0x00004eca, 0x00003f33) + 0 + + + + (0x000019a1, 0x00001d15) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x00002c69, 0x00000b43) + 0 + + + + (0x000036a5, 0x00006190) + + (0x0000599b, 0x000026ba) + 0 + + + (0x0000356c, 0x00004381) + 0 + + + + (0x00003aa4, 0x00002b37) + + (0x00006d0d, 0x000031d8) + 0 + + + (0x00002c69, 0x00000b43) + 1 + + + + (0x0000649d, 0x00004576) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x00006d0d, 0x000031d8) + 0 + + + + (0x000068a0, 0x0000330f) + + (0x0000599b, 0x000026ba) + 2 + + + (0x0000356c, 0x00004381) + 2 + + + + (0x00007bda, 0x00000772) + + (0x0000599b, 0x000026ba) + 1 + + + (0x0000356c, 0x00004381) + 1 + + + + + + (0x0000363f, 0x00001c2b) + The P300 Speller Visualization +sends the markers (stimulations) directly to +Acquisition Server using TCP Tagging. + + + (0x473d9a43, 0x97fc0a97) + 960.000000 + + + (0x7234b86b, 0x2b8651a5) + 336.000000 + + + + + (0x00004e8c, 0x000041b6) + The P300 XDawn scenarios are described in + +http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0x473d9a43, 0x97fc0a97) + 320.000000 + + + (0x7234b86b, 0x2b8651a5) + 176.000000 + + + + + (0x19b8795c, 0x039f26f7) + <u><b><big>Overview</big></b></u> + +This scenario can be used as a first +step to collect some training data. The +data will later be used to train a spatial +filter and a classifier for online use. + +The flast sequence will start after 20 sec. + +You will then be presented a blue letter that +you have to focus on, followed by a 12 times +flashing sequence of the whole grid. This will +be repeated 10 times. + +<small><i><b>note:</b> the recorded files go to the +folder where the scenario xml is located +(<span color="darkblue">${Player_ScenarioDirectory}/</span>).</i></small> + + + (0x473d9a43, 0x97fc0a97) + 320.000000 + + + (0x7234b86b, 0x2b8651a5) + 400.000000 + + + + + (0x24020235, 0x4f7e23eb) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 304 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x00002c69, 0x00000b43)","childCount":0,"identifier":"(0x0000742d, 0x000050d7)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard, Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Data Acquisition + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-2-train-xDAWN.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-2-train-xDAWN.xml new file mode 100644 index 0000000..7dfa8eb --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-2-train-xDAWN.xml @@ -0,0 +1,644 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00001db8, 0x00001848) + xDAWN Trainer + (0x27542f6e, 0x14aa3548) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x5ba36127, 0x195feae1) + Session signal + + + (0x5ba36127, 0x195feae1) + Evoked potential epochs + + + + + (0x6f752dd0, 0x082a321e) + Train-completed Flag + + + + + (0x2c132d6e, 0x44ab0d97) + Train stimulation + OVTK_StimulationId_Train + OVTK_StimulationId_ExperimentStop + false + + + (0x330306dd, 0x74a95f98) + Spatial filter configuration + + ${Player_ScenarioDirectory}/p300-spatial-filter.cfg + false + + + (0x007deef9, 0x2f3e95c6) + Filter dimension + 4 + 3 + false + + + (0x2cdb2f0b, 0x12f231ea) + Save as box config + true + true + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x4b49a133, 0x42f38d94) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-trainer.cfg + + + (0xc80ce8af, 0xf699f813) + + + + (0xce18836a, 0x9c0eb403) + + + + (0xcfad85b0, 0x7c6d841c) + + + + + + (0x00002514, 0x00001614) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -128 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-reader.cfg + + + + + (0x0000267a, 0x0000427f) + Time based epoching + (0x00777fa0, 0x5dc3f560) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Epoched signal 1 + + + + + (0x512a166f, 0x5c3ef83f) + Epoch 1 duration (in sec) + 1 + 0.250000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch 1 intervals (in sec) + 0.5 + 0.250000 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 160 + + + (0x207c9054, 0x3c841b63) + 240 + + + (0x4e7b798a, 0x183beafb) + (0xc5ff41e9, 0xccc59a01) + + + + + (0x00004aea, 0x00001465) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_TrainCompleted + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 416 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -16 + + + (0x207c9054, 0x3c841b63) + 240 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00006be0, 0x000074b5) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 112 + + + (0x207c9054, 0x3c841b63) + 240 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + + + (0x00006fa4, 0x00003c76) + Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_Target + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 250 + + + (0x207c9054, 0x3c841b63) + 425 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + + + + + (0x000002c2, 0x000038de) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00006be0, 0x000074b5) + 0 + + + + (0x000007d3, 0x000071cb) + + (0x0000267a, 0x0000427f) + 0 + + + (0x00006fa4, 0x00003c76) + 0 + + + + (0x00003582, 0x00002c04) + + (0x00006be0, 0x000074b5) + 0 + + + (0x0000267a, 0x0000427f) + 0 + + + + (0x00003920, 0x00007a30) + + (0x0000267a, 0x0000427f) + 0 + + + (0x00001db8, 0x00001848) + 1 + + + + (0x0000452e, 0x0000366d) + + (0x00002514, 0x00001614) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x00004be2, 0x00004296) + + (0x00006fa4, 0x00003c76) + 0 + + + (0x00001db8, 0x00001848) + 2 + + + + (0x00004bf5, 0x00007908) + + (0x00001db8, 0x00001848) + 0 + + + (0x00004aea, 0x00001465) + 0 + + + + (0x000059e8, 0x00000032) + + (0x00002514, 0x00001614) + 2 + + + (0x00001db8, 0x00001848) + 0 + + + + (0x00006af9, 0x00002512) + + (0x00002514, 0x00001614) + 2 + + + (0x00006fa4, 0x00003c76) + 1 + + + + + + (0x00000b43, 0x0000067f) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 48 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x000010db, 0x00003fcd) + For prerecorded data to test this P300, see + +<b>http://openvibe.inria.fr/datasets/</b> + + + + (0x473d9a43, 0x97fc0a97) + 816.000000 + + + (0x7234b86b, 0x2b8651a5) + 112.000000 + + + + + (0x000049d6, 0x00006e67) + <u><b><big>Overview</big></b></u> + +This scenario should be used to train +the spatial filter using the xDAWN algorithm. + +Just configure the <i>Generic Stream Reader</i> +box to point to the last file you recorded with +scenario <i>1-acquisition</i> and fast forward +this scenario. + +At the end of the training, you will have line in +the console about eigen values. +Using a <i>Player Controller</i> the scenario will +automatically pause at the end of the training. + +If you want details on this values, you should read +<u>http://www.icp.inpg.fr/~rivetber/Publications/references/Rivet2009a.pdf</u> + + + (0x473d9a43, 0x97fc0a97) + 800.000000 + + + (0x7234b86b, 0x2b8651a5) + -80.000000 + + + + + (0x00007b93, 0x000041da) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 304.000000 + + + (0x7234b86b, 0x2b8651a5) + -192.000000 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Spatial Filter Training + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-3-train-classifier.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-3-train-classifier.xml new file mode 100644 index 0000000..cc6c8cc --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-3-train-classifier.xml @@ -0,0 +1,1087 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00000b2d, 0x00006d61) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002bb807) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00000d41, 0x000013b7) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b7d6e) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00001f83, 0x00004e32) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -192 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-reader.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x008e34c7) + + + + + (0x00002c8b, 0x000001d5) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_TrainCompleted + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00301c7f) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00002f94, 0x00000341) + Non Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_NonTarget + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002bbddf) + + + + + (0x00003e14, 0x00000027) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 16 + + + (0x207c9054, 0x3c841b63) + 256 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002c5bfc) + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -96 + + + (0x207c9054, 0x3c841b63) + 256 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x000063a5, 0x0000197c) + Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_Target + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b4e91) + + + + + (0x000078d0, 0x000029bc) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b5470) + + + + + (0x000078f9, 0x000063eb) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 9.970221e-001 -3.729500e-002 -1.177390e-002 2.814447e-002 -3.772446e-003 3.371324e-002 -5.480030e-003 8.893039e-003 -1.565213e-002 -9.956694e-003 -2.347757e-002 -2.312669e-003 -1.847227e-002 -7.550644e-004 -8.423513e-003 3.243223e-002 2.079848e-002 5.079737e-001 -2.835127e-002 8.259231e-002 -3.621803e-001 -2.004259e-001 -2.432480e-001 -1.861558e-001 -3.798139e-001 9.614762e-002 3.407766e-001 -2.158597e-001 3.720552e-001 7.500469e-002 -8.628774e-002 -3.182367e-002 5.923482e-002 4.124707e-001 2.083913e-001 -2.629501e-001 2.023081e-001 -2.658446e-001 4.022738e-001 -1.785569e-001 4.450742e-001 3.549239e-001 1.550204e-002 3.750389e-002 3.114249e-002 9.273764e-002 -7.093797e-002 -2.610929e-001 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 3 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 16 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 80 + + + (0x207c9054, 0x3c841b63) + 256 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b601f) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00007b56, 0x000033f9) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002c2168) + + + + + (0x0a5a6a4a, 0x1d92a778) + Classifier trainer + (0xf3dae8a8, 0x3b444154) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x17341935, 0x152ff448) + Features for class 1 + + + (0x17341935, 0x152ff448) + Features for class 2 + + + + + (0x6f752dd0, 0x082a321e) + Train-completed Flag + + + + + (0x2c132d6e, 0x44ab0d97) + Train trigger + OVTK_StimulationId_Train + OVTK_StimulationId_ExperimentStop + false + + + (0x330306dd, 0x74a95f98) + Filename to save configuration to + ${Path_UserData}/my-classifier.xml + ${Player_ScenarioDirectory}/cfg/p300-classifier.cfg + false + + + (0xbe9eba5c, 0xa8415d37) + Multiclass strategy to apply + Native + Native + false + + + (0x2c132d6e, 0x44ab0d97) + Class 1 label + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Target + false + + + (0x2c132d6e, 0x44ab0d97) + Class 2 label + OVTK_StimulationId_Label_02 + OVTK_StimulationId_NonTarget + false + + + (0xd765a736, 0xed708c65) + Algorithm to use + Linear Discrimimant Analysis (LDA) + Linear Discrimimant Analysis (LDA) + false + + + (0x2cdb2f0b, 0x12f231ea) + Use shrinkage + false + false + false + + + (0x512a166f, 0x5c3ef83f) + Shrinkage coefficient (-1 == auto) + -1.000000 + -1.000000 + false + + + (0x2cdb2f0b, 0x12f231ea) + Shrinkage: Force diagonal cov (DDA) + false + false + false + + + (0x007deef9, 0x2f3e95c6) + Number of partitions for k-fold cross-validation test + 10 + 5 + false + + + (0x2cdb2f0b, 0x12f231ea) + Balance classes + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 448 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x9de21779, 0x37776c89) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 6 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x00000004, 0x00007d3a) + + (0x000078f9, 0x000063eb) + 0 + + + (0x000063a5, 0x0000197c) + 0 + + + + (0x00000aca, 0x000037d3) + + (0x00003e14, 0x00000027) + 0 + + + (0x000078f9, 0x000063eb) + 0 + + + + (0x00001717, 0x00003cf9) + + (0x000078d0, 0x000029bc) + 0 + + + (0x00000b2d, 0x00006d61) + 0 + + + + (0x00001770, 0x00000ded) + + (0x00001f83, 0x00004e32) + 2 + + + (0x000063a5, 0x0000197c) + 1 + + + + (0x00002204, 0x00006850) + + (0x00001f83, 0x00004e32) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x0000227f, 0x00003a6f) + + (0x000078f9, 0x000063eb) + 0 + + + (0x00002f94, 0x00000341) + 0 + + + + (0x00002599, 0x0000329b) + + (0x000063a5, 0x0000197c) + 0 + + + (0x000078d0, 0x000029bc) + 0 + + + + (0x00004098, 0x00007e81) + + (0x00002f94, 0x00000341) + 0 + + + (0x00007b56, 0x000033f9) + 0 + + + + (0x00004674, 0x000061af) + + (0x00007b56, 0x000033f9) + 0 + + + (0x00000d41, 0x000013b7) + 0 + + + + (0x00005c01, 0x00003398) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00003e14, 0x00000027) + 0 + + + + (0x00006821, 0x00000c75) + + (0x00001f83, 0x00004e32) + 2 + + + (0x00002f94, 0x00000341) + 1 + + + + (0x175e412c, 0x0692f4ee) + + (0x00000d41, 0x000013b7) + 0 + + + (0x0a5a6a4a, 0x1d92a778) + 2 + + + + (0x5a67b7d8, 0x1cf07f9a) + + (0x00001f83, 0x00004e32) + 2 + + + (0x0a5a6a4a, 0x1d92a778) + 0 + + + + (0x616495af, 0x5c020b32) + + (0x0a5a6a4a, 0x1d92a778) + 0 + + + (0x00002c8b, 0x000001d5) + 0 + + + + (0x63fa63da, 0x0e447c5b) + + (0x00000b2d, 0x00006d61) + 0 + + + (0x0a5a6a4a, 0x1d92a778) + 1 + + + + + + (0x00004785, 0x00007f9c) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 432 + + + (0x7234b86b, 0x2b8651a5) + -240 + + + + + (0x000047f3, 0x00004eaf) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 48 + + + (0x7234b86b, 0x2b8651a5) + 0 + + + + + (0x00005277, 0x00007fbe) + <u><b><big>Overview</big></b></u> + +This scenario should be used to train +the LDA classifier. + +Just configure the <i>Generic Stream Reader</i> +box to point to the last file you recorded with +scenario <i>1-acquisition</i> and fast forward +this scenario. + +At the end of the training, you will have an estimation +of the classifier performance printed in the console. +If this performance is lower than 70%, just run a new +<i>4-online</i> session to have better results. + +<u><b>Note:</b></u> in order to run this scenario, +the spatial filter should have been trained using +<i>2-train-xDAWN</i> ! + + + (0x473d9a43, 0x97fc0a97) + 848 + + + (0x7234b86b, 0x2b8651a5) + 96 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + LDA Classifier Trainer + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-4-online.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-4-online.xml new file mode 100644 index 0000000..796a422 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-4-online.xml @@ -0,0 +1,1612 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00002bb3, 0x0000133c) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -240 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007036bf) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00003d0e, 0x000025ef) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Pause + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 704 + + + (0x207c9054, 0x3c841b63) + 880 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00003dec, 0x00004c7b) + Stimulation based epoching + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.6 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_VisualStimulationStart + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 176 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x005ced91) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 2 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x0000445b, 0x000068e3) + P300 accumulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + (0x6f752dd0, 0x082a321e) + New input(1) + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6f752dd0, 0x082a321e) + New output + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-speller-accumulator.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x2c132d6e, 0x44ab0d97) + Segment start + OVTK_StimulationId_SegmentStart + OVTK_StimulationId_TrialStart + false + + + (0x2c132d6e, 0x44ab0d97) + Segment stop + OVTK_StimulationId_SegmentStop + OVTK_StimulationId_TrialStop + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 448 + + + (0x207c9054, 0x3c841b63) + 627 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0304fb88) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000470b, 0x00001b1d) + Speller Stimulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-speller-stimulator.lua + false + + + (0x00000000, 0xbae13066) + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x5518f982) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xc152613d) + (0x007deef9, 0x2f3e95c6) + Matrix Size (m*m) + 6 + 6 + false + + + (0x00000000, 0xa0308929) + (0x007deef9, 0x2f3e95c6) + Number of Repetitions + 6 + 3 + false + + + (0x00000000, 0xcde95a6f) + (0x007deef9, 0x2f3e95c6) + Number of Trials + 6 + 3 + false + + + (0x00000000, 0x9b3f9b7b) + (0x512a166f, 0x5c3ef83f) + Flash Duration (in sec) + 0.2 + 0.2 + false + + + (0x00000000, 0x583ad367) + (0x512a166f, 0x5c3ef83f) + No Flash Duration (in sec) + 0.1 + 0.1 + false + + + (0x00000000, 0xfc1c2fb6) + (0x512a166f, 0x5c3ef83f) + Inter-Repetition Delay (in sec) + 1.0 + 1.0 + false + + + (0x00000000, 0x0d9a1e18) + (0x512a166f, 0x5c3ef83f) + Inter-Trial Delay (in sec) + 3.0 + 3.0 + false + + + (0x00000000, 0xaeefd500) + (0x2c132d6e, 0x44ab0d97) + Start Stimulation + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x00000000, 0xef5eb0e5) + (0x2cdb2f0b, 0x12f231ea) + Free Spelling + false + true + false + + + (0x00000000, 0x4ead155d) + (0x007deef9, 0x2f3e95c6) + Time To Send + 20 + 20 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 608 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-stimulator.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -48 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00007786, 0x00001163) + Identity + (0x5dffe431, 0x35215c50) + + + (0x6f752dd0, 0x082a321e) + Input stream + + + + + (0x6f752dd0, 0x082a321e) + Output stream + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 336 + + + (0x207c9054, 0x3c841b63) + 720 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x008f57e1, 0x2790537b) + Generic stream writer + (0x09c92218, 0x7c1216f8) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-online-[$core{date}-$core{time}].ov + false + + + (0x2cdb2f0b, 0x12f231ea) + Use compression + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 144 + + + (0x207c9054, 0x3c841b63) + 816 + + + (0x4e7b798a, 0x183beafb) + (0x89a08108, 0xc8d1fac1) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007b2629) + + + (0xfba64161, 0x65304e21) + + + + + + (0x09c41dd7, 0x09f2e37b) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 240 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x000eaa12) + + + + + (0x0e30a73f, 0x7ae6d95a) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 304 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x000f9a38) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x28b5e192, 0x37431137) + Classifier processor + (0x5fe23d17, 0x95b0452c) + + + (0x17341935, 0x152ff448) + Features + + + (0x6f752dd0, 0x082a321e) + Commands + + + + + (0x6f752dd0, 0x082a321e) + Labels + + + (0x544a003e, 0x6dcba5f6) + Hyperplane distance + + + (0x544a003e, 0x6dcba5f6) + Probability values + + + + + (0x330306dd, 0x74a95f98) + Filename to load configuration from + + ${Player_ScenarioDirectory}/cfg/p300-classifier.cfg + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 368 + + + (0x207c9054, 0x3c841b63) + 560 + + + (0x4e7b798a, 0x183beafb) + (0xa6c8e548, 0x9e3e405b) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 3 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x2e63c8c5, 0x79a8ae7b) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 720 + + + (0x207c9054, 0x3c841b63) + 464 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x017985f8) + + + + + (0x40e41bf9, 0x5c44b1b1) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 64 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002cae02) + + + + + (0x6d03daab, 0x55fdea78) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 4 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 4 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 112 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x6f54afd0, 0x5f2e0f65) + Identity + (0x5dffe431, 0x35215c50) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -144 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x005f48d2) + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x0000062d, 0x00006549) + + (0x0000445b, 0x000068e3) + 1 + + + (0x2e63c8c5, 0x79a8ae7b) + 3 + + + + (0x00001301, 0x000055b2) + + (0x00002bb3, 0x0000133c) + 1 + + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + + (0x0000233b, 0x000050b8) + + (0x0000556f, 0x000055f8) + 0 + + + (0x40e41bf9, 0x5c44b1b1) + 0 + + + + (0x0000266b, 0x000033bb) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x00003dec, 0x00004c7b) + 1 + + + + (0x00002e50, 0x00003fba) + + (0x00003dec, 0x00004c7b) + 0 + + + (0x09c41dd7, 0x09f2e37b) + 0 + + + + (0x00003835, 0x000030a7) + + (0x00002bb3, 0x0000133c) + 0 + + + (0x6f54afd0, 0x5f2e0f65) + 0 + + + + (0x00004944, 0x00005bde) + + (0x00007786, 0x00001163) + 0 + + + (0x00003d0e, 0x000025ef) + 0 + + + + (0x00005b72, 0x00000606) + + (0x0000445b, 0x000068e3) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 2 + + + + (0x00006403, 0x000024ec) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 0 + + + + (0x00006501, 0x000068bf) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x00007786, 0x00001163) + 0 + + + + (0x00006592, 0x00002f7e) + + (0x00002bb3, 0x0000133c) + 2 + + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + + (0x00006967, 0x00006431) + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x00006c4d, 0x0000126f) + + (0x40e41bf9, 0x5c44b1b1) + 0 + + + (0x6d03daab, 0x55fdea78) + 0 + + + + (0x000074af, 0x000038c2) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x008f57e1, 0x2790537b) + 2 + + + + (0x0000756d, 0x000027c0) + + (0x6d03daab, 0x55fdea78) + 0 + + + (0x00003dec, 0x00004c7b) + 0 + + + + (0x00007b30, 0x00005e90) + + (0x00007786, 0x00001163) + 0 + + + (0x0000445b, 0x000068e3) + 1 + + + + (0x00f1a11e, 0x4a813bb8) + + (0x09c41dd7, 0x09f2e37b) + 0 + + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + + (0x0de02dd1, 0x545eff87) + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + (0x008f57e1, 0x2790537b) + 1 + + + + (0x136dcee0, 0x20dbb005) + + (0x28b5e192, 0x37431137) + 0 + + + (0x0000445b, 0x000068e3) + 0 + + + + (0x2893bc68, 0x5c0429ec) + + (0x6f54afd0, 0x5f2e0f65) + 0 + + + (0x008f57e1, 0x2790537b) + 0 + + + + (0x3ccbcbed, 0x529f3e1d) + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + (0x28b5e192, 0x37431137) + 0 + + + + + + (0x1012e1de, 0x78e57c3e) + The stimulation part of the scenario is +similar to scenario <i>1-acquisition</i>. + +If you keep the <i>Target Letter Generation</i> +box, you will be able to train the algorithms +again on the recorded data. + + + + (0x473d9a43, 0x97fc0a97) + 1120 + + + (0x7234b86b, 0x2b8651a5) + 592 + + + + + (0x11fceaee, 0x1f87d83c) + Switch from file reader +to Acquisiton client to use it online + + + (0x473d9a43, 0x97fc0a97) + 176.000000 + + + (0x7234b86b, 0x2b8651a5) + -48.000000 + + + + + (0x27567f54, 0x6e00503a) + You can configure the Flashing Sequence +and the Target Letter Generation in order to +instruct the subject to <u>spell a specific word</u>. + +Set the target word in the Lua Stimulator (e.g. "openvibe") +and adapt the number of trials in the P300 Speller Stimulator +(e.g. 8 trials for the 8 letters in "openvibe") + +<b><u>Note:</u></b> If the number of letter in the chosen word does not match +the number of trial, you won't be able to train xDAWN and +the classifier on the recorded data. + + + (0x473d9a43, 0x97fc0a97) + 128.000000 + + + (0x7234b86b, 0x2b8651a5) + 576.000000 + + + + + (0x3726b6f5, 0x3dea5d78) + <u><b><big>Overview</big></b></u> + +This scenario can be used online once the +spatial filter and the classifiers are trained. +The <i>Target Letter Generation</i> +box still proposes some targets in order to +eventually train the spatial filter / classifier +again, but you may want to disconnect that box +in order to have a real <i>free time</i> use of +the speller. + +The flash sequence starts automatically after 20 sec. + +You will then be presented a blue letter that +you have to focus on, followed by a 12 times +flashing sequence of the whole grid. The detected +letter will be presented in green. This will be repeated +10 times. + +If the performance of the system does not fit your +requirements, just run <i>2-train-xDAWN</i> and <i>3-train-classifier</i> +scenarios again on the data you just recorded. + +<small><i><b>note:</b> the recorded files go to the +folder where the scenario xml is located +(<span color="darkblue">${Player_ScenarioDirectory}/</span>).</i></small> + + + (0x473d9a43, 0x97fc0a97) + 192 + + + (0x7234b86b, 0x2b8651a5) + -48 + + + + + (0x421933f6, 0x00705e90) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 192 + + + (0x7234b86b, 0x2b8651a5) + 240 + + + + + (0x5bbc727e, 0x1572a9cd) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 608.000000 + + + (0x7234b86b, 0x2b8651a5) + -288.000000 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x2e63c8c5, 0x79a8ae7b)","childCount":0,"identifier":"(0x00001d62, 0x00007def)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Online Use + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-5-replay.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-5-replay.xml new file mode 100644 index 0000000..af6fc86 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-5-replay.xml @@ -0,0 +1,1345 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00002db4, 0x00004e4d) + Pick target + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-speller-filter-target.lua + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 400 + + + (0x207c9054, 0x3c841b63) + 736 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00749b30) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00002db4, 0x00004e4e) + Pick flash + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-speller-filter-flash.lua + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 400 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007aab35) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00003d0e, 0x000025ef) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Pause + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 864 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004d93cc) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00003dec, 0x00004c7b) + Stimulation based epoching + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.6 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_VisualStimulationStart + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00b06288) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 2 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x0000445b, 0x000068e3) + P300 accumulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + (0x6f752dd0, 0x082a321e) + New input(1) + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6f752dd0, 0x082a321e) + New output + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-speller-accumulator.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x2c132d6e, 0x44ab0d97) + Segment start + OVTK_StimulationId_TrialStart + OVTK_StimulationId_TrialStart + false + + + (0x2c132d6e, 0x44ab0d97) + Segment stop + OVTK_StimulationId_SegmentStop + OVTK_StimulationId_TrialStop + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 608 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0a2185a6) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 144 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x09c41dd7, 0x09f2e37b) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 416 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004afe07) + + + + + (0x0e30a73f, 0x7ae6d95a) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 480 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004313a5) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x28b5e192, 0x37431137) + Classifier processor + (0x5fe23d17, 0x95b0452c) + + + (0x17341935, 0x152ff448) + Features + + + (0x6f752dd0, 0x082a321e) + Commands + + + + + (0x6f752dd0, 0x082a321e) + Labels + + + (0x544a003e, 0x6dcba5f6) + Hyperplane distance + + + (0x544a003e, 0x6dcba5f6) + Probability values + + + + + (0x330306dd, 0x74a95f98) + Filename to load configuration from + + ${Player_ScenarioDirectory}/p300-classifier.cfg + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 464 + + + (0x4e7b798a, 0x183beafb) + (0xa6c8e548, 0x9e3e405b) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 3 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x2e63c8c5, 0x79a8ae7b) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 736 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x05899984) + + + + + (0x3806695f, 0x750288cb) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 208 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-signal-decimation.cfg + + + + + (0x483b59a5, 0x4318abba) + Identity + (0x5dffe431, 0x35215c50) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 0 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x634a083c, 0x52143369) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-online-[2016.04.20-15.09.08].ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -80 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + + + (0x666e568d, 0x579616d6) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 4 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 4 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 272 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-spatial-filter.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + + + (0x0000054f, 0x00006139) + + (0x0000556f, 0x000055f8) + 0 + + + (0x3806695f, 0x750288cb) + 0 + + + + (0x0000062d, 0x00006549) + + (0x0000445b, 0x000068e3) + 1 + + + (0x2e63c8c5, 0x79a8ae7b) + 3 + + + + (0x0000121f, 0x00004438) + + (0x00002db4, 0x00004e4d) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 1 + + + + (0x00001a5d, 0x000012a3) + + (0x00002db4, 0x00004e4e) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 0 + + + + (0x000023ed, 0x00007962) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00002db4, 0x00004e4d) + 0 + + + + (0x00002e50, 0x00003fba) + + (0x00003dec, 0x00004c7b) + 0 + + + (0x09c41dd7, 0x09f2e37b) + 0 + + + + (0x00003a8e, 0x00004020) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x0000445b, 0x000068e3) + 1 + + + + (0x00004ead, 0x0000166d) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00002db4, 0x00004e4e) + 0 + + + + (0x00005b72, 0x00000606) + + (0x0000445b, 0x000068e3) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 2 + + + + (0x00005ee4, 0x00001e68) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00003d0e, 0x000025ef) + 0 + + + + (0x00006b0f, 0x00003281) + + (0x666e568d, 0x579616d6) + 0 + + + (0x00003dec, 0x00004c7b) + 0 + + + + (0x00007e4c, 0x00005f90) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00003dec, 0x00004c7b) + 1 + + + + (0x00007f3e, 0x00003c50) + + (0x483b59a5, 0x4318abba) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x00f1a11e, 0x4a813bb8) + + (0x09c41dd7, 0x09f2e37b) + 0 + + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + + (0x04e9bcb9, 0x608aa078) + + (0x634a083c, 0x52143369) + 0 + + + (0x483b59a5, 0x4318abba) + 0 + + + + (0x087ce678, 0x55c0c4ef) + + (0x3806695f, 0x750288cb) + 0 + + + (0x666e568d, 0x579616d6) + 0 + + + + (0x22e7d928, 0x245a74de) + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + (0x28b5e192, 0x37431137) + 0 + + + + (0x335d6001, 0x4c535469) + + (0x28b5e192, 0x37431137) + 0 + + + (0x0000445b, 0x000068e3) + 0 + + + + (0x666eada5, 0x09010e07) + + (0x634a083c, 0x52143369) + 1 + + + (0x483b59a5, 0x4318abba) + 1 + + + + (0x7061b67e, 0x7c481576) + + (0x634a083c, 0x52143369) + 2 + + + (0x483b59a5, 0x4318abba) + 2 + + + + + + (0x3030288d, 0x2dbf93f2) + <u><b><big>Overview</big></b></u> + +This scenario allows to quickly replay +an online session recorded file. The +main between this scenario and +scenario <i>4-online</i> is basically +all the acquisition / stimulation part +being replaced by a file reader. + +<u><b>Note:</b></u> refer to scenario <i>4-online</i> for +details about the processing. + + + (0x473d9a43, 0x97fc0a97) + 192 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x374ccccf, 0x48c4defa) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 624 + + + (0x7234b86b, 0x2b8651a5) + -128 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x2e63c8c5, 0x79a8ae7b)","childCount":0,"identifier":"(0x000060a8, 0x0000168c)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Online File Replay + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/signals/README.txt b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/signals/README.txt new file mode 100644 index 0000000..ac04efc --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/OpenVibe_THN-p300-bci-main/p300-visual/signals/README.txt @@ -0,0 +1,3 @@ + +The scenario will record its signals here. + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/README.md b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/README.md new file mode 100644 index 0000000..266b73c --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/README.md @@ -0,0 +1,2 @@ +# OpenViBE_visual_BCI + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-classifier.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-classifier.cfg new file mode 100644 index 0000000..b5b3e61 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 1.992349e-04 -7.101522e-02 -6.101115e-02 1.837456e-02 8.451950e-02 6.890552e-02 -1.273989e-02 -7.677335e-02 -5.759445e-02 2.487486e-02 8.539484e-02 6.074976e-02 -2.513950e-02 -8.515548e-02 -5.781966e-02 2.961841e-02 8.844873e-02 5.861412e-02 -3.006978e-02 -8.804303e-02 -5.690836e-02 3.137926e-02 8.721030e-02 5.446974e-02 -3.273200e-02 -8.533920e-02 -5.034878e-02 3.543156e-02 8.354213e-02 4.463870e-02 -4.107945e-02 -8.529944e-02 -4.234759e-02 4.375059e-02 8.421183e-02 3.655660e-02 -5.143394e-02 -9.009501e-02 -3.943200e-02 4.964065e-02 8.673025e-02 3.388695e-02 -5.561893e-02 -9.127523e-02 -3.719357e-02 5.160887e-02 8.533880e-02 3.067820e-02 -5.576284e-02 -8.561326e-02 -2.891653e-02 5.572887e-02 8.157143e-02 2.263129e-02 -5.986401e-02 -8.047555e-02 -1.737311e-02 6.503794e-02 8.198488e-02 1.536590e-02 -6.720587e-02 -8.113447e-02 -1.134800e-02 7.183194e-02 8.395275e-02 1.238461e-02 -7.063420e-02 -8.126964e-02 -9.154502e-03 7.229510e-02 8.068305e-02 8.270836e-03 -7.065540e-02 -7.588764e-02 -3.005205e-03 7.263436e-02 7.338773e-02 -1.152449e-03 -7.395180e-02 -6.973003e-02 7.629030e-03 7.881926e-02 7.031543e-02 -1.001845e-02 -8.044251e-02 -6.861530e-02 1.428943e-02 8.445408e-02 7.049683e-02 -1.381592e-02 -8.337001e-02 -6.808107e-02 1.603180e-02 8.335617e-02 6.582881e-02 -1.810695e-02 -8.281586e-02 -6.304173e-02 1.976960e-02 7.994039e-02 5.554372e-02 -2.823412e-02 -8.512472e-02 -5.642925e-02 2.857394e-02 8.243361e-02 4.916468e-02 -3.801390e-02 -9.014055e-02 -5.327591e-02 3.606835e-02 8.764745e-02 4.919107e-02 -4.028334e-02 -8.996025e-02 -4.941169e-02 4.031952e-02 8.864850e-02 4.755458e-02 -3.996037e-02 -8.420444e-02 -4.040029e-02 4.598750e-02 8.624931e-02 3.941727e-02 -4.591090e-02 -8.161477e-02 -3.061025e-02 5.489345e-02 8.673841e-02 3.127371e-02 -5.570341e-02 -8.554285e-02 -2.730365e-02 6.022422e-02 8.799954e-02 2.731039e-02 -6.083064e-02 -8.753615e-02 -2.624987e-02 6.046999e-02 8.473959e-02 2.262749e-02 -6.196672e-02 -8.288187e-02 -1.956483e-02 6.242056e-02 7.890095e-02 1.334653e-02 -6.639037e-02 -7.786407e-02 -8.791755e-03 7.010557e-02 -5.615247e-04 7.483156e-02 6.284848e-02 -2.304054e-02 -9.388252e-02 -7.630811e-02 1.245716e-02 8.227777e-02 6.236127e-02 -2.626415e-02 -9.218231e-02 -6.707967e-02 2.425210e-02 8.902756e-02 6.117237e-02 -3.105858e-02 -9.368062e-02 -6.273613e-02 3.045338e-02 9.114664e-02 5.770379e-02 -3.565109e-02 -9.379946e-02 -5.769990e-02 3.557369e-02 9.089105e-02 5.224208e-02 -4.021881e-02 -9.142095e-02 -4.865274e-02 4.458068e-02 9.312595e-02 4.756963e-02 -4.514629e-02 -8.967265e-02 -3.980462e-02 5.408174e-02 9.629405e-02 4.354225e-02 -5.067760e-02 -9.046333e-02 -3.526629e-02 5.869814e-02 9.568188e-02 3.794305e-02 -5.586529e-02 -9.056170e-02 -3.143582e-02 6.056010e-02 9.121830e-02 2.926055e-02 -6.190468e-02 -8.916862e-02 -2.494715e-02 6.468354e-02 8.765063e-02 2.013571e-02 -6.897417e-02 -8.848470e-02 -1.822506e-02 7.011663e-02 8.607157e-02 1.283464e-02 -7.536013e-02 -8.880163e-02 -1.378228e-02 7.334513e-02 8.392634e-02 7.302760e-03 -7.842094e-02 -8.606398e-02 -8.179913e-03 7.557069e-02 7.987519e-02 8.068346e-04 -8.038784e-02 -8.048918e-02 6.053229e-04 7.985220e-02 7.607283e-02 -6.937963e-03 -8.420552e-02 -7.645033e-02 8.728067e-03 8.439631e-02 7.298832e-02 -1.436799e-02 -8.896829e-02 -7.488045e-02 1.360530e-02 8.646818e-02 6.965921e-02 -1.948975e-02 -9.002703e-02 -7.013510e-02 1.976814e-02 8.808818e-02 6.564250e-02 -2.382641e-02 -8.814341e-02 -6.104658e-02 3.007882e-02 9.227659e-02 6.215646e-02 -2.919914e-02 -8.795594e-02 -5.350611e-02 3.939227e-02 9.591337e-02 5.796964e-02 -3.631159e-02 -9.126768e-02 -5.118437e-02 4.284935e-02 9.475875e-02 5.136447e-02 -4.348054e-02 -9.367112e-02 -4.881053e-02 4.458432e-02 9.077585e-02 4.258715e-02 -5.058381e-02 -9.344767e-02 -4.230373e-02 5.032885e-02 8.950351e-02 3.502797e-02 -5.734648e-02 -9.288521e-02 -3.480497e-02 5.791345e-02 9.059256e-02 2.956071e-02 -6.327357e-02 -9.339522e-02 -3.004358e-02 6.234892e-02 8.976243e-02 2.436153e-02 -6.722092e-02 -9.188361e-02 -2.492409e-02 6.498266e-02 8.605785e-02 1.710047e-02 -7.106021e-02 -8.812765e-02 -1.667591e-02 7.010703e-02 8.335692e-02 9.505115e-03 -7.575139e-02 + -1.86754 + + + 4.520025e-03 1.860010e-02 1.121634e-02 -9.526612e-03 -2.206935e-02 -1.350048e-02 7.332846e-03 1.904633e-02 9.740392e-03 -1.077739e-02 -2.109266e-02 -1.024066e-02 1.091980e-02 2.073750e-02 8.976156e-03 -1.253802e-02 -2.181898e-02 -9.125094e-03 1.298347e-02 2.226882e-02 9.350535e-03 -1.275495e-02 -2.180553e-02 -8.833959e-03 1.287559e-02 2.139641e-02 8.432157e-03 -1.242006e-02 -1.973092e-02 -6.162925e-03 1.415248e-02 2.024580e-02 5.886213e-03 -1.402755e-02 -1.880432e-02 -3.288592e-03 1.672094e-02 2.058894e-02 4.047893e-03 -1.624421e-02 -1.956902e-02 -2.303597e-03 1.823352e-02 2.125923e-02 3.603501e-03 -1.704786e-02 -2.005707e-02 -2.692211e-03 1.723442e-02 1.955385e-02 2.184331e-03 -1.695378e-02 -1.838230e-02 -9.491761e-04 1.714693e-02 1.714554e-02 -9.826170e-04 -1.851984e-02 -1.726815e-02 1.670249e-03 1.889736e-02 1.655722e-02 -3.268034e-03 -2.048766e-02 -1.740754e-02 3.156418e-03 2.057706e-02 1.727459e-02 -3.443324e-03 -2.071028e-02 -1.722719e-02 3.280705e-03 1.997974e-02 1.615205e-02 -3.915268e-03 -1.951488e-02 -1.477461e-02 5.184486e-03 1.965515e-02 1.368664e-02 -6.549141e-03 -2.011724e-02 -1.287366e-02 7.905032e-03 2.087043e-02 1.247629e-02 -9.002567e-03 -2.173394e-02 -1.254926e-02 9.523483e-03 2.228351e-02 1.283895e-02 -9.297754e-03 -2.183035e-02 -1.224474e-02 9.604475e-03 2.162626e-02 1.195660e-02 -9.130031e-03 -1.990548e-02 -9.446406e-03 1.130126e-02 2.089287e-02 9.461435e-03 -1.115129e-02 -1.958701e-02 -6.974644e-03 1.384189e-02 2.137811e-02 7.560350e-03 -1.383110e-02 -2.106887e-02 -6.634604e-03 1.498054e-02 2.186957e-02 6.917741e-03 -1.495362e-02 -2.188828e-02 -7.197601e-03 1.398074e-02 2.016843e-02 5.348754e-03 -1.509949e-02 -2.027120e-02 -5.105601e-03 1.457596e-02 1.842942e-02 2.516103e-03 -1.666331e-02 -1.915436e-02 -2.125867e-03 1.709569e-02 1.871972e-02 8.443587e-04 -1.840266e-02 -1.924333e-02 -4.632146e-04 1.918868e-02 1.993662e-02 1.038087e-03 -1.843670e-02 -1.891246e-02 -8.414417e-05 1.890837e-02 1.900492e-02 5.241281e-04 -1.737256e-02 -1.638006e-02 2.281010e-03 1.927344e-02 1.709345e-02 -1.932394e-03 -1.805311e-02 -4.853757e-03 -1.940220e-02 -1.102546e-02 1.131973e-02 2.448794e-02 1.481099e-02 -7.980413e-03 -2.077269e-02 -1.074513e-02 1.151877e-02 2.288933e-02 1.140477e-02 -1.142681e-02 -2.234868e-02 -1.014716e-02 1.280654e-02 2.310247e-02 1.016209e-02 -1.292666e-02 -2.269863e-02 -9.204296e-03 1.384754e-02 2.304199e-02 9.084499e-03 -1.377936e-02 -2.232723e-02 -8.025591e-03 1.433941e-02 2.182851e-02 6.784580e-03 -1.540118e-02 -2.208996e-02 -6.575438e-03 1.506859e-02 2.046998e-02 3.903692e-03 -1.778496e-02 -2.237006e-02 -4.999317e-03 1.675779e-02 2.077706e-02 2.957756e-03 -1.853957e-02 -2.175729e-02 -3.303776e-03 1.818310e-02 2.100731e-02 2.483695e-03 -1.838030e-02 -2.029335e-02 -1.361666e-03 1.905918e-02 2.018180e-02 1.003517e-03 -1.873854e-02 -1.880822e-02 8.149188e-04 1.993281e-02 1.883382e-02 -1.481160e-03 -2.026000e-02 -1.820008e-02 2.767847e-03 2.135820e-02 1.860694e-02 -2.756698e-03 -2.103188e-02 -1.762403e-02 4.015211e-03 2.189711e-02 1.788042e-02 -3.884197e-03 -2.123504e-02 -1.660769e-02 5.103044e-03 2.162275e-02 1.608213e-02 -5.784159e-03 -2.157119e-02 -1.516340e-02 6.775521e-03 2.164433e-02 1.407242e-02 -8.293425e-03 -2.255635e-02 -1.398243e-02 8.867444e-03 2.278833e-02 1.358152e-02 -9.423500e-03 -2.282302e-02 -1.296242e-02 1.015070e-02 2.303176e-02 1.262248e-02 -1.044915e-02 -2.274683e-02 -1.191754e-02 1.077687e-02 2.203577e-02 1.033708e-02 -1.233880e-02 -2.282413e-02 -1.049089e-02 1.188457e-02 2.122571e-02 7.817965e-03 -1.468745e-02 -2.319031e-02 -8.779569e-03 1.407428e-02 2.221274e-02 7.409747e-03 -1.518945e-02 -2.245697e-02 -6.834865e-03 1.595687e-02 2.291970e-02 7.175532e-03 -1.507811e-02 -2.111911e-02 -4.851346e-03 1.705287e-02 2.223958e-02 5.502425e-03 -1.596032e-02 -2.019315e-02 -2.961529e-03 1.793136e-02 2.089738e-02 2.708282e-03 -1.813593e-02 -2.029397e-02 -1.439449e-03 1.927045e-02 2.068908e-02 1.268575e-03 -1.930271e-02 -2.012299e-02 -3.654294e-04 1.987190e-02 2.002505e-02 -2.114387e-05 -1.986935e-02 -1.942976e-02 6.307668e-04 1.965162e-02 1.812354e-02 -2.406703e-03 -2.098877e-02 -1.874718e-02 1.799200e-03 1.933438e-02 + -0.186277 + + + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-epoch-average.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-epoch-average.cfg new file mode 100644 index 0000000..d875a22 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-epoch-average.cfg @@ -0,0 +1,4 @@ + + Epoch block average + 1 + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-signal-decimation.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-signal-decimation.cfg new file mode 100644 index 0000000..17f549b --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-signal-decimation.cfg @@ -0,0 +1,3 @@ + + 2 + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-spatial-filter.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-spatial-filter.cfg new file mode 100644 index 0000000..e69de29 diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-spatial-trainer.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-spatial-trainer.cfg new file mode 100644 index 0000000..5f8ecd1 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-spatial-trainer.cfg @@ -0,0 +1,6 @@ + + OVTK_StimulationId_ExperimentStop + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + 2 + true + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-speller-stimulator.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-speller-stimulator.cfg new file mode 100644 index 0000000..0255d2e --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-speller-stimulator.cfg @@ -0,0 +1,15 @@ + + ${Player_ScenarioDirectory}/scripts/p300-speller-stimulator.lua + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_07 + 6 + 6 + 6 + 0.2 + 0.1 + 1.0 + 3.0 + OVTK_StimulationId_Label_00 + + 20 + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-speller-visualization.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-speller-visualization.cfg new file mode 100644 index 0000000..94a29a8 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-speller-visualization.cfg @@ -0,0 +1,17 @@ + + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_07 + 5,5,5 + 100,100,100 + 60 + 0,0,0 + 25,25,25 + 40 + 20,20,70 + 10,10,30 + 40 + 10,40,10 + 60,100,60 + 40 + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/stream-reader.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/stream-reader.cfg new file mode 100644 index 0000000..eb40b5a --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/stream-reader.cfg @@ -0,0 +1,3 @@ + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/stream-writer.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/stream-writer.cfg new file mode 100644 index 0000000..8ec690d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/stream-writer.cfg @@ -0,0 +1,4 @@ + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Jan/p300-classifier.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Jan/p300-classifier.cfg new file mode 100644 index 0000000..8afb5db --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Jan/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + -1.065449e-02 -8.433724e-03 -8.073272e-03 -9.017780e-03 -9.777354e-03 -8.944181e-03 -6.230830e-03 -2.758279e-03 -3.235140e-04 -1.352536e-04 -1.926088e-03 -4.083097e-03 -4.692498e-03 -2.753402e-03 1.244794e-03 5.680807e-03 8.762294e-03 9.456782e-03 7.915370e-03 5.287581e-03 3.118571e-03 2.619630e-03 4.094226e-03 6.768748e-03 9.174244e-03 9.972830e-03 8.797661e-03 6.541000e-03 4.799351e-03 4.768071e-03 6.344103e-03 8.124675e-03 8.363765e-03 6.224775e-03 2.424195e-03 -1.196322e-03 -2.851123e-03 -1.915709e-03 7.530751e-04 3.396183e-03 4.368668e-03 2.963365e-03 -3.392516e-04 -4.198203e-03 -7.079456e-03 -7.969700e-03 -6.861420e-03 -4.777039e-03 -3.239701e-03 -3.388286e-03 -5.236641e-03 -7.610737e-03 -8.910818e-03 -8.244070e-03 -6.124523e-03 -4.181914e-03 -4.034294e-03 -6.119988e-03 -9.335163e-03 -1.173262e-02 -1.177178e-02 -9.257865e-03 -5.395932e-03 -2.028599e-03 -6.145408e-04 -1.541484e-03 -4.049135e-03 -6.678852e-03 -7.982786e-03 -7.200846e-03 -4.638517e-03 -1.537715e-03 5.851017e-04 8.427597e-04 -4.245259e-04 -1.824311e-03 -1.845317e-03 4.752100e-05 2.955936e-03 5.119501e-03 5.149311e-03 3.042552e-03 2.428930e-04 -1.287825e-03 -3.188279e-04 2.922254e-03 6.954850e-03 9.945371e-03 1.068628e-02 9.125222e-03 6.276736e-03 3.671370e-03 2.627163e-03 3.629881e-03 6.079055e-03 8.573383e-03 9.682944e-03 8.828090e-03 6.696685e-03 4.831422e-03 4.573125e-03 6.068291e-03 8.086901e-03 8.844321e-03 7.269914e-03 3.808607e-03 1.766968e-04 -1.741630e-03 -1.074637e-03 1.554038e-03 4.470369e-03 5.937520e-03 5.050437e-03 2.094611e-03 -1.694535e-03 -4.761485e-03 -5.956829e-03 -5.080199e-03 -2.996414e-03 -1.197241e-03 -9.487884e-04 -2.483538e-03 -4.794599e-03 -6.271835e-03 -5.825002e-03 -3.713072e-03 -1.435526e-03 -7.048042e-04 -2.216943e-03 -5.109876e-03 -7.496883e-03 -7.681639e-03 -5.207139e-03 -1.076147e-03 2.901702e-03 5.134082e-03 5.021532e-03 3.142139e-03 8.761657e-04 -2.795461e-04 5.861766e-04 3.352089e-03 6.897349e-03 9.682793e-03 1.064804e-02 9.903735e-03 8.705992e-03 8.625191e-03 1.041981e-02 1.342298e-02 1.594116e-02 1.642946e-02 1.460972e-02 2.817637e-02 -4.840407e-02 -9.976585e-02 -6.985380e-02 1.491242e-02 7.155328e-02 4.443439e-02 -3.797191e-02 -9.137803e-02 -6.061353e-02 2.481303e-02 8.074376e-02 5.333914e-02 -2.723268e-02 -7.844005e-02 -4.951793e-02 2.779827e-02 7.315535e-02 4.066951e-02 -3.419586e-02 -7.182737e-02 -3.117873e-02 4.726139e-02 8.269434e-02 3.734128e-02 -4.375073e-02 -7.782342e-02 -2.888324e-02 5.475251e-02 8.871436e-02 3.806794e-02 -4.683099e-02 -8.083197e-02 -2.985476e-02 5.485205e-02 8.865112e-02 3.879119e-02 -4.340915e-02 -7.558262e-02 -2.799611e-02 4.736031e-02 7.128999e-02 1.905085e-02 -5.465944e-02 -7.273114e-02 -1.577054e-02 5.727698e-02 6.950056e-02 5.584476e-03 -7.132660e-02 -8.340662e-02 -1.782299e-02 5.923858e-02 6.914402e-02 6.673236e-04 -7.811252e-02 -8.828058e-02 -1.966468e-02 5.907948e-02 6.992799e-02 3.895191e-03 -7.095231e-02 -7.936229e-02 -1.505279e-02 5.425062e-02 5.727324e-02 -7.536283e-03 -7.101590e-02 -6.525187e-02 5.747159e-03 6.955956e-02 5.973993e-02 -1.519179e-02 -7.931864e-02 -6.639334e-02 1.206213e-02 7.749772e-02 6.363009e-02 -1.607782e-02 -8.150926e-02 -6.658777e-02 1.412134e-02 8.033233e-02 6.715597e-02 -9.949235e-03 -7.195228e-02 -5.701572e-02 1.730200e-02 7.342040e-02 5.409701e-02 -1.892744e-02 -6.798887e-02 -4.022698e-02 3.725145e-02 8.474108e-02 5.200611e-02 -2.921481e-02 -7.662697e-02 -4.121790e-02 4.202358e-02 8.876384e-02 5.067273e-02 -3.518262e-02 -8.334376e-02 -4.609787e-02 3.849587e-02 8.526104e-02 4.784015e-02 -3.525063e-02 -8.071039e-02 -4.526235e-02 3.132817e-02 6.832485e-02 2.741037e-02 -4.827900e-02 -7.926540e-02 -3.230679e-02 4.468368e-02 7.155341e-02 1.865642e-02 -6.164462e-02 -8.763346e-02 -3.174667e-02 5.042964e-02 7.585444e-02 1.823988e-02 -6.483002e-02 -8.972530e-02 -3.110719e-02 5.265307e-02 7.859125e-02 2.267007e-02 -5.690036e-02 -7.962156e-02 -2.437293e-02 5.034890e-02 6.756062e-02 1.109532e-02 -5.827743e-02 -6.613570e-02 -1.759823e-03 7.019885e-02 7.602720e-02 9.305781e-03 -6.132959e-02 -6.165544e-02 1.205372e-02 8.825910e-02 9.222659e-02 2.198583e-02 -4.914157e-02 -4.633916e-02 3.125785e-02 + -1.96568 + + + 2.409086e-03 2.198461e-03 2.433915e-03 2.786778e-03 2.835634e-03 2.319346e-03 1.319269e-03 2.463177e-04 -3.895101e-04 -3.047498e-04 3.468884e-04 1.037339e-03 1.182314e-03 5.141635e-04 -7.405742e-04 -2.000163e-03 -2.688242e-03 -2.575711e-03 -1.890107e-03 -1.145624e-03 -8.253918e-04 -1.117923e-03 -1.846505e-03 -2.601419e-03 -2.980041e-03 -2.804876e-03 -2.215824e-03 -1.592960e-03 -1.341206e-03 -1.641963e-03 -2.315090e-03 -2.895642e-03 -2.908464e-03 -2.183725e-03 -1.001989e-03 4.985026e-05 4.373304e-04 1.995234e-05 -8.552968e-04 -1.572232e-03 -1.627130e-03 -9.223903e-04 2.051332e-04 1.213669e-03 1.678961e-03 1.513395e-03 9.761424e-04 4.988545e-04 4.389008e-04 8.878154e-04 1.624427e-03 2.236657e-03 2.359095e-03 1.905259e-03 1.152863e-03 6.043322e-04 6.804864e-04 1.432049e-03 2.469744e-03 3.183628e-03 3.123699e-03 2.291345e-03 1.143598e-03 3.074599e-04 1.973655e-04 7.838641e-04 1.645497e-03 2.244436e-03 2.237862e-03 1.644344e-03 7.956552e-04 1.293362e-04 -5.469842e-05 2.477126e-04 7.454096e-04 1.014249e-03 7.474585e-04 -3.950141e-05 -9.827824e-04 -1.567896e-03 -1.452945e-03 -7.137900e-04 1.671162e-04 5.851543e-04 1.958459e-04 -8.597379e-04 -2.040156e-03 -2.740986e-03 -2.658219e-03 -1.946669e-03 -1.092818e-03 -6.082479e-04 -7.437185e-04 -1.380879e-03 -2.134181e-03 -2.581622e-03 -2.495294e-03 -1.960393e-03 -1.327201e-03 -1.013934e-03 -1.254147e-03 -1.930003e-03 -2.609070e-03 -2.792642e-03 -2.239575e-03 -1.153674e-03 -8.997446e-05 3.806971e-04 3.515627e-05 -8.551915e-04 -1.694220e-03 -1.931892e-03 -1.389896e-03 -3.407786e-04 6.858343e-04 1.224642e-03 1.122730e-03 5.874328e-04 3.736968e-05 -1.413305e-04 1.960100e-04 8.770850e-04 1.506936e-03 1.692687e-03 1.287216e-03 5.082916e-04 -1.620141e-04 -2.654173e-04 3.252110e-04 1.288027e-03 2.025447e-03 2.033382e-03 1.226029e-03 -3.785326e-06 -1.029815e-03 -1.376807e-03 -9.922784e-04 -2.444616e-04 3.261782e-04 3.269822e-04 -2.867881e-04 -1.224122e-03 -2.046137e-03 -2.412773e-03 -2.262579e-03 -1.842008e-03 -1.567873e-03 -1.783824e-03 -2.537089e-03 -3.514779e-03 -4.205952e-03 -4.216115e-03 -3.541297e-03 -6.581993e-03 -1.424993e-03 1.320168e-02 2.098451e-02 1.257719e-02 -4.498017e-03 -1.334755e-02 -5.064049e-03 1.184138e-02 1.976790e-02 9.834123e-03 -8.909432e-03 -1.834723e-02 -9.407664e-03 8.846172e-03 1.831813e-02 9.958901e-03 -7.415151e-03 -1.633349e-02 -8.395699e-03 7.513099e-03 1.468631e-02 5.845724e-03 -9.542276e-03 -1.527563e-02 -5.316914e-03 9.889072e-03 1.422081e-02 2.683462e-03 -1.316291e-02 -1.689959e-02 -4.197565e-03 1.239718e-02 1.595179e-02 2.360225e-03 -1.523540e-02 -1.945396e-02 -6.067104e-03 1.177606e-02 1.674625e-02 4.605319e-03 -1.184376e-02 -1.594835e-02 -4.007871e-03 1.134547e-02 1.440262e-02 2.527307e-03 -1.134707e-02 -1.229705e-02 1.030356e-03 1.495831e-02 1.495232e-02 8.171389e-04 -1.282625e-02 -1.144988e-02 4.289189e-03 1.883631e-02 1.734606e-02 8.461666e-04 -1.451750e-02 -1.354941e-02 2.777988e-03 1.831901e-02 1.793993e-02 2.538220e-03 -1.219256e-02 -1.181013e-02 2.411256e-03 1.520067e-02 1.319585e-02 -1.381968e-03 -1.325155e-02 -1.005060e-02 4.779710e-03 1.552042e-02 1.049956e-02 -5.626390e-03 -1.640334e-02 -1.043949e-02 6.651778e-03 1.760798e-02 1.093456e-02 -7.266235e-03 -1.917721e-02 -1.305262e-02 5.013481e-03 1.721660e-02 1.185747e-02 -5.142642e-03 -1.654127e-02 -1.131615e-02 4.418310e-03 1.406467e-02 7.733377e-03 -7.717027e-03 -1.599491e-02 -8.378094e-03 7.184297e-03 1.428276e-02 5.125309e-03 -1.115809e-02 -1.768244e-02 -7.186074e-03 1.020478e-02 1.696643e-02 5.939719e-03 -1.218340e-02 -1.938738e-02 -8.350124e-03 1.022358e-02 1.835040e-02 8.721314e-03 -8.242182e-03 -1.520539e-02 -5.472187e-03 1.055541e-02 1.637952e-02 6.413477e-03 -8.459788e-03 -1.235637e-02 -9.556758e-04 1.396288e-02 1.671446e-02 4.074063e-03 -1.111921e-02 -1.299646e-02 9.252366e-04 1.683358e-02 1.841796e-02 3.477969e-03 -1.357535e-02 -1.601966e-02 -1.560836e-03 1.538256e-02 1.814330e-02 4.393229e-03 -1.183847e-02 -1.457514e-02 -1.975018e-03 1.219391e-02 1.295218e-02 -5.180932e-04 -1.425949e-02 -1.416985e-02 -7.052536e-04 1.153933e-02 8.964682e-03 -6.787161e-03 -2.025163e-02 -1.794231e-02 -2.400931e-03 1.001589e-02 5.587103e-03 + -0.191969 + + + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Jan/p300-spatial-filter.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Jan/p300-spatial-filter.cfg new file mode 100644 index 0000000..03b1669 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Jan/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -2.559252e+00 -3.708117e+00 8.689272e-01 6.167160e-03 -6.747036e+00 3.825336e+00 -1.562881e+00 -1.609973e+00 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Jan/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Jan/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Jan/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Nicole/p300-classifier.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Nicole/p300-classifier.cfg new file mode 100644 index 0000000..dc3ff8d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Nicole/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 5.023280e-02 3.764423e-02 2.498992e-02 2.205262e-02 2.781807e-02 3.100063e-02 2.220079e-02 4.864926e-03 -6.996999e-03 -2.782131e-03 1.307792e-02 2.415620e-02 1.749764e-02 -3.517305e-03 -2.184482e-02 -2.273431e-02 -7.547872e-03 7.923395e-03 8.754577e-03 -5.322100e-03 -2.083653e-02 -2.454778e-02 -1.606082e-02 -6.744798e-03 -6.945412e-03 -1.525904e-02 -2.092805e-02 -1.635047e-02 -6.035751e-03 -2.167437e-03 -1.122313e-02 -2.589318e-02 -3.143947e-02 -2.066732e-02 -2.266003e-03 6.603369e-03 -3.206754e-03 -2.346435e-02 -3.586774e-02 -2.919879e-02 -9.697582e-03 5.313045e-03 4.063567e-03 -9.103153e-03 -1.914333e-02 -1.557472e-02 -2.063816e-03 8.774287e-03 9.161186e-03 3.876580e-03 4.122179e-03 1.449580e-02 2.727198e-02 3.038508e-02 2.084996e-02 9.205450e-03 9.563690e-03 2.490662e-02 4.279603e-02 4.661100e-02 3.171245e-02 1.052025e-02 1.132059e-03 1.035146e-02 2.758426e-02 3.536693e-02 2.598944e-02 8.003711e-03 -3.170551e-03 -5.163085e-04 8.774646e-03 1.209871e-02 5.001533e-03 -4.754784e-03 -6.489672e-03 1.033872e-03 7.657191e-03 2.665318e-03 -1.295428e-02 -2.616189e-02 -2.461127e-02 -9.825830e-03 2.989044e-03 -8.681673e-04 -2.107953e-02 -4.196602e-02 -4.704027e-02 -3.443330e-02 -1.824967e-02 -1.475900e-02 -2.712809e-02 -4.343855e-02 -4.922771e-02 -4.149289e-02 -3.029197e-02 -2.716932e-02 -3.300389e-02 -3.791560e-02 -3.286537e-02 -2.022988e-02 -1.178634e-02 -1.596223e-02 -2.784870e-02 -3.304626e-02 -2.215497e-02 -1.275732e-03 1.271172e-02 8.152025e-03 -9.721702e-03 -2.324261e-02 -1.887286e-02 1.531826e-04 1.731281e-02 1.874798e-02 5.958592e-03 -6.839537e-03 -7.315641e-03 3.388633e-03 1.332515e-02 1.304139e-02 5.273002e-03 1.096225e-03 7.085723e-03 1.749042e-02 2.006193e-02 9.591224e-03 -5.301579e-03 -9.948866e-03 1.342265e-03 1.839647e-02 2.410050e-02 1.092700e-02 -1.123327e-02 -2.399447e-02 -1.772383e-02 -3.927396e-04 1.043981e-02 4.419368e-03 -1.248552e-02 -2.496701e-02 -2.379538e-02 -1.405836e-02 -8.532157e-03 -1.383604e-02 -2.402199e-02 -2.798091e-02 -2.235633e-02 -1.589493e-02 -2.029512e-02 -3.708372e-02 -5.467323e-02 -5.946973e-02 -5.014721e-02 -5.135034e-02 -1.900345e-02 1.366188e-02 1.959101e-02 -1.804682e-03 -2.429428e-02 -2.170582e-02 5.431877e-03 3.065392e-02 2.887963e-02 2.315960e-03 -2.156155e-02 -1.791586e-02 1.014777e-02 3.472365e-02 3.149396e-02 4.393186e-03 -1.859986e-02 -1.418825e-02 1.239693e-02 3.282673e-02 2.483622e-02 -4.716395e-03 -2.653900e-02 -1.861832e-02 1.131469e-02 3.350283e-02 2.624641e-02 -2.261078e-03 -2.253725e-02 -1.400256e-02 1.407767e-02 3.224064e-02 2.113989e-02 -8.497038e-03 -2.669075e-02 -1.477834e-02 1.548725e-02 3.381788e-02 2.213180e-02 -7.210658e-03 -2.425423e-02 -1.219759e-02 1.541762e-02 2.866546e-02 1.207253e-02 -1.922749e-02 -3.462451e-02 -1.909920e-02 1.144094e-02 2.623005e-02 1.078501e-02 -1.857256e-02 -3.154676e-02 -1.481536e-02 1.449616e-02 2.651654e-02 9.356060e-03 -1.858082e-02 -2.730675e-02 -5.890479e-03 2.626765e-02 3.904800e-02 2.210192e-02 -4.883274e-03 -1.257383e-02 7.854207e-03 3.564681e-02 4.177738e-02 1.884071e-02 -1.107272e-02 -1.867073e-02 2.752031e-03 3.041218e-02 3.510291e-02 1.076276e-02 -1.953810e-02 -2.722240e-02 -7.286541e-03 1.683023e-02 1.749296e-02 -8.601768e-03 -3.680850e-02 -3.955074e-02 -1.443572e-02 1.324683e-02 1.620245e-02 -7.216621e-03 -3.158729e-02 -3.061650e-02 -4.145223e-03 2.167276e-02 2.121186e-02 -4.217704e-03 -2.745308e-02 -2.305294e-02 6.717297e-03 3.400791e-02 3.350172e-02 7.915661e-03 -1.504487e-02 -1.109404e-02 1.588940e-02 3.800984e-02 3.208902e-02 3.573422e-03 -1.884887e-02 -1.244792e-02 1.634524e-02 3.843132e-02 3.161122e-02 3.056976e-03 -1.822127e-02 -1.116093e-02 1.579401e-02 3.341724e-02 2.179318e-02 -9.012830e-03 -2.891684e-02 -1.834306e-02 1.179193e-02 3.104644e-02 2.024197e-02 -9.259412e-03 -2.737120e-02 -1.606605e-02 1.230839e-02 2.783493e-02 1.380501e-02 -1.602520e-02 -3.136247e-02 -1.628020e-02 1.446133e-02 3.035242e-02 1.609036e-02 -1.302899e-02 -2.695394e-02 -1.171226e-02 1.631004e-02 2.725874e-02 8.601588e-03 -2.169876e-02 -3.318902e-02 -1.382094e-02 1.776046e-02 3.110367e-02 1.480713e-02 -1.205592e-02 -1.951980e-02 2.722027e-03 3.497552e-02 4.791346e-02 3.277780e-02 + -2.00902 + + + -1.037856e-02 -9.587372e-03 -4.510515e-03 -4.814465e-04 -1.365595e-03 -5.307766e-03 -6.799116e-03 -2.841571e-03 3.416342e-03 5.637051e-03 9.864054e-04 -6.398818e-03 -9.047329e-03 -3.528325e-03 5.816383e-03 1.073260e-02 6.907910e-03 -1.857532e-03 -7.285352e-03 -4.497621e-03 3.557755e-03 9.317476e-03 8.047500e-03 2.084028e-03 -2.105994e-03 -7.112330e-04 3.832027e-03 5.934121e-03 3.114346e-03 -1.290034e-03 -1.834192e-03 2.879581e-03 8.248020e-03 8.227173e-03 1.835395e-03 -5.240094e-03 -5.937098e-03 1.082545e-03 9.706521e-03 1.199168e-02 5.757992e-03 -3.294196e-03 -7.046597e-03 -2.647745e-03 5.059606e-03 8.552999e-03 4.922054e-03 -1.775570e-03 -5.129024e-03 -2.960633e-03 8.728988e-04 1.059963e-03 -3.255278e-03 -7.546460e-03 -6.928465e-03 -1.749503e-03 2.329923e-03 1.201201e-04 -7.353756e-03 -1.327471e-02 -1.156397e-02 -3.108681e-03 4.681805e-03 4.810232e-03 -2.592512e-03 -1.037811e-02 -1.122744e-02 -4.521716e-03 3.408389e-03 5.672458e-03 1.361561e-03 -4.147783e-03 -5.066912e-03 -1.019626e-03 3.079306e-03 2.668320e-03 -1.427190e-03 -3.930864e-03 -1.003416e-03 5.235001e-03 8.531200e-03 5.015074e-03 -2.325229e-03 -6.092404e-03 -1.715015e-03 7.725187e-03 1.409329e-02 1.189451e-02 3.564586e-03 -2.861733e-03 -1.425412e-03 6.249423e-03 1.288481e-02 1.277505e-02 7.047876e-03 1.922850e-03 2.097498e-03 6.173866e-03 8.666068e-03 6.198038e-03 1.214162e-03 -7.344411e-04 2.783398e-03 8.041625e-03 8.751776e-03 2.752664e-03 -5.190361e-03 -7.684737e-03 -2.054215e-03 6.651326e-03 1.021963e-02 5.107300e-03 -4.128438e-03 -9.193238e-03 -5.936476e-03 1.940963e-03 6.815780e-03 4.602046e-03 -1.684735e-03 -5.536379e-03 -3.731647e-03 7.179829e-04 2.261927e-03 -9.941728e-04 -5.228404e-03 -5.151383e-03 -1.312769e-05 5.132525e-03 4.498342e-03 -2.153442e-03 -8.655338e-03 -8.248464e-03 -4.218934e-04 8.165288e-03 9.855854e-03 3.328661e-03 -5.109280e-03 -7.563670e-03 -2.002472e-03 6.122299e-03 9.462057e-03 5.849113e-03 -1.070508e-04 -2.162151e-03 1.199286e-03 5.677542e-03 6.191633e-03 2.519113e-03 -4.758773e-04 1.751792e-03 8.182062e-03 1.287109e-02 1.107154e-02 1.716072e-02 1.179036e-02 -2.955288e-03 -1.311528e-02 -9.246707e-03 3.993599e-03 1.262045e-02 7.569479e-03 -6.111183e-03 -1.448840e-02 -9.030955e-03 4.643642e-03 1.249266e-02 6.389258e-03 -7.569885e-03 -1.527489e-02 -8.986191e-03 4.797178e-03 1.201201e-02 5.417112e-03 -8.016324e-03 -1.426516e-02 -6.646021e-03 7.281601e-03 1.338014e-02 5.362930e-03 -8.742517e-03 -1.471380e-02 -6.575543e-03 7.352504e-03 1.295972e-02 4.719211e-03 -8.727228e-03 -1.345260e-02 -4.506541e-03 9.014399e-03 1.326079e-02 3.789261e-03 -9.877897e-03 -1.394835e-02 -4.407106e-03 8.927542e-03 1.247135e-02 2.767611e-03 -9.996175e-03 -1.244389e-02 -1.749113e-03 1.139971e-02 1.366509e-02 2.680941e-03 -1.048235e-02 -1.254687e-02 -1.515896e-03 1.132367e-02 1.291797e-02 1.729481e-03 -1.075579e-02 -1.181213e-02 -5.003473e-04 1.136841e-02 1.130859e-02 -1.064107e-03 -1.360765e-02 -1.401215e-02 -2.319946e-03 9.173649e-03 8.525008e-03 -3.637077e-03 -1.476764e-02 -1.326897e-02 -4.086879e-04 1.090651e-02 9.277374e-03 -3.531811e-03 -1.433760e-02 -1.192684e-02 1.549097e-03 1.278627e-02 1.088121e-02 -1.601629e-03 -1.132586e-02 -7.866359e-03 5.605601e-03 1.554661e-02 1.187475e-02 -1.721247e-03 -1.152669e-02 -7.773158e-03 5.430763e-03 1.434519e-02 9.670841e-03 -3.940133e-03 -1.265736e-02 -7.650954e-03 5.823980e-03 1.374339e-02 7.627544e-03 -6.756626e-03 -1.520422e-02 -9.490116e-03 4.294903e-03 1.198153e-02 5.762432e-03 -7.893570e-03 -1.491077e-02 -8.028424e-03 5.760681e-03 1.234784e-02 4.925332e-03 -9.045777e-03 -1.543249e-02 -7.830977e-03 5.933881e-03 1.183938e-02 4.009536e-03 -9.291177e-03 -1.414233e-02 -5.256639e-03 8.542739e-03 1.328011e-02 4.094795e-03 -9.748802e-03 -1.424343e-02 -4.864424e-03 8.857950e-03 1.307279e-02 3.713535e-03 -9.409888e-03 -1.268625e-02 -2.639611e-03 1.050893e-02 1.328599e-02 2.742399e-03 -1.051170e-02 -1.311188e-02 -2.548509e-03 1.031480e-02 1.237425e-02 1.684543e-03 -1.057394e-02 -1.157095e-02 -1.220668e-05 1.245740e-02 1.309567e-02 1.075128e-03 -1.162555e-02 -1.238415e-02 -7.638310e-04 1.106519e-02 1.073219e-02 -1.758508e-03 -1.410179e-02 -1.431623e-02 + -0.192624 + + + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Nicole/p300-spatial-filter.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Nicole/p300-spatial-filter.cfg new file mode 100644 index 0000000..a4c4c7d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Nicole/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -1.197627e+00 2.105600e-01 -2.502675e+00 -6.337555e-01 5.800950e-01 5.214162e+00 -1.198762e-01 1.296027e+00 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Nicole/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Nicole/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Nicole/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Test/p300-classifier.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Test/p300-classifier.cfg new file mode 100644 index 0000000..b5b3e61 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Test/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 1.992349e-04 -7.101522e-02 -6.101115e-02 1.837456e-02 8.451950e-02 6.890552e-02 -1.273989e-02 -7.677335e-02 -5.759445e-02 2.487486e-02 8.539484e-02 6.074976e-02 -2.513950e-02 -8.515548e-02 -5.781966e-02 2.961841e-02 8.844873e-02 5.861412e-02 -3.006978e-02 -8.804303e-02 -5.690836e-02 3.137926e-02 8.721030e-02 5.446974e-02 -3.273200e-02 -8.533920e-02 -5.034878e-02 3.543156e-02 8.354213e-02 4.463870e-02 -4.107945e-02 -8.529944e-02 -4.234759e-02 4.375059e-02 8.421183e-02 3.655660e-02 -5.143394e-02 -9.009501e-02 -3.943200e-02 4.964065e-02 8.673025e-02 3.388695e-02 -5.561893e-02 -9.127523e-02 -3.719357e-02 5.160887e-02 8.533880e-02 3.067820e-02 -5.576284e-02 -8.561326e-02 -2.891653e-02 5.572887e-02 8.157143e-02 2.263129e-02 -5.986401e-02 -8.047555e-02 -1.737311e-02 6.503794e-02 8.198488e-02 1.536590e-02 -6.720587e-02 -8.113447e-02 -1.134800e-02 7.183194e-02 8.395275e-02 1.238461e-02 -7.063420e-02 -8.126964e-02 -9.154502e-03 7.229510e-02 8.068305e-02 8.270836e-03 -7.065540e-02 -7.588764e-02 -3.005205e-03 7.263436e-02 7.338773e-02 -1.152449e-03 -7.395180e-02 -6.973003e-02 7.629030e-03 7.881926e-02 7.031543e-02 -1.001845e-02 -8.044251e-02 -6.861530e-02 1.428943e-02 8.445408e-02 7.049683e-02 -1.381592e-02 -8.337001e-02 -6.808107e-02 1.603180e-02 8.335617e-02 6.582881e-02 -1.810695e-02 -8.281586e-02 -6.304173e-02 1.976960e-02 7.994039e-02 5.554372e-02 -2.823412e-02 -8.512472e-02 -5.642925e-02 2.857394e-02 8.243361e-02 4.916468e-02 -3.801390e-02 -9.014055e-02 -5.327591e-02 3.606835e-02 8.764745e-02 4.919107e-02 -4.028334e-02 -8.996025e-02 -4.941169e-02 4.031952e-02 8.864850e-02 4.755458e-02 -3.996037e-02 -8.420444e-02 -4.040029e-02 4.598750e-02 8.624931e-02 3.941727e-02 -4.591090e-02 -8.161477e-02 -3.061025e-02 5.489345e-02 8.673841e-02 3.127371e-02 -5.570341e-02 -8.554285e-02 -2.730365e-02 6.022422e-02 8.799954e-02 2.731039e-02 -6.083064e-02 -8.753615e-02 -2.624987e-02 6.046999e-02 8.473959e-02 2.262749e-02 -6.196672e-02 -8.288187e-02 -1.956483e-02 6.242056e-02 7.890095e-02 1.334653e-02 -6.639037e-02 -7.786407e-02 -8.791755e-03 7.010557e-02 -5.615247e-04 7.483156e-02 6.284848e-02 -2.304054e-02 -9.388252e-02 -7.630811e-02 1.245716e-02 8.227777e-02 6.236127e-02 -2.626415e-02 -9.218231e-02 -6.707967e-02 2.425210e-02 8.902756e-02 6.117237e-02 -3.105858e-02 -9.368062e-02 -6.273613e-02 3.045338e-02 9.114664e-02 5.770379e-02 -3.565109e-02 -9.379946e-02 -5.769990e-02 3.557369e-02 9.089105e-02 5.224208e-02 -4.021881e-02 -9.142095e-02 -4.865274e-02 4.458068e-02 9.312595e-02 4.756963e-02 -4.514629e-02 -8.967265e-02 -3.980462e-02 5.408174e-02 9.629405e-02 4.354225e-02 -5.067760e-02 -9.046333e-02 -3.526629e-02 5.869814e-02 9.568188e-02 3.794305e-02 -5.586529e-02 -9.056170e-02 -3.143582e-02 6.056010e-02 9.121830e-02 2.926055e-02 -6.190468e-02 -8.916862e-02 -2.494715e-02 6.468354e-02 8.765063e-02 2.013571e-02 -6.897417e-02 -8.848470e-02 -1.822506e-02 7.011663e-02 8.607157e-02 1.283464e-02 -7.536013e-02 -8.880163e-02 -1.378228e-02 7.334513e-02 8.392634e-02 7.302760e-03 -7.842094e-02 -8.606398e-02 -8.179913e-03 7.557069e-02 7.987519e-02 8.068346e-04 -8.038784e-02 -8.048918e-02 6.053229e-04 7.985220e-02 7.607283e-02 -6.937963e-03 -8.420552e-02 -7.645033e-02 8.728067e-03 8.439631e-02 7.298832e-02 -1.436799e-02 -8.896829e-02 -7.488045e-02 1.360530e-02 8.646818e-02 6.965921e-02 -1.948975e-02 -9.002703e-02 -7.013510e-02 1.976814e-02 8.808818e-02 6.564250e-02 -2.382641e-02 -8.814341e-02 -6.104658e-02 3.007882e-02 9.227659e-02 6.215646e-02 -2.919914e-02 -8.795594e-02 -5.350611e-02 3.939227e-02 9.591337e-02 5.796964e-02 -3.631159e-02 -9.126768e-02 -5.118437e-02 4.284935e-02 9.475875e-02 5.136447e-02 -4.348054e-02 -9.367112e-02 -4.881053e-02 4.458432e-02 9.077585e-02 4.258715e-02 -5.058381e-02 -9.344767e-02 -4.230373e-02 5.032885e-02 8.950351e-02 3.502797e-02 -5.734648e-02 -9.288521e-02 -3.480497e-02 5.791345e-02 9.059256e-02 2.956071e-02 -6.327357e-02 -9.339522e-02 -3.004358e-02 6.234892e-02 8.976243e-02 2.436153e-02 -6.722092e-02 -9.188361e-02 -2.492409e-02 6.498266e-02 8.605785e-02 1.710047e-02 -7.106021e-02 -8.812765e-02 -1.667591e-02 7.010703e-02 8.335692e-02 9.505115e-03 -7.575139e-02 + -1.86754 + + + 4.520025e-03 1.860010e-02 1.121634e-02 -9.526612e-03 -2.206935e-02 -1.350048e-02 7.332846e-03 1.904633e-02 9.740392e-03 -1.077739e-02 -2.109266e-02 -1.024066e-02 1.091980e-02 2.073750e-02 8.976156e-03 -1.253802e-02 -2.181898e-02 -9.125094e-03 1.298347e-02 2.226882e-02 9.350535e-03 -1.275495e-02 -2.180553e-02 -8.833959e-03 1.287559e-02 2.139641e-02 8.432157e-03 -1.242006e-02 -1.973092e-02 -6.162925e-03 1.415248e-02 2.024580e-02 5.886213e-03 -1.402755e-02 -1.880432e-02 -3.288592e-03 1.672094e-02 2.058894e-02 4.047893e-03 -1.624421e-02 -1.956902e-02 -2.303597e-03 1.823352e-02 2.125923e-02 3.603501e-03 -1.704786e-02 -2.005707e-02 -2.692211e-03 1.723442e-02 1.955385e-02 2.184331e-03 -1.695378e-02 -1.838230e-02 -9.491761e-04 1.714693e-02 1.714554e-02 -9.826170e-04 -1.851984e-02 -1.726815e-02 1.670249e-03 1.889736e-02 1.655722e-02 -3.268034e-03 -2.048766e-02 -1.740754e-02 3.156418e-03 2.057706e-02 1.727459e-02 -3.443324e-03 -2.071028e-02 -1.722719e-02 3.280705e-03 1.997974e-02 1.615205e-02 -3.915268e-03 -1.951488e-02 -1.477461e-02 5.184486e-03 1.965515e-02 1.368664e-02 -6.549141e-03 -2.011724e-02 -1.287366e-02 7.905032e-03 2.087043e-02 1.247629e-02 -9.002567e-03 -2.173394e-02 -1.254926e-02 9.523483e-03 2.228351e-02 1.283895e-02 -9.297754e-03 -2.183035e-02 -1.224474e-02 9.604475e-03 2.162626e-02 1.195660e-02 -9.130031e-03 -1.990548e-02 -9.446406e-03 1.130126e-02 2.089287e-02 9.461435e-03 -1.115129e-02 -1.958701e-02 -6.974644e-03 1.384189e-02 2.137811e-02 7.560350e-03 -1.383110e-02 -2.106887e-02 -6.634604e-03 1.498054e-02 2.186957e-02 6.917741e-03 -1.495362e-02 -2.188828e-02 -7.197601e-03 1.398074e-02 2.016843e-02 5.348754e-03 -1.509949e-02 -2.027120e-02 -5.105601e-03 1.457596e-02 1.842942e-02 2.516103e-03 -1.666331e-02 -1.915436e-02 -2.125867e-03 1.709569e-02 1.871972e-02 8.443587e-04 -1.840266e-02 -1.924333e-02 -4.632146e-04 1.918868e-02 1.993662e-02 1.038087e-03 -1.843670e-02 -1.891246e-02 -8.414417e-05 1.890837e-02 1.900492e-02 5.241281e-04 -1.737256e-02 -1.638006e-02 2.281010e-03 1.927344e-02 1.709345e-02 -1.932394e-03 -1.805311e-02 -4.853757e-03 -1.940220e-02 -1.102546e-02 1.131973e-02 2.448794e-02 1.481099e-02 -7.980413e-03 -2.077269e-02 -1.074513e-02 1.151877e-02 2.288933e-02 1.140477e-02 -1.142681e-02 -2.234868e-02 -1.014716e-02 1.280654e-02 2.310247e-02 1.016209e-02 -1.292666e-02 -2.269863e-02 -9.204296e-03 1.384754e-02 2.304199e-02 9.084499e-03 -1.377936e-02 -2.232723e-02 -8.025591e-03 1.433941e-02 2.182851e-02 6.784580e-03 -1.540118e-02 -2.208996e-02 -6.575438e-03 1.506859e-02 2.046998e-02 3.903692e-03 -1.778496e-02 -2.237006e-02 -4.999317e-03 1.675779e-02 2.077706e-02 2.957756e-03 -1.853957e-02 -2.175729e-02 -3.303776e-03 1.818310e-02 2.100731e-02 2.483695e-03 -1.838030e-02 -2.029335e-02 -1.361666e-03 1.905918e-02 2.018180e-02 1.003517e-03 -1.873854e-02 -1.880822e-02 8.149188e-04 1.993281e-02 1.883382e-02 -1.481160e-03 -2.026000e-02 -1.820008e-02 2.767847e-03 2.135820e-02 1.860694e-02 -2.756698e-03 -2.103188e-02 -1.762403e-02 4.015211e-03 2.189711e-02 1.788042e-02 -3.884197e-03 -2.123504e-02 -1.660769e-02 5.103044e-03 2.162275e-02 1.608213e-02 -5.784159e-03 -2.157119e-02 -1.516340e-02 6.775521e-03 2.164433e-02 1.407242e-02 -8.293425e-03 -2.255635e-02 -1.398243e-02 8.867444e-03 2.278833e-02 1.358152e-02 -9.423500e-03 -2.282302e-02 -1.296242e-02 1.015070e-02 2.303176e-02 1.262248e-02 -1.044915e-02 -2.274683e-02 -1.191754e-02 1.077687e-02 2.203577e-02 1.033708e-02 -1.233880e-02 -2.282413e-02 -1.049089e-02 1.188457e-02 2.122571e-02 7.817965e-03 -1.468745e-02 -2.319031e-02 -8.779569e-03 1.407428e-02 2.221274e-02 7.409747e-03 -1.518945e-02 -2.245697e-02 -6.834865e-03 1.595687e-02 2.291970e-02 7.175532e-03 -1.507811e-02 -2.111911e-02 -4.851346e-03 1.705287e-02 2.223958e-02 5.502425e-03 -1.596032e-02 -2.019315e-02 -2.961529e-03 1.793136e-02 2.089738e-02 2.708282e-03 -1.813593e-02 -2.029397e-02 -1.439449e-03 1.927045e-02 2.068908e-02 1.268575e-03 -1.930271e-02 -2.012299e-02 -3.654294e-04 1.987190e-02 2.002505e-02 -2.114387e-05 -1.986935e-02 -1.942976e-02 6.307668e-04 1.965162e-02 1.812354e-02 -2.406703e-03 -2.098877e-02 -1.874718e-02 1.799200e-03 1.933438e-02 + -0.186277 + + + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Test/p300-spatial-filter.cfg b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Test/p300-spatial-filter.cfg new file mode 100644 index 0000000..0ba5bae --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Test/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -7.456638e-01 4.505683e+00 -5.713293e+00 6.569946e-01 6.642618e+00 3.787215e+00 2.433134e+00 -7.012442e-01 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Test/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Test/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/Test/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/test.md b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/test.md new file mode 100644 index 0000000..266b73c --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/test.md @@ -0,0 +1,2 @@ +# OpenViBE_visual_BCI + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/test.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/test.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/test.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/test2.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/test2.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets/test2.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/keyboard-to-stimulations.txt b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/keyboard-to-stimulations.txt new file mode 100644 index 0000000..77e1530 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/keyboard-to-stimulations.txt @@ -0,0 +1,3 @@ +Return 0x00008100 + + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-0-signal-monitoring.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-0-signal-monitoring.xml new file mode 100644 index 0000000..ebf1e4f --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-0-signal-monitoring.xml @@ -0,0 +1,721 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x000014bf, 0x000034db) + Identity + (0x5dffe431, 0x35215c50) + + + (0x5ba36127, 0x195feae1) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x5ba36127, 0x195feae1) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 384 + + + (0x207c9054, 0x3c841b63) + 928 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xac367a9c, 0x2da95abe) + 6 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00003f1b, 0x00003c78) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 320 + + + (0x207c9054, 0x3c841b63) + 800 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 208 + + + (0x207c9054, 0x3c841b63) + 800 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00005c5c, 0x00007610) + Raw + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Horizontal ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Vertical ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 1024 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + (0x00006b6d, 0x00002690) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 128 + + + (0x207c9054, 0x3c841b63) + 928 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00007e4e, 0x00006b7b) + Filtered + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Horizontal ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Vertical ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 832 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + + + (0x000003a7, 0x000034db) + + (0x000014bf, 0x000034db) + 2 + + + (0x00005c5c, 0x00007610) + 1 + + + + (0x00000554, 0x0000661a) + + (0x000014bf, 0x000034db) + 2 + + + (0x00007e4e, 0x00006b7b) + 1 + + + + (0x00001d33, 0x00002bb0) + + (0x00006b6d, 0x00002690) + 2 + + + (0x000014bf, 0x000034db) + 2 + + + + (0x00003f04, 0x000045c3) + + (0x000014bf, 0x000034db) + 1 + + + (0x00005c5c, 0x00007610) + 0 + + + + (0x00004b11, 0x00006a43) + + (0x00003f1b, 0x00003c78) + 0 + + + (0x000014bf, 0x000034db) + 0 + + + + (0x000056fd, 0x00004795) + + (0x000014bf, 0x000034db) + 0 + + + (0x00007e4e, 0x00006b7b) + 0 + + + + (0x00005703, 0x00006037) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00003f1b, 0x00003c78) + 0 + + + + (0x00005e38, 0x00005c99) + + (0x00006b6d, 0x00002690) + 1 + + + (0x000014bf, 0x000034db) + 1 + + + + (0x000073ac, 0x0000581b) + + (0x00006b6d, 0x00002690) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + + + (0x00001653, 0x00002964) + <u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 512 + + + (0x7234b86b, 0x2b8651a5) + 416 + + + + + (0x000028e8, 0x00003dee) + <u><b><big>Overview</big></b></u> + +This scenario can be used in order +to check the quality of the signals +before starting an experiment. + +One should <u>definitely</u> +check the quality of the signals +and ensure that : + +- <b>eye blinks</b> are visible +- <b>jaw clenching</b> are visible +- <b>alpha waves</b> are visible when closing eyes + + + (0x473d9a43, 0x97fc0a97) + 1184 + + + (0x7234b86b, 0x2b8651a5) + 272 + + + + + (0x000049b3, 0x00001e28) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 944 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x00004e8c, 0x000041b6) + The P300 XDawn scenarios are described in + +http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0x473d9a43, 0x97fc0a97) + 576.000000 + + + (0x7234b86b, 0x2b8651a5) + 130.000000 + + + + + (0x000059b5, 0x00001524) + The <i>Temporal Filter</i> +and <i>Signal Decimation</i> +boxes transform the signal +so you can see what is actually +used online. + + + (0x473d9a43, 0x97fc0a97) + 512 + + + (0x7234b86b, 0x2b8651a5) + 288 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"height":635,"identifier":"(0x000077ee, 0x0000254d)","name":"default","parentIdentifier":"(0xffffffff, 0xffffffff)","type":1,"width":783},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x00004579, 0x00005fcb)","index":0,"name":"Default tab","parentIdentifier":"(0x000077ee, 0x0000254d)","type":2},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":2,"dividerPosition":293,"identifier":"(0x00005446, 0x000043a1)","index":0,"maxDividerPosition":590,"name":"Vertical split","parentIdentifier":"(0x00004579, 0x00005fcb)","type":4},{"boxIdentifier":"(0x00005c5c, 0x00007610)","childCount":0,"identifier":"(0x00000e42, 0x000074b8)","index":0,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3},{"boxIdentifier":"(0x00007e4e, 0x00006b7b)","childCount":0,"identifier":"(0x00005db7, 0x000032ad)","index":1,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Signal Monitoring + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-1-acquisition.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-1-acquisition.xml new file mode 100644 index 0000000..d503547 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-1-acquisition.xml @@ -0,0 +1,969 @@ + + 2 + OpenViBE Designer + 3.2.0 + + + + + + (0x00002ae2, 0x00004e06) + Keyboard stimulator + (0x00d317b9, 0x6324c3ff) + + + (0x6f752dd0, 0x082a321e) + Outgoing Stimulations + + + + + (0x330306dd, 0x74a95f98) + Filename + ${Path_Data}/plugins/stimulation/simple-keyboard-to-stimulations.txt + ${Player_ScenarioDirectory}/keyboard-to-stimulations.txt + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 16 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d3b7, 0x8339d210) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + + + (0x00002c69, 0x00000b43) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 336 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x07e64d8b) + + + + + (0x0000356c, 0x00004381) + Generic stream writer + (0x09c92218, 0x7c1216f8) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + + + (0x2cdb2f0b, 0x12f231ea) + Use compression + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x4e7b798a, 0x183beafb) + (0x89a08108, 0xc8d1fac1) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-writer.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0350a9f0) + + + (0xfba64161, 0x65304e21) + + + + + + (0x000043a8, 0x00004ec3) + Stimulation Filter + (0x02f96101, 0x5e647cb8) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x6f752dd0, 0x082a321e) + Modified Stimulations + + + + + (0x09e59e57, 0x8d4a553a) + Default action + Reject + Reject + false + + + (0x512a166f, 0x5c3ef83f) + Time range begin + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time range end + 0 + 0 + false + + + (0x09e59e57, 0x8d4a553a) + Action to perform + Select + Select + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation range begin + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation range end + OVTK_StimulationId_Label_0F + OVTK_StimulationId_Label_00 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 64 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x4e7b798a, 0x183beafb) + (0x47859b3f, 0x1dfdf5cd) + + + (0x61d11811, 0x71e65362) + + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 6 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x0000470b, 0x00001b1d) + Speller Stimulator + (0x0b5a2787, 0x02750621) + + + (0x00000000, 0x16595537) + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-speller-stimulator.lua + false + + + (0x00000000, 0xbae13066) + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x5518f982) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xc152613d) + (0x007deef9, 0x2f3e95c6) + Matrix Size (m*m) + 6 + 6 + false + + + (0x00000000, 0xa0308929) + (0x007deef9, 0x2f3e95c6) + Number of Repetitions + 6 + 3 + false + + + (0x00000000, 0xcde95a6f) + (0x007deef9, 0x2f3e95c6) + Number of Trials + 6 + 3 + false + + + (0x00000000, 0x9b3f9b7b) + (0x512a166f, 0x5c3ef83f) + Flash Duration (in sec) + 0.2 + 0.2 + false + + + (0x00000000, 0x583ad367) + (0x512a166f, 0x5c3ef83f) + No Flash Duration (in sec) + 0.1 + 0.1 + false + + + (0x00000000, 0xfc1c2fb6) + (0x512a166f, 0x5c3ef83f) + Inter-Repetition Delay (in sec) + 1.0 + 1.0 + false + + + (0x00000000, 0x0d9a1e18) + (0x512a166f, 0x5c3ef83f) + Inter-Trial Delay (in sec) + 3.0 + 3.0 + false + + + (0x00000000, 0xaeefd500) + (0x2c132d6e, 0x44ab0d97) + Start Stimulation + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x00000000, 0xef5eb0e5) + (0x2cdb2f0b, 0x12f231ea) + Free Spelling + false + false + false + + + (0x00000000, 0x4ead155d) + (0x007deef9, 0x2f3e95c6) + Time To Send + 20 + 20 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 128 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-stimulator.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00004eca, 0x00003f33) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 624 + + + (0x207c9054, 0x3c841b63) + 784 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x01070ba6) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x0000599b, 0x000026ba) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 464 + + + (0x207c9054, 0x3c841b63) + 688 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x02909b75) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00006d0d, 0x000031d8) + Target Letter Generation + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-speller-target.lua + false + + + (0x79a9edeb, 0x245d83fc) + Word to Spell (leave this empty if random) + + + false + + + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x512a166f, 0x5c3ef83f) + Delay Before Sending (in sec) + 2 + 2 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 256 + + + (0x207c9054, 0x3c841b63) + 736 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0334c6b7) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x00000ea4, 0x000068ff) + + (0x0000599b, 0x000026ba) + 2 + + + (0x00004eca, 0x00003f33) + 0 + + + + (0x000019a1, 0x00001d15) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x00002c69, 0x00000b43) + 0 + + + + (0x00002128, 0x0000146c) + + (0x00002ae2, 0x00004e06) + 0 + + + (0x000043a8, 0x00004ec3) + 0 + + + + (0x000036a5, 0x00006190) + + (0x0000599b, 0x000026ba) + 0 + + + (0x0000356c, 0x00004381) + 0 + + + + (0x00003aa4, 0x00002b37) + + (0x00006d0d, 0x000031d8) + 0 + + + (0x00002c69, 0x00000b43) + 1 + + + + (0x0000649d, 0x00004576) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x00006d0d, 0x000031d8) + 0 + + + + (0x000068a0, 0x0000330f) + + (0x0000599b, 0x000026ba) + 2 + + + (0x0000356c, 0x00004381) + 2 + + + + (0x00007a3d, 0x000044a6) + + (0x000043a8, 0x00004ec3) + 0 + + + (0x0000470b, 0x00001b1d) + (0x00000000, 0x16595537) + + + + (0x00007bda, 0x00000772) + + (0x0000599b, 0x000026ba) + 1 + + + (0x0000356c, 0x00004381) + 1 + + + + + + (0x0000363f, 0x00001c2b) + The P300 Speller Visualization +sends the markers (stimulations) directly to +Acquisition Server using TCP Tagging. + + + (0x473d9a43, 0x97fc0a97) + 960.000000 + + + (0x7234b86b, 0x2b8651a5) + 336.000000 + + + + + (0x00004e8c, 0x000041b6) + The P300 XDawn scenarios are described in + +http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0x473d9a43, 0x97fc0a97) + 320.000000 + + + (0x7234b86b, 0x2b8651a5) + 176.000000 + + + + + (0x19b8795c, 0x039f26f7) + <u><b><big>Overview</big></b></u> + +This scenario can be used as a first +step to collect some training data. The +data will later be used to train a spatial +filter and a classifier for online use. + +The flast sequence will start after 20 sec. + +You will then be presented a blue letter that +you have to focus on, followed by a 12 times +flashing sequence of the whole grid. This will +be repeated 10 times. + +<small><i><b>note:</b> the recorded files go to the +folder where the scenario xml is located +(<span color="darkblue">${Player_ScenarioDirectory}/</span>).</i></small> + + + (0x473d9a43, 0x97fc0a97) + 320.000000 + + + (0x7234b86b, 0x2b8651a5) + 400.000000 + + + + + (0x24020235, 0x4f7e23eb) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 304 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x00002ae2, 0x00004e06)","childCount":0,"identifier":"(0x0000119f, 0x0000462a)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3},{"boxIdentifier":"(0x00002c69, 0x00000b43)","childCount":0,"identifier":"(0x0000742d, 0x000050d7)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard, Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Data Acquisition + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-2-train-xDAWN.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-2-train-xDAWN.xml new file mode 100644 index 0000000..39ba419 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-2-train-xDAWN.xml @@ -0,0 +1,644 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00001db8, 0x00001848) + xDAWN Trainer + (0x27542f6e, 0x14aa3548) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x5ba36127, 0x195feae1) + Session signal + + + (0x5ba36127, 0x195feae1) + Evoked potential epochs + + + + + (0x6f752dd0, 0x082a321e) + Train-completed Flag + + + + + (0x2c132d6e, 0x44ab0d97) + Train stimulation + OVTK_StimulationId_Train + OVTK_StimulationId_ExperimentStop + false + + + (0x330306dd, 0x74a95f98) + Spatial filter configuration + + ${Player_ScenarioDirectory}/p300-spatial-filter.cfg + false + + + (0x007deef9, 0x2f3e95c6) + Filter dimension + 4 + 3 + false + + + (0x2cdb2f0b, 0x12f231ea) + Save as box config + true + true + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x4b49a133, 0x42f38d94) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-trainer.cfg + + + (0xc80ce8af, 0xf699f813) + + + + (0xce18836a, 0x9c0eb403) + + + + (0xcfad85b0, 0x7c6d841c) + + + + + + (0x00002514, 0x00001614) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -128 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-reader.cfg + + + + + (0x0000267a, 0x0000427f) + Time based epoching + (0x00777fa0, 0x5dc3f560) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Epoched signal 1 + + + + + (0x512a166f, 0x5c3ef83f) + Epoch 1 duration (in sec) + 1 + 0.250000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch 1 intervals (in sec) + 0.5 + 0.250000 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 160 + + + (0x207c9054, 0x3c841b63) + 240 + + + (0x4e7b798a, 0x183beafb) + (0xc5ff41e9, 0xccc59a01) + + + + + (0x00004aea, 0x00001465) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_TrainCompleted + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 416 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -16 + + + (0x207c9054, 0x3c841b63) + 240 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00006be0, 0x000074b5) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 112 + + + (0x207c9054, 0x3c841b63) + 240 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + + + (0x00006fa4, 0x00003c76) + Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_Target + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 250 + + + (0x207c9054, 0x3c841b63) + 425 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + + + + + (0x000002c2, 0x000038de) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00006be0, 0x000074b5) + 0 + + + + (0x000007d3, 0x000071cb) + + (0x0000267a, 0x0000427f) + 0 + + + (0x00006fa4, 0x00003c76) + 0 + + + + (0x00003582, 0x00002c04) + + (0x00006be0, 0x000074b5) + 0 + + + (0x0000267a, 0x0000427f) + 0 + + + + (0x00003920, 0x00007a30) + + (0x0000267a, 0x0000427f) + 0 + + + (0x00001db8, 0x00001848) + 1 + + + + (0x0000452e, 0x0000366d) + + (0x00002514, 0x00001614) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x00004be2, 0x00004296) + + (0x00006fa4, 0x00003c76) + 0 + + + (0x00001db8, 0x00001848) + 2 + + + + (0x00004bf5, 0x00007908) + + (0x00001db8, 0x00001848) + 0 + + + (0x00004aea, 0x00001465) + 0 + + + + (0x000059e8, 0x00000032) + + (0x00002514, 0x00001614) + 2 + + + (0x00001db8, 0x00001848) + 0 + + + + (0x00006af9, 0x00002512) + + (0x00002514, 0x00001614) + 2 + + + (0x00006fa4, 0x00003c76) + 1 + + + + + + (0x00000b43, 0x0000067f) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 48 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x000010db, 0x00003fcd) + For prerecorded data to test this P300, see + +<b>http://openvibe.inria.fr/datasets/</b> + + + + (0x473d9a43, 0x97fc0a97) + 752 + + + (0x7234b86b, 0x2b8651a5) + 192 + + + + + (0x000049d6, 0x00006e67) + <u><b><big>Overview</big></b></u> + +This scenario should be used to train +the spatial filter using the xDAWN algorithm. + +Just configure the <i>Generic Stream Reader</i> +box to point to the last file you recorded with +scenario <i>1-acquisition</i> and fast forward +this scenario. + +At the end of the training, you will have line in +the console about eigen values. +Using a <i>Player Controller</i> the scenario will +automatically pause at the end of the training. + +If you want details on this values, you should read +<u>http://www.icp.inpg.fr/~rivetber/Publications/references/Rivet2009a.pdf</u> + + + (0x473d9a43, 0x97fc0a97) + 800.000000 + + + (0x7234b86b, 0x2b8651a5) + -80.000000 + + + + + (0x00007b93, 0x000041da) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 304.000000 + + + (0x7234b86b, 0x2b8651a5) + -192.000000 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Spatial Filter Training + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-3-train-classifier.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-3-train-classifier.xml new file mode 100644 index 0000000..cc6c8cc --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-3-train-classifier.xml @@ -0,0 +1,1087 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00000b2d, 0x00006d61) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002bb807) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00000d41, 0x000013b7) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b7d6e) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00001f83, 0x00004e32) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -192 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-reader.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x008e34c7) + + + + + (0x00002c8b, 0x000001d5) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_TrainCompleted + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00301c7f) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00002f94, 0x00000341) + Non Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_NonTarget + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002bbddf) + + + + + (0x00003e14, 0x00000027) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 16 + + + (0x207c9054, 0x3c841b63) + 256 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002c5bfc) + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -96 + + + (0x207c9054, 0x3c841b63) + 256 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x000063a5, 0x0000197c) + Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_Target + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b4e91) + + + + + (0x000078d0, 0x000029bc) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b5470) + + + + + (0x000078f9, 0x000063eb) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 9.970221e-001 -3.729500e-002 -1.177390e-002 2.814447e-002 -3.772446e-003 3.371324e-002 -5.480030e-003 8.893039e-003 -1.565213e-002 -9.956694e-003 -2.347757e-002 -2.312669e-003 -1.847227e-002 -7.550644e-004 -8.423513e-003 3.243223e-002 2.079848e-002 5.079737e-001 -2.835127e-002 8.259231e-002 -3.621803e-001 -2.004259e-001 -2.432480e-001 -1.861558e-001 -3.798139e-001 9.614762e-002 3.407766e-001 -2.158597e-001 3.720552e-001 7.500469e-002 -8.628774e-002 -3.182367e-002 5.923482e-002 4.124707e-001 2.083913e-001 -2.629501e-001 2.023081e-001 -2.658446e-001 4.022738e-001 -1.785569e-001 4.450742e-001 3.549239e-001 1.550204e-002 3.750389e-002 3.114249e-002 9.273764e-002 -7.093797e-002 -2.610929e-001 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 3 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 16 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 80 + + + (0x207c9054, 0x3c841b63) + 256 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b601f) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00007b56, 0x000033f9) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002c2168) + + + + + (0x0a5a6a4a, 0x1d92a778) + Classifier trainer + (0xf3dae8a8, 0x3b444154) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x17341935, 0x152ff448) + Features for class 1 + + + (0x17341935, 0x152ff448) + Features for class 2 + + + + + (0x6f752dd0, 0x082a321e) + Train-completed Flag + + + + + (0x2c132d6e, 0x44ab0d97) + Train trigger + OVTK_StimulationId_Train + OVTK_StimulationId_ExperimentStop + false + + + (0x330306dd, 0x74a95f98) + Filename to save configuration to + ${Path_UserData}/my-classifier.xml + ${Player_ScenarioDirectory}/cfg/p300-classifier.cfg + false + + + (0xbe9eba5c, 0xa8415d37) + Multiclass strategy to apply + Native + Native + false + + + (0x2c132d6e, 0x44ab0d97) + Class 1 label + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Target + false + + + (0x2c132d6e, 0x44ab0d97) + Class 2 label + OVTK_StimulationId_Label_02 + OVTK_StimulationId_NonTarget + false + + + (0xd765a736, 0xed708c65) + Algorithm to use + Linear Discrimimant Analysis (LDA) + Linear Discrimimant Analysis (LDA) + false + + + (0x2cdb2f0b, 0x12f231ea) + Use shrinkage + false + false + false + + + (0x512a166f, 0x5c3ef83f) + Shrinkage coefficient (-1 == auto) + -1.000000 + -1.000000 + false + + + (0x2cdb2f0b, 0x12f231ea) + Shrinkage: Force diagonal cov (DDA) + false + false + false + + + (0x007deef9, 0x2f3e95c6) + Number of partitions for k-fold cross-validation test + 10 + 5 + false + + + (0x2cdb2f0b, 0x12f231ea) + Balance classes + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 448 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x9de21779, 0x37776c89) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 6 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x00000004, 0x00007d3a) + + (0x000078f9, 0x000063eb) + 0 + + + (0x000063a5, 0x0000197c) + 0 + + + + (0x00000aca, 0x000037d3) + + (0x00003e14, 0x00000027) + 0 + + + (0x000078f9, 0x000063eb) + 0 + + + + (0x00001717, 0x00003cf9) + + (0x000078d0, 0x000029bc) + 0 + + + (0x00000b2d, 0x00006d61) + 0 + + + + (0x00001770, 0x00000ded) + + (0x00001f83, 0x00004e32) + 2 + + + (0x000063a5, 0x0000197c) + 1 + + + + (0x00002204, 0x00006850) + + (0x00001f83, 0x00004e32) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x0000227f, 0x00003a6f) + + (0x000078f9, 0x000063eb) + 0 + + + (0x00002f94, 0x00000341) + 0 + + + + (0x00002599, 0x0000329b) + + (0x000063a5, 0x0000197c) + 0 + + + (0x000078d0, 0x000029bc) + 0 + + + + (0x00004098, 0x00007e81) + + (0x00002f94, 0x00000341) + 0 + + + (0x00007b56, 0x000033f9) + 0 + + + + (0x00004674, 0x000061af) + + (0x00007b56, 0x000033f9) + 0 + + + (0x00000d41, 0x000013b7) + 0 + + + + (0x00005c01, 0x00003398) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00003e14, 0x00000027) + 0 + + + + (0x00006821, 0x00000c75) + + (0x00001f83, 0x00004e32) + 2 + + + (0x00002f94, 0x00000341) + 1 + + + + (0x175e412c, 0x0692f4ee) + + (0x00000d41, 0x000013b7) + 0 + + + (0x0a5a6a4a, 0x1d92a778) + 2 + + + + (0x5a67b7d8, 0x1cf07f9a) + + (0x00001f83, 0x00004e32) + 2 + + + (0x0a5a6a4a, 0x1d92a778) + 0 + + + + (0x616495af, 0x5c020b32) + + (0x0a5a6a4a, 0x1d92a778) + 0 + + + (0x00002c8b, 0x000001d5) + 0 + + + + (0x63fa63da, 0x0e447c5b) + + (0x00000b2d, 0x00006d61) + 0 + + + (0x0a5a6a4a, 0x1d92a778) + 1 + + + + + + (0x00004785, 0x00007f9c) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 432 + + + (0x7234b86b, 0x2b8651a5) + -240 + + + + + (0x000047f3, 0x00004eaf) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 48 + + + (0x7234b86b, 0x2b8651a5) + 0 + + + + + (0x00005277, 0x00007fbe) + <u><b><big>Overview</big></b></u> + +This scenario should be used to train +the LDA classifier. + +Just configure the <i>Generic Stream Reader</i> +box to point to the last file you recorded with +scenario <i>1-acquisition</i> and fast forward +this scenario. + +At the end of the training, you will have an estimation +of the classifier performance printed in the console. +If this performance is lower than 70%, just run a new +<i>4-online</i> session to have better results. + +<u><b>Note:</b></u> in order to run this scenario, +the spatial filter should have been trained using +<i>2-train-xDAWN</i> ! + + + (0x473d9a43, 0x97fc0a97) + 848 + + + (0x7234b86b, 0x2b8651a5) + 96 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + LDA Classifier Trainer + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-4-online.xml b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-4-online.xml new file mode 100644 index 0000000..530ad31 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/p300-visual-4-online.xml @@ -0,0 +1,1778 @@ + + 2 + OpenViBE Designer + 3.2.0 + + + + + + (0x00002ae2, 0x00004e06) + Keyboard stimulator + (0x00d317b9, 0x6324c3ff) + + + (0x6f752dd0, 0x082a321e) + Outgoing Stimulations + + + + + (0x330306dd, 0x74a95f98) + Filename + ${Path_Data}/plugins/stimulation/simple-keyboard-to-stimulations.txt + ${Player_ScenarioDirectory}/keyboard-to-stimulations.txt + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 496 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d3b7, 0x8339d210) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + + + (0x00002bb3, 0x0000133c) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -240 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007036bf) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00003d0e, 0x000025ef) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Pause + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 704 + + + (0x207c9054, 0x3c841b63) + 880 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00003dec, 0x00004c7b) + Stimulation based epoching + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.6 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_VisualStimulationStart + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 176 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x005ced91) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 2 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x000043a8, 0x00004ec3) + Stimulation Filter + (0x02f96101, 0x5e647cb8) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x6f752dd0, 0x082a321e) + Modified Stimulations + + + + + (0x09e59e57, 0x8d4a553a) + Default action + Reject + Reject + false + + + (0x512a166f, 0x5c3ef83f) + Time range begin + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time range end + 0 + 0 + false + + + (0x09e59e57, 0x8d4a553a) + Action to perform + Select + Select + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation range begin + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation range end + OVTK_StimulationId_Label_0F + OVTK_StimulationId_Label_00 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0x47859b3f, 0x1dfdf5cd) + + + (0x61d11811, 0x71e65362) + + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 6 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x0000445b, 0x000068e3) + P300 accumulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + (0x6f752dd0, 0x082a321e) + New input(1) + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6f752dd0, 0x082a321e) + New output + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-speller-accumulator.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x2c132d6e, 0x44ab0d97) + Segment start + OVTK_StimulationId_SegmentStart + OVTK_StimulationId_TrialStart + false + + + (0x2c132d6e, 0x44ab0d97) + Segment stop + OVTK_StimulationId_SegmentStop + OVTK_StimulationId_TrialStop + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 448 + + + (0x207c9054, 0x3c841b63) + 627 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0304fb88) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000470b, 0x00001b1d) + Speller Stimulator + (0x0b5a2787, 0x02750621) + + + (0x00000000, 0x16595537) + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-speller-stimulator.lua + false + + + (0x00000000, 0xbae13066) + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x5518f982) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xc152613d) + (0x007deef9, 0x2f3e95c6) + Matrix Size (m*m) + 6 + 6 + false + + + (0x00000000, 0xa0308929) + (0x007deef9, 0x2f3e95c6) + Number of Repetitions + 6 + 3 + false + + + (0x00000000, 0xcde95a6f) + (0x007deef9, 0x2f3e95c6) + Number of Trials + 6 + 3 + false + + + (0x00000000, 0x9b3f9b7b) + (0x512a166f, 0x5c3ef83f) + Flash Duration (in sec) + 0.2 + 0.2 + false + + + (0x00000000, 0x583ad367) + (0x512a166f, 0x5c3ef83f) + No Flash Duration (in sec) + 0.1 + 0.1 + false + + + (0x00000000, 0xfc1c2fb6) + (0x512a166f, 0x5c3ef83f) + Inter-Repetition Delay (in sec) + 1.0 + 1.0 + false + + + (0x00000000, 0x0d9a1e18) + (0x512a166f, 0x5c3ef83f) + Inter-Trial Delay (in sec) + 3.0 + 3.0 + false + + + (0x00000000, 0xaeefd500) + (0x2c132d6e, 0x44ab0d97) + Start Stimulation + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x00000000, 0xef5eb0e5) + (0x2cdb2f0b, 0x12f231ea) + Free Spelling + false + true + false + + + (0x00000000, 0x4ead155d) + (0x007deef9, 0x2f3e95c6) + Time To Send + 20 + 20 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 608 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-stimulator.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -48 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00007786, 0x00001163) + Identity + (0x5dffe431, 0x35215c50) + + + (0x6f752dd0, 0x082a321e) + Input stream + + + + + (0x6f752dd0, 0x082a321e) + Output stream + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 336 + + + (0x207c9054, 0x3c841b63) + 720 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x008f57e1, 0x2790537b) + Generic stream writer + (0x09c92218, 0x7c1216f8) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-online-[$core{date}-$core{time}].ov + false + + + (0x2cdb2f0b, 0x12f231ea) + Use compression + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 144 + + + (0x207c9054, 0x3c841b63) + 816 + + + (0x341d3912, 0x1478de86) + 1 + + + (0x4e7b798a, 0x183beafb) + (0x89a08108, 0xc8d1fac1) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007b2629) + + + (0xfba64161, 0x65304e21) + + + + + + (0x09c41dd7, 0x09f2e37b) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 240 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x000eaa12) + + + + + (0x0e30a73f, 0x7ae6d95a) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 304 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x000f9a38) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x28b5e192, 0x37431137) + Classifier processor + (0x5fe23d17, 0x95b0452c) + + + (0x17341935, 0x152ff448) + Features + + + (0x6f752dd0, 0x082a321e) + Commands + + + + + (0x6f752dd0, 0x082a321e) + Labels + + + (0x544a003e, 0x6dcba5f6) + Hyperplane distance + + + (0x544a003e, 0x6dcba5f6) + Probability values + + + + + (0x330306dd, 0x74a95f98) + Filename to load configuration from + + ${Player_ScenarioDirectory}/cfg/p300-classifier.cfg + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 368 + + + (0x207c9054, 0x3c841b63) + 560 + + + (0x4e7b798a, 0x183beafb) + (0xa6c8e548, 0x9e3e405b) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 3 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x2e63c8c5, 0x79a8ae7b) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 720 + + + (0x207c9054, 0x3c841b63) + 464 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x017985f8) + + + + + (0x40e41bf9, 0x5c44b1b1) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 64 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002cae02) + + + + + (0x6d03daab, 0x55fdea78) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 4 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 4 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 112 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x6f54afd0, 0x5f2e0f65) + Identity + (0x5dffe431, 0x35215c50) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -144 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x005f48d2) + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x0000062d, 0x00006549) + + (0x0000445b, 0x000068e3) + 1 + + + (0x2e63c8c5, 0x79a8ae7b) + 3 + + + + (0x00001301, 0x000055b2) + + (0x00002bb3, 0x0000133c) + 1 + + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + + (0x00002128, 0x0000146c) + + (0x00002ae2, 0x00004e06) + 0 + + + (0x000043a8, 0x00004ec3) + 0 + + + + (0x0000233b, 0x000050b8) + + (0x0000556f, 0x000055f8) + 0 + + + (0x40e41bf9, 0x5c44b1b1) + 0 + + + + (0x0000266b, 0x000033bb) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x00003dec, 0x00004c7b) + 1 + + + + (0x00002e50, 0x00003fba) + + (0x00003dec, 0x00004c7b) + 0 + + + (0x09c41dd7, 0x09f2e37b) + 0 + + + + (0x00003835, 0x000030a7) + + (0x00002bb3, 0x0000133c) + 0 + + + (0x6f54afd0, 0x5f2e0f65) + 0 + + + + (0x00004944, 0x00005bde) + + (0x00007786, 0x00001163) + 0 + + + (0x00003d0e, 0x000025ef) + 0 + + + + (0x00005b72, 0x00000606) + + (0x0000445b, 0x000068e3) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 2 + + + + (0x00006403, 0x000024ec) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 0 + + + + (0x00006501, 0x000068bf) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x00007786, 0x00001163) + 0 + + + + (0x00006592, 0x00002f7e) + + (0x00002bb3, 0x0000133c) + 2 + + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + + (0x00006967, 0x00006431) + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x00006c4d, 0x0000126f) + + (0x40e41bf9, 0x5c44b1b1) + 0 + + + (0x6d03daab, 0x55fdea78) + 0 + + + + (0x000074af, 0x000038c2) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x008f57e1, 0x2790537b) + 2 + + + + (0x0000756d, 0x000027c0) + + (0x6d03daab, 0x55fdea78) + 0 + + + (0x00003dec, 0x00004c7b) + 0 + + + + (0x00007a3d, 0x000044a6) + + (0x000043a8, 0x00004ec3) + 0 + + + (0x0000470b, 0x00001b1d) + (0x00000000, 0x16595537) + + + + (0x00007b30, 0x00005e90) + + (0x00007786, 0x00001163) + 0 + + + (0x0000445b, 0x000068e3) + 1 + + + + (0x00f1a11e, 0x4a813bb8) + + (0x09c41dd7, 0x09f2e37b) + 0 + + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + + (0x0de02dd1, 0x545eff87) + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + (0x008f57e1, 0x2790537b) + 1 + + + + (0x136dcee0, 0x20dbb005) + + (0x28b5e192, 0x37431137) + 0 + + + (0x0000445b, 0x000068e3) + 0 + + + + (0x2893bc68, 0x5c0429ec) + + (0x6f54afd0, 0x5f2e0f65) + 0 + + + (0x008f57e1, 0x2790537b) + 0 + + + + (0x3ccbcbed, 0x529f3e1d) + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + (0x28b5e192, 0x37431137) + 0 + + + + + + (0x1012e1de, 0x78e57c3e) + The stimulation part of the scenario is +similar to scenario <i>1-acquisition</i>. + +If you keep the <i>Target Letter Generation</i> +box, you will be able to train the algorithms +again on the recorded data. + + + + (0x473d9a43, 0x97fc0a97) + 1120 + + + (0x7234b86b, 0x2b8651a5) + 592 + + + + + (0x11fceaee, 0x1f87d83c) + Switch from file reader +to Acquisiton client to use it online + + + (0x473d9a43, 0x97fc0a97) + 176.000000 + + + (0x7234b86b, 0x2b8651a5) + -48.000000 + + + + + (0x27567f54, 0x6e00503a) + You can configure the Flashing Sequence +and the Target Letter Generation in order to +instruct the subject to <u>spell a specific word</u>. + +Set the target word in the Lua Stimulator (e.g. "openvibe") +and adapt the number of trials in the P300 Speller Stimulator +(e.g. 8 trials for the 8 letters in "openvibe") + +<b><u>Note:</u></b> If the number of letter in the chosen word does not match +the number of trial, you won't be able to train xDAWN and +the classifier on the recorded data. + + + (0x473d9a43, 0x97fc0a97) + 128.000000 + + + (0x7234b86b, 0x2b8651a5) + 576.000000 + + + + + (0x3726b6f5, 0x3dea5d78) + <u><b><big>Overview</big></b></u> + +This scenario can be used online once the +spatial filter and the classifiers are trained. +The <i>Target Letter Generation</i> +box still proposes some targets in order to +eventually train the spatial filter / classifier +again, but you may want to disconnect that box +in order to have a real <i>free time</i> use of +the speller. + +The flash sequence starts automatically after 20 sec. + +You will then be presented a blue letter that +you have to focus on, followed by a 12 times +flashing sequence of the whole grid. The detected +letter will be presented in green. This will be repeated +10 times. + +If the performance of the system does not fit your +requirements, just run <i>2-train-xDAWN</i> and <i>3-train-classifier</i> +scenarios again on the data you just recorded. + +<small><i><b>note:</b> the recorded files go to the +folder where the scenario xml is located +(<span color="darkblue">${Player_ScenarioDirectory}/</span>).</i></small> + + + (0x473d9a43, 0x97fc0a97) + 192 + + + (0x7234b86b, 0x2b8651a5) + -48 + + + + + (0x421933f6, 0x00705e90) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 192 + + + (0x7234b86b, 0x2b8651a5) + 240 + + + + + (0x5bbc727e, 0x1572a9cd) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 608.000000 + + + (0x7234b86b, 0x2b8651a5) + -288.000000 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x00002ae2, 0x00004e06)","childCount":0,"identifier":"(0x000016ae, 0x000058fc)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3},{"boxIdentifier":"(0x2e63c8c5, 0x79a8ae7b)","childCount":0,"identifier":"(0x00001d62, 0x00007def)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Online Use + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-accumulator.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-accumulator.lua new file mode 100644 index 0000000..ac8240d --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-accumulator.lua @@ -0,0 +1,200 @@ + +function arrayMax(a) + if #a == 0 then return nil, nil end + local maxIdx, maxValue = 0, a[0] + for i = 1, (#a -1 ) do + if maxValue < a[i] then + maxIdx, maxValue = i, a[i] + end + end + return maxIdx, maxValue +end + +-- For handling target fifo + +List = {} +function List.new () + return {first = 0, last = -1} +end + +function List.pushright (list, value) + local last = list.last + 1 + list.last = last + list[last] = value +end + +function List.popleft (list) + local first = list.first + if first > list.last then + error("list is empty") + end + local value = list[first] + list[first] = nil -- to allow garbage collection + list.first = first + 1 + return value +end + +function List.isempty (list) + if list.first > list.last then + return true + else + return false + end +end + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + segment_start = _G[box:get_setting(4)] + segment_stop = _G[box:get_setting(5)] + + -- 0 inactive, 1 segment started, 2 segment stopped (can vote) + segment_status = 0 + + -- the idea is to push the flash states to the fifo, and when predictions arrive (with some delay), they are matched in oldest-first fashion. + target_fifo = List.new() + + -- box:log("Info", string.format("pop %d %d", id[1], id[2])) + + row_votes = {} + col_votes = {} + + do_debug = false + +end + +-- this function is called when the box is uninitialized +function uninitialize(box) + +end + +function process(box) + -- loops until box is stopped + while box:keep_processing() do + + -- first, parse the timeline stream + for stimulation = 1, box:get_stimulation_count(2) do + -- gets the received stimulation + local identifier, date, duration = box:get_stimulation(2, 1) + -- discards it + box:remove_stimulation(2, 1) + + if identifier == segment_start then + if do_debug then + box:log("Info", string.format("Trial start")) + box:log("Info", string.format("Clear votes")) + end + -- zero the votes + col_votes = {} + row_votes = {} + target_fifo = List.new() + -- fixme fixed 20 + for i = 0,20 do + col_votes[i] = 0 + row_votes[i] = 0 + end + segment_status = 1 + end + + -- Does the identifier code a flash? if so, put into fifo + if segment_status == 1 and identifier >= row_base and identifier <= OVTK_StimulationId_LabelEnd then + + -- assume rows before cols + if identifier < col_base then + local t = {"row", identifier - row_base} + List.pushright(target_fifo,t) + if do_debug then + box:log("Info", string.format("Push row target %d", identifier - row_base )) + end + else + local t = {"col", identifier - col_base} + List.pushright(target_fifo,t) + if do_debug then + box:log("Info", string.format("Push col target %d", identifier - col_base )) + end + end + + + end + + if identifier == segment_stop then + if do_debug then + box:log("Info", string.format("Trial stop")) + end + segment_status = 2 + end + + end + + -- then parse the classifications + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets the received stimulation + local identifier, date, duration = box:get_stimulation(1, 1) + -- discards it + box:remove_stimulation(1, 1) + + -- Is it an in-class prediction? + if identifier == OVTK_StimulationId_Target then + local t = List.popleft(target_fifo) + if do_debug then + box:log("Info", string.format("Pred fifo %s %d is target", t[1], t[2])) + end + if t[1]=="row" then + row_votes[t[2]] = row_votes[t[2]] + 1 + else + col_votes[t[2]] = col_votes[t[2]] + 1 + end + end + + if identifier == OVTK_StimulationId_NonTarget then + local t = List.popleft(target_fifo) + if do_debug then + box:log("Info", string.format("Pred fifo %s %d is nontarget", t[1], t[2])) + end + end + + end + + if segment_status == 2 and List.isempty(target_fifo) then + -- output the vote after the segment end when we've matched all predictions + + local maxRowIdx, maxRowValue = arrayMax(row_votes) + local maxColIdx, maxColValue = arrayMax(col_votes) + + if maxRowValue == 0 and maxColValue == 0 then + box:log("Warning", string.format("Classifier predicted 'no p300' for all flashes of the trial")); + end + + if do_debug then + local rowVotes = 0 + local colVotes = 0 + for ir, val in pairs(row_votes) do + rowVotes = rowVotes + val + end + for ir, val in pairs(col_votes) do + colVotes = colVotes + val + end + + box:log("Info", string.format("Vote [%d %d] wt [%d,%d]", maxRowIdx+row_base, maxColIdx+col_base, maxRowValue, maxColValue)) + box:log("Info", string.format(" Total [%d %d]", rowVotes, colVotes)) + end + + + + local now = box:get_current_time() + + box:send_stimulation(1, maxRowIdx + row_base, now, 0) + box:send_stimulation(2, maxColIdx + col_base, now, 0) + + segment_status = 0 + end + + box:sleep() + end +end + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-filter-flash.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-filter-flash.lua new file mode 100644 index 0000000..9f13ff0 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-filter-flash.lua @@ -0,0 +1,61 @@ + +-- Picks out 'flashes' from a stimulation stream + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + box:set_filter_mode(1); + + state = 0 + + do_debug = false +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_SegmentStart then + state = 1 + elseif stimulation_id == OVTK_StimulationId_SegmentStop then + state = 0 + end + + -- If we're between 'rest start' and 'rest_stop', this specifies a target + if state == 1 and stimulation_id >= OVTK_StimulationId_LabelStart and stimulation_id <= OVTK_StimulationId_LabelEnd then + + box:send_stimulation(1, stimulation_id, stimulation_time, 0) + + if do_debug then + box:log("Info", string.format("Push a target %d at %f (now %f)", stimulation_id, stimulation_time, t)) + end + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-filter-target.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-filter-target.lua new file mode 100644 index 0000000..f8c92db --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-filter-target.lua @@ -0,0 +1,61 @@ + +-- Picks out 'targets' from a stimulation stream + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + state = 0 + + box:set_filter_mode(1); + + do_debug = false +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_RestStart then + state = 1 + elseif stimulation_id == OVTK_StimulationId_RestStop then + state = 0 + end + + -- If we're between 'rest start' and 'rest_stop', this specifies a target + if state == 1 and stimulation_id >= OVTK_StimulationId_LabelStart and stimulation_id <= OVTK_StimulationId_LabelEnd then + + box:send_stimulation(1, stimulation_id, stimulation_time, 0) + + if do_debug then + box:log("Info", string.format("Push a target %d at %f (now = %f)", stimulation_id, stimulation_time, t)) + end + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-launch.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-launch.lua new file mode 100644 index 0000000..48f728f --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-launch.lua @@ -0,0 +1,21 @@ + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + stim = _G[box:get_setting(2)] + launchTime = box:get_setting(3) + +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + box:send_stimulation(1, stim, launchTime, 0) + +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-stimulator.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-stimulator.lua new file mode 100644 index 0000000..ba142bd --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-stimulator.lua @@ -0,0 +1,150 @@ +-- This Lua script sends Stimulations to the speller visualization box for a p300-visual-speller +-- +-- Author : Tobias Baumann +-- Date : 2021-12-06 +-- Revised: 2021-21-07 + +--This function lets the box sleep until a fixed moment +function wait_until(box, time) + while box:get_current_time() < time do + box:sleep() + end +end + +--This function lets the box wait for a fixed duration +function wait_for(box, duration) + wait_until(box, box:get_current_time() + duration) +end + +--this function checks, wether value already is an element of the given stim_matrix +function is_element(matrix, value) + for i = 1, #matrix do + if #matrix == 0 then + return(false) + elseif value == matrix[i] then + return(true) + end + end + return(false) +end +--this function creates a sequence of stimulations by shuffeling the values of the given stim_matrix +function create_sequence(matrix) + math.randomseed(os.time()) + local stim_matrix = {} + local stim_code = 0 + local i = 1 + while i <= #matrix do + stim_code = matrix[math.random(1,#matrix)] + if is_element(stim_matrix, stim_code) == false then + stim_matrix[i] = stim_code + i = i + 1 + end + end + return(stim_matrix) +end + +-- this function is called when the box is initialized +function initialize(box) + --load stimulation codes + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + --load box settings + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + matrix_size = box:get_setting(4) + n_repetitions = box:get_setting(5) + flash_duration = box:get_setting(7) + noflash_duration = box:get_setting(8) + inter_repetition_delay = box:get_setting(9) + inter_trial_delay = box:get_setting(10) + send_toggle = _G[box:get_setting(11)] + time_to_send = box:get_setting(13) + + if box:get_setting(12) == 'true' then + free_spelling = true + n_trials = 1 + else + free_spelling = false + n_trials = box:get_setting(6) + end + + --Lua variables + send = false + row_stimcodes = {} + col_stimcodes = {} + for x = 1, matrix_size do + row_stimcodes[x] = row_base + x - 1 + end + for x = 1, matrix_size do + col_stimcodes[x] = col_base + x - 1 + end +end + +-- this function is called when the box is uninitialized +function uninitialize(box) + +end + +-- this function is called once by the box +function process(box) + while box:keep_processing() do + + if send then + for stimulation = 1, box:get_stimulation_count(1) do + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + if stimulation_id == send_toggle then + send = false + box:send_stimulation(1, OVTK_StimulationId_ExperimentStop ,box:get_current_time() , 0) + box:remove_stimulation(1, 1) + end + end + for trial = 1, n_trials do + if not send then + break + end + box:send_stimulation(1, OVTK_StimulationId_RestStart, box:get_current_time() , 0) + wait_for(box, inter_trial_delay) + box:send_stimulation(1, OVTK_StimulationId_RestStop, box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_TrialStart ,box:get_current_time() , 0) + for segment = 1, n_repetitions do + row_stimcodes = create_sequence(row_stimcodes) + col_stimcodes = create_sequence(col_stimcodes) + box:send_stimulation(1, OVTK_StimulationId_SegmentStart ,box:get_current_time() , 0) + for i = 1, matrix_size do + box:send_stimulation(1, row_stimcodes[i] ,box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStart ,box:get_current_time() , 0) + wait_for(box, flash_duration) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStop ,box:get_current_time() , 0) + wait_for(box, noflash_duration) + + box:send_stimulation(1, col_stimcodes[i] ,box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStart ,box:get_current_time() , 0) + wait_for(box, flash_duration) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStop ,box:get_current_time() , 0) + wait_for(box, noflash_duration) + end + box:send_stimulation(1, OVTK_StimulationId_SegmentStop ,box:get_current_time() , 0) + wait_for(box, inter_repetition_delay) + end + box:send_stimulation(1, OVTK_StimulationId_TrialStop ,box:get_current_time() , 0) + end + if not free_spelling then + box:send_stimulation(1, OVTK_StimulationId_ExperimentStop ,box:get_current_time() , 0) + send = false + end + else + for stimulation = 1, box:get_stimulation_count(1) do + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + if stimulation_id == send_toggle then + send = true + wait_for(box, time_to_send) + box:send_stimulation(1, OVTK_StimulationId_ExperimentStart ,box:get_current_time() , 0) + box:remove_stimulation(1, 1) + end + end + end + + -- releases cpu + box:sleep() + end +end \ No newline at end of file diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-target.lua b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-target.lua new file mode 100644 index 0000000..6b8d599 --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/scripts/p300-speller-target.lua @@ -0,0 +1,95 @@ +-- This Lua script generates target stimulations for the P300 visualization +-- box based on the matrix of letters / numbers a P300 speller has +-- +-- Author : Yann Renard, INRIA +-- Date : 2011-03-15 + +grid = +{ + { 'a', 'b', 'c', 'd', 'e', 'f' }, + { 'g', 'h', 'i', 'j', 'k', 'l' }, + { 'm', 'n', 'o', 'p', 'q', 'r' }, + { 's', 't', 'u', 'v', 'w', 'x' }, + { 'y', 'z', '1', '2', '3', '4' }, + { '5', '6', '7', '8', '9', '0' }, +} + +index = 0 + +function get_location(c) + for i = 1, 6 do + for j = 1, 6 do + if grid[i][j] == c then + return i, j + end + end + end + return 0, 0 +end + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + math.randomseed(os.time()) + target = box:get_setting(2) + row_base = _G[box:get_setting(3)] + col_base = _G[box:get_setting(4)] + delay = box:get_setting(5) + if target == "" then + for i = 1, 1000 do + a = math.random(1, #grid) + b = math.random(1, #grid[1]) + target = target .. grid[a][b] + end + end +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_RestStart then + + -- finds a new target + index = index + 1 + r, c = get_location(string.sub(target, index, index)) + + -- triggers the target + box:send_stimulation(1, row_base+r-1, t+delay, 0) + box:send_stimulation(1, col_base+c-1, t+delay, 0) + + elseif stimulation_id == OVTK_StimulationId_ExperimentStop then + + -- triggers train stimulation + box:send_stimulation(1, OVTK_StimulationId_Train, t+delay+1, 0) + + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/README.txt b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/README.txt new file mode 100644 index 0000000..ac04efc --- /dev/null +++ b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/README.txt @@ -0,0 +1,3 @@ + +The scenario will record its signals here. + diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/p300-xdawn-train.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/p300-xdawn-train.ov new file mode 100644 index 0000000..cd27305 Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/p300-xdawn-train.ov differ diff --git a/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/p300-xdawn-train2.ov b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/p300-xdawn-train2.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/p300-xdawn-train2.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/README.md b/Projekte/OpenVibe_THN-p300-bci-main/README.md new file mode 100644 index 0000000..1e5d3cc --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/README.md @@ -0,0 +1,11 @@ +# OpenVibe_THN-p300-bci + +Die Szenarien für das Taktile und das Visuelle BCI, basieren auf dem OpenVibeSzenrio p300-speller-xDAWN. +Die Ausführungsreihenfolge ist Acquisition -> train-xDAWN -> train-classifier -> online. + +p300-tactile: + +- benötigt die OpenVibe-Box https://github.com/Mattias2909/OpenVibe_THN_TactileBCI_UDPStimcodeSender zur Ansteuerung der Taktilos +- die 6x6 speller-Matrix des visuellen BCI ist hier durch eine 6x1 Matrix ersetzt, deren Elemente die anzusteuernden Taktilos repräsentieren +- Die StimulationCodes werden durch den UDPStimCodeSender geleitet und als UDP Nachricht an den Feather weitergeleitet um die Taktilos anzusteuern (Die Nachricht enthält dabei eine Zahl x = [1;6]) +- Zuerst wird der Target-Taktilo angesteuert und in folgedessen alle 6 Taktilos in zufälliger Reihenfolge mit einer festgelegten Anzahl von Wiederholungen und Trials diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-epoch-average.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-epoch-average.cfg new file mode 100644 index 0000000..d875a22 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-epoch-average.cfg @@ -0,0 +1,4 @@ + + Epoch block average + 1 + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-signal-decimation.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-signal-decimation.cfg new file mode 100644 index 0000000..17f549b --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-signal-decimation.cfg @@ -0,0 +1,3 @@ + + 2 + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-spatial-trainer.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-spatial-trainer.cfg new file mode 100644 index 0000000..877b7b3 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-spatial-trainer.cfg @@ -0,0 +1,6 @@ + + OVTK_StimulationId_ExperimentStop + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + 2 + true + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-stimulator.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-stimulator.cfg new file mode 100644 index 0000000..108040b --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-stimulator.cfg @@ -0,0 +1,15 @@ + + ${Player_ScenarioDirectory}/scripts/p300-tactile-stimulator.lua + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_07 + 6 + 6 + 6 + 0.2 + 0.1 + 1.0 + 3.0 + OVTK_StimulationId_Label_00 + + 20 + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-visualization.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-visualization.cfg new file mode 100644 index 0000000..ff79a80 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-tactile-visualization.cfg @@ -0,0 +1,17 @@ + + ${Player_ScenarioDirectory}/p300-tactile.ui + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_07 + 5,5,5 + 100,100,100 + 60 + 0,0,0 + 25,25,25 + 40 + 20,20,70 + 10,10,30 + 40 + 10,40,10 + 60,100,60 + 40 + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-reader.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-reader.cfg new file mode 100644 index 0000000..eb40b5a --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-reader.cfg @@ -0,0 +1,3 @@ + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-writer.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-writer.cfg new file mode 100644 index 0000000..8ec690d --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/stream-writer.cfg @@ -0,0 +1,4 @@ + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-classifier.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-classifier.cfg new file mode 100644 index 0000000..8afb5db --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + -1.065449e-02 -8.433724e-03 -8.073272e-03 -9.017780e-03 -9.777354e-03 -8.944181e-03 -6.230830e-03 -2.758279e-03 -3.235140e-04 -1.352536e-04 -1.926088e-03 -4.083097e-03 -4.692498e-03 -2.753402e-03 1.244794e-03 5.680807e-03 8.762294e-03 9.456782e-03 7.915370e-03 5.287581e-03 3.118571e-03 2.619630e-03 4.094226e-03 6.768748e-03 9.174244e-03 9.972830e-03 8.797661e-03 6.541000e-03 4.799351e-03 4.768071e-03 6.344103e-03 8.124675e-03 8.363765e-03 6.224775e-03 2.424195e-03 -1.196322e-03 -2.851123e-03 -1.915709e-03 7.530751e-04 3.396183e-03 4.368668e-03 2.963365e-03 -3.392516e-04 -4.198203e-03 -7.079456e-03 -7.969700e-03 -6.861420e-03 -4.777039e-03 -3.239701e-03 -3.388286e-03 -5.236641e-03 -7.610737e-03 -8.910818e-03 -8.244070e-03 -6.124523e-03 -4.181914e-03 -4.034294e-03 -6.119988e-03 -9.335163e-03 -1.173262e-02 -1.177178e-02 -9.257865e-03 -5.395932e-03 -2.028599e-03 -6.145408e-04 -1.541484e-03 -4.049135e-03 -6.678852e-03 -7.982786e-03 -7.200846e-03 -4.638517e-03 -1.537715e-03 5.851017e-04 8.427597e-04 -4.245259e-04 -1.824311e-03 -1.845317e-03 4.752100e-05 2.955936e-03 5.119501e-03 5.149311e-03 3.042552e-03 2.428930e-04 -1.287825e-03 -3.188279e-04 2.922254e-03 6.954850e-03 9.945371e-03 1.068628e-02 9.125222e-03 6.276736e-03 3.671370e-03 2.627163e-03 3.629881e-03 6.079055e-03 8.573383e-03 9.682944e-03 8.828090e-03 6.696685e-03 4.831422e-03 4.573125e-03 6.068291e-03 8.086901e-03 8.844321e-03 7.269914e-03 3.808607e-03 1.766968e-04 -1.741630e-03 -1.074637e-03 1.554038e-03 4.470369e-03 5.937520e-03 5.050437e-03 2.094611e-03 -1.694535e-03 -4.761485e-03 -5.956829e-03 -5.080199e-03 -2.996414e-03 -1.197241e-03 -9.487884e-04 -2.483538e-03 -4.794599e-03 -6.271835e-03 -5.825002e-03 -3.713072e-03 -1.435526e-03 -7.048042e-04 -2.216943e-03 -5.109876e-03 -7.496883e-03 -7.681639e-03 -5.207139e-03 -1.076147e-03 2.901702e-03 5.134082e-03 5.021532e-03 3.142139e-03 8.761657e-04 -2.795461e-04 5.861766e-04 3.352089e-03 6.897349e-03 9.682793e-03 1.064804e-02 9.903735e-03 8.705992e-03 8.625191e-03 1.041981e-02 1.342298e-02 1.594116e-02 1.642946e-02 1.460972e-02 2.817637e-02 -4.840407e-02 -9.976585e-02 -6.985380e-02 1.491242e-02 7.155328e-02 4.443439e-02 -3.797191e-02 -9.137803e-02 -6.061353e-02 2.481303e-02 8.074376e-02 5.333914e-02 -2.723268e-02 -7.844005e-02 -4.951793e-02 2.779827e-02 7.315535e-02 4.066951e-02 -3.419586e-02 -7.182737e-02 -3.117873e-02 4.726139e-02 8.269434e-02 3.734128e-02 -4.375073e-02 -7.782342e-02 -2.888324e-02 5.475251e-02 8.871436e-02 3.806794e-02 -4.683099e-02 -8.083197e-02 -2.985476e-02 5.485205e-02 8.865112e-02 3.879119e-02 -4.340915e-02 -7.558262e-02 -2.799611e-02 4.736031e-02 7.128999e-02 1.905085e-02 -5.465944e-02 -7.273114e-02 -1.577054e-02 5.727698e-02 6.950056e-02 5.584476e-03 -7.132660e-02 -8.340662e-02 -1.782299e-02 5.923858e-02 6.914402e-02 6.673236e-04 -7.811252e-02 -8.828058e-02 -1.966468e-02 5.907948e-02 6.992799e-02 3.895191e-03 -7.095231e-02 -7.936229e-02 -1.505279e-02 5.425062e-02 5.727324e-02 -7.536283e-03 -7.101590e-02 -6.525187e-02 5.747159e-03 6.955956e-02 5.973993e-02 -1.519179e-02 -7.931864e-02 -6.639334e-02 1.206213e-02 7.749772e-02 6.363009e-02 -1.607782e-02 -8.150926e-02 -6.658777e-02 1.412134e-02 8.033233e-02 6.715597e-02 -9.949235e-03 -7.195228e-02 -5.701572e-02 1.730200e-02 7.342040e-02 5.409701e-02 -1.892744e-02 -6.798887e-02 -4.022698e-02 3.725145e-02 8.474108e-02 5.200611e-02 -2.921481e-02 -7.662697e-02 -4.121790e-02 4.202358e-02 8.876384e-02 5.067273e-02 -3.518262e-02 -8.334376e-02 -4.609787e-02 3.849587e-02 8.526104e-02 4.784015e-02 -3.525063e-02 -8.071039e-02 -4.526235e-02 3.132817e-02 6.832485e-02 2.741037e-02 -4.827900e-02 -7.926540e-02 -3.230679e-02 4.468368e-02 7.155341e-02 1.865642e-02 -6.164462e-02 -8.763346e-02 -3.174667e-02 5.042964e-02 7.585444e-02 1.823988e-02 -6.483002e-02 -8.972530e-02 -3.110719e-02 5.265307e-02 7.859125e-02 2.267007e-02 -5.690036e-02 -7.962156e-02 -2.437293e-02 5.034890e-02 6.756062e-02 1.109532e-02 -5.827743e-02 -6.613570e-02 -1.759823e-03 7.019885e-02 7.602720e-02 9.305781e-03 -6.132959e-02 -6.165544e-02 1.205372e-02 8.825910e-02 9.222659e-02 2.198583e-02 -4.914157e-02 -4.633916e-02 3.125785e-02 + -1.96568 + + + 2.409086e-03 2.198461e-03 2.433915e-03 2.786778e-03 2.835634e-03 2.319346e-03 1.319269e-03 2.463177e-04 -3.895101e-04 -3.047498e-04 3.468884e-04 1.037339e-03 1.182314e-03 5.141635e-04 -7.405742e-04 -2.000163e-03 -2.688242e-03 -2.575711e-03 -1.890107e-03 -1.145624e-03 -8.253918e-04 -1.117923e-03 -1.846505e-03 -2.601419e-03 -2.980041e-03 -2.804876e-03 -2.215824e-03 -1.592960e-03 -1.341206e-03 -1.641963e-03 -2.315090e-03 -2.895642e-03 -2.908464e-03 -2.183725e-03 -1.001989e-03 4.985026e-05 4.373304e-04 1.995234e-05 -8.552968e-04 -1.572232e-03 -1.627130e-03 -9.223903e-04 2.051332e-04 1.213669e-03 1.678961e-03 1.513395e-03 9.761424e-04 4.988545e-04 4.389008e-04 8.878154e-04 1.624427e-03 2.236657e-03 2.359095e-03 1.905259e-03 1.152863e-03 6.043322e-04 6.804864e-04 1.432049e-03 2.469744e-03 3.183628e-03 3.123699e-03 2.291345e-03 1.143598e-03 3.074599e-04 1.973655e-04 7.838641e-04 1.645497e-03 2.244436e-03 2.237862e-03 1.644344e-03 7.956552e-04 1.293362e-04 -5.469842e-05 2.477126e-04 7.454096e-04 1.014249e-03 7.474585e-04 -3.950141e-05 -9.827824e-04 -1.567896e-03 -1.452945e-03 -7.137900e-04 1.671162e-04 5.851543e-04 1.958459e-04 -8.597379e-04 -2.040156e-03 -2.740986e-03 -2.658219e-03 -1.946669e-03 -1.092818e-03 -6.082479e-04 -7.437185e-04 -1.380879e-03 -2.134181e-03 -2.581622e-03 -2.495294e-03 -1.960393e-03 -1.327201e-03 -1.013934e-03 -1.254147e-03 -1.930003e-03 -2.609070e-03 -2.792642e-03 -2.239575e-03 -1.153674e-03 -8.997446e-05 3.806971e-04 3.515627e-05 -8.551915e-04 -1.694220e-03 -1.931892e-03 -1.389896e-03 -3.407786e-04 6.858343e-04 1.224642e-03 1.122730e-03 5.874328e-04 3.736968e-05 -1.413305e-04 1.960100e-04 8.770850e-04 1.506936e-03 1.692687e-03 1.287216e-03 5.082916e-04 -1.620141e-04 -2.654173e-04 3.252110e-04 1.288027e-03 2.025447e-03 2.033382e-03 1.226029e-03 -3.785326e-06 -1.029815e-03 -1.376807e-03 -9.922784e-04 -2.444616e-04 3.261782e-04 3.269822e-04 -2.867881e-04 -1.224122e-03 -2.046137e-03 -2.412773e-03 -2.262579e-03 -1.842008e-03 -1.567873e-03 -1.783824e-03 -2.537089e-03 -3.514779e-03 -4.205952e-03 -4.216115e-03 -3.541297e-03 -6.581993e-03 -1.424993e-03 1.320168e-02 2.098451e-02 1.257719e-02 -4.498017e-03 -1.334755e-02 -5.064049e-03 1.184138e-02 1.976790e-02 9.834123e-03 -8.909432e-03 -1.834723e-02 -9.407664e-03 8.846172e-03 1.831813e-02 9.958901e-03 -7.415151e-03 -1.633349e-02 -8.395699e-03 7.513099e-03 1.468631e-02 5.845724e-03 -9.542276e-03 -1.527563e-02 -5.316914e-03 9.889072e-03 1.422081e-02 2.683462e-03 -1.316291e-02 -1.689959e-02 -4.197565e-03 1.239718e-02 1.595179e-02 2.360225e-03 -1.523540e-02 -1.945396e-02 -6.067104e-03 1.177606e-02 1.674625e-02 4.605319e-03 -1.184376e-02 -1.594835e-02 -4.007871e-03 1.134547e-02 1.440262e-02 2.527307e-03 -1.134707e-02 -1.229705e-02 1.030356e-03 1.495831e-02 1.495232e-02 8.171389e-04 -1.282625e-02 -1.144988e-02 4.289189e-03 1.883631e-02 1.734606e-02 8.461666e-04 -1.451750e-02 -1.354941e-02 2.777988e-03 1.831901e-02 1.793993e-02 2.538220e-03 -1.219256e-02 -1.181013e-02 2.411256e-03 1.520067e-02 1.319585e-02 -1.381968e-03 -1.325155e-02 -1.005060e-02 4.779710e-03 1.552042e-02 1.049956e-02 -5.626390e-03 -1.640334e-02 -1.043949e-02 6.651778e-03 1.760798e-02 1.093456e-02 -7.266235e-03 -1.917721e-02 -1.305262e-02 5.013481e-03 1.721660e-02 1.185747e-02 -5.142642e-03 -1.654127e-02 -1.131615e-02 4.418310e-03 1.406467e-02 7.733377e-03 -7.717027e-03 -1.599491e-02 -8.378094e-03 7.184297e-03 1.428276e-02 5.125309e-03 -1.115809e-02 -1.768244e-02 -7.186074e-03 1.020478e-02 1.696643e-02 5.939719e-03 -1.218340e-02 -1.938738e-02 -8.350124e-03 1.022358e-02 1.835040e-02 8.721314e-03 -8.242182e-03 -1.520539e-02 -5.472187e-03 1.055541e-02 1.637952e-02 6.413477e-03 -8.459788e-03 -1.235637e-02 -9.556758e-04 1.396288e-02 1.671446e-02 4.074063e-03 -1.111921e-02 -1.299646e-02 9.252366e-04 1.683358e-02 1.841796e-02 3.477969e-03 -1.357535e-02 -1.601966e-02 -1.560836e-03 1.538256e-02 1.814330e-02 4.393229e-03 -1.183847e-02 -1.457514e-02 -1.975018e-03 1.219391e-02 1.295218e-02 -5.180932e-04 -1.425949e-02 -1.416985e-02 -7.052536e-04 1.153933e-02 8.964682e-03 -6.787161e-03 -2.025163e-02 -1.794231e-02 -2.400931e-03 1.001589e-02 5.587103e-03 + -0.191969 + + + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-spatial-filter.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-spatial-filter.cfg new file mode 100644 index 0000000..03b1669 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -2.559252e+00 -3.708117e+00 8.689272e-01 6.167160e-03 -6.747036e+00 3.825336e+00 -1.562881e+00 -1.609973e+00 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-xdawn-train.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Jan/p300-xdawn-train.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-classifier.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-classifier.cfg new file mode 100644 index 0000000..dc3ff8d --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 5.023280e-02 3.764423e-02 2.498992e-02 2.205262e-02 2.781807e-02 3.100063e-02 2.220079e-02 4.864926e-03 -6.996999e-03 -2.782131e-03 1.307792e-02 2.415620e-02 1.749764e-02 -3.517305e-03 -2.184482e-02 -2.273431e-02 -7.547872e-03 7.923395e-03 8.754577e-03 -5.322100e-03 -2.083653e-02 -2.454778e-02 -1.606082e-02 -6.744798e-03 -6.945412e-03 -1.525904e-02 -2.092805e-02 -1.635047e-02 -6.035751e-03 -2.167437e-03 -1.122313e-02 -2.589318e-02 -3.143947e-02 -2.066732e-02 -2.266003e-03 6.603369e-03 -3.206754e-03 -2.346435e-02 -3.586774e-02 -2.919879e-02 -9.697582e-03 5.313045e-03 4.063567e-03 -9.103153e-03 -1.914333e-02 -1.557472e-02 -2.063816e-03 8.774287e-03 9.161186e-03 3.876580e-03 4.122179e-03 1.449580e-02 2.727198e-02 3.038508e-02 2.084996e-02 9.205450e-03 9.563690e-03 2.490662e-02 4.279603e-02 4.661100e-02 3.171245e-02 1.052025e-02 1.132059e-03 1.035146e-02 2.758426e-02 3.536693e-02 2.598944e-02 8.003711e-03 -3.170551e-03 -5.163085e-04 8.774646e-03 1.209871e-02 5.001533e-03 -4.754784e-03 -6.489672e-03 1.033872e-03 7.657191e-03 2.665318e-03 -1.295428e-02 -2.616189e-02 -2.461127e-02 -9.825830e-03 2.989044e-03 -8.681673e-04 -2.107953e-02 -4.196602e-02 -4.704027e-02 -3.443330e-02 -1.824967e-02 -1.475900e-02 -2.712809e-02 -4.343855e-02 -4.922771e-02 -4.149289e-02 -3.029197e-02 -2.716932e-02 -3.300389e-02 -3.791560e-02 -3.286537e-02 -2.022988e-02 -1.178634e-02 -1.596223e-02 -2.784870e-02 -3.304626e-02 -2.215497e-02 -1.275732e-03 1.271172e-02 8.152025e-03 -9.721702e-03 -2.324261e-02 -1.887286e-02 1.531826e-04 1.731281e-02 1.874798e-02 5.958592e-03 -6.839537e-03 -7.315641e-03 3.388633e-03 1.332515e-02 1.304139e-02 5.273002e-03 1.096225e-03 7.085723e-03 1.749042e-02 2.006193e-02 9.591224e-03 -5.301579e-03 -9.948866e-03 1.342265e-03 1.839647e-02 2.410050e-02 1.092700e-02 -1.123327e-02 -2.399447e-02 -1.772383e-02 -3.927396e-04 1.043981e-02 4.419368e-03 -1.248552e-02 -2.496701e-02 -2.379538e-02 -1.405836e-02 -8.532157e-03 -1.383604e-02 -2.402199e-02 -2.798091e-02 -2.235633e-02 -1.589493e-02 -2.029512e-02 -3.708372e-02 -5.467323e-02 -5.946973e-02 -5.014721e-02 -5.135034e-02 -1.900345e-02 1.366188e-02 1.959101e-02 -1.804682e-03 -2.429428e-02 -2.170582e-02 5.431877e-03 3.065392e-02 2.887963e-02 2.315960e-03 -2.156155e-02 -1.791586e-02 1.014777e-02 3.472365e-02 3.149396e-02 4.393186e-03 -1.859986e-02 -1.418825e-02 1.239693e-02 3.282673e-02 2.483622e-02 -4.716395e-03 -2.653900e-02 -1.861832e-02 1.131469e-02 3.350283e-02 2.624641e-02 -2.261078e-03 -2.253725e-02 -1.400256e-02 1.407767e-02 3.224064e-02 2.113989e-02 -8.497038e-03 -2.669075e-02 -1.477834e-02 1.548725e-02 3.381788e-02 2.213180e-02 -7.210658e-03 -2.425423e-02 -1.219759e-02 1.541762e-02 2.866546e-02 1.207253e-02 -1.922749e-02 -3.462451e-02 -1.909920e-02 1.144094e-02 2.623005e-02 1.078501e-02 -1.857256e-02 -3.154676e-02 -1.481536e-02 1.449616e-02 2.651654e-02 9.356060e-03 -1.858082e-02 -2.730675e-02 -5.890479e-03 2.626765e-02 3.904800e-02 2.210192e-02 -4.883274e-03 -1.257383e-02 7.854207e-03 3.564681e-02 4.177738e-02 1.884071e-02 -1.107272e-02 -1.867073e-02 2.752031e-03 3.041218e-02 3.510291e-02 1.076276e-02 -1.953810e-02 -2.722240e-02 -7.286541e-03 1.683023e-02 1.749296e-02 -8.601768e-03 -3.680850e-02 -3.955074e-02 -1.443572e-02 1.324683e-02 1.620245e-02 -7.216621e-03 -3.158729e-02 -3.061650e-02 -4.145223e-03 2.167276e-02 2.121186e-02 -4.217704e-03 -2.745308e-02 -2.305294e-02 6.717297e-03 3.400791e-02 3.350172e-02 7.915661e-03 -1.504487e-02 -1.109404e-02 1.588940e-02 3.800984e-02 3.208902e-02 3.573422e-03 -1.884887e-02 -1.244792e-02 1.634524e-02 3.843132e-02 3.161122e-02 3.056976e-03 -1.822127e-02 -1.116093e-02 1.579401e-02 3.341724e-02 2.179318e-02 -9.012830e-03 -2.891684e-02 -1.834306e-02 1.179193e-02 3.104644e-02 2.024197e-02 -9.259412e-03 -2.737120e-02 -1.606605e-02 1.230839e-02 2.783493e-02 1.380501e-02 -1.602520e-02 -3.136247e-02 -1.628020e-02 1.446133e-02 3.035242e-02 1.609036e-02 -1.302899e-02 -2.695394e-02 -1.171226e-02 1.631004e-02 2.725874e-02 8.601588e-03 -2.169876e-02 -3.318902e-02 -1.382094e-02 1.776046e-02 3.110367e-02 1.480713e-02 -1.205592e-02 -1.951980e-02 2.722027e-03 3.497552e-02 4.791346e-02 3.277780e-02 + -2.00902 + + + -1.037856e-02 -9.587372e-03 -4.510515e-03 -4.814465e-04 -1.365595e-03 -5.307766e-03 -6.799116e-03 -2.841571e-03 3.416342e-03 5.637051e-03 9.864054e-04 -6.398818e-03 -9.047329e-03 -3.528325e-03 5.816383e-03 1.073260e-02 6.907910e-03 -1.857532e-03 -7.285352e-03 -4.497621e-03 3.557755e-03 9.317476e-03 8.047500e-03 2.084028e-03 -2.105994e-03 -7.112330e-04 3.832027e-03 5.934121e-03 3.114346e-03 -1.290034e-03 -1.834192e-03 2.879581e-03 8.248020e-03 8.227173e-03 1.835395e-03 -5.240094e-03 -5.937098e-03 1.082545e-03 9.706521e-03 1.199168e-02 5.757992e-03 -3.294196e-03 -7.046597e-03 -2.647745e-03 5.059606e-03 8.552999e-03 4.922054e-03 -1.775570e-03 -5.129024e-03 -2.960633e-03 8.728988e-04 1.059963e-03 -3.255278e-03 -7.546460e-03 -6.928465e-03 -1.749503e-03 2.329923e-03 1.201201e-04 -7.353756e-03 -1.327471e-02 -1.156397e-02 -3.108681e-03 4.681805e-03 4.810232e-03 -2.592512e-03 -1.037811e-02 -1.122744e-02 -4.521716e-03 3.408389e-03 5.672458e-03 1.361561e-03 -4.147783e-03 -5.066912e-03 -1.019626e-03 3.079306e-03 2.668320e-03 -1.427190e-03 -3.930864e-03 -1.003416e-03 5.235001e-03 8.531200e-03 5.015074e-03 -2.325229e-03 -6.092404e-03 -1.715015e-03 7.725187e-03 1.409329e-02 1.189451e-02 3.564586e-03 -2.861733e-03 -1.425412e-03 6.249423e-03 1.288481e-02 1.277505e-02 7.047876e-03 1.922850e-03 2.097498e-03 6.173866e-03 8.666068e-03 6.198038e-03 1.214162e-03 -7.344411e-04 2.783398e-03 8.041625e-03 8.751776e-03 2.752664e-03 -5.190361e-03 -7.684737e-03 -2.054215e-03 6.651326e-03 1.021963e-02 5.107300e-03 -4.128438e-03 -9.193238e-03 -5.936476e-03 1.940963e-03 6.815780e-03 4.602046e-03 -1.684735e-03 -5.536379e-03 -3.731647e-03 7.179829e-04 2.261927e-03 -9.941728e-04 -5.228404e-03 -5.151383e-03 -1.312769e-05 5.132525e-03 4.498342e-03 -2.153442e-03 -8.655338e-03 -8.248464e-03 -4.218934e-04 8.165288e-03 9.855854e-03 3.328661e-03 -5.109280e-03 -7.563670e-03 -2.002472e-03 6.122299e-03 9.462057e-03 5.849113e-03 -1.070508e-04 -2.162151e-03 1.199286e-03 5.677542e-03 6.191633e-03 2.519113e-03 -4.758773e-04 1.751792e-03 8.182062e-03 1.287109e-02 1.107154e-02 1.716072e-02 1.179036e-02 -2.955288e-03 -1.311528e-02 -9.246707e-03 3.993599e-03 1.262045e-02 7.569479e-03 -6.111183e-03 -1.448840e-02 -9.030955e-03 4.643642e-03 1.249266e-02 6.389258e-03 -7.569885e-03 -1.527489e-02 -8.986191e-03 4.797178e-03 1.201201e-02 5.417112e-03 -8.016324e-03 -1.426516e-02 -6.646021e-03 7.281601e-03 1.338014e-02 5.362930e-03 -8.742517e-03 -1.471380e-02 -6.575543e-03 7.352504e-03 1.295972e-02 4.719211e-03 -8.727228e-03 -1.345260e-02 -4.506541e-03 9.014399e-03 1.326079e-02 3.789261e-03 -9.877897e-03 -1.394835e-02 -4.407106e-03 8.927542e-03 1.247135e-02 2.767611e-03 -9.996175e-03 -1.244389e-02 -1.749113e-03 1.139971e-02 1.366509e-02 2.680941e-03 -1.048235e-02 -1.254687e-02 -1.515896e-03 1.132367e-02 1.291797e-02 1.729481e-03 -1.075579e-02 -1.181213e-02 -5.003473e-04 1.136841e-02 1.130859e-02 -1.064107e-03 -1.360765e-02 -1.401215e-02 -2.319946e-03 9.173649e-03 8.525008e-03 -3.637077e-03 -1.476764e-02 -1.326897e-02 -4.086879e-04 1.090651e-02 9.277374e-03 -3.531811e-03 -1.433760e-02 -1.192684e-02 1.549097e-03 1.278627e-02 1.088121e-02 -1.601629e-03 -1.132586e-02 -7.866359e-03 5.605601e-03 1.554661e-02 1.187475e-02 -1.721247e-03 -1.152669e-02 -7.773158e-03 5.430763e-03 1.434519e-02 9.670841e-03 -3.940133e-03 -1.265736e-02 -7.650954e-03 5.823980e-03 1.374339e-02 7.627544e-03 -6.756626e-03 -1.520422e-02 -9.490116e-03 4.294903e-03 1.198153e-02 5.762432e-03 -7.893570e-03 -1.491077e-02 -8.028424e-03 5.760681e-03 1.234784e-02 4.925332e-03 -9.045777e-03 -1.543249e-02 -7.830977e-03 5.933881e-03 1.183938e-02 4.009536e-03 -9.291177e-03 -1.414233e-02 -5.256639e-03 8.542739e-03 1.328011e-02 4.094795e-03 -9.748802e-03 -1.424343e-02 -4.864424e-03 8.857950e-03 1.307279e-02 3.713535e-03 -9.409888e-03 -1.268625e-02 -2.639611e-03 1.050893e-02 1.328599e-02 2.742399e-03 -1.051170e-02 -1.311188e-02 -2.548509e-03 1.031480e-02 1.237425e-02 1.684543e-03 -1.057394e-02 -1.157095e-02 -1.220668e-05 1.245740e-02 1.309567e-02 1.075128e-03 -1.162555e-02 -1.238415e-02 -7.638310e-04 1.106519e-02 1.073219e-02 -1.758508e-03 -1.410179e-02 -1.431623e-02 + -0.192624 + + + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-spatial-filter.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-spatial-filter.cfg new file mode 100644 index 0000000..a4c4c7d --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -1.197627e+00 2.105600e-01 -2.502675e+00 -6.337555e-01 5.800950e-01 5.214162e+00 -1.198762e-01 1.296027e+00 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-xdawn-train.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Nicole/p300-xdawn-train.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-classifier.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-classifier.cfg new file mode 100644 index 0000000..b5b3e61 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 1.992349e-04 -7.101522e-02 -6.101115e-02 1.837456e-02 8.451950e-02 6.890552e-02 -1.273989e-02 -7.677335e-02 -5.759445e-02 2.487486e-02 8.539484e-02 6.074976e-02 -2.513950e-02 -8.515548e-02 -5.781966e-02 2.961841e-02 8.844873e-02 5.861412e-02 -3.006978e-02 -8.804303e-02 -5.690836e-02 3.137926e-02 8.721030e-02 5.446974e-02 -3.273200e-02 -8.533920e-02 -5.034878e-02 3.543156e-02 8.354213e-02 4.463870e-02 -4.107945e-02 -8.529944e-02 -4.234759e-02 4.375059e-02 8.421183e-02 3.655660e-02 -5.143394e-02 -9.009501e-02 -3.943200e-02 4.964065e-02 8.673025e-02 3.388695e-02 -5.561893e-02 -9.127523e-02 -3.719357e-02 5.160887e-02 8.533880e-02 3.067820e-02 -5.576284e-02 -8.561326e-02 -2.891653e-02 5.572887e-02 8.157143e-02 2.263129e-02 -5.986401e-02 -8.047555e-02 -1.737311e-02 6.503794e-02 8.198488e-02 1.536590e-02 -6.720587e-02 -8.113447e-02 -1.134800e-02 7.183194e-02 8.395275e-02 1.238461e-02 -7.063420e-02 -8.126964e-02 -9.154502e-03 7.229510e-02 8.068305e-02 8.270836e-03 -7.065540e-02 -7.588764e-02 -3.005205e-03 7.263436e-02 7.338773e-02 -1.152449e-03 -7.395180e-02 -6.973003e-02 7.629030e-03 7.881926e-02 7.031543e-02 -1.001845e-02 -8.044251e-02 -6.861530e-02 1.428943e-02 8.445408e-02 7.049683e-02 -1.381592e-02 -8.337001e-02 -6.808107e-02 1.603180e-02 8.335617e-02 6.582881e-02 -1.810695e-02 -8.281586e-02 -6.304173e-02 1.976960e-02 7.994039e-02 5.554372e-02 -2.823412e-02 -8.512472e-02 -5.642925e-02 2.857394e-02 8.243361e-02 4.916468e-02 -3.801390e-02 -9.014055e-02 -5.327591e-02 3.606835e-02 8.764745e-02 4.919107e-02 -4.028334e-02 -8.996025e-02 -4.941169e-02 4.031952e-02 8.864850e-02 4.755458e-02 -3.996037e-02 -8.420444e-02 -4.040029e-02 4.598750e-02 8.624931e-02 3.941727e-02 -4.591090e-02 -8.161477e-02 -3.061025e-02 5.489345e-02 8.673841e-02 3.127371e-02 -5.570341e-02 -8.554285e-02 -2.730365e-02 6.022422e-02 8.799954e-02 2.731039e-02 -6.083064e-02 -8.753615e-02 -2.624987e-02 6.046999e-02 8.473959e-02 2.262749e-02 -6.196672e-02 -8.288187e-02 -1.956483e-02 6.242056e-02 7.890095e-02 1.334653e-02 -6.639037e-02 -7.786407e-02 -8.791755e-03 7.010557e-02 -5.615247e-04 7.483156e-02 6.284848e-02 -2.304054e-02 -9.388252e-02 -7.630811e-02 1.245716e-02 8.227777e-02 6.236127e-02 -2.626415e-02 -9.218231e-02 -6.707967e-02 2.425210e-02 8.902756e-02 6.117237e-02 -3.105858e-02 -9.368062e-02 -6.273613e-02 3.045338e-02 9.114664e-02 5.770379e-02 -3.565109e-02 -9.379946e-02 -5.769990e-02 3.557369e-02 9.089105e-02 5.224208e-02 -4.021881e-02 -9.142095e-02 -4.865274e-02 4.458068e-02 9.312595e-02 4.756963e-02 -4.514629e-02 -8.967265e-02 -3.980462e-02 5.408174e-02 9.629405e-02 4.354225e-02 -5.067760e-02 -9.046333e-02 -3.526629e-02 5.869814e-02 9.568188e-02 3.794305e-02 -5.586529e-02 -9.056170e-02 -3.143582e-02 6.056010e-02 9.121830e-02 2.926055e-02 -6.190468e-02 -8.916862e-02 -2.494715e-02 6.468354e-02 8.765063e-02 2.013571e-02 -6.897417e-02 -8.848470e-02 -1.822506e-02 7.011663e-02 8.607157e-02 1.283464e-02 -7.536013e-02 -8.880163e-02 -1.378228e-02 7.334513e-02 8.392634e-02 7.302760e-03 -7.842094e-02 -8.606398e-02 -8.179913e-03 7.557069e-02 7.987519e-02 8.068346e-04 -8.038784e-02 -8.048918e-02 6.053229e-04 7.985220e-02 7.607283e-02 -6.937963e-03 -8.420552e-02 -7.645033e-02 8.728067e-03 8.439631e-02 7.298832e-02 -1.436799e-02 -8.896829e-02 -7.488045e-02 1.360530e-02 8.646818e-02 6.965921e-02 -1.948975e-02 -9.002703e-02 -7.013510e-02 1.976814e-02 8.808818e-02 6.564250e-02 -2.382641e-02 -8.814341e-02 -6.104658e-02 3.007882e-02 9.227659e-02 6.215646e-02 -2.919914e-02 -8.795594e-02 -5.350611e-02 3.939227e-02 9.591337e-02 5.796964e-02 -3.631159e-02 -9.126768e-02 -5.118437e-02 4.284935e-02 9.475875e-02 5.136447e-02 -4.348054e-02 -9.367112e-02 -4.881053e-02 4.458432e-02 9.077585e-02 4.258715e-02 -5.058381e-02 -9.344767e-02 -4.230373e-02 5.032885e-02 8.950351e-02 3.502797e-02 -5.734648e-02 -9.288521e-02 -3.480497e-02 5.791345e-02 9.059256e-02 2.956071e-02 -6.327357e-02 -9.339522e-02 -3.004358e-02 6.234892e-02 8.976243e-02 2.436153e-02 -6.722092e-02 -9.188361e-02 -2.492409e-02 6.498266e-02 8.605785e-02 1.710047e-02 -7.106021e-02 -8.812765e-02 -1.667591e-02 7.010703e-02 8.335692e-02 9.505115e-03 -7.575139e-02 + -1.86754 + + + 4.520025e-03 1.860010e-02 1.121634e-02 -9.526612e-03 -2.206935e-02 -1.350048e-02 7.332846e-03 1.904633e-02 9.740392e-03 -1.077739e-02 -2.109266e-02 -1.024066e-02 1.091980e-02 2.073750e-02 8.976156e-03 -1.253802e-02 -2.181898e-02 -9.125094e-03 1.298347e-02 2.226882e-02 9.350535e-03 -1.275495e-02 -2.180553e-02 -8.833959e-03 1.287559e-02 2.139641e-02 8.432157e-03 -1.242006e-02 -1.973092e-02 -6.162925e-03 1.415248e-02 2.024580e-02 5.886213e-03 -1.402755e-02 -1.880432e-02 -3.288592e-03 1.672094e-02 2.058894e-02 4.047893e-03 -1.624421e-02 -1.956902e-02 -2.303597e-03 1.823352e-02 2.125923e-02 3.603501e-03 -1.704786e-02 -2.005707e-02 -2.692211e-03 1.723442e-02 1.955385e-02 2.184331e-03 -1.695378e-02 -1.838230e-02 -9.491761e-04 1.714693e-02 1.714554e-02 -9.826170e-04 -1.851984e-02 -1.726815e-02 1.670249e-03 1.889736e-02 1.655722e-02 -3.268034e-03 -2.048766e-02 -1.740754e-02 3.156418e-03 2.057706e-02 1.727459e-02 -3.443324e-03 -2.071028e-02 -1.722719e-02 3.280705e-03 1.997974e-02 1.615205e-02 -3.915268e-03 -1.951488e-02 -1.477461e-02 5.184486e-03 1.965515e-02 1.368664e-02 -6.549141e-03 -2.011724e-02 -1.287366e-02 7.905032e-03 2.087043e-02 1.247629e-02 -9.002567e-03 -2.173394e-02 -1.254926e-02 9.523483e-03 2.228351e-02 1.283895e-02 -9.297754e-03 -2.183035e-02 -1.224474e-02 9.604475e-03 2.162626e-02 1.195660e-02 -9.130031e-03 -1.990548e-02 -9.446406e-03 1.130126e-02 2.089287e-02 9.461435e-03 -1.115129e-02 -1.958701e-02 -6.974644e-03 1.384189e-02 2.137811e-02 7.560350e-03 -1.383110e-02 -2.106887e-02 -6.634604e-03 1.498054e-02 2.186957e-02 6.917741e-03 -1.495362e-02 -2.188828e-02 -7.197601e-03 1.398074e-02 2.016843e-02 5.348754e-03 -1.509949e-02 -2.027120e-02 -5.105601e-03 1.457596e-02 1.842942e-02 2.516103e-03 -1.666331e-02 -1.915436e-02 -2.125867e-03 1.709569e-02 1.871972e-02 8.443587e-04 -1.840266e-02 -1.924333e-02 -4.632146e-04 1.918868e-02 1.993662e-02 1.038087e-03 -1.843670e-02 -1.891246e-02 -8.414417e-05 1.890837e-02 1.900492e-02 5.241281e-04 -1.737256e-02 -1.638006e-02 2.281010e-03 1.927344e-02 1.709345e-02 -1.932394e-03 -1.805311e-02 -4.853757e-03 -1.940220e-02 -1.102546e-02 1.131973e-02 2.448794e-02 1.481099e-02 -7.980413e-03 -2.077269e-02 -1.074513e-02 1.151877e-02 2.288933e-02 1.140477e-02 -1.142681e-02 -2.234868e-02 -1.014716e-02 1.280654e-02 2.310247e-02 1.016209e-02 -1.292666e-02 -2.269863e-02 -9.204296e-03 1.384754e-02 2.304199e-02 9.084499e-03 -1.377936e-02 -2.232723e-02 -8.025591e-03 1.433941e-02 2.182851e-02 6.784580e-03 -1.540118e-02 -2.208996e-02 -6.575438e-03 1.506859e-02 2.046998e-02 3.903692e-03 -1.778496e-02 -2.237006e-02 -4.999317e-03 1.675779e-02 2.077706e-02 2.957756e-03 -1.853957e-02 -2.175729e-02 -3.303776e-03 1.818310e-02 2.100731e-02 2.483695e-03 -1.838030e-02 -2.029335e-02 -1.361666e-03 1.905918e-02 2.018180e-02 1.003517e-03 -1.873854e-02 -1.880822e-02 8.149188e-04 1.993281e-02 1.883382e-02 -1.481160e-03 -2.026000e-02 -1.820008e-02 2.767847e-03 2.135820e-02 1.860694e-02 -2.756698e-03 -2.103188e-02 -1.762403e-02 4.015211e-03 2.189711e-02 1.788042e-02 -3.884197e-03 -2.123504e-02 -1.660769e-02 5.103044e-03 2.162275e-02 1.608213e-02 -5.784159e-03 -2.157119e-02 -1.516340e-02 6.775521e-03 2.164433e-02 1.407242e-02 -8.293425e-03 -2.255635e-02 -1.398243e-02 8.867444e-03 2.278833e-02 1.358152e-02 -9.423500e-03 -2.282302e-02 -1.296242e-02 1.015070e-02 2.303176e-02 1.262248e-02 -1.044915e-02 -2.274683e-02 -1.191754e-02 1.077687e-02 2.203577e-02 1.033708e-02 -1.233880e-02 -2.282413e-02 -1.049089e-02 1.188457e-02 2.122571e-02 7.817965e-03 -1.468745e-02 -2.319031e-02 -8.779569e-03 1.407428e-02 2.221274e-02 7.409747e-03 -1.518945e-02 -2.245697e-02 -6.834865e-03 1.595687e-02 2.291970e-02 7.175532e-03 -1.507811e-02 -2.111911e-02 -4.851346e-03 1.705287e-02 2.223958e-02 5.502425e-03 -1.596032e-02 -2.019315e-02 -2.961529e-03 1.793136e-02 2.089738e-02 2.708282e-03 -1.813593e-02 -2.029397e-02 -1.439449e-03 1.927045e-02 2.068908e-02 1.268575e-03 -1.930271e-02 -2.012299e-02 -3.654294e-04 1.987190e-02 2.002505e-02 -2.114387e-05 -1.986935e-02 -1.942976e-02 6.307668e-04 1.965162e-02 1.812354e-02 -2.406703e-03 -2.098877e-02 -1.874718e-02 1.799200e-03 1.933438e-02 + -0.186277 + + + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-spatial-filter.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-spatial-filter.cfg new file mode 100644 index 0000000..0ba5bae --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -7.456638e-01 4.505683e+00 -5.713293e+00 6.569946e-01 6.642618e+00 3.787215e+00 2.433134e+00 -7.012442e-01 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-xdawn-train.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/Test/p300-xdawn-train.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.md b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.md new file mode 100644 index 0000000..266b73c --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.md @@ -0,0 +1,2 @@ +# OpenViBE_visual_BCI + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test2.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test2.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets/test2.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-0-signal-monitoring.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-0-signal-monitoring.xml new file mode 100644 index 0000000..d965e3f --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-0-signal-monitoring.xml @@ -0,0 +1,721 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x000014bf, 0x000034db) + Identity + (0x5dffe431, 0x35215c50) + + + (0x5ba36127, 0x195feae1) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x5ba36127, 0x195feae1) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 384 + + + (0x207c9054, 0x3c841b63) + 928 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xac367a9c, 0x2da95abe) + 6 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00003f1b, 0x00003c78) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 320 + + + (0x207c9054, 0x3c841b63) + 704 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + + + (0x0000556f, 0x000055f8) + Temporal filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20.000000 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 256 + + + (0x207c9054, 0x3c841b63) + 704 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00005c5c, 0x00007610) + Raw + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Horizontal ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Vertical ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 1024 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + (0x00006b6d, 0x00002690) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 128 + + + (0x207c9054, 0x3c841b63) + 928 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00007e4e, 0x00006b7b) + Filtered + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Horizontal ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Vertical ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 832 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + + + (0x000003a7, 0x000034db) + + (0x000014bf, 0x000034db) + 2 + + + (0x00005c5c, 0x00007610) + 1 + + + + (0x00000554, 0x0000661a) + + (0x000014bf, 0x000034db) + 2 + + + (0x00007e4e, 0x00006b7b) + 1 + + + + (0x00001d33, 0x00002bb0) + + (0x00006b6d, 0x00002690) + 2 + + + (0x000014bf, 0x000034db) + 2 + + + + (0x00003f04, 0x000045c3) + + (0x000014bf, 0x000034db) + 1 + + + (0x00005c5c, 0x00007610) + 0 + + + + (0x00004b11, 0x00006a43) + + (0x00003f1b, 0x00003c78) + 0 + + + (0x000014bf, 0x000034db) + 0 + + + + (0x000056fd, 0x00004795) + + (0x000014bf, 0x000034db) + 0 + + + (0x00007e4e, 0x00006b7b) + 0 + + + + (0x000057ad, 0x000024cb) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00003f1b, 0x00003c78) + 0 + + + + (0x00005e38, 0x00005c99) + + (0x00006b6d, 0x00002690) + 1 + + + (0x000014bf, 0x000034db) + 1 + + + + (0x000073ac, 0x0000581b) + + (0x00006b6d, 0x00002690) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + + + (0x00001653, 0x00002964) + <u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 512 + + + (0x7234b86b, 0x2b8651a5) + 416 + + + + + (0x000028e8, 0x00003dee) + <u><b><big>Overview</big></b></u> + +This scenario can be used in order +to check the quality of the signals +before starting an experiment. + +One should <u>definitely</u> +check the quality of the signals +and ensure that : + +- <b>eye blinks</b> are visible +- <b>jaw clenching</b> are visible +- <b>alpha waves</b> are visible when closing eyes + + + (0x473d9a43, 0x97fc0a97) + 1184 + + + (0x7234b86b, 0x2b8651a5) + 272 + + + + + (0x000049b3, 0x00001e28) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 944 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x00004e8c, 0x000041b6) + The P300 XDawn scenarios are described in + +http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0x473d9a43, 0x97fc0a97) + 576.000000 + + + (0x7234b86b, 0x2b8651a5) + 130.000000 + + + + + (0x000059b5, 0x00001524) + The <i>Temporal Filter</i> +and <i>Signal Decimation</i> +boxes transform the signal +so you can see what is actually +used online. + + + (0x473d9a43, 0x97fc0a97) + 512 + + + (0x7234b86b, 0x2b8651a5) + 288 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"height":635,"identifier":"(0x000077ee, 0x0000254d)","name":"default","parentIdentifier":"(0xffffffff, 0xffffffff)","type":1,"width":783},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x00004579, 0x00005fcb)","index":0,"name":"Default tab","parentIdentifier":"(0x000077ee, 0x0000254d)","type":2},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":2,"dividerPosition":293,"identifier":"(0x00005446, 0x000043a1)","index":0,"maxDividerPosition":590,"name":"Vertical split","parentIdentifier":"(0x00004579, 0x00005fcb)","type":4},{"boxIdentifier":"(0x00005c5c, 0x00007610)","childCount":0,"identifier":"(0x00000e42, 0x000074b8)","index":0,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3},{"boxIdentifier":"(0x00007e4e, 0x00006b7b)","childCount":0,"identifier":"(0x00005db7, 0x000032ad)","index":1,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Signal Monitoring + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-1-acquisition.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-1-acquisition.xml new file mode 100644 index 0000000..1f5f928 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-1-acquisition.xml @@ -0,0 +1,972 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00002c69, 0x00000b43) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 400 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-tactile-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x07e64d8b) + + + + + (0x0000356c, 0x00004381) + Generic stream writer + (0x09c92218, 0x7c1216f8) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train-[$core{date}-$core{time}].ov + false + + + (0x2cdb2f0b, 0x12f231ea) + Use compression + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 623 + + + (0x4e7b798a, 0x183beafb) + (0x89a08108, 0xc8d1fac1) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-writer.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0350a9f0) + + + (0xfba64161, 0x65304e21) + + + + + + (0x00004633, 0x00007270) + UDPStimcodeSender + (0xc326e786, 0xcd512965) + + + (0x6f752dd0, 0x082a321e) + StimcodeIn + + + + + (0x6f752dd0, 0x082a321e) + StimcodeOut + + + + + (0x79a9edeb, 0x245d83fc) + FeatherIP + 192.168.4.1 + 192.168.4.1 + false + + + (0x007deef9, 0x2f3e95c6) + FeatherPort + 8888 + 8888 + false + + + (0x2c132d6e, 0x44ab0d97) + RowStimulationBase + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 320 + + + (0x207c9054, 0x3c841b63) + 752 + + + (0x4e7b798a, 0x183beafb) + (0xc475930f, 0xbea8aabd) + + + (0x666fffff, 0x666fffff) + + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + + + (0x0000470b, 0x00001b1d) + Tactile Stimulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-tactile-stimulator.lua + false + + + (0x00000000, 0xbae13066) + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x5518f982) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xc152613d) + (0x007deef9, 0x2f3e95c6) + Number of Rows + 6 + 6 + false + + + (0x00000000, 0xa0308929) + (0x007deef9, 0x2f3e95c6) + Number of Repetitions + 6 + 3 + false + + + (0x00000000, 0xcde95a6f) + (0x007deef9, 0x2f3e95c6) + Number of Trials + 6 + 3 + false + + + (0x00000000, 0x9b3f9b7b) + (0x512a166f, 0x5c3ef83f) + Flash Duration (in sec) + 0.2 + 0.2 + false + + + (0x00000000, 0x583ad367) + (0x512a166f, 0x5c3ef83f) + No Flash Duration (in sec) + 0.1 + 0.1 + false + + + (0x00000000, 0xfc1c2fb6) + (0x512a166f, 0x5c3ef83f) + Inter-Repetition Delay (in sec) + 1.0 + 1.0 + false + + + (0x00000000, 0x0d9a1e18) + (0x512a166f, 0x5c3ef83f) + Inter-Trial Delay (in sec) + 3.0 + 3.0 + false + + + (0x00000000, 0xaeefd500) + (0x2c132d6e, 0x44ab0d97) + Start Stimulation + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x00000000, 0xef5eb0e5) + (0x2cdb2f0b, 0x12f231ea) + Free Spelling + false + false + false + + + (0x00000000, 0x4ead155d) + (0x007deef9, 0x2f3e95c6) + Time To Send + 20 + 20 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 160 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-tactile-stimulator.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00004b47, 0x00000cbb) + UDPStimcodeSender + (0xc326e786, 0xcd512965) + + + (0x6f752dd0, 0x082a321e) + StimcodeIn + + + + + (0x6f752dd0, 0x082a321e) + StimcodeOut + + + + + (0x79a9edeb, 0x245d83fc) + FeatherIP + 192.168.4.1 + 192.168.4.1 + false + + + (0x007deef9, 0x2f3e95c6) + FeatherPort + 8888 + 8888 + false + + + (0x2c132d6e, 0x44ab0d97) + RowStimulationBase + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 576 + + + (0x4e7b798a, 0x183beafb) + (0xc475930f, 0xbea8aabd) + + + (0x666fffff, 0x666fffff) + + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + + + (0x00004eca, 0x00003f33) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 624 + + + (0x207c9054, 0x3c841b63) + 784 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x01070ba6) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x0000599b, 0x000026ba) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 464 + + + (0x207c9054, 0x3c841b63) + 688 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x02909b75) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00006d0d, 0x000031d8) + Tactile Target Generation + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-tactile-target.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x7534ff4f) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xeb4fffa2) + (0x007deef9, 0x2f3e95c6) + Delay Before Sending (in sec) + 2 + 2 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 256 + + + (0x207c9054, 0x3c841b63) + 752 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0334c6b7) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x00001e35, 0x00003016) + + (0x0000599b, 0x000026ba) + 2 + + + (0x00004eca, 0x00003f33) + 0 + + + + (0x00003382, 0x0000629a) + + (0x00004633, 0x00007270) + 0 + + + (0x00002c69, 0x00000b43) + 1 + + + + (0x000036a5, 0x00006190) + + (0x0000599b, 0x000026ba) + 0 + + + (0x0000356c, 0x00004381) + 0 + + + + (0x00003cf9, 0x000006e0) + + (0x00004b47, 0x00000cbb) + 0 + + + (0x00002c69, 0x00000b43) + 0 + + + + (0x0000631e, 0x000002b3) + + (0x00006d0d, 0x000031d8) + 0 + + + (0x00004633, 0x00007270) + 0 + + + + (0x000068a0, 0x0000330f) + + (0x0000599b, 0x000026ba) + 2 + + + (0x0000356c, 0x00004381) + 2 + + + + (0x00006e24, 0x000046aa) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x00006d0d, 0x000031d8) + 0 + + + + (0x00007912, 0x00002579) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x00004b47, 0x00000cbb) + 0 + + + + (0x00007bda, 0x00000772) + + (0x0000599b, 0x000026ba) + 1 + + + (0x0000356c, 0x00004381) + 1 + + + + + + (0x0000363f, 0x00001c2b) + The P300 Speller Visualization +sends the markers (stimulations) directly to +Acquisition Server using TCP Tagging. + + + (0x473d9a43, 0x97fc0a97) + 960 + + + (0x7234b86b, 0x2b8651a5) + 368 + + + + + (0x00004e8c, 0x000041b6) + The P300 XDawn scenarios are described in + +http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0x473d9a43, 0x97fc0a97) + 320.000000 + + + (0x7234b86b, 0x2b8651a5) + 176.000000 + + + + + (0x19b8795c, 0x039f26f7) + <u><b><big>Overview</big></b></u> + +This scenario can be used as a first +step to collect some training data. The +data will later be used to train a spatial +filter and a classifier for online use. + +The flast sequence will start after 20 sec. + +You will then be presented a blue letter that +you have to focus on, followed by a 12 times +flashing sequence of the whole grid. This will +be repeated 10 times. + +<small><i><b>note:</b> the recorded files go to the +folder where the scenario xml is located +(<span color="darkblue">${Player_ScenarioDirectory}/</span>).</i></small> + + + (0x473d9a43, 0x97fc0a97) + 320.000000 + + + (0x7234b86b, 0x2b8651a5) + 400.000000 + + + + + (0x24020235, 0x4f7e23eb) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 496 + + + (0x7234b86b, 0x2b8651a5) + -16 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x00002c69, 0x00000b43)","childCount":0,"identifier":"(0x0000742d, 0x000050d7)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard, Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Data Acquisition + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-2-train-xDAWN.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-2-train-xDAWN.xml new file mode 100644 index 0000000..069ec2b --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-2-train-xDAWN.xml @@ -0,0 +1,644 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00001c48, 0x00005598) + Temporal filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20.000000 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 0 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00001db8, 0x00001848) + xDAWN Trainer + (0x27542f6e, 0x14aa3548) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x5ba36127, 0x195feae1) + Session signal + + + (0x5ba36127, 0x195feae1) + Evoked potential epochs + + + + + (0x6f752dd0, 0x082a321e) + Train-completed Flag + + + + + (0x2c132d6e, 0x44ab0d97) + Train stimulation + OVTK_StimulationId_Train + OVTK_StimulationId_ExperimentStop + false + + + (0x330306dd, 0x74a95f98) + Spatial filter configuration + + ${Player_ScenarioDirectory}/p300-spatial-filter.cfg + false + + + (0x007deef9, 0x2f3e95c6) + Filter dimension + 4 + 3 + false + + + (0x2cdb2f0b, 0x12f231ea) + Save as box config + true + true + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x4b49a133, 0x42f38d94) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-trainer.cfg + + + (0xc80ce8af, 0xf699f813) + + + + (0xce18836a, 0x9c0eb403) + + + + (0xcfad85b0, 0x7c6d841c) + + + + + + (0x00002514, 0x00001614) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + C:/Users/Tobi_/Documents/ProjektarbeitBCI/OpenVibe/p300-speller-xDAWN/signals/p300-train-[2016.04.20-14.58.03].ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -128 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-reader.cfg + + + + + (0x0000267a, 0x0000427f) + Time based epoching + (0x00777fa0, 0x5dc3f560) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Epoched signal 1 + + + + + (0x512a166f, 0x5c3ef83f) + Epoch 1 duration (in sec) + 1 + 0.250000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch 1 intervals (in sec) + 0.5 + 0.250000 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 96 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0xc5ff41e9, 0xccc59a01) + + + + + (0x00004aea, 0x00001465) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_TrainCompleted + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00006be0, 0x000074b5) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 48 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + + + (0x00006fa4, 0x00003c76) + Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_Target + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + + + + + (0x000007d3, 0x000071cb) + + (0x0000267a, 0x0000427f) + 0 + + + (0x00006fa4, 0x00003c76) + 0 + + + + (0x00003582, 0x00002c04) + + (0x00006be0, 0x000074b5) + 0 + + + (0x0000267a, 0x0000427f) + 0 + + + + (0x00003920, 0x00007a30) + + (0x0000267a, 0x0000427f) + 0 + + + (0x00001db8, 0x00001848) + 1 + + + + (0x00004be2, 0x00004296) + + (0x00006fa4, 0x00003c76) + 0 + + + (0x00001db8, 0x00001848) + 2 + + + + (0x00004bf5, 0x00007908) + + (0x00001db8, 0x00001848) + 0 + + + (0x00004aea, 0x00001465) + 0 + + + + (0x000059e8, 0x00000032) + + (0x00002514, 0x00001614) + 2 + + + (0x00001db8, 0x00001848) + 0 + + + + (0x00006413, 0x00003ed2) + + (0x00001c48, 0x00005598) + 0 + + + (0x00006be0, 0x000074b5) + 0 + + + + (0x00006af9, 0x00002512) + + (0x00002514, 0x00001614) + 2 + + + (0x00006fa4, 0x00003c76) + 1 + + + + (0x000070d8, 0x00000f4e) + + (0x00002514, 0x00001614) + 1 + + + (0x00001c48, 0x00005598) + 0 + + + + + + (0x00000b43, 0x0000067f) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 48 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x000010db, 0x00003fcd) + For prerecorded data to test this P300, see + +<b>http://openvibe.inria.fr/datasets/</b> + + + + (0x473d9a43, 0x97fc0a97) + 816.000000 + + + (0x7234b86b, 0x2b8651a5) + 112.000000 + + + + + (0x000049d6, 0x00006e67) + <u><b><big>Overview</big></b></u> + +This scenario should be used to train +the spatial filter using the xDAWN algorithm. + +Just configure the <i>Generic Stream Reader</i> +box to point to the last file you recorded with +scenario <i>1-acquisition</i> and fast forward +this scenario. + +At the end of the training, you will have line in +the console about eigen values. +Using a <i>Player Controller</i> the scenario will +automatically pause at the end of the training. + +If you want details on this values, you should read +<u>http://www.icp.inpg.fr/~rivetber/Publications/references/Rivet2009a.pdf</u> + + + (0x473d9a43, 0x97fc0a97) + 800.000000 + + + (0x7234b86b, 0x2b8651a5) + -80.000000 + + + + + (0x00007b93, 0x000041da) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 304.000000 + + + (0x7234b86b, 0x2b8651a5) + -192.000000 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Spatial Filter Training + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-3-train-classifier.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-3-train-classifier.xml new file mode 100644 index 0000000..08e4b16 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-3-train-classifier.xml @@ -0,0 +1,1091 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00000b2d, 0x00006d61) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002bb807) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00000d41, 0x000013b7) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b7d6e) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00001f83, 0x00004e32) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + C:/Users/Tobi_/Documents/ProjektarbeitBCI/OpenVibe/p300-speller-xDAWN/signals/p300-train-[2016.04.20-14.58.03].ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -160 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-reader.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x008e34c7) + + + + + (0x00002c8b, 0x000001d5) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_TrainCompleted + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00301c7f) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00002f94, 0x00000341) + Non Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_NonTarget + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002bbddf) + + + + + (0x00003e14, 0x00000027) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 16 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002c5bfc) + + + + + (0x0000486f, 0x000075f4) + Temporal filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20.000000 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -32 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b9aae) + + + + + (0x000063a5, 0x0000197c) + Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_Target + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b4e91) + + + + + (0x000078d0, 0x000029bc) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b5470) + + + + + (0x000078f9, 0x000063eb) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 9.970221e-001 -3.729500e-002 -1.177390e-002 2.814447e-002 -3.772446e-003 3.371324e-002 -5.480030e-003 8.893039e-003 -1.565213e-002 -9.956694e-003 -2.347757e-002 -2.312669e-003 -1.847227e-002 -7.550644e-004 -8.423513e-003 3.243223e-002 2.079848e-002 5.079737e-001 -2.835127e-002 8.259231e-002 -3.621803e-001 -2.004259e-001 -2.432480e-001 -1.861558e-001 -3.798139e-001 9.614762e-002 3.407766e-001 -2.158597e-001 3.720552e-001 7.500469e-002 -8.628774e-002 -3.182367e-002 5.923482e-002 4.124707e-001 2.083913e-001 -2.629501e-001 2.023081e-001 -2.658446e-001 4.022738e-001 -1.785569e-001 4.450742e-001 3.549239e-001 1.550204e-002 3.750389e-002 3.114249e-002 9.273764e-002 -7.093797e-002 -2.610929e-001 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 3 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 16 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 80 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b601f) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00007b56, 0x000033f9) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002c2168) + + + + + (0x0a5a6a4a, 0x1d92a778) + Classifier trainer + (0xf3dae8a8, 0x3b444154) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x17341935, 0x152ff448) + Features for class 1 + + + (0x17341935, 0x152ff448) + Features for class 2 + + + + + (0x6f752dd0, 0x082a321e) + Train-completed Flag + + + + + (0x2c132d6e, 0x44ab0d97) + Train trigger + OVTK_StimulationId_Train + OVTK_StimulationId_ExperimentStop + false + + + (0x330306dd, 0x74a95f98) + Filename to save configuration to + ${Path_UserData}/my-classifier.xml + ${Player_ScenarioDirectory}/cfg/p300-classifier.cfg + false + + + (0xbe9eba5c, 0xa8415d37) + Multiclass strategy to apply + Native + Native + false + + + (0x2c132d6e, 0x44ab0d97) + Class 1 label + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Target + false + + + (0x2c132d6e, 0x44ab0d97) + Class 2 label + OVTK_StimulationId_Label_02 + OVTK_StimulationId_NonTarget + false + + + (0xd765a736, 0xed708c65) + Algorithm to use + Linear Discrimimant Analysis (LDA) + Linear Discrimimant Analysis (LDA) + false + + + (0x2cdb2f0b, 0x12f231ea) + Use shrinkage + false + false + false + + + (0x512a166f, 0x5c3ef83f) + Shrinkage coefficient (-1 == auto) + -1.000000 + -1.000000 + false + + + (0x2cdb2f0b, 0x12f231ea) + Shrinkage: Force diagonal cov (DDA) + false + false + false + + + (0x007deef9, 0x2f3e95c6) + Number of partitions for k-fold cross-validation test + 10 + 5 + false + + + (0x2cdb2f0b, 0x12f231ea) + Balance classes + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 448 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x9de21779, 0x37776c89) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 6 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x00000004, 0x00007d3a) + + (0x000078f9, 0x000063eb) + 0 + + + (0x000063a5, 0x0000197c) + 0 + + + + (0x00000a32, 0x00005cae) + + (0x0000486f, 0x000075f4) + 0 + + + (0x00003e14, 0x00000027) + 0 + + + + (0x00000aca, 0x000037d3) + + (0x00003e14, 0x00000027) + 0 + + + (0x000078f9, 0x000063eb) + 0 + + + + (0x00001717, 0x00003cf9) + + (0x000078d0, 0x000029bc) + 0 + + + (0x00000b2d, 0x00006d61) + 0 + + + + (0x00001770, 0x00000ded) + + (0x00001f83, 0x00004e32) + 2 + + + (0x000063a5, 0x0000197c) + 1 + + + + (0x0000227f, 0x00003a6f) + + (0x000078f9, 0x000063eb) + 0 + + + (0x00002f94, 0x00000341) + 0 + + + + (0x00002599, 0x0000329b) + + (0x000063a5, 0x0000197c) + 0 + + + (0x000078d0, 0x000029bc) + 0 + + + + (0x00004098, 0x00007e81) + + (0x00002f94, 0x00000341) + 0 + + + (0x00007b56, 0x000033f9) + 0 + + + + (0x00004674, 0x000061af) + + (0x00007b56, 0x000033f9) + 0 + + + (0x00000d41, 0x000013b7) + 0 + + + + (0x00005d56, 0x000065e9) + + (0x00001f83, 0x00004e32) + 1 + + + (0x0000486f, 0x000075f4) + 0 + + + + (0x00006821, 0x00000c75) + + (0x00001f83, 0x00004e32) + 2 + + + (0x00002f94, 0x00000341) + 1 + + + + (0x175e412c, 0x0692f4ee) + + (0x00000d41, 0x000013b7) + 0 + + + (0x0a5a6a4a, 0x1d92a778) + 2 + + + + (0x5a67b7d8, 0x1cf07f9a) + + (0x00001f83, 0x00004e32) + 2 + + + (0x0a5a6a4a, 0x1d92a778) + 0 + + + + (0x616495af, 0x5c020b32) + + (0x0a5a6a4a, 0x1d92a778) + 0 + + + (0x00002c8b, 0x000001d5) + 0 + + + + (0x63fa63da, 0x0e447c5b) + + (0x00000b2d, 0x00006d61) + 0 + + + (0x0a5a6a4a, 0x1d92a778) + 1 + + + + + + (0x00004785, 0x00007f9c) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 432 + + + (0x7234b86b, 0x2b8651a5) + -240 + + + + + (0x000047f3, 0x00004eaf) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 48 + + + (0x7234b86b, 0x2b8651a5) + 0 + + + + + (0x00005277, 0x00007fbe) + <u><b><big>Overview</big></b></u> + +This scenario should be used to train +the LDA classifier. + +Just configure the <i>Generic Stream Reader</i> +box to point to the last file you recorded with +scenario <i>1-acquisition</i> and fast forward +this scenario. + +At the end of the training, you will have an estimation +of the classifier performance printed in the console. +If this performance is lower than 70%, just run a new +<i>4-online</i> session to have better results. + +<u><b>Note:</b></u> in order to run this scenario, +the spatial filter should have been trained using +<i>2-train-xDAWN</i> ! + + + (0x473d9a43, 0x97fc0a97) + 848 + + + (0x7234b86b, 0x2b8651a5) + 96 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + LDA Classifier Trainer + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-4-online.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-4-online.xml new file mode 100644 index 0000000..0a21659 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-4-online.xml @@ -0,0 +1,1701 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x000014a9, 0x000078ed) + UDPStimcodeSender + (0xc326e786, 0xcd512965) + + + (0x6f752dd0, 0x082a321e) + StimcodeIn + + + + + (0x6f752dd0, 0x082a321e) + StimcodeOut + + + + + (0x79a9edeb, 0x245d83fc) + FeatherIP + 192.168.4.1 + 192.168.4.1 + false + + + (0x007deef9, 0x2f3e95c6) + FeatherPort + 8888 + 8888 + false + + + (0x2c132d6e, 0x44ab0d97) + RowStimulationBase + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 656 + + + (0x207c9054, 0x3c841b63) + 368 + + + (0x4e7b798a, 0x183beafb) + (0xc475930f, 0xbea8aabd) + + + (0x666fffff, 0x666fffff) + + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + + + (0x00002bb3, 0x0000133c) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -176 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007036bf) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00003d0e, 0x000025ef) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Pause + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 704 + + + (0x207c9054, 0x3c841b63) + 720 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00003dec, 0x00004c7b) + Stimulation based epoching + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.6 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_VisualStimulationStart + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 176 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x005ced91) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 2 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x0000445b, 0x000068e3) + P300 accumulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + (0x6f752dd0, 0x082a321e) + New input(1) + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6f752dd0, 0x082a321e) + New output + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-tactile-accumulator.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x2c132d6e, 0x44ab0d97) + Segment start + OVTK_StimulationId_SegmentStart + OVTK_StimulationId_TrialStart + false + + + (0x2c132d6e, 0x44ab0d97) + Segment stop + OVTK_StimulationId_SegmentStop + OVTK_StimulationId_TrialStop + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 448 + + + (0x207c9054, 0x3c841b63) + 656 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0304fb88) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000470b, 0x00001b1e) + Tactile Stimulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-tactile-stimulator.lua + false + + + (0x00000000, 0xbae13066) + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x5518f982) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xc152613d) + (0x007deef9, 0x2f3e95c6) + Number of Rows + 6 + 6 + false + + + (0x00000000, 0xa0308929) + (0x007deef9, 0x2f3e95c6) + Number of Repetitions + 6 + 3 + false + + + (0x00000000, 0xcde95a6f) + (0x007deef9, 0x2f3e95c6) + Number of Trials + 6 + 3 + false + + + (0x00000000, 0x9b3f9b7b) + (0x512a166f, 0x5c3ef83f) + Flash Duration (in sec) + 0.2 + 0.2 + false + + + (0x00000000, 0x583ad367) + (0x512a166f, 0x5c3ef83f) + No Flash Duration (in sec) + 0.1 + 0.1 + false + + + (0x00000000, 0xfc1c2fb6) + (0x512a166f, 0x5c3ef83f) + Inter-Repetition Delay (in sec) + 1.0 + 1.0 + false + + + (0x00000000, 0x0d9a1e18) + (0x512a166f, 0x5c3ef83f) + Inter-Trial Delay (in sec) + 3.0 + 3.0 + false + + + (0x00000000, 0xaeefd500) + (0x2c132d6e, 0x44ab0d97) + Start Stimulation + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x00000000, 0xef5eb0e5) + (0x2cdb2f0b, 0x12f231ea) + Free Spelling + false + true + false + + + (0x00000000, 0x4ead155d) + (0x007deef9, 0x2f3e95c6) + Time To Send + 20 + 20 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 576 + + + (0x207c9054, 0x3c841b63) + 368 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-tactile-stimulator.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00007786, 0x00001163) + Identity + (0x5dffe431, 0x35215c50) + + + (0x6f752dd0, 0x082a321e) + Input stream + + + + + (0x6f752dd0, 0x082a321e) + Output stream + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 336 + + + (0x207c9054, 0x3c841b63) + 720 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x001a8c16, 0x15ba27e3) + Temporal filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20.000000 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 0 + + + (0x207c9054, 0x3c841b63) + 480 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0040f8d4) + + + + + (0x008f57e1, 0x2790537b) + Generic stream writer + (0x09c92218, 0x7c1216f8) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-online-[$core{date}-$core{time}].ov + false + + + (0x2cdb2f0b, 0x12f231ea) + Use compression + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 144 + + + (0x207c9054, 0x3c841b63) + 816 + + + (0x4e7b798a, 0x183beafb) + (0x89a08108, 0xc8d1fac1) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007b2629) + + + (0xfba64161, 0x65304e21) + + + + + + (0x09c41dd7, 0x09f2e37b) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 240 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x000eaa12) + + + + + (0x0e30a73f, 0x7ae6d95a) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 304 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x000f9a38) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x28b5e192, 0x37431137) + Classifier processor + (0x5fe23d17, 0x95b0452c) + + + (0x17341935, 0x152ff448) + Features + + + (0x6f752dd0, 0x082a321e) + Commands + + + + + (0x6f752dd0, 0x082a321e) + Labels + + + (0x544a003e, 0x6dcba5f6) + Hyperplane distance + + + (0x544a003e, 0x6dcba5f6) + Probability values + + + + + (0x330306dd, 0x74a95f98) + Filename to load configuration from + + ${Player_ScenarioDirectory}/cfg/p300-classifier.cfg + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 368 + + + (0x207c9054, 0x3c841b63) + 560 + + + (0x4e7b798a, 0x183beafb) + (0xa6c8e548, 0x9e3e405b) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 3 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x2e63c8c5, 0x79a8ae7b) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 736 + + + (0x207c9054, 0x3c841b63) + 384 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x017985f8) + + + + + (0x40e41bf9, 0x5c44b1b1) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 64 + + + (0x207c9054, 0x3c841b63) + 480 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002cae02) + + + + + (0x6d03daab, 0x55fdea78) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 4 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 4 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 112 + + + (0x207c9054, 0x3c841b63) + 480 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x6f54afd0, 0x5f2e0f65) + Identity + (0x5dffe431, 0x35215c50) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -80 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x005f48d2) + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x0000002a, 0x00006309) + + (0x00002bb3, 0x0000133c) + 1 + + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + + (0x0000062d, 0x00006549) + + (0x0000445b, 0x000068e3) + 1 + + + (0x2e63c8c5, 0x79a8ae7b) + 3 + + + + (0x000023cd, 0x0000521b) + + (0x0000470b, 0x00001b1e) + 0 + + + (0x000014a9, 0x000078ed) + 0 + + + + (0x0000266b, 0x000033bb) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x00003dec, 0x00004c7b) + 1 + + + + (0x00002e50, 0x00003fba) + + (0x00003dec, 0x00004c7b) + 0 + + + (0x09c41dd7, 0x09f2e37b) + 0 + + + + (0x00003835, 0x000030a7) + + (0x00002bb3, 0x0000133c) + 0 + + + (0x6f54afd0, 0x5f2e0f65) + 0 + + + + (0x0000416b, 0x00000842) + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + (0x001a8c16, 0x15ba27e3) + 0 + + + + (0x00004944, 0x00005bde) + + (0x00007786, 0x00001163) + 0 + + + (0x00003d0e, 0x000025ef) + 0 + + + + (0x00004ebb, 0x00007aeb) + + (0x00002bb3, 0x0000133c) + 2 + + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + + (0x00004f08, 0x000009d9) + + (0x0000445b, 0x000068e3) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 2 + + + + (0x00006501, 0x000068bf) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x00007786, 0x00001163) + 0 + + + + (0x00006c4d, 0x0000126f) + + (0x40e41bf9, 0x5c44b1b1) + 0 + + + (0x6d03daab, 0x55fdea78) + 0 + + + + (0x0000725e, 0x00006278) + + (0x000014a9, 0x000078ed) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 0 + + + + (0x000074af, 0x000038c2) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x008f57e1, 0x2790537b) + 2 + + + + (0x0000756d, 0x000027c0) + + (0x6d03daab, 0x55fdea78) + 0 + + + (0x00003dec, 0x00004c7b) + 0 + + + + (0x00007b30, 0x00005e90) + + (0x00007786, 0x00001163) + 0 + + + (0x0000445b, 0x000068e3) + 1 + + + + (0x00f1a11e, 0x4a813bb8) + + (0x09c41dd7, 0x09f2e37b) + 0 + + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + + (0x0de02dd1, 0x545eff87) + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + (0x008f57e1, 0x2790537b) + 1 + + + + (0x136dcee0, 0x20dbb005) + + (0x28b5e192, 0x37431137) + 0 + + + (0x0000445b, 0x000068e3) + 0 + + + + (0x1a535826, 0x3804f216) + + (0x001a8c16, 0x15ba27e3) + 0 + + + (0x40e41bf9, 0x5c44b1b1) + 0 + + + + (0x2893bc68, 0x5c0429ec) + + (0x6f54afd0, 0x5f2e0f65) + 0 + + + (0x008f57e1, 0x2790537b) + 0 + + + + (0x3ccbcbed, 0x529f3e1d) + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + (0x28b5e192, 0x37431137) + 0 + + + + + + (0x1012e1de, 0x78e57c3e) + The stimulation part of the scenario is +similar to scenario <i>1-acquisition</i>. + +If you keep the <i>Target Letter Generation</i> +box, you will be able to train the algorithms +again on the recorded data. + + + + (0x473d9a43, 0x97fc0a97) + 896.000000 + + + (0x7234b86b, 0x2b8651a5) + 608.000000 + + + + + (0x11fceaee, 0x1f87d83c) + Switch from file reader +to Acquisiton client to use it online + + + (0x473d9a43, 0x97fc0a97) + 176.000000 + + + (0x7234b86b, 0x2b8651a5) + -48.000000 + + + + + (0x27567f54, 0x6e00503a) + You can configure the Flashing Sequence +and the Target Letter Generation in order to +instruct the subject to <u>spell a specific word</u>. + +Set the target word in the Lua Stimulator (e.g. "openvibe") +and adapt the number of trials in the P300 Speller Stimulator +(e.g. 8 trials for the 8 letters in "openvibe") + +<b><u>Note:</u></b> If the number of letter in the chosen word does not match +the number of trial, you won't be able to train xDAWN and +the classifier on the recorded data. + + + (0x473d9a43, 0x97fc0a97) + 32 + + + (0x7234b86b, 0x2b8651a5) + 496 + + + + + (0x3726b6f5, 0x3dea5d78) + <u><b><big>Overview</big></b></u> + +This scenario can be used online once the +spatial filter and the classifiers are trained. +The <i>Target Letter Generation</i> +box still proposes some targets in order to +eventually train the spatial filter / classifier +again, but you may want to disconnect that box +in order to have a real <i>free time</i> use of +the speller. + +The flash sequence starts automatically after 20 sec. + +You will then be presented a blue letter that +you have to focus on, followed by a 12 times +flashing sequence of the whole grid. The detected +letter will be presented in green. This will be repeated +10 times. + +If the performance of the system does not fit your +requirements, just run <i>2-train-xDAWN</i> and <i>3-train-classifier</i> +scenarios again on the data you just recorded. + +<small><i><b>note:</b> the recorded files go to the +folder where the scenario xml is located +(<span color="darkblue">${Player_ScenarioDirectory}/</span>).</i></small> + + + (0x473d9a43, 0x97fc0a97) + 192 + + + (0x7234b86b, 0x2b8651a5) + -48 + + + + + (0x421933f6, 0x00705e90) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 176 + + + (0x7234b86b, 0x2b8651a5) + 272 + + + + + (0x5bbc727e, 0x1572a9cd) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 608.000000 + + + (0x7234b86b, 0x2b8651a5) + -288.000000 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x2e63c8c5, 0x79a8ae7b)","childCount":0,"identifier":"(0x00001d62, 0x00007def)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Online Use + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-5-replay.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-5-replay.xml new file mode 100644 index 0000000..5381f23 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile-5-replay.xml @@ -0,0 +1,1341 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00002db4, 0x00004e4d) + Pick target + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-tactile-filter-target.lua + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 400 + + + (0x207c9054, 0x3c841b63) + 768 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00749b30) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00002db4, 0x00004e4e) + Pick flash + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-tactile-filter-flash.lua + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 400 + + + (0x207c9054, 0x3c841b63) + 688 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007aab35) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00003d0e, 0x000025ef) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Pause + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 704 + + + (0x207c9054, 0x3c841b63) + 784 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004d93cc) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00003dec, 0x00004c7b) + Stimulation based epoching + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.6 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_VisualStimulationStart + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00b06288) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 2 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x0000445b, 0x000068e3) + P300 accumulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + (0x6f752dd0, 0x082a321e) + New input(1) + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6f752dd0, 0x082a321e) + New output + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-tactile-accumulator.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x2c132d6e, 0x44ab0d97) + Segment start + OVTK_StimulationId_TrialStart + OVTK_StimulationId_TrialStart + false + + + (0x2c132d6e, 0x44ab0d97) + Segment stop + OVTK_StimulationId_SegmentStop + OVTK_StimulationId_TrialStop + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 608 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0a2185a6) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x09c41dd7, 0x09f2e37b) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 416 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004afe07) + + + + + (0x0e30a73f, 0x7ae6d95a) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 480 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004313a5) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x28b5e192, 0x37431137) + Classifier processor + (0x5fe23d17, 0x95b0452c) + + + (0x17341935, 0x152ff448) + Features + + + (0x6f752dd0, 0x082a321e) + Commands + + + + + (0x6f752dd0, 0x082a321e) + Labels + + + (0x544a003e, 0x6dcba5f6) + Hyperplane distance + + + (0x544a003e, 0x6dcba5f6) + Probability values + + + + + (0x330306dd, 0x74a95f98) + Filename to load configuration from + + ${Player_ScenarioDirectory}/p300-classifier.cfg + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 464 + + + (0x4e7b798a, 0x183beafb) + (0xa6c8e548, 0x9e3e405b) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 3 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x2978c82c, 0x4a22f240) + Temporal filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20.000000 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 160 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x2e63c8c5, 0x79a8ae7b) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 672 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x05899984) + + + + + (0x3806695f, 0x750288cb) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 208 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + + + (0x483b59a5, 0x4318abba) + Identity + (0x5dffe431, 0x35215c50) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 64 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x634a083c, 0x52143369) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + C:/Users/Tobi_/Documents/ProjektarbeitBCI/OpenVibe/p300-speller-xDAWN/signals/p300-online-[2016.04.20-15.09.08].ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -16 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + + + (0x666e568d, 0x579616d6) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 4 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 4 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 272 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-spatial-filter.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + + + (0x0000062d, 0x00006549) + + (0x0000445b, 0x000068e3) + 1 + + + (0x2e63c8c5, 0x79a8ae7b) + 3 + + + + (0x0000121f, 0x00004438) + + (0x00002db4, 0x00004e4d) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 1 + + + + (0x00001a5d, 0x000012a3) + + (0x00002db4, 0x00004e4e) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 0 + + + + (0x000023ed, 0x00007962) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00002db4, 0x00004e4d) + 0 + + + + (0x00002e50, 0x00003fba) + + (0x00003dec, 0x00004c7b) + 0 + + + (0x09c41dd7, 0x09f2e37b) + 0 + + + + (0x00003a8e, 0x00004020) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x0000445b, 0x000068e3) + 1 + + + + (0x00004ead, 0x0000166d) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00002db4, 0x00004e4e) + 0 + + + + (0x00005b72, 0x00000606) + + (0x0000445b, 0x000068e3) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 2 + + + + (0x00005ee4, 0x00001e68) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00003d0e, 0x000025ef) + 0 + + + + (0x00006b0f, 0x00003281) + + (0x666e568d, 0x579616d6) + 0 + + + (0x00003dec, 0x00004c7b) + 0 + + + + (0x00007e4c, 0x00005f90) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00003dec, 0x00004c7b) + 1 + + + + (0x00f1a11e, 0x4a813bb8) + + (0x09c41dd7, 0x09f2e37b) + 0 + + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + + (0x04e9bcb9, 0x608aa078) + + (0x634a083c, 0x52143369) + 0 + + + (0x483b59a5, 0x4318abba) + 0 + + + + (0x087ce678, 0x55c0c4ef) + + (0x3806695f, 0x750288cb) + 0 + + + (0x666e568d, 0x579616d6) + 0 + + + + (0x22e7d928, 0x245a74de) + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + (0x28b5e192, 0x37431137) + 0 + + + + (0x335d6001, 0x4c535469) + + (0x28b5e192, 0x37431137) + 0 + + + (0x0000445b, 0x000068e3) + 0 + + + + (0x596adb78, 0x549a0689) + + (0x2978c82c, 0x4a22f240) + 0 + + + (0x3806695f, 0x750288cb) + 0 + + + + (0x666eada5, 0x09010e07) + + (0x634a083c, 0x52143369) + 1 + + + (0x483b59a5, 0x4318abba) + 1 + + + + (0x6963bf7e, 0x02c7cc5d) + + (0x483b59a5, 0x4318abba) + 1 + + + (0x2978c82c, 0x4a22f240) + 0 + + + + (0x7061b67e, 0x7c481576) + + (0x634a083c, 0x52143369) + 2 + + + (0x483b59a5, 0x4318abba) + 2 + + + + + + (0x3030288d, 0x2dbf93f2) + <u><b><big>Overview</big></b></u> + +This scenario allows to quickly replay +an online session recorded file. The +main between this scenario and +scenario <i>4-online</i> is basically +all the acquisition / stimulation part +being replaced by a file reader. + +<u><b>Note:</b></u> refer to scenario <i>4-online</i> for +details about the processing. + + + (0x473d9a43, 0x97fc0a97) + 288 + + + (0x7234b86b, 0x2b8651a5) + 16 + + + + + (0x374ccccf, 0x48c4defa) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 624 + + + (0x7234b86b, 0x2b8651a5) + -128 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x2e63c8c5, 0x79a8ae7b)","childCount":0,"identifier":"(0x000060a8, 0x0000168c)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Online File Replay + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile.ui b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile.ui new file mode 100644 index 0000000..2abccde --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/p300-tactile.ui @@ -0,0 +1,253 @@ + + + + + + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + 3 + 4 + + + True + 6 + 1 + True + + + True + + + True + Motor1 + True + center + + + + + 1 + 1 + + + + + True + + + True + Motor2 + True + center + + + + + 1 + 2 + + + + + True + + + True + Motor3 + True + center + + + + + 2 + 3 + + + + + True + + + True + Motor4 + True + center + + + + + 3 + 4 + + + + + True + + + True + Motor5 + True + center + + + + + 4 + 5 + + + + + True + + + True + Motor6 + True + center + + + + + 5 + 6 + + + + + + + True + 2 + 3 + 4 + 4 + + + True + 0 + True + + + 2 + 3 + 1 + 2 + GTK_FILL + + + + + True + 0 + True + + + 2 + 3 + GTK_FILL + + + + + True + 0 + Result : + True + + + 1 + 2 + 1 + 2 + GTK_FILL + GTK_FILL + + + + + True + 0 + Target : + True + + + 1 + 2 + GTK_FILL + GTK_FILL + + + + + True + gtk-select-font + + + 2 + + + + + + + 2 + 3 + GTK_FILL + + + + + True + + + 1 + 2 + GTK_FILL + GTK_FILL + + + + + + + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + P300 Speller + dialog + + + 640 + True + both + + + True + Show Target Text + gtk-info + True + + + False + True + + + + + True + Show Result Text + gtk-info + True + + + False + True + + + + + + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-accumulator.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-accumulator.lua new file mode 100644 index 0000000..ac8240d --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-accumulator.lua @@ -0,0 +1,200 @@ + +function arrayMax(a) + if #a == 0 then return nil, nil end + local maxIdx, maxValue = 0, a[0] + for i = 1, (#a -1 ) do + if maxValue < a[i] then + maxIdx, maxValue = i, a[i] + end + end + return maxIdx, maxValue +end + +-- For handling target fifo + +List = {} +function List.new () + return {first = 0, last = -1} +end + +function List.pushright (list, value) + local last = list.last + 1 + list.last = last + list[last] = value +end + +function List.popleft (list) + local first = list.first + if first > list.last then + error("list is empty") + end + local value = list[first] + list[first] = nil -- to allow garbage collection + list.first = first + 1 + return value +end + +function List.isempty (list) + if list.first > list.last then + return true + else + return false + end +end + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + segment_start = _G[box:get_setting(4)] + segment_stop = _G[box:get_setting(5)] + + -- 0 inactive, 1 segment started, 2 segment stopped (can vote) + segment_status = 0 + + -- the idea is to push the flash states to the fifo, and when predictions arrive (with some delay), they are matched in oldest-first fashion. + target_fifo = List.new() + + -- box:log("Info", string.format("pop %d %d", id[1], id[2])) + + row_votes = {} + col_votes = {} + + do_debug = false + +end + +-- this function is called when the box is uninitialized +function uninitialize(box) + +end + +function process(box) + -- loops until box is stopped + while box:keep_processing() do + + -- first, parse the timeline stream + for stimulation = 1, box:get_stimulation_count(2) do + -- gets the received stimulation + local identifier, date, duration = box:get_stimulation(2, 1) + -- discards it + box:remove_stimulation(2, 1) + + if identifier == segment_start then + if do_debug then + box:log("Info", string.format("Trial start")) + box:log("Info", string.format("Clear votes")) + end + -- zero the votes + col_votes = {} + row_votes = {} + target_fifo = List.new() + -- fixme fixed 20 + for i = 0,20 do + col_votes[i] = 0 + row_votes[i] = 0 + end + segment_status = 1 + end + + -- Does the identifier code a flash? if so, put into fifo + if segment_status == 1 and identifier >= row_base and identifier <= OVTK_StimulationId_LabelEnd then + + -- assume rows before cols + if identifier < col_base then + local t = {"row", identifier - row_base} + List.pushright(target_fifo,t) + if do_debug then + box:log("Info", string.format("Push row target %d", identifier - row_base )) + end + else + local t = {"col", identifier - col_base} + List.pushright(target_fifo,t) + if do_debug then + box:log("Info", string.format("Push col target %d", identifier - col_base )) + end + end + + + end + + if identifier == segment_stop then + if do_debug then + box:log("Info", string.format("Trial stop")) + end + segment_status = 2 + end + + end + + -- then parse the classifications + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets the received stimulation + local identifier, date, duration = box:get_stimulation(1, 1) + -- discards it + box:remove_stimulation(1, 1) + + -- Is it an in-class prediction? + if identifier == OVTK_StimulationId_Target then + local t = List.popleft(target_fifo) + if do_debug then + box:log("Info", string.format("Pred fifo %s %d is target", t[1], t[2])) + end + if t[1]=="row" then + row_votes[t[2]] = row_votes[t[2]] + 1 + else + col_votes[t[2]] = col_votes[t[2]] + 1 + end + end + + if identifier == OVTK_StimulationId_NonTarget then + local t = List.popleft(target_fifo) + if do_debug then + box:log("Info", string.format("Pred fifo %s %d is nontarget", t[1], t[2])) + end + end + + end + + if segment_status == 2 and List.isempty(target_fifo) then + -- output the vote after the segment end when we've matched all predictions + + local maxRowIdx, maxRowValue = arrayMax(row_votes) + local maxColIdx, maxColValue = arrayMax(col_votes) + + if maxRowValue == 0 and maxColValue == 0 then + box:log("Warning", string.format("Classifier predicted 'no p300' for all flashes of the trial")); + end + + if do_debug then + local rowVotes = 0 + local colVotes = 0 + for ir, val in pairs(row_votes) do + rowVotes = rowVotes + val + end + for ir, val in pairs(col_votes) do + colVotes = colVotes + val + end + + box:log("Info", string.format("Vote [%d %d] wt [%d,%d]", maxRowIdx+row_base, maxColIdx+col_base, maxRowValue, maxColValue)) + box:log("Info", string.format(" Total [%d %d]", rowVotes, colVotes)) + end + + + + local now = box:get_current_time() + + box:send_stimulation(1, maxRowIdx + row_base, now, 0) + box:send_stimulation(2, maxColIdx + col_base, now, 0) + + segment_status = 0 + end + + box:sleep() + end +end + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-flash.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-flash.lua new file mode 100644 index 0000000..9f13ff0 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-flash.lua @@ -0,0 +1,61 @@ + +-- Picks out 'flashes' from a stimulation stream + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + box:set_filter_mode(1); + + state = 0 + + do_debug = false +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_SegmentStart then + state = 1 + elseif stimulation_id == OVTK_StimulationId_SegmentStop then + state = 0 + end + + -- If we're between 'rest start' and 'rest_stop', this specifies a target + if state == 1 and stimulation_id >= OVTK_StimulationId_LabelStart and stimulation_id <= OVTK_StimulationId_LabelEnd then + + box:send_stimulation(1, stimulation_id, stimulation_time, 0) + + if do_debug then + box:log("Info", string.format("Push a target %d at %f (now %f)", stimulation_id, stimulation_time, t)) + end + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-target.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-target.lua new file mode 100644 index 0000000..f8c92db --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-filter-target.lua @@ -0,0 +1,61 @@ + +-- Picks out 'targets' from a stimulation stream + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + state = 0 + + box:set_filter_mode(1); + + do_debug = false +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_RestStart then + state = 1 + elseif stimulation_id == OVTK_StimulationId_RestStop then + state = 0 + end + + -- If we're between 'rest start' and 'rest_stop', this specifies a target + if state == 1 and stimulation_id >= OVTK_StimulationId_LabelStart and stimulation_id <= OVTK_StimulationId_LabelEnd then + + box:send_stimulation(1, stimulation_id, stimulation_time, 0) + + if do_debug then + box:log("Info", string.format("Push a target %d at %f (now = %f)", stimulation_id, stimulation_time, t)) + end + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-launch.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-launch.lua new file mode 100644 index 0000000..48f728f --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-launch.lua @@ -0,0 +1,21 @@ + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + stim = _G[box:get_setting(2)] + launchTime = box:get_setting(3) + +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + box:send_stimulation(1, stim, launchTime, 0) + +end diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-stimulator.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-stimulator.lua new file mode 100644 index 0000000..d9f136e --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-stimulator.lua @@ -0,0 +1,128 @@ +-- This Lua script sends Stimulations to the speller visualization box for a tactile p300-System with 6 stimulators +-- +-- Author : Tobias Baumann +-- Date : 2021-12-06 +-- Revised: 2021-19-11 + +--This function lets the box sleep until a fixed moment +function wait_until(box, time) + while box:get_current_time() < time do + box:sleep() + end +end + +--This function lets the box wait for a fixed duration +function wait_for(box, duration) + wait_until(box, box:get_current_time() + duration) +end + +--this function checks, wether value already is an element of the given stim_matrix +function is_element(matrix, value) + for i = 1, #matrix do + if #matrix == 0 then + return(false) + elseif value == matrix[i] then + return(true) + end + end + return(false) +end +--this function creates a sequence of stimulations by shuffeling the values of the given stim_matrix +function create_sequence(matrix) + math.randomseed(os.time()) + local stim_matrix = {} + local stim_code = 0 + local i = 1 + while i <= #matrix do + stim_code = matrix[math.random(1,#matrix)] + if is_element(stim_matrix, stim_code) == false then + stim_matrix[i] = stim_code + i = i + 1 + end + end + return(stim_matrix) +end + +-- this function is called when the box is initialized +function initialize(box) + --load stimulation codes + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + --load box settings + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + n_rows = box:get_setting(4) + n_repetitions = box:get_setting(5) + flash_duration = box:get_setting(7) + noflash_duration = box:get_setting(8) + inter_repetition_delay = box:get_setting(9) + inter_trial_delay = box:get_setting(10) + send_toggle = _G[box:get_setting(11)] + time_to_send = box:get_setting(13) + + if box:get_setting(12) == 'true' then + free_spelling = true + n_trials = 1 + else + free_spelling = false + n_trials = box:get_setting(6) + end + + --Lua variables + send = false + experiment_end = false + tactilo_stimcodes = {} + for x = 1, n_rows do + tactilo_stimcodes[x] = row_base + x - 1 + end +end + +-- this function is called when the box is uninitialized +function uninitialize(box) + +end + +-- this function is called once by the box +function process(box) + while box:keep_processing() do + + if send and not experiment_end then + for trial = 1, n_trials do + if not send then + break + end + box:send_stimulation(1, OVTK_StimulationId_RestStart, box:get_current_time() , 0) + wait_for(box, inter_trial_delay) + box:send_stimulation(1, OVTK_StimulationId_RestStop, box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_TrialStart ,box:get_current_time() , 0) + for segment = 1, n_repetitions do + tactilo_stimcodes = create_sequence(tactilo_stimcodes) + box:send_stimulation(1, OVTK_StimulationId_SegmentStart ,box:get_current_time() , 0) + for i = 1, #tactilo_stimcodes do + box:send_stimulation(1, tactilo_stimcodes[i] ,box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStart ,box:get_current_time() , 0) + wait_for(box, flash_duration) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStop ,box:get_current_time() , 0) + wait_for(box, noflash_duration) + end + box:send_stimulation(1, OVTK_StimulationId_SegmentStop ,box:get_current_time() , 0) + wait_for(box, inter_repetition_delay) + end + box:send_stimulation(1, OVTK_StimulationId_TrialStop ,box:get_current_time() , 0) + end + if not free_spelling then + box:send_stimulation(1, OVTK_StimulationId_ExperimentStop ,box:get_current_time() , 0) + send = false + experiment_end = true + end + else if not send and not experiment_end then + wait_for(box, time_to_send) + send = true + box:send_stimulation(1, OVTK_StimulationId_ExperimentStart ,box:get_current_time() , 0) + box:remove_stimulation(1, 1) + end + end + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-target.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-target.lua new file mode 100644 index 0000000..9565a60 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/scripts/p300-tactile-target.lua @@ -0,0 +1,59 @@ +-- This Lua script generates target stimulations the 1x6 p300-tactile matrix +-- +-- Author : Tobias Baumann +-- Date : 2021-06-09 + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + math.randomseed(os.time()) + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + delay = box:get_setting(4) +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_RestStart then + + -- triggers the target + box:send_stimulation(1, row_base+math.random(1,6)-1, t+delay, 0) + box:send_stimulation(1, col_base, t+delay, 0) + + elseif stimulation_id == OVTK_StimulationId_ExperimentStop then + + -- triggers train stimulation + box:send_stimulation(1, OVTK_StimulationId_Train, t+delay+1, 0) + + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/signals/README.txt b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/signals/README.txt new file mode 100644 index 0000000..ac04efc --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/signals/README.txt @@ -0,0 +1,3 @@ + +The scenario will record its signals here. + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/signals/p300-xdawn-train.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/signals/p300-xdawn-train.ov new file mode 100644 index 0000000..bf8c485 Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/signals/p300-xdawn-train.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-classifier.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-classifier.cfg new file mode 100644 index 0000000..a75a3ba --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 6.579598e-02 -1.000032e-02 -6.260538e-02 -4.787732e-02 7.654714e-03 4.048588e-02 1.872160e-02 -2.664651e-02 -3.886676e-02 2.862862e-04 4.852049e-02 4.778930e-02 -1.089640e-02 -7.217380e-02 -6.989504e-02 3.324508e-03 8.278305e-02 9.168478e-02 1.687584e-02 -7.534444e-02 -1.008510e-01 -3.743167e-02 5.509584e-02 9.335941e-02 4.928571e-02 -2.750260e-02 -6.292841e-02 -3.147461e-02 2.400900e-02 4.222234e-02 8.454861e-03 -3.305741e-02 -3.041416e-02 1.709597e-02 5.618425e-02 3.688586e-02 -3.031026e-02 -7.958220e-02 -5.531561e-02 2.783506e-02 9.366339e-02 7.678725e-02 -1.189929e-02 -9.267711e-02 -9.188811e-02 -1.165877e-02 7.344150e-02 8.865118e-02 2.866102e-02 -4.253195e-02 -5.814418e-02 -1.291124e-02 3.815305e-02 4.134453e-02 1.253457e-04 -3.233953e-02 -1.394683e-02 3.822472e-02 6.462980e-02 2.812419e-02 -4.175669e-02 -7.419560e-02 -2.913827e-02 5.739940e-02 1.036808e-01 6.116215e-02 -3.581440e-02 -1.002897e-01 -7.481991e-02 1.443960e-02 8.418527e-02 7.406134e-02 1.531908e-03 -6.051135e-02 -5.784934e-02 -5.284579e-03 3.519685e-02 2.218080e-02 -2.328811e-02 -4.414916e-02 -1.207961e-02 3.946483e-02 5.010703e-02 -7.612566e-04 -6.664661e-02 -7.772945e-02 -1.331897e-02 7.166860e-02 9.646021e-02 3.343057e-02 -6.217689e-02 -1.030133e-01 -5.238228e-02 4.166435e-02 9.365611e-02 6.210941e-02 -1.467535e-02 -6.111647e-02 -3.976407e-02 1.631828e-02 4.379043e-02 1.698624e-02 -2.769385e-02 -3.469823e-02 7.765255e-03 5.278390e-02 4.474072e-02 -1.810001e-02 -7.586110e-02 -6.569349e-02 1.156033e-02 8.624214e-02 8.514315e-02 4.084910e-03 -8.492803e-02 -1.009551e-01 -3.082253e-02 5.947956e-02 8.907664e-02 3.832152e-02 -3.718185e-02 -6.541304e-02 -2.835863e-02 2.601588e-02 3.865639e-02 1.639272e-03 -3.689642e-02 -2.819092e-02 2.173083e-02 5.662802e-02 3.083467e-02 -3.787516e-02 -8.112868e-02 -4.862091e-02 3.679776e-02 9.610313e-02 6.965522e-02 -2.267975e-02 -9.769734e-02 -8.720871e-02 -2.495931e-03 7.784525e-02 8.383895e-02 1.882413e-02 -4.917464e-02 -5.752095e-02 -8.592574e-03 3.933728e-02 3.668342e-02 -6.335181e-03 -3.447163e-02 -1.038569e-02 4.244884e-02 5.223767e-02 -9.166906e-02 -1.424754e-01 -4.374281e-02 1.091239e-01 1.625980e-01 5.980508e-02 -1.004775e-01 -1.613781e-01 -6.438950e-02 9.281288e-02 1.550823e-01 6.485399e-02 -8.278140e-02 -1.390116e-01 -5.212869e-02 8.308463e-02 1.257924e-01 3.461812e-02 -9.137397e-02 -1.173163e-01 -1.386345e-02 1.112624e-01 1.246533e-01 6.945497e-03 -1.239002e-01 -1.316553e-01 -2.491972e-03 1.373082e-01 1.468321e-01 1.315018e-02 -1.337964e-01 -1.502421e-01 -2.197929e-02 1.222918e-01 1.405838e-01 1.893031e-02 -1.177093e-01 -1.340682e-01 -2.075352e-02 9.992322e-02 1.021916e-01 -1.379249e-02 -1.240893e-01 -1.112444e-01 1.258047e-02 1.172757e-01 8.979166e-02 -4.666506e-02 -1.532197e-01 -1.165504e-01 3.310046e-02 1.489934e-01 1.146680e-01 -3.763072e-02 -1.575255e-01 -1.262888e-01 2.483448e-02 1.468181e-01 1.224884e-01 -1.770124e-02 -1.296807e-01 -1.031005e-01 2.858220e-02 1.261307e-01 8.953574e-02 -3.974560e-02 -1.237668e-01 -7.274797e-02 6.059933e-02 1.350053e-01 6.771214e-02 -7.716976e-02 -1.515373e-01 -7.473703e-02 8.120609e-02 1.613328e-01 8.353276e-02 -7.723780e-02 -1.625256e-01 -8.839619e-02 7.118039e-02 1.593123e-01 9.327259e-02 -5.487890e-02 -1.341855e-01 -6.834491e-02 6.950140e-02 1.352269e-01 6.304576e-02 -6.806847e-02 -1.182366e-01 -3.324653e-02 9.807098e-02 1.354635e-01 3.377373e-02 -1.072362e-01 -1.428485e-01 -3.219589e-02 1.166721e-01 1.534968e-01 3.751867e-02 -1.196764e-01 -1.646390e-01 -5.510632e-02 9.849663e-02 1.444972e-01 4.135115e-02 -1.035274e-01 -1.449842e-01 -4.690176e-02 8.448220e-02 1.126118e-01 1.147794e-02 -1.093769e-01 -1.203114e-01 -7.448647e-03 1.118677e-01 1.105657e-01 -1.478974e-02 -1.371237e-01 -1.275223e-01 1.127279e-02 1.439617e-01 1.375016e-01 -4.031457e-03 -1.416605e-01 -1.397102e-01 -1.098203e-03 1.364829e-01 1.390844e-01 9.514256e-03 -1.187297e-01 -1.184914e-01 3.411918e-03 1.169832e-01 1.049722e-01 -1.674114e-02 -1.175965e-01 -8.942704e-02 4.008889e-02 1.352657e-01 9.337902e-02 -4.662489e-02 -1.409698e-01 -8.757811e-02 6.716243e-02 1.719261e-01 1.221122e-01 -3.352667e-02 -1.400820e-01 -9.088715e-02 6.625324e-02 + -1.97138 + + + -5.125422e-03 -9.628066e-03 -1.162426e-03 1.242924e-02 1.680259e-02 6.002148e-03 -1.060912e-02 -1.696165e-02 -6.203889e-03 1.203288e-02 2.060790e-02 1.143325e-02 -6.726903e-03 -1.691094e-02 -1.040766e-02 5.277976e-03 1.452276e-02 9.223093e-03 -3.800730e-03 -1.066829e-02 -4.998935e-03 5.931884e-03 9.509223e-03 1.540305e-03 -9.123745e-03 -1.003451e-02 1.225744e-03 1.369742e-02 1.392114e-02 1.208189e-04 -1.505214e-02 -1.657188e-02 -2.099270e-03 1.515710e-02 1.898053e-02 5.844198e-03 -1.175137e-02 -1.755506e-02 -7.212946e-03 8.126273e-03 1.343119e-02 4.632627e-03 -8.155993e-03 -1.176480e-02 -3.594933e-03 6.278818e-03 6.348199e-03 -3.794251e-03 -1.289621e-02 -1.011904e-02 2.934735e-03 1.309850e-02 8.985570e-03 -6.761717e-03 -1.919482e-02 -1.557673e-02 1.682236e-03 1.683425e-02 1.588532e-02 1.424205e-04 -1.518048e-02 -1.584554e-02 -2.161136e-03 1.203557e-02 1.352352e-02 2.518331e-03 -8.514443e-03 -8.261447e-03 1.909274e-03 1.004928e-02 6.790745e-03 -4.450409e-03 -1.103289e-02 -4.735606e-03 8.886120e-03 1.556710e-02 7.016809e-03 -9.836634e-03 -1.894126e-02 -1.091191e-02 7.252169e-03 1.852758e-02 1.228081e-02 -5.446780e-03 -1.794407e-02 -1.409270e-02 1.239969e-03 1.271746e-02 1.000341e-02 -2.494237e-03 -1.106591e-02 -7.207000e-03 3.927431e-03 9.611902e-03 3.465587e-03 -7.574529e-03 -1.062383e-02 -8.714838e-04 1.257912e-02 1.556944e-02 3.660408e-03 -1.245224e-02 -1.693820e-02 -4.587532e-03 1.352162e-02 2.043602e-02 9.722996e-03 -8.348730e-03 -1.692453e-02 -8.868328e-03 6.852941e-03 1.468889e-02 7.997667e-03 -5.070076e-03 -1.075903e-02 -4.063890e-03 6.594618e-03 8.886697e-03 1.314189e-05 -1.016788e-02 -9.683732e-03 2.389113e-03 1.414384e-02 1.276619e-02 -1.870521e-03 -1.612425e-02 -1.569009e-02 -4.985950e-06 1.663319e-02 1.869518e-02 4.454968e-03 -1.243728e-02 -1.634235e-02 -4.642553e-03 1.037731e-02 1.422717e-02 4.433904e-03 -7.885850e-03 -1.013342e-02 -1.196769e-03 8.026296e-03 6.717465e-03 -4.082188e-03 -1.247127e-02 -8.484833e-03 4.765274e-03 1.356325e-02 7.577248e-03 -8.905007e-03 -2.037104e-02 -1.522725e-02 2.356905e-03 1.600103e-02 -8.481093e-03 -2.785130e-02 -1.592315e-02 1.432436e-02 3.184482e-02 1.910573e-02 -1.047917e-02 -2.677743e-02 -1.396918e-02 1.347294e-02 2.608015e-02 1.004103e-02 -1.841567e-02 -2.975436e-02 -1.179054e-02 1.733693e-02 2.744712e-02 7.329840e-03 -2.329518e-02 -3.339416e-02 -1.209552e-02 1.998137e-02 3.124241e-02 1.084456e-02 -2.045233e-02 -3.126450e-02 -1.110952e-02 1.939648e-02 2.977515e-02 1.055739e-02 -1.758516e-02 -2.545159e-02 -5.295966e-03 2.153423e-02 2.694393e-02 5.275387e-03 -2.076650e-02 -2.358743e-02 5.667507e-04 2.729142e-02 2.881509e-02 2.661574e-03 -2.526915e-02 -2.667963e-02 3.327183e-04 2.900776e-02 3.068885e-02 3.625809e-03 -2.532144e-02 -2.776594e-02 -2.210401e-03 2.488360e-02 2.619639e-02 1.105928e-03 -2.422883e-02 -2.400496e-02 8.381118e-04 2.395456e-02 2.106333e-02 -4.837139e-03 -2.651149e-02 -2.069488e-02 7.571285e-03 2.966613e-02 2.259650e-02 -7.137880e-03 -2.963148e-02 -2.173526e-02 9.272073e-03 3.268718e-02 2.515854e-02 -5.851156e-03 -2.964868e-02 -2.321758e-02 5.854628e-03 2.750292e-02 1.984834e-02 -8.880452e-03 -2.928941e-02 -2.115781e-02 6.013211e-03 2.317770e-02 1.198130e-02 -1.615540e-02 -3.179134e-02 -1.799490e-02 1.180693e-02 2.722063e-02 1.203094e-02 -1.877656e-02 -3.378441e-02 -1.695213e-02 1.584186e-02 3.250210e-02 1.692257e-02 -1.486140e-02 -3.090237e-02 -1.547335e-02 1.541003e-02 3.060399e-02 1.546618e-02 -1.369220e-02 -2.678566e-02 -1.090295e-02 1.672143e-02 2.683902e-02 8.595912e-03 -1.915054e-02 -2.729573e-02 -6.726278e-03 2.186032e-02 2.889343e-02 6.363847e-03 -2.346538e-02 -3.028677e-02 -6.522157e-03 2.467426e-02 3.250986e-02 9.486594e-03 -2.111353e-02 -2.873610e-02 -6.213740e-03 2.340412e-02 3.053055e-02 8.963226e-03 -1.833213e-02 -2.315319e-02 -9.820634e-04 2.471018e-02 2.698550e-02 3.413532e-03 -2.134902e-02 -2.106901e-02 4.708911e-03 2.973317e-02 2.776426e-02 -2.935302e-04 -2.675908e-02 -2.500202e-02 3.419599e-03 2.998767e-02 2.778021e-02 -1.466164e-03 -2.916344e-02 -2.867928e-02 -1.952076e-03 2.292439e-02 2.042881e-02 -6.696358e-03 -3.079261e-02 -2.791525e-02 -2.268654e-03 1.850399e-02 + -0.192396 + + + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-epoch-average.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-epoch-average.cfg new file mode 100644 index 0000000..d875a22 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-epoch-average.cfg @@ -0,0 +1,4 @@ + + Epoch block average + 1 + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-signal-decimation.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-signal-decimation.cfg new file mode 100644 index 0000000..17f549b --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-signal-decimation.cfg @@ -0,0 +1,3 @@ + + 2 + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-filter.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-filter.cfg new file mode 100644 index 0000000..150b814 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -3.564089e-01 -4.253973e+00 -1.159841e+00 -2.792271e-01 4.723255e+00 -4.802884e-01 6.764767e-01 -5.758325e-01 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-trainer.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-trainer.cfg new file mode 100644 index 0000000..877b7b3 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-trainer.cfg @@ -0,0 +1,6 @@ + + OVTK_StimulationId_ExperimentStop + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + 2 + true + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-stimulator.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-stimulator.cfg new file mode 100644 index 0000000..a6ff355 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-stimulator.cfg @@ -0,0 +1,15 @@ + + ${Player_ScenarioDirectory}/scripts/p300-speller-stimulator.lua + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_07 + 6 + 6 + 6 + 0.2 + 0.1 + 1.0 + 3.0 + OVTK_StimulationId_Label_00 + false + 20 + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-visualization.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-visualization.cfg new file mode 100644 index 0000000..94a29a8 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-speller-visualization.cfg @@ -0,0 +1,17 @@ + + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_07 + 5,5,5 + 100,100,100 + 60 + 0,0,0 + 25,25,25 + 40 + 20,20,70 + 10,10,30 + 40 + 10,40,10 + 60,100,60 + 40 + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-reader.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-reader.cfg new file mode 100644 index 0000000..eb40b5a --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-reader.cfg @@ -0,0 +1,3 @@ + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-writer.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-writer.cfg new file mode 100644 index 0000000..8ec690d --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/stream-writer.cfg @@ -0,0 +1,4 @@ + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-classifier.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-classifier.cfg new file mode 100644 index 0000000..8afb5db --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + -1.065449e-02 -8.433724e-03 -8.073272e-03 -9.017780e-03 -9.777354e-03 -8.944181e-03 -6.230830e-03 -2.758279e-03 -3.235140e-04 -1.352536e-04 -1.926088e-03 -4.083097e-03 -4.692498e-03 -2.753402e-03 1.244794e-03 5.680807e-03 8.762294e-03 9.456782e-03 7.915370e-03 5.287581e-03 3.118571e-03 2.619630e-03 4.094226e-03 6.768748e-03 9.174244e-03 9.972830e-03 8.797661e-03 6.541000e-03 4.799351e-03 4.768071e-03 6.344103e-03 8.124675e-03 8.363765e-03 6.224775e-03 2.424195e-03 -1.196322e-03 -2.851123e-03 -1.915709e-03 7.530751e-04 3.396183e-03 4.368668e-03 2.963365e-03 -3.392516e-04 -4.198203e-03 -7.079456e-03 -7.969700e-03 -6.861420e-03 -4.777039e-03 -3.239701e-03 -3.388286e-03 -5.236641e-03 -7.610737e-03 -8.910818e-03 -8.244070e-03 -6.124523e-03 -4.181914e-03 -4.034294e-03 -6.119988e-03 -9.335163e-03 -1.173262e-02 -1.177178e-02 -9.257865e-03 -5.395932e-03 -2.028599e-03 -6.145408e-04 -1.541484e-03 -4.049135e-03 -6.678852e-03 -7.982786e-03 -7.200846e-03 -4.638517e-03 -1.537715e-03 5.851017e-04 8.427597e-04 -4.245259e-04 -1.824311e-03 -1.845317e-03 4.752100e-05 2.955936e-03 5.119501e-03 5.149311e-03 3.042552e-03 2.428930e-04 -1.287825e-03 -3.188279e-04 2.922254e-03 6.954850e-03 9.945371e-03 1.068628e-02 9.125222e-03 6.276736e-03 3.671370e-03 2.627163e-03 3.629881e-03 6.079055e-03 8.573383e-03 9.682944e-03 8.828090e-03 6.696685e-03 4.831422e-03 4.573125e-03 6.068291e-03 8.086901e-03 8.844321e-03 7.269914e-03 3.808607e-03 1.766968e-04 -1.741630e-03 -1.074637e-03 1.554038e-03 4.470369e-03 5.937520e-03 5.050437e-03 2.094611e-03 -1.694535e-03 -4.761485e-03 -5.956829e-03 -5.080199e-03 -2.996414e-03 -1.197241e-03 -9.487884e-04 -2.483538e-03 -4.794599e-03 -6.271835e-03 -5.825002e-03 -3.713072e-03 -1.435526e-03 -7.048042e-04 -2.216943e-03 -5.109876e-03 -7.496883e-03 -7.681639e-03 -5.207139e-03 -1.076147e-03 2.901702e-03 5.134082e-03 5.021532e-03 3.142139e-03 8.761657e-04 -2.795461e-04 5.861766e-04 3.352089e-03 6.897349e-03 9.682793e-03 1.064804e-02 9.903735e-03 8.705992e-03 8.625191e-03 1.041981e-02 1.342298e-02 1.594116e-02 1.642946e-02 1.460972e-02 2.817637e-02 -4.840407e-02 -9.976585e-02 -6.985380e-02 1.491242e-02 7.155328e-02 4.443439e-02 -3.797191e-02 -9.137803e-02 -6.061353e-02 2.481303e-02 8.074376e-02 5.333914e-02 -2.723268e-02 -7.844005e-02 -4.951793e-02 2.779827e-02 7.315535e-02 4.066951e-02 -3.419586e-02 -7.182737e-02 -3.117873e-02 4.726139e-02 8.269434e-02 3.734128e-02 -4.375073e-02 -7.782342e-02 -2.888324e-02 5.475251e-02 8.871436e-02 3.806794e-02 -4.683099e-02 -8.083197e-02 -2.985476e-02 5.485205e-02 8.865112e-02 3.879119e-02 -4.340915e-02 -7.558262e-02 -2.799611e-02 4.736031e-02 7.128999e-02 1.905085e-02 -5.465944e-02 -7.273114e-02 -1.577054e-02 5.727698e-02 6.950056e-02 5.584476e-03 -7.132660e-02 -8.340662e-02 -1.782299e-02 5.923858e-02 6.914402e-02 6.673236e-04 -7.811252e-02 -8.828058e-02 -1.966468e-02 5.907948e-02 6.992799e-02 3.895191e-03 -7.095231e-02 -7.936229e-02 -1.505279e-02 5.425062e-02 5.727324e-02 -7.536283e-03 -7.101590e-02 -6.525187e-02 5.747159e-03 6.955956e-02 5.973993e-02 -1.519179e-02 -7.931864e-02 -6.639334e-02 1.206213e-02 7.749772e-02 6.363009e-02 -1.607782e-02 -8.150926e-02 -6.658777e-02 1.412134e-02 8.033233e-02 6.715597e-02 -9.949235e-03 -7.195228e-02 -5.701572e-02 1.730200e-02 7.342040e-02 5.409701e-02 -1.892744e-02 -6.798887e-02 -4.022698e-02 3.725145e-02 8.474108e-02 5.200611e-02 -2.921481e-02 -7.662697e-02 -4.121790e-02 4.202358e-02 8.876384e-02 5.067273e-02 -3.518262e-02 -8.334376e-02 -4.609787e-02 3.849587e-02 8.526104e-02 4.784015e-02 -3.525063e-02 -8.071039e-02 -4.526235e-02 3.132817e-02 6.832485e-02 2.741037e-02 -4.827900e-02 -7.926540e-02 -3.230679e-02 4.468368e-02 7.155341e-02 1.865642e-02 -6.164462e-02 -8.763346e-02 -3.174667e-02 5.042964e-02 7.585444e-02 1.823988e-02 -6.483002e-02 -8.972530e-02 -3.110719e-02 5.265307e-02 7.859125e-02 2.267007e-02 -5.690036e-02 -7.962156e-02 -2.437293e-02 5.034890e-02 6.756062e-02 1.109532e-02 -5.827743e-02 -6.613570e-02 -1.759823e-03 7.019885e-02 7.602720e-02 9.305781e-03 -6.132959e-02 -6.165544e-02 1.205372e-02 8.825910e-02 9.222659e-02 2.198583e-02 -4.914157e-02 -4.633916e-02 3.125785e-02 + -1.96568 + + + 2.409086e-03 2.198461e-03 2.433915e-03 2.786778e-03 2.835634e-03 2.319346e-03 1.319269e-03 2.463177e-04 -3.895101e-04 -3.047498e-04 3.468884e-04 1.037339e-03 1.182314e-03 5.141635e-04 -7.405742e-04 -2.000163e-03 -2.688242e-03 -2.575711e-03 -1.890107e-03 -1.145624e-03 -8.253918e-04 -1.117923e-03 -1.846505e-03 -2.601419e-03 -2.980041e-03 -2.804876e-03 -2.215824e-03 -1.592960e-03 -1.341206e-03 -1.641963e-03 -2.315090e-03 -2.895642e-03 -2.908464e-03 -2.183725e-03 -1.001989e-03 4.985026e-05 4.373304e-04 1.995234e-05 -8.552968e-04 -1.572232e-03 -1.627130e-03 -9.223903e-04 2.051332e-04 1.213669e-03 1.678961e-03 1.513395e-03 9.761424e-04 4.988545e-04 4.389008e-04 8.878154e-04 1.624427e-03 2.236657e-03 2.359095e-03 1.905259e-03 1.152863e-03 6.043322e-04 6.804864e-04 1.432049e-03 2.469744e-03 3.183628e-03 3.123699e-03 2.291345e-03 1.143598e-03 3.074599e-04 1.973655e-04 7.838641e-04 1.645497e-03 2.244436e-03 2.237862e-03 1.644344e-03 7.956552e-04 1.293362e-04 -5.469842e-05 2.477126e-04 7.454096e-04 1.014249e-03 7.474585e-04 -3.950141e-05 -9.827824e-04 -1.567896e-03 -1.452945e-03 -7.137900e-04 1.671162e-04 5.851543e-04 1.958459e-04 -8.597379e-04 -2.040156e-03 -2.740986e-03 -2.658219e-03 -1.946669e-03 -1.092818e-03 -6.082479e-04 -7.437185e-04 -1.380879e-03 -2.134181e-03 -2.581622e-03 -2.495294e-03 -1.960393e-03 -1.327201e-03 -1.013934e-03 -1.254147e-03 -1.930003e-03 -2.609070e-03 -2.792642e-03 -2.239575e-03 -1.153674e-03 -8.997446e-05 3.806971e-04 3.515627e-05 -8.551915e-04 -1.694220e-03 -1.931892e-03 -1.389896e-03 -3.407786e-04 6.858343e-04 1.224642e-03 1.122730e-03 5.874328e-04 3.736968e-05 -1.413305e-04 1.960100e-04 8.770850e-04 1.506936e-03 1.692687e-03 1.287216e-03 5.082916e-04 -1.620141e-04 -2.654173e-04 3.252110e-04 1.288027e-03 2.025447e-03 2.033382e-03 1.226029e-03 -3.785326e-06 -1.029815e-03 -1.376807e-03 -9.922784e-04 -2.444616e-04 3.261782e-04 3.269822e-04 -2.867881e-04 -1.224122e-03 -2.046137e-03 -2.412773e-03 -2.262579e-03 -1.842008e-03 -1.567873e-03 -1.783824e-03 -2.537089e-03 -3.514779e-03 -4.205952e-03 -4.216115e-03 -3.541297e-03 -6.581993e-03 -1.424993e-03 1.320168e-02 2.098451e-02 1.257719e-02 -4.498017e-03 -1.334755e-02 -5.064049e-03 1.184138e-02 1.976790e-02 9.834123e-03 -8.909432e-03 -1.834723e-02 -9.407664e-03 8.846172e-03 1.831813e-02 9.958901e-03 -7.415151e-03 -1.633349e-02 -8.395699e-03 7.513099e-03 1.468631e-02 5.845724e-03 -9.542276e-03 -1.527563e-02 -5.316914e-03 9.889072e-03 1.422081e-02 2.683462e-03 -1.316291e-02 -1.689959e-02 -4.197565e-03 1.239718e-02 1.595179e-02 2.360225e-03 -1.523540e-02 -1.945396e-02 -6.067104e-03 1.177606e-02 1.674625e-02 4.605319e-03 -1.184376e-02 -1.594835e-02 -4.007871e-03 1.134547e-02 1.440262e-02 2.527307e-03 -1.134707e-02 -1.229705e-02 1.030356e-03 1.495831e-02 1.495232e-02 8.171389e-04 -1.282625e-02 -1.144988e-02 4.289189e-03 1.883631e-02 1.734606e-02 8.461666e-04 -1.451750e-02 -1.354941e-02 2.777988e-03 1.831901e-02 1.793993e-02 2.538220e-03 -1.219256e-02 -1.181013e-02 2.411256e-03 1.520067e-02 1.319585e-02 -1.381968e-03 -1.325155e-02 -1.005060e-02 4.779710e-03 1.552042e-02 1.049956e-02 -5.626390e-03 -1.640334e-02 -1.043949e-02 6.651778e-03 1.760798e-02 1.093456e-02 -7.266235e-03 -1.917721e-02 -1.305262e-02 5.013481e-03 1.721660e-02 1.185747e-02 -5.142642e-03 -1.654127e-02 -1.131615e-02 4.418310e-03 1.406467e-02 7.733377e-03 -7.717027e-03 -1.599491e-02 -8.378094e-03 7.184297e-03 1.428276e-02 5.125309e-03 -1.115809e-02 -1.768244e-02 -7.186074e-03 1.020478e-02 1.696643e-02 5.939719e-03 -1.218340e-02 -1.938738e-02 -8.350124e-03 1.022358e-02 1.835040e-02 8.721314e-03 -8.242182e-03 -1.520539e-02 -5.472187e-03 1.055541e-02 1.637952e-02 6.413477e-03 -8.459788e-03 -1.235637e-02 -9.556758e-04 1.396288e-02 1.671446e-02 4.074063e-03 -1.111921e-02 -1.299646e-02 9.252366e-04 1.683358e-02 1.841796e-02 3.477969e-03 -1.357535e-02 -1.601966e-02 -1.560836e-03 1.538256e-02 1.814330e-02 4.393229e-03 -1.183847e-02 -1.457514e-02 -1.975018e-03 1.219391e-02 1.295218e-02 -5.180932e-04 -1.425949e-02 -1.416985e-02 -7.052536e-04 1.153933e-02 8.964682e-03 -6.787161e-03 -2.025163e-02 -1.794231e-02 -2.400931e-03 1.001589e-02 5.587103e-03 + -0.191969 + + + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-spatial-filter.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-spatial-filter.cfg new file mode 100644 index 0000000..03b1669 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -2.559252e+00 -3.708117e+00 8.689272e-01 6.167160e-03 -6.747036e+00 3.825336e+00 -1.562881e+00 -1.609973e+00 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-xdawn-train.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jan/p300-xdawn-train.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo/p300-classifier.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo/p300-classifier.cfg new file mode 100644 index 0000000..a75a3ba --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 6.579598e-02 -1.000032e-02 -6.260538e-02 -4.787732e-02 7.654714e-03 4.048588e-02 1.872160e-02 -2.664651e-02 -3.886676e-02 2.862862e-04 4.852049e-02 4.778930e-02 -1.089640e-02 -7.217380e-02 -6.989504e-02 3.324508e-03 8.278305e-02 9.168478e-02 1.687584e-02 -7.534444e-02 -1.008510e-01 -3.743167e-02 5.509584e-02 9.335941e-02 4.928571e-02 -2.750260e-02 -6.292841e-02 -3.147461e-02 2.400900e-02 4.222234e-02 8.454861e-03 -3.305741e-02 -3.041416e-02 1.709597e-02 5.618425e-02 3.688586e-02 -3.031026e-02 -7.958220e-02 -5.531561e-02 2.783506e-02 9.366339e-02 7.678725e-02 -1.189929e-02 -9.267711e-02 -9.188811e-02 -1.165877e-02 7.344150e-02 8.865118e-02 2.866102e-02 -4.253195e-02 -5.814418e-02 -1.291124e-02 3.815305e-02 4.134453e-02 1.253457e-04 -3.233953e-02 -1.394683e-02 3.822472e-02 6.462980e-02 2.812419e-02 -4.175669e-02 -7.419560e-02 -2.913827e-02 5.739940e-02 1.036808e-01 6.116215e-02 -3.581440e-02 -1.002897e-01 -7.481991e-02 1.443960e-02 8.418527e-02 7.406134e-02 1.531908e-03 -6.051135e-02 -5.784934e-02 -5.284579e-03 3.519685e-02 2.218080e-02 -2.328811e-02 -4.414916e-02 -1.207961e-02 3.946483e-02 5.010703e-02 -7.612566e-04 -6.664661e-02 -7.772945e-02 -1.331897e-02 7.166860e-02 9.646021e-02 3.343057e-02 -6.217689e-02 -1.030133e-01 -5.238228e-02 4.166435e-02 9.365611e-02 6.210941e-02 -1.467535e-02 -6.111647e-02 -3.976407e-02 1.631828e-02 4.379043e-02 1.698624e-02 -2.769385e-02 -3.469823e-02 7.765255e-03 5.278390e-02 4.474072e-02 -1.810001e-02 -7.586110e-02 -6.569349e-02 1.156033e-02 8.624214e-02 8.514315e-02 4.084910e-03 -8.492803e-02 -1.009551e-01 -3.082253e-02 5.947956e-02 8.907664e-02 3.832152e-02 -3.718185e-02 -6.541304e-02 -2.835863e-02 2.601588e-02 3.865639e-02 1.639272e-03 -3.689642e-02 -2.819092e-02 2.173083e-02 5.662802e-02 3.083467e-02 -3.787516e-02 -8.112868e-02 -4.862091e-02 3.679776e-02 9.610313e-02 6.965522e-02 -2.267975e-02 -9.769734e-02 -8.720871e-02 -2.495931e-03 7.784525e-02 8.383895e-02 1.882413e-02 -4.917464e-02 -5.752095e-02 -8.592574e-03 3.933728e-02 3.668342e-02 -6.335181e-03 -3.447163e-02 -1.038569e-02 4.244884e-02 5.223767e-02 -9.166906e-02 -1.424754e-01 -4.374281e-02 1.091239e-01 1.625980e-01 5.980508e-02 -1.004775e-01 -1.613781e-01 -6.438950e-02 9.281288e-02 1.550823e-01 6.485399e-02 -8.278140e-02 -1.390116e-01 -5.212869e-02 8.308463e-02 1.257924e-01 3.461812e-02 -9.137397e-02 -1.173163e-01 -1.386345e-02 1.112624e-01 1.246533e-01 6.945497e-03 -1.239002e-01 -1.316553e-01 -2.491972e-03 1.373082e-01 1.468321e-01 1.315018e-02 -1.337964e-01 -1.502421e-01 -2.197929e-02 1.222918e-01 1.405838e-01 1.893031e-02 -1.177093e-01 -1.340682e-01 -2.075352e-02 9.992322e-02 1.021916e-01 -1.379249e-02 -1.240893e-01 -1.112444e-01 1.258047e-02 1.172757e-01 8.979166e-02 -4.666506e-02 -1.532197e-01 -1.165504e-01 3.310046e-02 1.489934e-01 1.146680e-01 -3.763072e-02 -1.575255e-01 -1.262888e-01 2.483448e-02 1.468181e-01 1.224884e-01 -1.770124e-02 -1.296807e-01 -1.031005e-01 2.858220e-02 1.261307e-01 8.953574e-02 -3.974560e-02 -1.237668e-01 -7.274797e-02 6.059933e-02 1.350053e-01 6.771214e-02 -7.716976e-02 -1.515373e-01 -7.473703e-02 8.120609e-02 1.613328e-01 8.353276e-02 -7.723780e-02 -1.625256e-01 -8.839619e-02 7.118039e-02 1.593123e-01 9.327259e-02 -5.487890e-02 -1.341855e-01 -6.834491e-02 6.950140e-02 1.352269e-01 6.304576e-02 -6.806847e-02 -1.182366e-01 -3.324653e-02 9.807098e-02 1.354635e-01 3.377373e-02 -1.072362e-01 -1.428485e-01 -3.219589e-02 1.166721e-01 1.534968e-01 3.751867e-02 -1.196764e-01 -1.646390e-01 -5.510632e-02 9.849663e-02 1.444972e-01 4.135115e-02 -1.035274e-01 -1.449842e-01 -4.690176e-02 8.448220e-02 1.126118e-01 1.147794e-02 -1.093769e-01 -1.203114e-01 -7.448647e-03 1.118677e-01 1.105657e-01 -1.478974e-02 -1.371237e-01 -1.275223e-01 1.127279e-02 1.439617e-01 1.375016e-01 -4.031457e-03 -1.416605e-01 -1.397102e-01 -1.098203e-03 1.364829e-01 1.390844e-01 9.514256e-03 -1.187297e-01 -1.184914e-01 3.411918e-03 1.169832e-01 1.049722e-01 -1.674114e-02 -1.175965e-01 -8.942704e-02 4.008889e-02 1.352657e-01 9.337902e-02 -4.662489e-02 -1.409698e-01 -8.757811e-02 6.716243e-02 1.719261e-01 1.221122e-01 -3.352667e-02 -1.400820e-01 -9.088715e-02 6.625324e-02 + -1.97138 + + + -5.125422e-03 -9.628066e-03 -1.162426e-03 1.242924e-02 1.680259e-02 6.002148e-03 -1.060912e-02 -1.696165e-02 -6.203889e-03 1.203288e-02 2.060790e-02 1.143325e-02 -6.726903e-03 -1.691094e-02 -1.040766e-02 5.277976e-03 1.452276e-02 9.223093e-03 -3.800730e-03 -1.066829e-02 -4.998935e-03 5.931884e-03 9.509223e-03 1.540305e-03 -9.123745e-03 -1.003451e-02 1.225744e-03 1.369742e-02 1.392114e-02 1.208189e-04 -1.505214e-02 -1.657188e-02 -2.099270e-03 1.515710e-02 1.898053e-02 5.844198e-03 -1.175137e-02 -1.755506e-02 -7.212946e-03 8.126273e-03 1.343119e-02 4.632627e-03 -8.155993e-03 -1.176480e-02 -3.594933e-03 6.278818e-03 6.348199e-03 -3.794251e-03 -1.289621e-02 -1.011904e-02 2.934735e-03 1.309850e-02 8.985570e-03 -6.761717e-03 -1.919482e-02 -1.557673e-02 1.682236e-03 1.683425e-02 1.588532e-02 1.424205e-04 -1.518048e-02 -1.584554e-02 -2.161136e-03 1.203557e-02 1.352352e-02 2.518331e-03 -8.514443e-03 -8.261447e-03 1.909274e-03 1.004928e-02 6.790745e-03 -4.450409e-03 -1.103289e-02 -4.735606e-03 8.886120e-03 1.556710e-02 7.016809e-03 -9.836634e-03 -1.894126e-02 -1.091191e-02 7.252169e-03 1.852758e-02 1.228081e-02 -5.446780e-03 -1.794407e-02 -1.409270e-02 1.239969e-03 1.271746e-02 1.000341e-02 -2.494237e-03 -1.106591e-02 -7.207000e-03 3.927431e-03 9.611902e-03 3.465587e-03 -7.574529e-03 -1.062383e-02 -8.714838e-04 1.257912e-02 1.556944e-02 3.660408e-03 -1.245224e-02 -1.693820e-02 -4.587532e-03 1.352162e-02 2.043602e-02 9.722996e-03 -8.348730e-03 -1.692453e-02 -8.868328e-03 6.852941e-03 1.468889e-02 7.997667e-03 -5.070076e-03 -1.075903e-02 -4.063890e-03 6.594618e-03 8.886697e-03 1.314189e-05 -1.016788e-02 -9.683732e-03 2.389113e-03 1.414384e-02 1.276619e-02 -1.870521e-03 -1.612425e-02 -1.569009e-02 -4.985950e-06 1.663319e-02 1.869518e-02 4.454968e-03 -1.243728e-02 -1.634235e-02 -4.642553e-03 1.037731e-02 1.422717e-02 4.433904e-03 -7.885850e-03 -1.013342e-02 -1.196769e-03 8.026296e-03 6.717465e-03 -4.082188e-03 -1.247127e-02 -8.484833e-03 4.765274e-03 1.356325e-02 7.577248e-03 -8.905007e-03 -2.037104e-02 -1.522725e-02 2.356905e-03 1.600103e-02 -8.481093e-03 -2.785130e-02 -1.592315e-02 1.432436e-02 3.184482e-02 1.910573e-02 -1.047917e-02 -2.677743e-02 -1.396918e-02 1.347294e-02 2.608015e-02 1.004103e-02 -1.841567e-02 -2.975436e-02 -1.179054e-02 1.733693e-02 2.744712e-02 7.329840e-03 -2.329518e-02 -3.339416e-02 -1.209552e-02 1.998137e-02 3.124241e-02 1.084456e-02 -2.045233e-02 -3.126450e-02 -1.110952e-02 1.939648e-02 2.977515e-02 1.055739e-02 -1.758516e-02 -2.545159e-02 -5.295966e-03 2.153423e-02 2.694393e-02 5.275387e-03 -2.076650e-02 -2.358743e-02 5.667507e-04 2.729142e-02 2.881509e-02 2.661574e-03 -2.526915e-02 -2.667963e-02 3.327183e-04 2.900776e-02 3.068885e-02 3.625809e-03 -2.532144e-02 -2.776594e-02 -2.210401e-03 2.488360e-02 2.619639e-02 1.105928e-03 -2.422883e-02 -2.400496e-02 8.381118e-04 2.395456e-02 2.106333e-02 -4.837139e-03 -2.651149e-02 -2.069488e-02 7.571285e-03 2.966613e-02 2.259650e-02 -7.137880e-03 -2.963148e-02 -2.173526e-02 9.272073e-03 3.268718e-02 2.515854e-02 -5.851156e-03 -2.964868e-02 -2.321758e-02 5.854628e-03 2.750292e-02 1.984834e-02 -8.880452e-03 -2.928941e-02 -2.115781e-02 6.013211e-03 2.317770e-02 1.198130e-02 -1.615540e-02 -3.179134e-02 -1.799490e-02 1.180693e-02 2.722063e-02 1.203094e-02 -1.877656e-02 -3.378441e-02 -1.695213e-02 1.584186e-02 3.250210e-02 1.692257e-02 -1.486140e-02 -3.090237e-02 -1.547335e-02 1.541003e-02 3.060399e-02 1.546618e-02 -1.369220e-02 -2.678566e-02 -1.090295e-02 1.672143e-02 2.683902e-02 8.595912e-03 -1.915054e-02 -2.729573e-02 -6.726278e-03 2.186032e-02 2.889343e-02 6.363847e-03 -2.346538e-02 -3.028677e-02 -6.522157e-03 2.467426e-02 3.250986e-02 9.486594e-03 -2.111353e-02 -2.873610e-02 -6.213740e-03 2.340412e-02 3.053055e-02 8.963226e-03 -1.833213e-02 -2.315319e-02 -9.820634e-04 2.471018e-02 2.698550e-02 3.413532e-03 -2.134902e-02 -2.106901e-02 4.708911e-03 2.973317e-02 2.776426e-02 -2.935302e-04 -2.675908e-02 -2.500202e-02 3.419599e-03 2.998767e-02 2.778021e-02 -1.466164e-03 -2.916344e-02 -2.867928e-02 -1.952076e-03 2.292439e-02 2.042881e-02 -6.696358e-03 -3.079261e-02 -2.791525e-02 -2.268654e-03 1.850399e-02 + -0.192396 + + + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo/p300-spatial-filter.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo/p300-spatial-filter.cfg new file mode 100644 index 0000000..150b814 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -3.564089e-01 -4.253973e+00 -1.159841e+00 -2.792271e-01 4.723255e+00 -4.802884e-01 6.764767e-01 -5.758325e-01 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo/p300-xdawn-train.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo/p300-xdawn-train.ov new file mode 100644 index 0000000..322e8ab Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo/p300-xdawn-train.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-classifier.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-classifier.cfg new file mode 100644 index 0000000..dc3ff8d --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 5.023280e-02 3.764423e-02 2.498992e-02 2.205262e-02 2.781807e-02 3.100063e-02 2.220079e-02 4.864926e-03 -6.996999e-03 -2.782131e-03 1.307792e-02 2.415620e-02 1.749764e-02 -3.517305e-03 -2.184482e-02 -2.273431e-02 -7.547872e-03 7.923395e-03 8.754577e-03 -5.322100e-03 -2.083653e-02 -2.454778e-02 -1.606082e-02 -6.744798e-03 -6.945412e-03 -1.525904e-02 -2.092805e-02 -1.635047e-02 -6.035751e-03 -2.167437e-03 -1.122313e-02 -2.589318e-02 -3.143947e-02 -2.066732e-02 -2.266003e-03 6.603369e-03 -3.206754e-03 -2.346435e-02 -3.586774e-02 -2.919879e-02 -9.697582e-03 5.313045e-03 4.063567e-03 -9.103153e-03 -1.914333e-02 -1.557472e-02 -2.063816e-03 8.774287e-03 9.161186e-03 3.876580e-03 4.122179e-03 1.449580e-02 2.727198e-02 3.038508e-02 2.084996e-02 9.205450e-03 9.563690e-03 2.490662e-02 4.279603e-02 4.661100e-02 3.171245e-02 1.052025e-02 1.132059e-03 1.035146e-02 2.758426e-02 3.536693e-02 2.598944e-02 8.003711e-03 -3.170551e-03 -5.163085e-04 8.774646e-03 1.209871e-02 5.001533e-03 -4.754784e-03 -6.489672e-03 1.033872e-03 7.657191e-03 2.665318e-03 -1.295428e-02 -2.616189e-02 -2.461127e-02 -9.825830e-03 2.989044e-03 -8.681673e-04 -2.107953e-02 -4.196602e-02 -4.704027e-02 -3.443330e-02 -1.824967e-02 -1.475900e-02 -2.712809e-02 -4.343855e-02 -4.922771e-02 -4.149289e-02 -3.029197e-02 -2.716932e-02 -3.300389e-02 -3.791560e-02 -3.286537e-02 -2.022988e-02 -1.178634e-02 -1.596223e-02 -2.784870e-02 -3.304626e-02 -2.215497e-02 -1.275732e-03 1.271172e-02 8.152025e-03 -9.721702e-03 -2.324261e-02 -1.887286e-02 1.531826e-04 1.731281e-02 1.874798e-02 5.958592e-03 -6.839537e-03 -7.315641e-03 3.388633e-03 1.332515e-02 1.304139e-02 5.273002e-03 1.096225e-03 7.085723e-03 1.749042e-02 2.006193e-02 9.591224e-03 -5.301579e-03 -9.948866e-03 1.342265e-03 1.839647e-02 2.410050e-02 1.092700e-02 -1.123327e-02 -2.399447e-02 -1.772383e-02 -3.927396e-04 1.043981e-02 4.419368e-03 -1.248552e-02 -2.496701e-02 -2.379538e-02 -1.405836e-02 -8.532157e-03 -1.383604e-02 -2.402199e-02 -2.798091e-02 -2.235633e-02 -1.589493e-02 -2.029512e-02 -3.708372e-02 -5.467323e-02 -5.946973e-02 -5.014721e-02 -5.135034e-02 -1.900345e-02 1.366188e-02 1.959101e-02 -1.804682e-03 -2.429428e-02 -2.170582e-02 5.431877e-03 3.065392e-02 2.887963e-02 2.315960e-03 -2.156155e-02 -1.791586e-02 1.014777e-02 3.472365e-02 3.149396e-02 4.393186e-03 -1.859986e-02 -1.418825e-02 1.239693e-02 3.282673e-02 2.483622e-02 -4.716395e-03 -2.653900e-02 -1.861832e-02 1.131469e-02 3.350283e-02 2.624641e-02 -2.261078e-03 -2.253725e-02 -1.400256e-02 1.407767e-02 3.224064e-02 2.113989e-02 -8.497038e-03 -2.669075e-02 -1.477834e-02 1.548725e-02 3.381788e-02 2.213180e-02 -7.210658e-03 -2.425423e-02 -1.219759e-02 1.541762e-02 2.866546e-02 1.207253e-02 -1.922749e-02 -3.462451e-02 -1.909920e-02 1.144094e-02 2.623005e-02 1.078501e-02 -1.857256e-02 -3.154676e-02 -1.481536e-02 1.449616e-02 2.651654e-02 9.356060e-03 -1.858082e-02 -2.730675e-02 -5.890479e-03 2.626765e-02 3.904800e-02 2.210192e-02 -4.883274e-03 -1.257383e-02 7.854207e-03 3.564681e-02 4.177738e-02 1.884071e-02 -1.107272e-02 -1.867073e-02 2.752031e-03 3.041218e-02 3.510291e-02 1.076276e-02 -1.953810e-02 -2.722240e-02 -7.286541e-03 1.683023e-02 1.749296e-02 -8.601768e-03 -3.680850e-02 -3.955074e-02 -1.443572e-02 1.324683e-02 1.620245e-02 -7.216621e-03 -3.158729e-02 -3.061650e-02 -4.145223e-03 2.167276e-02 2.121186e-02 -4.217704e-03 -2.745308e-02 -2.305294e-02 6.717297e-03 3.400791e-02 3.350172e-02 7.915661e-03 -1.504487e-02 -1.109404e-02 1.588940e-02 3.800984e-02 3.208902e-02 3.573422e-03 -1.884887e-02 -1.244792e-02 1.634524e-02 3.843132e-02 3.161122e-02 3.056976e-03 -1.822127e-02 -1.116093e-02 1.579401e-02 3.341724e-02 2.179318e-02 -9.012830e-03 -2.891684e-02 -1.834306e-02 1.179193e-02 3.104644e-02 2.024197e-02 -9.259412e-03 -2.737120e-02 -1.606605e-02 1.230839e-02 2.783493e-02 1.380501e-02 -1.602520e-02 -3.136247e-02 -1.628020e-02 1.446133e-02 3.035242e-02 1.609036e-02 -1.302899e-02 -2.695394e-02 -1.171226e-02 1.631004e-02 2.725874e-02 8.601588e-03 -2.169876e-02 -3.318902e-02 -1.382094e-02 1.776046e-02 3.110367e-02 1.480713e-02 -1.205592e-02 -1.951980e-02 2.722027e-03 3.497552e-02 4.791346e-02 3.277780e-02 + -2.00902 + + + -1.037856e-02 -9.587372e-03 -4.510515e-03 -4.814465e-04 -1.365595e-03 -5.307766e-03 -6.799116e-03 -2.841571e-03 3.416342e-03 5.637051e-03 9.864054e-04 -6.398818e-03 -9.047329e-03 -3.528325e-03 5.816383e-03 1.073260e-02 6.907910e-03 -1.857532e-03 -7.285352e-03 -4.497621e-03 3.557755e-03 9.317476e-03 8.047500e-03 2.084028e-03 -2.105994e-03 -7.112330e-04 3.832027e-03 5.934121e-03 3.114346e-03 -1.290034e-03 -1.834192e-03 2.879581e-03 8.248020e-03 8.227173e-03 1.835395e-03 -5.240094e-03 -5.937098e-03 1.082545e-03 9.706521e-03 1.199168e-02 5.757992e-03 -3.294196e-03 -7.046597e-03 -2.647745e-03 5.059606e-03 8.552999e-03 4.922054e-03 -1.775570e-03 -5.129024e-03 -2.960633e-03 8.728988e-04 1.059963e-03 -3.255278e-03 -7.546460e-03 -6.928465e-03 -1.749503e-03 2.329923e-03 1.201201e-04 -7.353756e-03 -1.327471e-02 -1.156397e-02 -3.108681e-03 4.681805e-03 4.810232e-03 -2.592512e-03 -1.037811e-02 -1.122744e-02 -4.521716e-03 3.408389e-03 5.672458e-03 1.361561e-03 -4.147783e-03 -5.066912e-03 -1.019626e-03 3.079306e-03 2.668320e-03 -1.427190e-03 -3.930864e-03 -1.003416e-03 5.235001e-03 8.531200e-03 5.015074e-03 -2.325229e-03 -6.092404e-03 -1.715015e-03 7.725187e-03 1.409329e-02 1.189451e-02 3.564586e-03 -2.861733e-03 -1.425412e-03 6.249423e-03 1.288481e-02 1.277505e-02 7.047876e-03 1.922850e-03 2.097498e-03 6.173866e-03 8.666068e-03 6.198038e-03 1.214162e-03 -7.344411e-04 2.783398e-03 8.041625e-03 8.751776e-03 2.752664e-03 -5.190361e-03 -7.684737e-03 -2.054215e-03 6.651326e-03 1.021963e-02 5.107300e-03 -4.128438e-03 -9.193238e-03 -5.936476e-03 1.940963e-03 6.815780e-03 4.602046e-03 -1.684735e-03 -5.536379e-03 -3.731647e-03 7.179829e-04 2.261927e-03 -9.941728e-04 -5.228404e-03 -5.151383e-03 -1.312769e-05 5.132525e-03 4.498342e-03 -2.153442e-03 -8.655338e-03 -8.248464e-03 -4.218934e-04 8.165288e-03 9.855854e-03 3.328661e-03 -5.109280e-03 -7.563670e-03 -2.002472e-03 6.122299e-03 9.462057e-03 5.849113e-03 -1.070508e-04 -2.162151e-03 1.199286e-03 5.677542e-03 6.191633e-03 2.519113e-03 -4.758773e-04 1.751792e-03 8.182062e-03 1.287109e-02 1.107154e-02 1.716072e-02 1.179036e-02 -2.955288e-03 -1.311528e-02 -9.246707e-03 3.993599e-03 1.262045e-02 7.569479e-03 -6.111183e-03 -1.448840e-02 -9.030955e-03 4.643642e-03 1.249266e-02 6.389258e-03 -7.569885e-03 -1.527489e-02 -8.986191e-03 4.797178e-03 1.201201e-02 5.417112e-03 -8.016324e-03 -1.426516e-02 -6.646021e-03 7.281601e-03 1.338014e-02 5.362930e-03 -8.742517e-03 -1.471380e-02 -6.575543e-03 7.352504e-03 1.295972e-02 4.719211e-03 -8.727228e-03 -1.345260e-02 -4.506541e-03 9.014399e-03 1.326079e-02 3.789261e-03 -9.877897e-03 -1.394835e-02 -4.407106e-03 8.927542e-03 1.247135e-02 2.767611e-03 -9.996175e-03 -1.244389e-02 -1.749113e-03 1.139971e-02 1.366509e-02 2.680941e-03 -1.048235e-02 -1.254687e-02 -1.515896e-03 1.132367e-02 1.291797e-02 1.729481e-03 -1.075579e-02 -1.181213e-02 -5.003473e-04 1.136841e-02 1.130859e-02 -1.064107e-03 -1.360765e-02 -1.401215e-02 -2.319946e-03 9.173649e-03 8.525008e-03 -3.637077e-03 -1.476764e-02 -1.326897e-02 -4.086879e-04 1.090651e-02 9.277374e-03 -3.531811e-03 -1.433760e-02 -1.192684e-02 1.549097e-03 1.278627e-02 1.088121e-02 -1.601629e-03 -1.132586e-02 -7.866359e-03 5.605601e-03 1.554661e-02 1.187475e-02 -1.721247e-03 -1.152669e-02 -7.773158e-03 5.430763e-03 1.434519e-02 9.670841e-03 -3.940133e-03 -1.265736e-02 -7.650954e-03 5.823980e-03 1.374339e-02 7.627544e-03 -6.756626e-03 -1.520422e-02 -9.490116e-03 4.294903e-03 1.198153e-02 5.762432e-03 -7.893570e-03 -1.491077e-02 -8.028424e-03 5.760681e-03 1.234784e-02 4.925332e-03 -9.045777e-03 -1.543249e-02 -7.830977e-03 5.933881e-03 1.183938e-02 4.009536e-03 -9.291177e-03 -1.414233e-02 -5.256639e-03 8.542739e-03 1.328011e-02 4.094795e-03 -9.748802e-03 -1.424343e-02 -4.864424e-03 8.857950e-03 1.307279e-02 3.713535e-03 -9.409888e-03 -1.268625e-02 -2.639611e-03 1.050893e-02 1.328599e-02 2.742399e-03 -1.051170e-02 -1.311188e-02 -2.548509e-03 1.031480e-02 1.237425e-02 1.684543e-03 -1.057394e-02 -1.157095e-02 -1.220668e-05 1.245740e-02 1.309567e-02 1.075128e-03 -1.162555e-02 -1.238415e-02 -7.638310e-04 1.106519e-02 1.073219e-02 -1.758508e-03 -1.410179e-02 -1.431623e-02 + -0.192624 + + + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-spatial-filter.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-spatial-filter.cfg new file mode 100644 index 0000000..a4c4c7d --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -1.197627e+00 2.105600e-01 -2.502675e+00 -6.337555e-01 5.800950e-01 5.214162e+00 -1.198762e-01 1.296027e+00 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-xdawn-train.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Nicole/p300-xdawn-train.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-classifier.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-classifier.cfg new file mode 100644 index 0000000..b5b3e61 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + 1.992349e-04 -7.101522e-02 -6.101115e-02 1.837456e-02 8.451950e-02 6.890552e-02 -1.273989e-02 -7.677335e-02 -5.759445e-02 2.487486e-02 8.539484e-02 6.074976e-02 -2.513950e-02 -8.515548e-02 -5.781966e-02 2.961841e-02 8.844873e-02 5.861412e-02 -3.006978e-02 -8.804303e-02 -5.690836e-02 3.137926e-02 8.721030e-02 5.446974e-02 -3.273200e-02 -8.533920e-02 -5.034878e-02 3.543156e-02 8.354213e-02 4.463870e-02 -4.107945e-02 -8.529944e-02 -4.234759e-02 4.375059e-02 8.421183e-02 3.655660e-02 -5.143394e-02 -9.009501e-02 -3.943200e-02 4.964065e-02 8.673025e-02 3.388695e-02 -5.561893e-02 -9.127523e-02 -3.719357e-02 5.160887e-02 8.533880e-02 3.067820e-02 -5.576284e-02 -8.561326e-02 -2.891653e-02 5.572887e-02 8.157143e-02 2.263129e-02 -5.986401e-02 -8.047555e-02 -1.737311e-02 6.503794e-02 8.198488e-02 1.536590e-02 -6.720587e-02 -8.113447e-02 -1.134800e-02 7.183194e-02 8.395275e-02 1.238461e-02 -7.063420e-02 -8.126964e-02 -9.154502e-03 7.229510e-02 8.068305e-02 8.270836e-03 -7.065540e-02 -7.588764e-02 -3.005205e-03 7.263436e-02 7.338773e-02 -1.152449e-03 -7.395180e-02 -6.973003e-02 7.629030e-03 7.881926e-02 7.031543e-02 -1.001845e-02 -8.044251e-02 -6.861530e-02 1.428943e-02 8.445408e-02 7.049683e-02 -1.381592e-02 -8.337001e-02 -6.808107e-02 1.603180e-02 8.335617e-02 6.582881e-02 -1.810695e-02 -8.281586e-02 -6.304173e-02 1.976960e-02 7.994039e-02 5.554372e-02 -2.823412e-02 -8.512472e-02 -5.642925e-02 2.857394e-02 8.243361e-02 4.916468e-02 -3.801390e-02 -9.014055e-02 -5.327591e-02 3.606835e-02 8.764745e-02 4.919107e-02 -4.028334e-02 -8.996025e-02 -4.941169e-02 4.031952e-02 8.864850e-02 4.755458e-02 -3.996037e-02 -8.420444e-02 -4.040029e-02 4.598750e-02 8.624931e-02 3.941727e-02 -4.591090e-02 -8.161477e-02 -3.061025e-02 5.489345e-02 8.673841e-02 3.127371e-02 -5.570341e-02 -8.554285e-02 -2.730365e-02 6.022422e-02 8.799954e-02 2.731039e-02 -6.083064e-02 -8.753615e-02 -2.624987e-02 6.046999e-02 8.473959e-02 2.262749e-02 -6.196672e-02 -8.288187e-02 -1.956483e-02 6.242056e-02 7.890095e-02 1.334653e-02 -6.639037e-02 -7.786407e-02 -8.791755e-03 7.010557e-02 -5.615247e-04 7.483156e-02 6.284848e-02 -2.304054e-02 -9.388252e-02 -7.630811e-02 1.245716e-02 8.227777e-02 6.236127e-02 -2.626415e-02 -9.218231e-02 -6.707967e-02 2.425210e-02 8.902756e-02 6.117237e-02 -3.105858e-02 -9.368062e-02 -6.273613e-02 3.045338e-02 9.114664e-02 5.770379e-02 -3.565109e-02 -9.379946e-02 -5.769990e-02 3.557369e-02 9.089105e-02 5.224208e-02 -4.021881e-02 -9.142095e-02 -4.865274e-02 4.458068e-02 9.312595e-02 4.756963e-02 -4.514629e-02 -8.967265e-02 -3.980462e-02 5.408174e-02 9.629405e-02 4.354225e-02 -5.067760e-02 -9.046333e-02 -3.526629e-02 5.869814e-02 9.568188e-02 3.794305e-02 -5.586529e-02 -9.056170e-02 -3.143582e-02 6.056010e-02 9.121830e-02 2.926055e-02 -6.190468e-02 -8.916862e-02 -2.494715e-02 6.468354e-02 8.765063e-02 2.013571e-02 -6.897417e-02 -8.848470e-02 -1.822506e-02 7.011663e-02 8.607157e-02 1.283464e-02 -7.536013e-02 -8.880163e-02 -1.378228e-02 7.334513e-02 8.392634e-02 7.302760e-03 -7.842094e-02 -8.606398e-02 -8.179913e-03 7.557069e-02 7.987519e-02 8.068346e-04 -8.038784e-02 -8.048918e-02 6.053229e-04 7.985220e-02 7.607283e-02 -6.937963e-03 -8.420552e-02 -7.645033e-02 8.728067e-03 8.439631e-02 7.298832e-02 -1.436799e-02 -8.896829e-02 -7.488045e-02 1.360530e-02 8.646818e-02 6.965921e-02 -1.948975e-02 -9.002703e-02 -7.013510e-02 1.976814e-02 8.808818e-02 6.564250e-02 -2.382641e-02 -8.814341e-02 -6.104658e-02 3.007882e-02 9.227659e-02 6.215646e-02 -2.919914e-02 -8.795594e-02 -5.350611e-02 3.939227e-02 9.591337e-02 5.796964e-02 -3.631159e-02 -9.126768e-02 -5.118437e-02 4.284935e-02 9.475875e-02 5.136447e-02 -4.348054e-02 -9.367112e-02 -4.881053e-02 4.458432e-02 9.077585e-02 4.258715e-02 -5.058381e-02 -9.344767e-02 -4.230373e-02 5.032885e-02 8.950351e-02 3.502797e-02 -5.734648e-02 -9.288521e-02 -3.480497e-02 5.791345e-02 9.059256e-02 2.956071e-02 -6.327357e-02 -9.339522e-02 -3.004358e-02 6.234892e-02 8.976243e-02 2.436153e-02 -6.722092e-02 -9.188361e-02 -2.492409e-02 6.498266e-02 8.605785e-02 1.710047e-02 -7.106021e-02 -8.812765e-02 -1.667591e-02 7.010703e-02 8.335692e-02 9.505115e-03 -7.575139e-02 + -1.86754 + + + 4.520025e-03 1.860010e-02 1.121634e-02 -9.526612e-03 -2.206935e-02 -1.350048e-02 7.332846e-03 1.904633e-02 9.740392e-03 -1.077739e-02 -2.109266e-02 -1.024066e-02 1.091980e-02 2.073750e-02 8.976156e-03 -1.253802e-02 -2.181898e-02 -9.125094e-03 1.298347e-02 2.226882e-02 9.350535e-03 -1.275495e-02 -2.180553e-02 -8.833959e-03 1.287559e-02 2.139641e-02 8.432157e-03 -1.242006e-02 -1.973092e-02 -6.162925e-03 1.415248e-02 2.024580e-02 5.886213e-03 -1.402755e-02 -1.880432e-02 -3.288592e-03 1.672094e-02 2.058894e-02 4.047893e-03 -1.624421e-02 -1.956902e-02 -2.303597e-03 1.823352e-02 2.125923e-02 3.603501e-03 -1.704786e-02 -2.005707e-02 -2.692211e-03 1.723442e-02 1.955385e-02 2.184331e-03 -1.695378e-02 -1.838230e-02 -9.491761e-04 1.714693e-02 1.714554e-02 -9.826170e-04 -1.851984e-02 -1.726815e-02 1.670249e-03 1.889736e-02 1.655722e-02 -3.268034e-03 -2.048766e-02 -1.740754e-02 3.156418e-03 2.057706e-02 1.727459e-02 -3.443324e-03 -2.071028e-02 -1.722719e-02 3.280705e-03 1.997974e-02 1.615205e-02 -3.915268e-03 -1.951488e-02 -1.477461e-02 5.184486e-03 1.965515e-02 1.368664e-02 -6.549141e-03 -2.011724e-02 -1.287366e-02 7.905032e-03 2.087043e-02 1.247629e-02 -9.002567e-03 -2.173394e-02 -1.254926e-02 9.523483e-03 2.228351e-02 1.283895e-02 -9.297754e-03 -2.183035e-02 -1.224474e-02 9.604475e-03 2.162626e-02 1.195660e-02 -9.130031e-03 -1.990548e-02 -9.446406e-03 1.130126e-02 2.089287e-02 9.461435e-03 -1.115129e-02 -1.958701e-02 -6.974644e-03 1.384189e-02 2.137811e-02 7.560350e-03 -1.383110e-02 -2.106887e-02 -6.634604e-03 1.498054e-02 2.186957e-02 6.917741e-03 -1.495362e-02 -2.188828e-02 -7.197601e-03 1.398074e-02 2.016843e-02 5.348754e-03 -1.509949e-02 -2.027120e-02 -5.105601e-03 1.457596e-02 1.842942e-02 2.516103e-03 -1.666331e-02 -1.915436e-02 -2.125867e-03 1.709569e-02 1.871972e-02 8.443587e-04 -1.840266e-02 -1.924333e-02 -4.632146e-04 1.918868e-02 1.993662e-02 1.038087e-03 -1.843670e-02 -1.891246e-02 -8.414417e-05 1.890837e-02 1.900492e-02 5.241281e-04 -1.737256e-02 -1.638006e-02 2.281010e-03 1.927344e-02 1.709345e-02 -1.932394e-03 -1.805311e-02 -4.853757e-03 -1.940220e-02 -1.102546e-02 1.131973e-02 2.448794e-02 1.481099e-02 -7.980413e-03 -2.077269e-02 -1.074513e-02 1.151877e-02 2.288933e-02 1.140477e-02 -1.142681e-02 -2.234868e-02 -1.014716e-02 1.280654e-02 2.310247e-02 1.016209e-02 -1.292666e-02 -2.269863e-02 -9.204296e-03 1.384754e-02 2.304199e-02 9.084499e-03 -1.377936e-02 -2.232723e-02 -8.025591e-03 1.433941e-02 2.182851e-02 6.784580e-03 -1.540118e-02 -2.208996e-02 -6.575438e-03 1.506859e-02 2.046998e-02 3.903692e-03 -1.778496e-02 -2.237006e-02 -4.999317e-03 1.675779e-02 2.077706e-02 2.957756e-03 -1.853957e-02 -2.175729e-02 -3.303776e-03 1.818310e-02 2.100731e-02 2.483695e-03 -1.838030e-02 -2.029335e-02 -1.361666e-03 1.905918e-02 2.018180e-02 1.003517e-03 -1.873854e-02 -1.880822e-02 8.149188e-04 1.993281e-02 1.883382e-02 -1.481160e-03 -2.026000e-02 -1.820008e-02 2.767847e-03 2.135820e-02 1.860694e-02 -2.756698e-03 -2.103188e-02 -1.762403e-02 4.015211e-03 2.189711e-02 1.788042e-02 -3.884197e-03 -2.123504e-02 -1.660769e-02 5.103044e-03 2.162275e-02 1.608213e-02 -5.784159e-03 -2.157119e-02 -1.516340e-02 6.775521e-03 2.164433e-02 1.407242e-02 -8.293425e-03 -2.255635e-02 -1.398243e-02 8.867444e-03 2.278833e-02 1.358152e-02 -9.423500e-03 -2.282302e-02 -1.296242e-02 1.015070e-02 2.303176e-02 1.262248e-02 -1.044915e-02 -2.274683e-02 -1.191754e-02 1.077687e-02 2.203577e-02 1.033708e-02 -1.233880e-02 -2.282413e-02 -1.049089e-02 1.188457e-02 2.122571e-02 7.817965e-03 -1.468745e-02 -2.319031e-02 -8.779569e-03 1.407428e-02 2.221274e-02 7.409747e-03 -1.518945e-02 -2.245697e-02 -6.834865e-03 1.595687e-02 2.291970e-02 7.175532e-03 -1.507811e-02 -2.111911e-02 -4.851346e-03 1.705287e-02 2.223958e-02 5.502425e-03 -1.596032e-02 -2.019315e-02 -2.961529e-03 1.793136e-02 2.089738e-02 2.708282e-03 -1.813593e-02 -2.029397e-02 -1.439449e-03 1.927045e-02 2.068908e-02 1.268575e-03 -1.930271e-02 -2.012299e-02 -3.654294e-04 1.987190e-02 2.002505e-02 -2.114387e-05 -1.986935e-02 -1.942976e-02 6.307668e-04 1.965162e-02 1.812354e-02 -2.406703e-03 -2.098877e-02 -1.874718e-02 1.799200e-03 1.933438e-02 + -0.186277 + + + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-spatial-filter.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-spatial-filter.cfg new file mode 100644 index 0000000..0ba5bae --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -7.456638e-01 4.505683e+00 -5.713293e+00 6.569946e-01 6.642618e+00 3.787215e+00 2.433134e+00 -7.012442e-01 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-xdawn-train.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-xdawn-train.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Test/p300-xdawn-train.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.md b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.md new file mode 100644 index 0000000..266b73c --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.md @@ -0,0 +1,2 @@ +# OpenViBE_visual_BCI + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test/p300-classifier.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test/p300-classifier.cfg new file mode 100644 index 0000000..6ba19dd --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test/p300-classifier.cfg @@ -0,0 +1,23 @@ + + Native + Linear Discrimimant Analysis (LDA) + + OVTK_StimulationId_Target + OVTK_StimulationId_NonTarget + + + + 0 1 + + + -4.662479e-02 -2.682397e-02 -5.541162e-03 2.004281e-03 -6.801767e-03 -1.916657e-02 -1.969816e-02 -5.803210e-03 9.961896e-03 1.291380e-02 1.311926e-03 -1.188660e-02 -1.231573e-02 1.100861e-03 1.508353e-02 1.564099e-02 2.452105e-03 -1.074197e-02 -1.015221e-02 3.963016e-03 1.754681e-02 1.710531e-02 3.511735e-03 -8.874183e-03 -6.908855e-03 7.810299e-03 2.043418e-02 1.790303e-02 2.242971e-03 -1.142703e-02 -1.016139e-02 3.796333e-03 1.545730e-02 1.243635e-02 -2.475582e-03 -1.430995e-02 -1.135690e-02 2.784681e-03 1.287149e-02 7.633333e-03 -8.646995e-03 -2.045271e-02 -1.684933e-02 -2.627674e-03 6.633969e-03 5.591151e-04 -1.533082e-02 -2.517561e-02 -1.895113e-02 -2.751427e-03 7.353809e-03 1.672996e-03 -1.318746e-02 -2.094987e-02 -1.210708e-02 6.535465e-03 1.888168e-02 1.591449e-02 4.706389e-03 9.273210e-04 1.257584e-02 3.160336e-02 4.199975e-02 3.605987e-02 2.218150e-02 1.620661e-02 2.515269e-02 3.997620e-02 4.478841e-02 3.312121e-02 1.461032e-02 5.230986e-03 1.102553e-02 2.194180e-02 2.211453e-02 6.149736e-03 -1.517317e-02 -2.560557e-02 -1.966317e-02 -7.897410e-03 -5.901271e-03 -1.831360e-02 -3.413735e-02 -3.809163e-02 -2.633667e-02 -1.047156e-02 -5.722832e-03 -1.541846e-02 -2.764109e-02 -2.749613e-02 -1.245351e-02 4.937213e-03 9.759909e-03 -1.055928e-04 -1.188021e-02 -1.102541e-02 3.773175e-03 1.909754e-02 2.035866e-02 6.642750e-03 -8.279185e-03 -9.821094e-03 2.770727e-03 1.586503e-02 1.548364e-02 1.574201e-03 -1.202374e-02 -1.181866e-02 1.491096e-03 1.373670e-02 1.181033e-02 -2.872330e-03 -1.576592e-02 -1.403653e-02 3.213412e-04 1.251685e-02 1.008763e-02 -4.336805e-03 -1.570112e-02 -1.193405e-02 3.622146e-03 1.548356e-02 1.171639e-02 -3.914318e-03 -1.571673e-02 -1.193756e-02 3.411901e-03 1.476469e-02 1.089063e-02 -3.757112e-03 -1.377803e-02 -8.733019e-03 6.079411e-03 1.500403e-02 8.050796e-03 -8.845109e-03 -1.983504e-02 -1.530594e-02 -1.653492e-03 5.329308e-03 -3.293205e-03 -2.032044e-02 -2.962920e-02 -2.255035e-02 -6.691257e-03 1.839052e-03 -5.079138e-03 -1.915929e-02 -2.395137e-02 -1.137032e-02 1.028817e-02 2.494983e-02 2.515465e-02 5.474238e-02 4.396747e-02 3.202849e-02 2.764458e-02 3.223953e-02 3.829055e-02 3.709098e-02 2.788108e-02 1.880410e-02 1.852886e-02 2.706238e-02 3.527666e-02 3.386612e-02 2.277389e-02 1.148664e-02 9.745751e-03 1.792048e-02 2.668700e-02 2.631723e-02 1.624423e-02 5.372841e-03 2.996984e-03 9.611696e-03 1.684119e-02 1.631572e-02 8.254628e-03 9.800679e-04 2.019434e-03 1.011838e-02 1.649046e-02 1.403100e-02 4.924632e-03 -1.349383e-03 2.269866e-03 1.292726e-02 2.040147e-02 1.732940e-02 6.810808e-03 -4.012218e-04 3.555417e-03 1.589977e-02 2.601436e-02 2.597328e-02 1.823013e-02 1.285192e-02 1.726612e-02 2.895465e-02 3.836269e-02 3.881769e-02 3.319444e-02 3.056482e-02 3.645158e-02 4.687368e-02 5.239690e-02 4.800913e-02 3.854458e-02 3.389901e-02 3.881011e-02 4.770392e-02 5.007390e-02 4.111924e-02 2.688062e-02 1.854720e-02 2.152837e-02 3.021814e-02 3.369034e-02 2.658562e-02 1.428627e-02 7.315611e-03 1.077632e-02 1.952439e-02 2.378684e-02 1.926560e-02 1.131973e-02 9.049470e-03 1.554630e-02 2.448566e-02 2.663056e-02 1.951402e-02 1.020190e-02 8.115633e-03 1.518080e-02 2.347552e-02 2.300502e-02 1.186432e-02 -1.534020e-03 -6.568900e-03 -8.128933e-04 7.686444e-03 8.516952e-03 -7.546092e-04 -1.233880e-02 -1.617432e-02 -9.910123e-03 -8.619418e-04 1.817546e-03 -3.438923e-03 -9.262546e-03 -7.311370e-03 2.819343e-03 1.303093e-02 1.511540e-02 9.402534e-03 4.606975e-03 8.859442e-03 2.106723e-02 3.158261e-02 3.173073e-02 2.263969e-02 1.436141e-02 1.601493e-02 2.677663e-02 3.674417e-02 3.678820e-02 2.749871e-02 1.832825e-02 1.797275e-02 2.580707e-02 3.294646e-02 3.161000e-02 2.306082e-02 1.602436e-02 1.737522e-02 2.483893e-02 2.931742e-02 2.444825e-02 1.346110e-02 6.103839e-03 8.638031e-03 1.715342e-02 2.121552e-02 1.434909e-02 7.823317e-04 -8.483862e-03 -6.469723e-03 2.910885e-03 8.782861e-03 4.079377e-03 -7.648454e-03 -1.610248e-02 -1.470946e-02 -7.055456e-03 -2.915064e-03 -8.159608e-03 -1.896743e-02 -2.618380e-02 -2.516846e-02 -2.084336e-02 -2.266805e-02 -3.473552e-02 -5.130176e-02 -6.252678e-02 -6.465880e-02 + -1.913 + + + 1.436993e-02 -3.419794e-02 -3.194938e-02 1.624435e-02 5.891282e-02 5.056337e-02 -1.885607e-03 -4.621483e-02 -3.828657e-02 1.281576e-02 5.398797e-02 4.226061e-02 -1.137150e-02 -5.317879e-02 -4.150502e-02 1.080377e-02 4.964084e-02 3.497934e-02 -1.824146e-02 -5.544922e-02 -3.830985e-02 1.596818e-02 5.208974e-02 3.310213e-02 -2.182183e-02 -5.685751e-02 -3.641761e-02 1.859621e-02 5.217774e-02 3.040101e-02 -2.397466e-02 -5.480144e-02 -2.994394e-02 2.583337e-02 5.607899e-02 3.023414e-02 -2.519656e-02 -5.369154e-02 -2.634946e-02 2.872188e-02 5.523444e-02 2.627756e-02 -2.820712e-02 -5.209340e-02 -2.053143e-02 3.453072e-02 5.688067e-02 2.343803e-02 -3.210313e-02 -5.356306e-02 -1.952713e-02 3.486820e-02 5.384737e-02 1.794004e-02 -3.617532e-02 -5.317838e-02 -1.565783e-02 3.804287e-02 5.291381e-02 1.340152e-02 -4.072063e-02 -5.492114e-02 -1.549002e-02 3.660135e-02 4.766719e-02 6.197403e-03 -4.540936e-02 -5.424454e-02 -1.106237e-02 4.015026e-02 4.702819e-02 2.323169e-03 -4.860261e-02 -5.397652e-02 -8.375719e-03 4.179890e-02 4.571714e-02 -4.480693e-06 -4.790232e-02 -4.820111e-02 2.814278e-04 4.884475e-02 4.855597e-02 1.586712e-04 -4.670072e-02 -4.412271e-02 5.235336e-03 5.100035e-02 4.662573e-02 -3.043123e-03 -4.677168e-02 -3.938167e-02 1.196406e-02 5.495944e-02 4.552834e-02 -7.119625e-03 -4.978342e-02 -3.946761e-02 1.281972e-02 5.336827e-02 4.062363e-02 -1.240371e-02 -5.146896e-02 -3.654121e-02 1.725485e-02 5.501437e-02 3.805522e-02 -1.661853e-02 -5.366779e-02 -3.585472e-02 1.805340e-02 5.258072e-02 3.228495e-02 -2.203772e-02 -5.466566e-02 -3.199185e-02 2.300952e-02 5.414222e-02 2.935433e-02 -2.646802e-02 -5.679804e-02 -3.106915e-02 2.420222e-02 5.253516e-02 2.515515e-02 -2.965867e-02 -5.550344e-02 -2.551040e-02 3.014889e-02 5.500055e-02 2.387599e-02 -3.141458e-02 -5.453825e-02 -2.207704e-02 3.268552e-02 5.387545e-02 2.015448e-02 -3.350711e-02 -5.164408e-02 -1.508910e-02 3.930673e-02 5.621595e-02 1.832916e-02 -3.589737e-02 -5.140063e-02 -1.263379e-02 4.062414e-02 5.390467e-02 1.364408e-02 -3.901848e-02 -5.031588e-02 -8.830261e-03 4.276973e-02 -1.510081e-02 1.575319e-02 1.500563e-02 -1.464555e-02 -4.106706e-02 -3.572755e-02 -2.959925e-03 2.450800e-02 1.916864e-02 -1.293832e-02 -3.824403e-02 -2.994592e-02 4.459927e-03 3.062778e-02 2.231123e-02 -1.180363e-02 -3.680314e-02 -2.700091e-02 7.944482e-03 3.285520e-02 2.279822e-02 -1.163044e-02 -3.520680e-02 -2.397875e-02 1.045608e-02 3.297642e-02 2.087194e-02 -1.305832e-02 -3.378356e-02 -2.001798e-02 1.396147e-02 3.298677e-02 1.712848e-02 -1.773197e-02 -3.601770e-02 -1.885590e-02 1.645485e-02 3.390608e-02 1.545652e-02 -2.047930e-02 -3.765769e-02 -1.883974e-02 1.667154e-02 3.265913e-02 1.279525e-02 -2.284887e-02 -3.834206e-02 -1.847722e-02 1.589488e-02 2.932154e-02 7.980757e-03 -2.633264e-02 -3.867773e-02 -1.682245e-02 1.623780e-02 2.590510e-02 1.548014e-03 -3.243671e-02 -4.147526e-02 -1.622983e-02 1.765997e-02 2.557999e-02 -7.598577e-04 -3.475407e-02 -4.188041e-02 -1.479888e-02 1.917528e-02 2.584177e-02 -1.153722e-03 -3.397524e-02 -3.902890e-02 -1.113381e-02 2.137849e-02 2.572138e-02 -1.890760e-03 -3.254825e-02 -3.439291e-02 -5.300628e-03 2.496323e-02 2.531226e-02 -4.680177e-03 -3.417729e-02 -3.256018e-02 -8.446389e-04 2.914052e-02 2.710174e-02 -4.790784e-03 -3.398179e-02 -3.058438e-02 2.224106e-03 3.142582e-02 2.772610e-02 -4.722867e-03 -3.267375e-02 -2.769818e-02 4.945978e-03 3.187109e-02 2.574658e-02 -6.858760e-03 -3.237965e-02 -2.474319e-02 7.900347e-03 3.156760e-02 2.135313e-02 -1.290184e-02 -3.652308e-02 -2.544480e-02 9.042104e-03 3.161632e-02 1.888374e-02 -1.668763e-02 -3.932822e-02 -2.630242e-02 8.969653e-03 3.056020e-02 1.655259e-02 -1.875310e-02 -3.951262e-02 -2.485930e-02 9.971503e-03 2.937313e-02 1.377886e-02 -2.046815e-02 -3.801977e-02 -2.081790e-02 1.339945e-02 2.931957e-02 1.033812e-02 -2.427203e-02 -3.895677e-02 -1.827379e-02 1.713670e-02 3.143309e-02 1.009591e-02 -2.516315e-02 -3.838741e-02 -1.592114e-02 1.969928e-02 3.266362e-02 1.027432e-02 -2.423943e-02 -3.546678e-02 -1.185152e-02 2.270791e-02 3.341926e-02 1.014040e-02 -2.240358e-02 -3.008339e-02 -4.378801e-03 2.891257e-02 3.617700e-02 1.055137e-02 -2.087503e-02 + -0.187747 + + + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test/p300-spatial-filter.cfg b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test/p300-spatial-filter.cfg new file mode 100644 index 0000000..6f94c7b --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test/p300-spatial-filter.cfg @@ -0,0 +1,6 @@ + + -7.086947e-01 5.816064e+00 -1.449754e+00 3.990227e-01 7.897572e-01 -1.285864e+00 -6.336443e+00 -2.532117e-01 + 2 + 4 + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test/p300-xdawn-train.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test/p300-xdawn-train.ov new file mode 100644 index 0000000..02ad5f6 Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test/p300-xdawn-train.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test2.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test2.ov new file mode 100644 index 0000000..dfc41ff Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/test2.ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-0-signal-monitoring.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-0-signal-monitoring.xml new file mode 100644 index 0000000..ebf1e4f --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-0-signal-monitoring.xml @@ -0,0 +1,721 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x000014bf, 0x000034db) + Identity + (0x5dffe431, 0x35215c50) + + + (0x5ba36127, 0x195feae1) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x5ba36127, 0x195feae1) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 384 + + + (0x207c9054, 0x3c841b63) + 928 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xac367a9c, 0x2da95abe) + 6 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00003f1b, 0x00003c78) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 320 + + + (0x207c9054, 0x3c841b63) + 800 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 208 + + + (0x207c9054, 0x3c841b63) + 800 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00005c5c, 0x00007610) + Raw + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Horizontal ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Vertical ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 1024 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + (0x00006b6d, 0x00002690) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 128 + + + (0x207c9054, 0x3c841b63) + 928 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00007e4e, 0x00006b7b) + Filtered + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Horizontal ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Vertical ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 832 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + + + (0x000003a7, 0x000034db) + + (0x000014bf, 0x000034db) + 2 + + + (0x00005c5c, 0x00007610) + 1 + + + + (0x00000554, 0x0000661a) + + (0x000014bf, 0x000034db) + 2 + + + (0x00007e4e, 0x00006b7b) + 1 + + + + (0x00001d33, 0x00002bb0) + + (0x00006b6d, 0x00002690) + 2 + + + (0x000014bf, 0x000034db) + 2 + + + + (0x00003f04, 0x000045c3) + + (0x000014bf, 0x000034db) + 1 + + + (0x00005c5c, 0x00007610) + 0 + + + + (0x00004b11, 0x00006a43) + + (0x00003f1b, 0x00003c78) + 0 + + + (0x000014bf, 0x000034db) + 0 + + + + (0x000056fd, 0x00004795) + + (0x000014bf, 0x000034db) + 0 + + + (0x00007e4e, 0x00006b7b) + 0 + + + + (0x00005703, 0x00006037) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00003f1b, 0x00003c78) + 0 + + + + (0x00005e38, 0x00005c99) + + (0x00006b6d, 0x00002690) + 1 + + + (0x000014bf, 0x000034db) + 1 + + + + (0x000073ac, 0x0000581b) + + (0x00006b6d, 0x00002690) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + + + (0x00001653, 0x00002964) + <u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 512 + + + (0x7234b86b, 0x2b8651a5) + 416 + + + + + (0x000028e8, 0x00003dee) + <u><b><big>Overview</big></b></u> + +This scenario can be used in order +to check the quality of the signals +before starting an experiment. + +One should <u>definitely</u> +check the quality of the signals +and ensure that : + +- <b>eye blinks</b> are visible +- <b>jaw clenching</b> are visible +- <b>alpha waves</b> are visible when closing eyes + + + (0x473d9a43, 0x97fc0a97) + 1184 + + + (0x7234b86b, 0x2b8651a5) + 272 + + + + + (0x000049b3, 0x00001e28) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 944 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x00004e8c, 0x000041b6) + The P300 XDawn scenarios are described in + +http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0x473d9a43, 0x97fc0a97) + 576.000000 + + + (0x7234b86b, 0x2b8651a5) + 130.000000 + + + + + (0x000059b5, 0x00001524) + The <i>Temporal Filter</i> +and <i>Signal Decimation</i> +boxes transform the signal +so you can see what is actually +used online. + + + (0x473d9a43, 0x97fc0a97) + 512 + + + (0x7234b86b, 0x2b8651a5) + 288 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"height":635,"identifier":"(0x000077ee, 0x0000254d)","name":"default","parentIdentifier":"(0xffffffff, 0xffffffff)","type":1,"width":783},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x00004579, 0x00005fcb)","index":0,"name":"Default tab","parentIdentifier":"(0x000077ee, 0x0000254d)","type":2},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":2,"dividerPosition":293,"identifier":"(0x00005446, 0x000043a1)","index":0,"maxDividerPosition":590,"name":"Vertical split","parentIdentifier":"(0x00004579, 0x00005fcb)","type":4},{"boxIdentifier":"(0x00005c5c, 0x00007610)","childCount":0,"identifier":"(0x00000e42, 0x000074b8)","index":0,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3},{"boxIdentifier":"(0x00007e4e, 0x00006b7b)","childCount":0,"identifier":"(0x00005db7, 0x000032ad)","index":1,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Signal Monitoring + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-1-acquisition.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-1-acquisition.xml new file mode 100644 index 0000000..a548ae5 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-1-acquisition.xml @@ -0,0 +1,807 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00002c69, 0x00000b43) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 336 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x07e64d8b) + + + + + (0x0000356c, 0x00004381) + Generic stream writer + (0x09c92218, 0x7c1216f8) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + + + (0x2cdb2f0b, 0x12f231ea) + Use compression + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 624 + + + (0x4e7b798a, 0x183beafb) + (0x89a08108, 0xc8d1fac1) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-writer.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0350a9f0) + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000470b, 0x00001b1d) + Speller Stimulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-speller-stimulator.lua + false + + + (0x00000000, 0xbae13066) + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x5518f982) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xc152613d) + (0x007deef9, 0x2f3e95c6) + Matrix Size (m*m) + 6 + 6 + false + + + (0x00000000, 0xa0308929) + (0x007deef9, 0x2f3e95c6) + Number of Repetitions + 6 + 3 + false + + + (0x00000000, 0xcde95a6f) + (0x007deef9, 0x2f3e95c6) + Number of Trials + 6 + 3 + false + + + (0x00000000, 0x9b3f9b7b) + (0x512a166f, 0x5c3ef83f) + Flash Duration (in sec) + 0.2 + 0.2 + false + + + (0x00000000, 0x583ad367) + (0x512a166f, 0x5c3ef83f) + No Flash Duration (in sec) + 0.1 + 0.1 + false + + + (0x00000000, 0xfc1c2fb6) + (0x512a166f, 0x5c3ef83f) + Inter-Repetition Delay (in sec) + 1.0 + 1.0 + false + + + (0x00000000, 0x0d9a1e18) + (0x512a166f, 0x5c3ef83f) + Inter-Trial Delay (in sec) + 3.0 + 3.0 + false + + + (0x00000000, 0xaeefd500) + (0x2c132d6e, 0x44ab0d97) + Start Stimulation + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x00000000, 0xef5eb0e5) + (0x2cdb2f0b, 0x12f231ea) + Free Spelling + false + false + false + + + (0x00000000, 0x4ead155d) + (0x007deef9, 0x2f3e95c6) + Time To Send + 20 + 20 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 128 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-stimulator.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00004eca, 0x00003f33) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 624 + + + (0x207c9054, 0x3c841b63) + 784 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x01070ba6) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x0000599b, 0x000026ba) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 464 + + + (0x207c9054, 0x3c841b63) + 688 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x02909b75) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00006d0d, 0x000031d8) + Target Letter Generation + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-speller-target.lua + false + + + (0x79a9edeb, 0x245d83fc) + Word to Spell (leave this empty if random) + + + false + + + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x512a166f, 0x5c3ef83f) + Delay Before Sending (in sec) + 2 + 2 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 256 + + + (0x207c9054, 0x3c841b63) + 736 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0334c6b7) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x00000ea4, 0x000068ff) + + (0x0000599b, 0x000026ba) + 2 + + + (0x00004eca, 0x00003f33) + 0 + + + + (0x000019a1, 0x00001d15) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x00002c69, 0x00000b43) + 0 + + + + (0x000036a5, 0x00006190) + + (0x0000599b, 0x000026ba) + 0 + + + (0x0000356c, 0x00004381) + 0 + + + + (0x00003aa4, 0x00002b37) + + (0x00006d0d, 0x000031d8) + 0 + + + (0x00002c69, 0x00000b43) + 1 + + + + (0x0000649d, 0x00004576) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x00006d0d, 0x000031d8) + 0 + + + + (0x000068a0, 0x0000330f) + + (0x0000599b, 0x000026ba) + 2 + + + (0x0000356c, 0x00004381) + 2 + + + + (0x00007bda, 0x00000772) + + (0x0000599b, 0x000026ba) + 1 + + + (0x0000356c, 0x00004381) + 1 + + + + + + (0x0000363f, 0x00001c2b) + The P300 Speller Visualization +sends the markers (stimulations) directly to +Acquisition Server using TCP Tagging. + + + (0x473d9a43, 0x97fc0a97) + 960.000000 + + + (0x7234b86b, 0x2b8651a5) + 336.000000 + + + + + (0x00004e8c, 0x000041b6) + The P300 XDawn scenarios are described in + +http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0x473d9a43, 0x97fc0a97) + 320.000000 + + + (0x7234b86b, 0x2b8651a5) + 176.000000 + + + + + (0x19b8795c, 0x039f26f7) + <u><b><big>Overview</big></b></u> + +This scenario can be used as a first +step to collect some training data. The +data will later be used to train a spatial +filter and a classifier for online use. + +The flast sequence will start after 20 sec. + +You will then be presented a blue letter that +you have to focus on, followed by a 12 times +flashing sequence of the whole grid. This will +be repeated 10 times. + +<small><i><b>note:</b> the recorded files go to the +folder where the scenario xml is located +(<span color="darkblue">${Player_ScenarioDirectory}/</span>).</i></small> + + + (0x473d9a43, 0x97fc0a97) + 320.000000 + + + (0x7234b86b, 0x2b8651a5) + 400.000000 + + + + + (0x24020235, 0x4f7e23eb) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 304 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x00002c69, 0x00000b43)","childCount":0,"identifier":"(0x0000742d, 0x000050d7)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard, Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Data Acquisition + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-2-train-xDAWN.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-2-train-xDAWN.xml new file mode 100644 index 0000000..7dfa8eb --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-2-train-xDAWN.xml @@ -0,0 +1,644 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00001db8, 0x00001848) + xDAWN Trainer + (0x27542f6e, 0x14aa3548) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x5ba36127, 0x195feae1) + Session signal + + + (0x5ba36127, 0x195feae1) + Evoked potential epochs + + + + + (0x6f752dd0, 0x082a321e) + Train-completed Flag + + + + + (0x2c132d6e, 0x44ab0d97) + Train stimulation + OVTK_StimulationId_Train + OVTK_StimulationId_ExperimentStop + false + + + (0x330306dd, 0x74a95f98) + Spatial filter configuration + + ${Player_ScenarioDirectory}/p300-spatial-filter.cfg + false + + + (0x007deef9, 0x2f3e95c6) + Filter dimension + 4 + 3 + false + + + (0x2cdb2f0b, 0x12f231ea) + Save as box config + true + true + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x4b49a133, 0x42f38d94) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-trainer.cfg + + + (0xc80ce8af, 0xf699f813) + + + + (0xce18836a, 0x9c0eb403) + + + + (0xcfad85b0, 0x7c6d841c) + + + + + + (0x00002514, 0x00001614) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -128 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-reader.cfg + + + + + (0x0000267a, 0x0000427f) + Time based epoching + (0x00777fa0, 0x5dc3f560) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Epoched signal 1 + + + + + (0x512a166f, 0x5c3ef83f) + Epoch 1 duration (in sec) + 1 + 0.250000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch 1 intervals (in sec) + 0.5 + 0.250000 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 160 + + + (0x207c9054, 0x3c841b63) + 240 + + + (0x4e7b798a, 0x183beafb) + (0xc5ff41e9, 0xccc59a01) + + + + + (0x00004aea, 0x00001465) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_TrainCompleted + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 416 + + + (0x207c9054, 0x3c841b63) + 288 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -16 + + + (0x207c9054, 0x3c841b63) + 240 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00006be0, 0x000074b5) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 112 + + + (0x207c9054, 0x3c841b63) + 240 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + + + (0x00006fa4, 0x00003c76) + Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_Target + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 250 + + + (0x207c9054, 0x3c841b63) + 425 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + + + + + (0x000002c2, 0x000038de) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00006be0, 0x000074b5) + 0 + + + + (0x000007d3, 0x000071cb) + + (0x0000267a, 0x0000427f) + 0 + + + (0x00006fa4, 0x00003c76) + 0 + + + + (0x00003582, 0x00002c04) + + (0x00006be0, 0x000074b5) + 0 + + + (0x0000267a, 0x0000427f) + 0 + + + + (0x00003920, 0x00007a30) + + (0x0000267a, 0x0000427f) + 0 + + + (0x00001db8, 0x00001848) + 1 + + + + (0x0000452e, 0x0000366d) + + (0x00002514, 0x00001614) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x00004be2, 0x00004296) + + (0x00006fa4, 0x00003c76) + 0 + + + (0x00001db8, 0x00001848) + 2 + + + + (0x00004bf5, 0x00007908) + + (0x00001db8, 0x00001848) + 0 + + + (0x00004aea, 0x00001465) + 0 + + + + (0x000059e8, 0x00000032) + + (0x00002514, 0x00001614) + 2 + + + (0x00001db8, 0x00001848) + 0 + + + + (0x00006af9, 0x00002512) + + (0x00002514, 0x00001614) + 2 + + + (0x00006fa4, 0x00003c76) + 1 + + + + + + (0x00000b43, 0x0000067f) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 48 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x000010db, 0x00003fcd) + For prerecorded data to test this P300, see + +<b>http://openvibe.inria.fr/datasets/</b> + + + + (0x473d9a43, 0x97fc0a97) + 816.000000 + + + (0x7234b86b, 0x2b8651a5) + 112.000000 + + + + + (0x000049d6, 0x00006e67) + <u><b><big>Overview</big></b></u> + +This scenario should be used to train +the spatial filter using the xDAWN algorithm. + +Just configure the <i>Generic Stream Reader</i> +box to point to the last file you recorded with +scenario <i>1-acquisition</i> and fast forward +this scenario. + +At the end of the training, you will have line in +the console about eigen values. +Using a <i>Player Controller</i> the scenario will +automatically pause at the end of the training. + +If you want details on this values, you should read +<u>http://www.icp.inpg.fr/~rivetber/Publications/references/Rivet2009a.pdf</u> + + + (0x473d9a43, 0x97fc0a97) + 800.000000 + + + (0x7234b86b, 0x2b8651a5) + -80.000000 + + + + + (0x00007b93, 0x000041da) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 304.000000 + + + (0x7234b86b, 0x2b8651a5) + -192.000000 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Spatial Filter Training + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-3-train-classifier.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-3-train-classifier.xml new file mode 100644 index 0000000..cc6c8cc --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-3-train-classifier.xml @@ -0,0 +1,1087 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00000b2d, 0x00006d61) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002bb807) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00000d41, 0x000013b7) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b7d6e) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x00001f83, 0x00004e32) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-train.ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -192 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/stream-reader.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x008e34c7) + + + + + (0x00002c8b, 0x000001d5) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_TrainCompleted + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Stop + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 512 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00301c7f) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00002f94, 0x00000341) + Non Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_NonTarget + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002bbddf) + + + + + (0x00003e14, 0x00000027) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 16 + + + (0x207c9054, 0x3c841b63) + 256 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002c5bfc) + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -96 + + + (0x207c9054, 0x3c841b63) + 256 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x000063a5, 0x0000197c) + Target Selection + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.600000 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0.000000 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_Target + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 224 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b4e91) + + + + + (0x000078d0, 0x000029bc) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 320 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b5470) + + + + + (0x000078f9, 0x000063eb) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 9.970221e-001 -3.729500e-002 -1.177390e-002 2.814447e-002 -3.772446e-003 3.371324e-002 -5.480030e-003 8.893039e-003 -1.565213e-002 -9.956694e-003 -2.347757e-002 -2.312669e-003 -1.847227e-002 -7.550644e-004 -8.423513e-003 3.243223e-002 2.079848e-002 5.079737e-001 -2.835127e-002 8.259231e-002 -3.621803e-001 -2.004259e-001 -2.432480e-001 -1.861558e-001 -3.798139e-001 9.614762e-002 3.407766e-001 -2.158597e-001 3.720552e-001 7.500469e-002 -8.628774e-002 -3.182367e-002 5.923482e-002 4.124707e-001 2.083913e-001 -2.629501e-001 2.023081e-001 -2.658446e-001 4.022738e-001 -1.785569e-001 4.450742e-001 3.549239e-001 1.550204e-002 3.750389e-002 3.114249e-002 9.273764e-002 -7.093797e-002 -2.610929e-001 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 3 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 16 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 80 + + + (0x207c9054, 0x3c841b63) + 256 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002b601f) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00007b56, 0x000033f9) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 288 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002c2168) + + + + + (0x0a5a6a4a, 0x1d92a778) + Classifier trainer + (0xf3dae8a8, 0x3b444154) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x17341935, 0x152ff448) + Features for class 1 + + + (0x17341935, 0x152ff448) + Features for class 2 + + + + + (0x6f752dd0, 0x082a321e) + Train-completed Flag + + + + + (0x2c132d6e, 0x44ab0d97) + Train trigger + OVTK_StimulationId_Train + OVTK_StimulationId_ExperimentStop + false + + + (0x330306dd, 0x74a95f98) + Filename to save configuration to + ${Path_UserData}/my-classifier.xml + ${Player_ScenarioDirectory}/cfg/p300-classifier.cfg + false + + + (0xbe9eba5c, 0xa8415d37) + Multiclass strategy to apply + Native + Native + false + + + (0x2c132d6e, 0x44ab0d97) + Class 1 label + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Target + false + + + (0x2c132d6e, 0x44ab0d97) + Class 2 label + OVTK_StimulationId_Label_02 + OVTK_StimulationId_NonTarget + false + + + (0xd765a736, 0xed708c65) + Algorithm to use + Linear Discrimimant Analysis (LDA) + Linear Discrimimant Analysis (LDA) + false + + + (0x2cdb2f0b, 0x12f231ea) + Use shrinkage + false + false + false + + + (0x512a166f, 0x5c3ef83f) + Shrinkage coefficient (-1 == auto) + -1.000000 + -1.000000 + false + + + (0x2cdb2f0b, 0x12f231ea) + Shrinkage: Force diagonal cov (DDA) + false + false + false + + + (0x007deef9, 0x2f3e95c6) + Number of partitions for k-fold cross-validation test + 10 + 5 + false + + + (0x2cdb2f0b, 0x12f231ea) + Balance classes + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 448 + + + (0x207c9054, 0x3c841b63) + 432 + + + (0x4e7b798a, 0x183beafb) + (0x9de21779, 0x37776c89) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 6 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x00000004, 0x00007d3a) + + (0x000078f9, 0x000063eb) + 0 + + + (0x000063a5, 0x0000197c) + 0 + + + + (0x00000aca, 0x000037d3) + + (0x00003e14, 0x00000027) + 0 + + + (0x000078f9, 0x000063eb) + 0 + + + + (0x00001717, 0x00003cf9) + + (0x000078d0, 0x000029bc) + 0 + + + (0x00000b2d, 0x00006d61) + 0 + + + + (0x00001770, 0x00000ded) + + (0x00001f83, 0x00004e32) + 2 + + + (0x000063a5, 0x0000197c) + 1 + + + + (0x00002204, 0x00006850) + + (0x00001f83, 0x00004e32) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x0000227f, 0x00003a6f) + + (0x000078f9, 0x000063eb) + 0 + + + (0x00002f94, 0x00000341) + 0 + + + + (0x00002599, 0x0000329b) + + (0x000063a5, 0x0000197c) + 0 + + + (0x000078d0, 0x000029bc) + 0 + + + + (0x00004098, 0x00007e81) + + (0x00002f94, 0x00000341) + 0 + + + (0x00007b56, 0x000033f9) + 0 + + + + (0x00004674, 0x000061af) + + (0x00007b56, 0x000033f9) + 0 + + + (0x00000d41, 0x000013b7) + 0 + + + + (0x00005c01, 0x00003398) + + (0x0000556f, 0x000055f8) + 0 + + + (0x00003e14, 0x00000027) + 0 + + + + (0x00006821, 0x00000c75) + + (0x00001f83, 0x00004e32) + 2 + + + (0x00002f94, 0x00000341) + 1 + + + + (0x175e412c, 0x0692f4ee) + + (0x00000d41, 0x000013b7) + 0 + + + (0x0a5a6a4a, 0x1d92a778) + 2 + + + + (0x5a67b7d8, 0x1cf07f9a) + + (0x00001f83, 0x00004e32) + 2 + + + (0x0a5a6a4a, 0x1d92a778) + 0 + + + + (0x616495af, 0x5c020b32) + + (0x0a5a6a4a, 0x1d92a778) + 0 + + + (0x00002c8b, 0x000001d5) + 0 + + + + (0x63fa63da, 0x0e447c5b) + + (0x00000b2d, 0x00006d61) + 0 + + + (0x0a5a6a4a, 0x1d92a778) + 1 + + + + + + (0x00004785, 0x00007f9c) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 432 + + + (0x7234b86b, 0x2b8651a5) + -240 + + + + + (0x000047f3, 0x00004eaf) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 48 + + + (0x7234b86b, 0x2b8651a5) + 0 + + + + + (0x00005277, 0x00007fbe) + <u><b><big>Overview</big></b></u> + +This scenario should be used to train +the LDA classifier. + +Just configure the <i>Generic Stream Reader</i> +box to point to the last file you recorded with +scenario <i>1-acquisition</i> and fast forward +this scenario. + +At the end of the training, you will have an estimation +of the classifier performance printed in the console. +If this performance is lower than 70%, just run a new +<i>4-online</i> session to have better results. + +<u><b>Note:</b></u> in order to run this scenario, +the spatial filter should have been trained using +<i>2-train-xDAWN</i> ! + + + (0x473d9a43, 0x97fc0a97) + 848 + + + (0x7234b86b, 0x2b8651a5) + 96 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [] + + + + + (0x790d75b8, 0x3bb90c33) + Yann Renard + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + LDA Classifier Trainer + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-4-online.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-4-online.xml new file mode 100644 index 0000000..796a422 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-4-online.xml @@ -0,0 +1,1612 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00002bb3, 0x0000133c) + Acquisition client + (0x35d225cb, 0x3e6e3a5f) + + + (0x403488e7, 0x565d70b6) + Experiment information + + + (0x5ba36127, 0x195feae1) + Signal stream + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x013df452, 0xa3a8879a) + Channel localisation + + + (0x6ab26b81, 0x0f8c02f3) + Channel units + + + + + (0x79a9edeb, 0x245d83fc) + Acquisition server hostname + ${AcquisitionServer_HostName} + ${AcquisitionServer_HostName} + false + + + (0x007deef9, 0x2f3e95c6) + Acquisition server port + 1024 + 1024 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -240 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x4e7b798a, 0x183beafb) + (0x0d4656c0, 0xc95b1fa8) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007036bf) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 5 + + + (0xce18836a, 0x9c0eb403) + 2 + + + + + (0x00003d0e, 0x000025ef) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Pause + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 704 + + + (0x207c9054, 0x3c841b63) + 880 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00003dec, 0x00004c7b) + Stimulation based epoching + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.6 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_VisualStimulationStart + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 176 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x005ced91) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 2 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x0000445b, 0x000068e3) + P300 accumulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + (0x6f752dd0, 0x082a321e) + New input(1) + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6f752dd0, 0x082a321e) + New output + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/scripts/p300-speller-accumulator.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x2c132d6e, 0x44ab0d97) + Segment start + OVTK_StimulationId_SegmentStart + OVTK_StimulationId_TrialStart + false + + + (0x2c132d6e, 0x44ab0d97) + Segment stop + OVTK_StimulationId_SegmentStop + OVTK_StimulationId_TrialStop + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 448 + + + (0x207c9054, 0x3c841b63) + 627 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0304fb88) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000470b, 0x00001b1d) + Speller Stimulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-speller-stimulator.lua + false + + + (0x00000000, 0xbae13066) + (0x2c132d6e, 0x44ab0d97) + Row Stimulation Base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x00000000, 0x5518f982) + (0x2c132d6e, 0x44ab0d97) + Column Stimulation Base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x00000000, 0xc152613d) + (0x007deef9, 0x2f3e95c6) + Matrix Size (m*m) + 6 + 6 + false + + + (0x00000000, 0xa0308929) + (0x007deef9, 0x2f3e95c6) + Number of Repetitions + 6 + 3 + false + + + (0x00000000, 0xcde95a6f) + (0x007deef9, 0x2f3e95c6) + Number of Trials + 6 + 3 + false + + + (0x00000000, 0x9b3f9b7b) + (0x512a166f, 0x5c3ef83f) + Flash Duration (in sec) + 0.2 + 0.2 + false + + + (0x00000000, 0x583ad367) + (0x512a166f, 0x5c3ef83f) + No Flash Duration (in sec) + 0.1 + 0.1 + false + + + (0x00000000, 0xfc1c2fb6) + (0x512a166f, 0x5c3ef83f) + Inter-Repetition Delay (in sec) + 1.0 + 1.0 + false + + + (0x00000000, 0x0d9a1e18) + (0x512a166f, 0x5c3ef83f) + Inter-Trial Delay (in sec) + 3.0 + 3.0 + false + + + (0x00000000, 0xaeefd500) + (0x2c132d6e, 0x44ab0d97) + Start Stimulation + OVTK_StimulationId_Label_00 + OVTK_StimulationId_Label_00 + false + + + (0x00000000, 0xef5eb0e5) + (0x2cdb2f0b, 0x12f231ea) + Free Spelling + false + true + false + + + (0x00000000, 0x4ead155d) + (0x007deef9, 0x2f3e95c6) + Time To Send + 20 + 20 + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 608 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-stimulator.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + -48 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x00007786, 0x00001163) + Identity + (0x5dffe431, 0x35215c50) + + + (0x6f752dd0, 0x082a321e) + Input stream + + + + + (0x6f752dd0, 0x082a321e) + Output stream + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 336 + + + (0x207c9054, 0x3c841b63) + 720 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x008f57e1, 0x2790537b) + Generic stream writer + (0x09c92218, 0x7c1216f8) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-xdawn-online-[$core{date}-$core{time}].ov + false + + + (0x2cdb2f0b, 0x12f231ea) + Use compression + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 144 + + + (0x207c9054, 0x3c841b63) + 816 + + + (0x4e7b798a, 0x183beafb) + (0x89a08108, 0xc8d1fac1) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007b2629) + + + (0xfba64161, 0x65304e21) + + + + + + (0x09c41dd7, 0x09f2e37b) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 240 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x000eaa12) + + + + + (0x0e30a73f, 0x7ae6d95a) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 304 + + + (0x207c9054, 0x3c841b63) + 496 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x000f9a38) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x28b5e192, 0x37431137) + Classifier processor + (0x5fe23d17, 0x95b0452c) + + + (0x17341935, 0x152ff448) + Features + + + (0x6f752dd0, 0x082a321e) + Commands + + + + + (0x6f752dd0, 0x082a321e) + Labels + + + (0x544a003e, 0x6dcba5f6) + Hyperplane distance + + + (0x544a003e, 0x6dcba5f6) + Probability values + + + + + (0x330306dd, 0x74a95f98) + Filename to load configuration from + + ${Player_ScenarioDirectory}/cfg/p300-classifier.cfg + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 368 + + + (0x207c9054, 0x3c841b63) + 560 + + + (0x4e7b798a, 0x183beafb) + (0xa6c8e548, 0x9e3e405b) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 3 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x2e63c8c5, 0x79a8ae7b) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 720 + + + (0x207c9054, 0x3c841b63) + 464 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x017985f8) + + + + + (0x40e41bf9, 0x5c44b1b1) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 64 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-signal-decimation.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x002cae02) + + + + + (0x6d03daab, 0x55fdea78) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 4 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 4 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 112 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/cfg/p300-spatial-filter.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x6f54afd0, 0x5f2e0f65) + Identity + (0x5dffe431, 0x35215c50) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -144 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x005f48d2) + + + (0xfba64161, 0x65304e21) + + + + + + + + (0x0000062d, 0x00006549) + + (0x0000445b, 0x000068e3) + 1 + + + (0x2e63c8c5, 0x79a8ae7b) + 3 + + + + (0x00001301, 0x000055b2) + + (0x00002bb3, 0x0000133c) + 1 + + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + + (0x0000233b, 0x000050b8) + + (0x0000556f, 0x000055f8) + 0 + + + (0x40e41bf9, 0x5c44b1b1) + 0 + + + + (0x0000266b, 0x000033bb) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x00003dec, 0x00004c7b) + 1 + + + + (0x00002e50, 0x00003fba) + + (0x00003dec, 0x00004c7b) + 0 + + + (0x09c41dd7, 0x09f2e37b) + 0 + + + + (0x00003835, 0x000030a7) + + (0x00002bb3, 0x0000133c) + 0 + + + (0x6f54afd0, 0x5f2e0f65) + 0 + + + + (0x00004944, 0x00005bde) + + (0x00007786, 0x00001163) + 0 + + + (0x00003d0e, 0x000025ef) + 0 + + + + (0x00005b72, 0x00000606) + + (0x0000445b, 0x000068e3) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 2 + + + + (0x00006403, 0x000024ec) + + (0x0000470b, 0x00001b1d) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 0 + + + + (0x00006501, 0x000068bf) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x00007786, 0x00001163) + 0 + + + + (0x00006592, 0x00002f7e) + + (0x00002bb3, 0x0000133c) + 2 + + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + + (0x00006967, 0x00006431) + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x00006c4d, 0x0000126f) + + (0x40e41bf9, 0x5c44b1b1) + 0 + + + (0x6d03daab, 0x55fdea78) + 0 + + + + (0x000074af, 0x000038c2) + + (0x6f54afd0, 0x5f2e0f65) + 2 + + + (0x008f57e1, 0x2790537b) + 2 + + + + (0x0000756d, 0x000027c0) + + (0x6d03daab, 0x55fdea78) + 0 + + + (0x00003dec, 0x00004c7b) + 0 + + + + (0x00007b30, 0x00005e90) + + (0x00007786, 0x00001163) + 0 + + + (0x0000445b, 0x000068e3) + 1 + + + + (0x00f1a11e, 0x4a813bb8) + + (0x09c41dd7, 0x09f2e37b) + 0 + + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + + (0x0de02dd1, 0x545eff87) + + (0x6f54afd0, 0x5f2e0f65) + 1 + + + (0x008f57e1, 0x2790537b) + 1 + + + + (0x136dcee0, 0x20dbb005) + + (0x28b5e192, 0x37431137) + 0 + + + (0x0000445b, 0x000068e3) + 0 + + + + (0x2893bc68, 0x5c0429ec) + + (0x6f54afd0, 0x5f2e0f65) + 0 + + + (0x008f57e1, 0x2790537b) + 0 + + + + (0x3ccbcbed, 0x529f3e1d) + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + (0x28b5e192, 0x37431137) + 0 + + + + + + (0x1012e1de, 0x78e57c3e) + The stimulation part of the scenario is +similar to scenario <i>1-acquisition</i>. + +If you keep the <i>Target Letter Generation</i> +box, you will be able to train the algorithms +again on the recorded data. + + + + (0x473d9a43, 0x97fc0a97) + 1120 + + + (0x7234b86b, 0x2b8651a5) + 592 + + + + + (0x11fceaee, 0x1f87d83c) + Switch from file reader +to Acquisiton client to use it online + + + (0x473d9a43, 0x97fc0a97) + 176.000000 + + + (0x7234b86b, 0x2b8651a5) + -48.000000 + + + + + (0x27567f54, 0x6e00503a) + You can configure the Flashing Sequence +and the Target Letter Generation in order to +instruct the subject to <u>spell a specific word</u>. + +Set the target word in the Lua Stimulator (e.g. "openvibe") +and adapt the number of trials in the P300 Speller Stimulator +(e.g. 8 trials for the 8 letters in "openvibe") + +<b><u>Note:</u></b> If the number of letter in the chosen word does not match +the number of trial, you won't be able to train xDAWN and +the classifier on the recorded data. + + + (0x473d9a43, 0x97fc0a97) + 128.000000 + + + (0x7234b86b, 0x2b8651a5) + 576.000000 + + + + + (0x3726b6f5, 0x3dea5d78) + <u><b><big>Overview</big></b></u> + +This scenario can be used online once the +spatial filter and the classifiers are trained. +The <i>Target Letter Generation</i> +box still proposes some targets in order to +eventually train the spatial filter / classifier +again, but you may want to disconnect that box +in order to have a real <i>free time</i> use of +the speller. + +The flash sequence starts automatically after 20 sec. + +You will then be presented a blue letter that +you have to focus on, followed by a 12 times +flashing sequence of the whole grid. The detected +letter will be presented in green. This will be repeated +10 times. + +If the performance of the system does not fit your +requirements, just run <i>2-train-xDAWN</i> and <i>3-train-classifier</i> +scenarios again on the data you just recorded. + +<small><i><b>note:</b> the recorded files go to the +folder where the scenario xml is located +(<span color="darkblue">${Player_ScenarioDirectory}/</span>).</i></small> + + + (0x473d9a43, 0x97fc0a97) + 192 + + + (0x7234b86b, 0x2b8651a5) + -48 + + + + + (0x421933f6, 0x00705e90) + The preprocessing of the signal is +performed here... + +<u><b>Note:</b></u> be sure that the +<i>sampling rate</i> and <i>sample count +per buffer</i> you use in the <u>acquisition +server</u> are compatible with the actual +<i>signal decimation factor</i> + + + (0x473d9a43, 0x97fc0a97) + 192 + + + (0x7234b86b, 0x2b8651a5) + 240 + + + + + (0x5bbc727e, 0x1572a9cd) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 608.000000 + + + (0x7234b86b, 0x2b8651a5) + -288.000000 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x2e63c8c5, 0x79a8ae7b)","childCount":0,"identifier":"(0x00001d62, 0x00007def)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Online Use + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-5-replay.xml b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-5-replay.xml new file mode 100644 index 0000000..af6fc86 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-5-replay.xml @@ -0,0 +1,1345 @@ + + 2 + OpenViBE Designer + 3.1.0 + + + + + + (0x00002db4, 0x00004e4d) + Pick target + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-speller-filter-target.lua + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 400 + + + (0x207c9054, 0x3c841b63) + 736 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00749b30) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00002db4, 0x00004e4e) + Pick flash + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-speller-filter-flash.lua + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 400 + + + (0x207c9054, 0x3c841b63) + 640 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x007aab35) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x00003d0e, 0x000025ef) + Player Controller + (0x5f426dce, 0x08456e13) + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + + + (0x2c132d6e, 0x44ab0d97) + Stimulation name + OVTK_StimulationId_Label_00 + OVTK_StimulationId_ExperimentStop + false + + + (0xcc14d8d6, 0xf27ecb73) + Action to perform + Pause + Pause + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 864 + + + (0x4e7b798a, 0x183beafb) + (0x568d148e, 0x650792b3) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004d93cc) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xce18836a, 0x9c0eb403) + 2 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + (0x00003dec, 0x00004c7b) + Stimulation based epoching + (0x426163d1, 0x324237b0) + + + (0x5ba36127, 0x195feae1) + Input signal + + + (0x6f752dd0, 0x082a321e) + Input stimulations + + + + + (0x5ba36127, 0x195feae1) + Epoched signal + + + + + (0x512a166f, 0x5c3ef83f) + Epoch duration (in sec) + 1 + 0.6 + false + + + (0x512a166f, 0x5c3ef83f) + Epoch offset (in sec) + 0.5 + 0 + false + + + (0x2c132d6e, 0x44ab0d97) + Stimulation to epoch from + OVTK_GDF_VEP + OVTK_StimulationId_VisualStimulationStart + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 352 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xa79941ae, 0x80708445) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x00b06288) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 2 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x0000445b, 0x000068e3) + P300 accumulator + (0x0b5a2787, 0x02750621) + + + (0x6f752dd0, 0x082a321e) + New input + + + (0x6f752dd0, 0x082a321e) + New input(1) + + + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6f752dd0, 0x082a321e) + New output + + + + + (0xb0d0db45, 0x49cbc34a) + Lua Script + + ${Player_ScenarioDirectory}/p300-speller-accumulator.lua + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x2c132d6e, 0x44ab0d97) + Segment start + OVTK_StimulationId_TrialStart + OVTK_StimulationId_TrialStart + false + + + (0x2c132d6e, 0x44ab0d97) + Segment stop + OVTK_StimulationId_SegmentStop + OVTK_StimulationId_TrialStop + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 608 + + + (0x207c9054, 0x3c841b63) + 544 + + + (0x4e7b798a, 0x183beafb) + (0xd6e3f48b, 0xbee3523a) + + + (0x61d11811, 0x71e65362) + + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x0a2185a6) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xf191c1c8, 0xa0123976) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x0000556f, 0x000055f8) + Temporal Filter + (0xb4f9d042, 0x9d79f2e5) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Filtered signal + + + + + (0x2f2c606c, 0x8512ed68) + Filter method + Butterworth + Butterworth + false + + + (0xfa20178e, 0x4cba62e9) + Filter type + Low pass + Band pass + false + + + (0x007deef9, 0x2f3e95c6) + Filter order + 4 + 4 + false + + + (0x512a166f, 0x5c3ef83f) + Low cut frequency (Hz) + 29 + 1.000000 + false + + + (0x512a166f, 0x5c3ef83f) + High cut frequency (Hz) + 40 + 20 + false + + + (0x512a166f, 0x5c3ef83f) + Pass band ripple (dB) + 0.5 + 0.500000 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 144 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x4e7b798a, 0x183beafb) + (0x27a4ceec, 0x876d6384) + + + + + (0x09c41dd7, 0x09f2e37b) + Epoch average + (0x21283d9f, 0xe76ff640) + + + (0x5ba36127, 0x195feae1) + Input epochs + + + + + (0x5ba36127, 0x195feae1) + Averaged epochs + + + + + (0x6530bdb1, 0xd057bbfe) + Averaging type + Epoch block average + Epoch block average + false + + + (0x007deef9, 0x2f3e95c6) + Epoch count + 4 + 1 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 416 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xb73cee83, 0xf7215d60) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-epoch-average.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004afe07) + + + + + (0x0e30a73f, 0x7ae6d95a) + Feature aggregator + (0x00682417, 0x453635f9) + + + (0x544a003e, 0x6dcba5f6) + Input stream 1 + + + + + (0x17341935, 0x152ff448) + Feature vector stream + + + + + (0x1fa7a38f, 0x54edbe0b) + 480 + + + (0x207c9054, 0x3c841b63) + 448 + + + (0x4e7b798a, 0x183beafb) + (0xb5d15cc9, 0x6c8c28fb) + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x004313a5) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + (0xfba64161, 0x65304e21) + + + + + + (0x28b5e192, 0x37431137) + Classifier processor + (0x5fe23d17, 0x95b0452c) + + + (0x17341935, 0x152ff448) + Features + + + (0x6f752dd0, 0x082a321e) + Commands + + + + + (0x6f752dd0, 0x082a321e) + Labels + + + (0x544a003e, 0x6dcba5f6) + Hyperplane distance + + + (0x544a003e, 0x6dcba5f6) + Probability values + + + + + (0x330306dd, 0x74a95f98) + Filename to load configuration from + + ${Player_ScenarioDirectory}/p300-classifier.cfg + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 544 + + + (0x207c9054, 0x3c841b63) + 464 + + + (0x4e7b798a, 0x183beafb) + (0xa6c8e548, 0x9e3e405b) + + + (0xc73e83ec, 0xf855c5bc) + false + + + (0xc80ce8af, 0xf699f813) + 3 + + + (0xce18836a, 0x9c0eb403) + 1 + + + (0xcfad85b0, 0x7c6d841c) + 2 + + + + + (0x2e63c8c5, 0x79a8ae7b) + P300 Speller Visualization + (0x195e41d6, 0x6e684d47) + + + (0x6f752dd0, 0x082a321e) + Sequence stimulations + + + (0x6f752dd0, 0x082a321e) + Target stimulations + + + (0x6f752dd0, 0x082a321e) + Row selection stimulations + + + (0x6f752dd0, 0x082a321e) + Column selection stimulations + + + + + (0x6f752dd0, 0x082a321e) + Target / Non target flagging + + + + + (0x330306dd, 0x74a95f98) + Interface filename + ${Path_Data}/plugins/simple-visualization/p300-speller.glade + ${Path_Data}/plugins/simple-visualization/p300-speller.ui + false + + + (0x2c132d6e, 0x44ab0d97) + Row stimulation base + OVTK_StimulationId_Label_01 + OVTK_StimulationId_Label_01 + false + + + (0x2c132d6e, 0x44ab0d97) + Column stimulation base + OVTK_StimulationId_Label_07 + OVTK_StimulationId_Label_07 + false + + + (0x7f45a2a9, 0x7db12219) + Flash background color + 10,10,10 + 5,5,5 + false + + + (0x7f45a2a9, 0x7db12219) + Flash foreground color + 100,100,100 + 100,100,100 + false + + + (0x007deef9, 0x2f3e95c6) + Flash font size + 100 + 60 + false + + + (0x7f45a2a9, 0x7db12219) + No flash background color + 0,0,0 + 0,0,0 + false + + + (0x7f45a2a9, 0x7db12219) + No flash foreground color + 50,50,50 + 25,25,25 + false + + + (0x007deef9, 0x2f3e95c6) + No flash font size + 75 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Target background color + 10,40,10 + 20,20,70 + false + + + (0x7f45a2a9, 0x7db12219) + Target foreground color + 60,100,60 + 10,10,30 + false + + + (0x007deef9, 0x2f3e95c6) + Target font size + 100 + 40 + false + + + (0x7f45a2a9, 0x7db12219) + Selected background color + 70,20,20 + 10,40,10 + false + + + (0x7f45a2a9, 0x7db12219) + Selected foreground color + 30,10,10 + 60,100,60 + false + + + (0x007deef9, 0x2f3e95c6) + Selected font size + 100 + 40 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 736 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x4e7b798a, 0x183beafb) + (0x8d89d30c, 0xa939693a) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-speller-visualization.cfg + + + (0xc46b3d00, 0x3e0454e1) + (0x00000000, 0x05899984) + + + + + (0x3806695f, 0x750288cb) + Signal Decimation + (0x012f4bea, 0x3be37c66) + + + (0x5ba36127, 0x195feae1) + Input signal + + + + + (0x5ba36127, 0x195feae1) + Output signal + + + + + (0x007deef9, 0x2f3e95c6) + Decimation factor + 8 + 4 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 208 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x4e7b798a, 0x183beafb) + (0x5082af41, 0xd0fbf4cb) + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-signal-decimation.cfg + + + + + (0x483b59a5, 0x4318abba) + Identity + (0x5dffe431, 0x35215c50) + + + (0x403488e7, 0x565d70b6) + Input stream 1 + + + (0x5ba36127, 0x195feae1) + Input stream 2 + + + (0x6f752dd0, 0x082a321e) + Input stream 3 + + + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + 0 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xa8ffe2a3, 0x27038f03) + + + (0x527ad68d, 0x16d746a0) + + + + (0xfba64161, 0x65304e21) + + + + + + (0x634a083c, 0x52143369) + Generic stream reader + (0x6468099f, 0x0370095a) + + + (0x403488e7, 0x565d70b6) + Output stream 1 + + + (0x5ba36127, 0x195feae1) + Output stream 2 + + + (0x6f752dd0, 0x082a321e) + Output stream 3 + + + + + (0x330306dd, 0x74a95f98) + Filename + + ${Player_ScenarioDirectory}/signals/p300-online-[2016.04.20-15.09.08].ov + false + + + + + (0x17ee7c08, 0x94c14893) + + + + (0x1fa7a38f, 0x54edbe0b) + -80 + + + (0x207c9054, 0x3c841b63) + 608 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0xf37b8e7a, 0x1bc33e4e) + + + + + (0x666e568d, 0x579616d6) + xDAWN Spatial Filter + (0xdd332c6c, 0x195b4fd4) + + + (0x5ba36127, 0x195feae1) + Input Signal + + + + + (0x5ba36127, 0x195feae1) + Output Signal + + + + + (0x79a9edeb, 0x245d83fc) + Spatial Filter Coefficients + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Output Channels + 4 + 4 + false + + + (0x007deef9, 0x2f3e95c6) + Number of Input Channels + 4 + 4 + false + + + (0x330306dd, 0x74a95f98) + Filter matrix file + + + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 272 + + + (0x207c9054, 0x3c841b63) + 400 + + + (0x30a4e5c9, 0x83502953) + + + + (0x4e7b798a, 0x183beafb) + (0x81db9bf9, 0xf1cf4ed7) + + + (0x527ad68d, 0x16d746a0) + + + + (0x8d21ff41, 0xdf6afe7e) + ${Player_ScenarioDirectory}/p300-spatial-filter.cfg + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + (0xcfad85b0, 0x7c6d841c) + 1 + + + + + + + (0x0000054f, 0x00006139) + + (0x0000556f, 0x000055f8) + 0 + + + (0x3806695f, 0x750288cb) + 0 + + + + (0x0000062d, 0x00006549) + + (0x0000445b, 0x000068e3) + 1 + + + (0x2e63c8c5, 0x79a8ae7b) + 3 + + + + (0x0000121f, 0x00004438) + + (0x00002db4, 0x00004e4d) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 1 + + + + (0x00001a5d, 0x000012a3) + + (0x00002db4, 0x00004e4e) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 0 + + + + (0x000023ed, 0x00007962) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00002db4, 0x00004e4d) + 0 + + + + (0x00002e50, 0x00003fba) + + (0x00003dec, 0x00004c7b) + 0 + + + (0x09c41dd7, 0x09f2e37b) + 0 + + + + (0x00003a8e, 0x00004020) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x0000445b, 0x000068e3) + 1 + + + + (0x00004ead, 0x0000166d) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00002db4, 0x00004e4e) + 0 + + + + (0x00005b72, 0x00000606) + + (0x0000445b, 0x000068e3) + 0 + + + (0x2e63c8c5, 0x79a8ae7b) + 2 + + + + (0x00005ee4, 0x00001e68) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00003d0e, 0x000025ef) + 0 + + + + (0x00006b0f, 0x00003281) + + (0x666e568d, 0x579616d6) + 0 + + + (0x00003dec, 0x00004c7b) + 0 + + + + (0x00007e4c, 0x00005f90) + + (0x483b59a5, 0x4318abba) + 2 + + + (0x00003dec, 0x00004c7b) + 1 + + + + (0x00007f3e, 0x00003c50) + + (0x483b59a5, 0x4318abba) + 1 + + + (0x0000556f, 0x000055f8) + 0 + + + + (0x00f1a11e, 0x4a813bb8) + + (0x09c41dd7, 0x09f2e37b) + 0 + + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + + (0x04e9bcb9, 0x608aa078) + + (0x634a083c, 0x52143369) + 0 + + + (0x483b59a5, 0x4318abba) + 0 + + + + (0x087ce678, 0x55c0c4ef) + + (0x3806695f, 0x750288cb) + 0 + + + (0x666e568d, 0x579616d6) + 0 + + + + (0x22e7d928, 0x245a74de) + + (0x0e30a73f, 0x7ae6d95a) + 0 + + + (0x28b5e192, 0x37431137) + 0 + + + + (0x335d6001, 0x4c535469) + + (0x28b5e192, 0x37431137) + 0 + + + (0x0000445b, 0x000068e3) + 0 + + + + (0x666eada5, 0x09010e07) + + (0x634a083c, 0x52143369) + 1 + + + (0x483b59a5, 0x4318abba) + 1 + + + + (0x7061b67e, 0x7c481576) + + (0x634a083c, 0x52143369) + 2 + + + (0x483b59a5, 0x4318abba) + 2 + + + + + + (0x3030288d, 0x2dbf93f2) + <u><b><big>Overview</big></b></u> + +This scenario allows to quickly replay +an online session recorded file. The +main between this scenario and +scenario <i>4-online</i> is basically +all the acquisition / stimulation part +being replaced by a file reader. + +<u><b>Note:</b></u> refer to scenario <i>4-online</i> for +details about the processing. + + + (0x473d9a43, 0x97fc0a97) + 192 + + + (0x7234b86b, 0x2b8651a5) + 32 + + + + + (0x374ccccf, 0x48c4defa) + You can browse each box' documentation by selecting the box and pressing <b>F1</b> + + + (0x473d9a43, 0x97fc0a97) + 624 + + + (0x7234b86b, 0x2b8651a5) + -128 + + + + + + + (0x0000775c, 0x000078ff) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x2e63c8c5, 0x79a8ae7b)","childCount":0,"identifier":"(0x000060a8, 0x0000168c)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3}] + + + + + (0x790d75b8, 0x3bb90c33) + Jussi T. Lindgren + + + (0x8c1fc55b, 0x7b433dc2) + + + + (0x9f5c4075, 0x4a0d3666) + Online File Replay + + + (0xf36a1567, 0xd13c53da) + http://openvibe.inria.fr/p300-speller-xdawn/ + + + (0xf6b2e3fa, 0x7bd43926) + xDAWN P300 Speller + + + (0xf8034a49, 0x8b3f37cc) + INRIA + + + \ No newline at end of file diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-accumulator.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-accumulator.lua new file mode 100644 index 0000000..ac8240d --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-accumulator.lua @@ -0,0 +1,200 @@ + +function arrayMax(a) + if #a == 0 then return nil, nil end + local maxIdx, maxValue = 0, a[0] + for i = 1, (#a -1 ) do + if maxValue < a[i] then + maxIdx, maxValue = i, a[i] + end + end + return maxIdx, maxValue +end + +-- For handling target fifo + +List = {} +function List.new () + return {first = 0, last = -1} +end + +function List.pushright (list, value) + local last = list.last + 1 + list.last = last + list[last] = value +end + +function List.popleft (list) + local first = list.first + if first > list.last then + error("list is empty") + end + local value = list[first] + list[first] = nil -- to allow garbage collection + list.first = first + 1 + return value +end + +function List.isempty (list) + if list.first > list.last then + return true + else + return false + end +end + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + segment_start = _G[box:get_setting(4)] + segment_stop = _G[box:get_setting(5)] + + -- 0 inactive, 1 segment started, 2 segment stopped (can vote) + segment_status = 0 + + -- the idea is to push the flash states to the fifo, and when predictions arrive (with some delay), they are matched in oldest-first fashion. + target_fifo = List.new() + + -- box:log("Info", string.format("pop %d %d", id[1], id[2])) + + row_votes = {} + col_votes = {} + + do_debug = false + +end + +-- this function is called when the box is uninitialized +function uninitialize(box) + +end + +function process(box) + -- loops until box is stopped + while box:keep_processing() do + + -- first, parse the timeline stream + for stimulation = 1, box:get_stimulation_count(2) do + -- gets the received stimulation + local identifier, date, duration = box:get_stimulation(2, 1) + -- discards it + box:remove_stimulation(2, 1) + + if identifier == segment_start then + if do_debug then + box:log("Info", string.format("Trial start")) + box:log("Info", string.format("Clear votes")) + end + -- zero the votes + col_votes = {} + row_votes = {} + target_fifo = List.new() + -- fixme fixed 20 + for i = 0,20 do + col_votes[i] = 0 + row_votes[i] = 0 + end + segment_status = 1 + end + + -- Does the identifier code a flash? if so, put into fifo + if segment_status == 1 and identifier >= row_base and identifier <= OVTK_StimulationId_LabelEnd then + + -- assume rows before cols + if identifier < col_base then + local t = {"row", identifier - row_base} + List.pushright(target_fifo,t) + if do_debug then + box:log("Info", string.format("Push row target %d", identifier - row_base )) + end + else + local t = {"col", identifier - col_base} + List.pushright(target_fifo,t) + if do_debug then + box:log("Info", string.format("Push col target %d", identifier - col_base )) + end + end + + + end + + if identifier == segment_stop then + if do_debug then + box:log("Info", string.format("Trial stop")) + end + segment_status = 2 + end + + end + + -- then parse the classifications + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets the received stimulation + local identifier, date, duration = box:get_stimulation(1, 1) + -- discards it + box:remove_stimulation(1, 1) + + -- Is it an in-class prediction? + if identifier == OVTK_StimulationId_Target then + local t = List.popleft(target_fifo) + if do_debug then + box:log("Info", string.format("Pred fifo %s %d is target", t[1], t[2])) + end + if t[1]=="row" then + row_votes[t[2]] = row_votes[t[2]] + 1 + else + col_votes[t[2]] = col_votes[t[2]] + 1 + end + end + + if identifier == OVTK_StimulationId_NonTarget then + local t = List.popleft(target_fifo) + if do_debug then + box:log("Info", string.format("Pred fifo %s %d is nontarget", t[1], t[2])) + end + end + + end + + if segment_status == 2 and List.isempty(target_fifo) then + -- output the vote after the segment end when we've matched all predictions + + local maxRowIdx, maxRowValue = arrayMax(row_votes) + local maxColIdx, maxColValue = arrayMax(col_votes) + + if maxRowValue == 0 and maxColValue == 0 then + box:log("Warning", string.format("Classifier predicted 'no p300' for all flashes of the trial")); + end + + if do_debug then + local rowVotes = 0 + local colVotes = 0 + for ir, val in pairs(row_votes) do + rowVotes = rowVotes + val + end + for ir, val in pairs(col_votes) do + colVotes = colVotes + val + end + + box:log("Info", string.format("Vote [%d %d] wt [%d,%d]", maxRowIdx+row_base, maxColIdx+col_base, maxRowValue, maxColValue)) + box:log("Info", string.format(" Total [%d %d]", rowVotes, colVotes)) + end + + + + local now = box:get_current_time() + + box:send_stimulation(1, maxRowIdx + row_base, now, 0) + box:send_stimulation(2, maxColIdx + col_base, now, 0) + + segment_status = 0 + end + + box:sleep() + end +end + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-filter-flash.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-filter-flash.lua new file mode 100644 index 0000000..9f13ff0 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-filter-flash.lua @@ -0,0 +1,61 @@ + +-- Picks out 'flashes' from a stimulation stream + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + box:set_filter_mode(1); + + state = 0 + + do_debug = false +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_SegmentStart then + state = 1 + elseif stimulation_id == OVTK_StimulationId_SegmentStop then + state = 0 + end + + -- If we're between 'rest start' and 'rest_stop', this specifies a target + if state == 1 and stimulation_id >= OVTK_StimulationId_LabelStart and stimulation_id <= OVTK_StimulationId_LabelEnd then + + box:send_stimulation(1, stimulation_id, stimulation_time, 0) + + if do_debug then + box:log("Info", string.format("Push a target %d at %f (now %f)", stimulation_id, stimulation_time, t)) + end + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-filter-target.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-filter-target.lua new file mode 100644 index 0000000..f8c92db --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-filter-target.lua @@ -0,0 +1,61 @@ + +-- Picks out 'targets' from a stimulation stream + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + state = 0 + + box:set_filter_mode(1); + + do_debug = false +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_RestStart then + state = 1 + elseif stimulation_id == OVTK_StimulationId_RestStop then + state = 0 + end + + -- If we're between 'rest start' and 'rest_stop', this specifies a target + if state == 1 and stimulation_id >= OVTK_StimulationId_LabelStart and stimulation_id <= OVTK_StimulationId_LabelEnd then + + box:send_stimulation(1, stimulation_id, stimulation_time, 0) + + if do_debug then + box:log("Info", string.format("Push a target %d at %f (now = %f)", stimulation_id, stimulation_time, t)) + end + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-launch.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-launch.lua new file mode 100644 index 0000000..48f728f --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-launch.lua @@ -0,0 +1,21 @@ + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + stim = _G[box:get_setting(2)] + launchTime = box:get_setting(3) + +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + box:send_stimulation(1, stim, launchTime, 0) + +end diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-stimulator.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-stimulator.lua new file mode 100644 index 0000000..e71c854 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-stimulator.lua @@ -0,0 +1,139 @@ +-- This Lua script sends Stimulations to the speller visualization box for a p300-visual-speller +-- +-- Author : Tobias Baumann +-- Date : 2021-12-06 +-- Revised: 2021-19-11 + +--This function lets the box sleep until a fixed moment +function wait_until(box, time) + while box:get_current_time() < time do + box:sleep() + end +end + +--This function lets the box wait for a fixed duration +function wait_for(box, duration) + wait_until(box, box:get_current_time() + duration) +end + +--this function checks, wether value already is an element of the given stim_matrix +function is_element(matrix, value) + for i = 1, #matrix do + if #matrix == 0 then + return(false) + elseif value == matrix[i] then + return(true) + end + end + return(false) +end +--this function creates a sequence of stimulations by shuffeling the values of the given stim_matrix +function create_sequence(matrix) + math.randomseed(os.time()) + local stim_matrix = {} + local stim_code = 0 + local i = 1 + while i <= #matrix do + stim_code = matrix[math.random(1,#matrix)] + if is_element(stim_matrix, stim_code) == false then + stim_matrix[i] = stim_code + i = i + 1 + end + end + return(stim_matrix) +end + +-- this function is called when the box is initialized +function initialize(box) + --load stimulation codes + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + --load box settings + row_base = _G[box:get_setting(2)] + col_base = _G[box:get_setting(3)] + matrix_size = box:get_setting(4) + n_repetitions = box:get_setting(5) + flash_duration = box:get_setting(7) + noflash_duration = box:get_setting(8) + inter_repetition_delay = box:get_setting(9) + inter_trial_delay = box:get_setting(10) + send_toggle = _G[box:get_setting(11)] + time_to_send = box:get_setting(13) + + if box:get_setting(12) == 'true' then + free_spelling = true + n_trials = 1 + else + free_spelling = false + n_trials = box:get_setting(6) + end + + --Lua variables + experiment_end = false + send = false + row_stimcodes = {} + col_stimcodes = {} + for x = 1, matrix_size do + row_stimcodes[x] = row_base + x - 1 + end + for x = 1, matrix_size do + col_stimcodes[x] = col_base + x - 1 + end +end + +-- this function is called when the box is uninitialized +function uninitialize(box) + +end + +-- this function is called once by the box +function process(box) + while box:keep_processing() do + + if send and not experiment_end then + for trial = 1, n_trials do + if not send then + break + end + box:send_stimulation(1, OVTK_StimulationId_RestStart, box:get_current_time() , 0) + wait_for(box, inter_trial_delay) + box:send_stimulation(1, OVTK_StimulationId_RestStop, box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_TrialStart ,box:get_current_time() , 0) + for segment = 1, n_repetitions do + row_stimcodes = create_sequence(row_stimcodes) + col_stimcodes = create_sequence(col_stimcodes) + box:send_stimulation(1, OVTK_StimulationId_SegmentStart ,box:get_current_time() , 0) + for i = 1, matrix_size do + box:send_stimulation(1, row_stimcodes[i] ,box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStart ,box:get_current_time() , 0) + wait_for(box, flash_duration) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStop ,box:get_current_time() , 0) + wait_for(box, noflash_duration) + + box:send_stimulation(1, col_stimcodes[i] ,box:get_current_time() , 0) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStart ,box:get_current_time() , 0) + wait_for(box, flash_duration) + box:send_stimulation(1, OVTK_StimulationId_VisualStimulationStop ,box:get_current_time() , 0) + wait_for(box, noflash_duration) + end + box:send_stimulation(1, OVTK_StimulationId_SegmentStop ,box:get_current_time() , 0) + wait_for(box, inter_repetition_delay) + end + box:send_stimulation(1, OVTK_StimulationId_TrialStop ,box:get_current_time() , 0) + end + if not free_spelling then + box:send_stimulation(1, OVTK_StimulationId_ExperimentStop ,box:get_current_time() , 0) + send = false + experiment_end = true + end + else if not send and not experiment_end then + wait_for(box, time_to_send) + send = true + box:send_stimulation(1, OVTK_StimulationId_ExperimentStart ,box:get_current_time() , 0) + box:remove_stimulation(1, 1) + end + end + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-target.lua b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-target.lua new file mode 100644 index 0000000..6b8d599 --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/scripts/p300-speller-target.lua @@ -0,0 +1,95 @@ +-- This Lua script generates target stimulations for the P300 visualization +-- box based on the matrix of letters / numbers a P300 speller has +-- +-- Author : Yann Renard, INRIA +-- Date : 2011-03-15 + +grid = +{ + { 'a', 'b', 'c', 'd', 'e', 'f' }, + { 'g', 'h', 'i', 'j', 'k', 'l' }, + { 'm', 'n', 'o', 'p', 'q', 'r' }, + { 's', 't', 'u', 'v', 'w', 'x' }, + { 'y', 'z', '1', '2', '3', '4' }, + { '5', '6', '7', '8', '9', '0' }, +} + +index = 0 + +function get_location(c) + for i = 1, 6 do + for j = 1, 6 do + if grid[i][j] == c then + return i, j + end + end + end + return 0, 0 +end + +-- this function is called when the box is initialized +function initialize(box) + + dofile(box:get_config("${Path_Data}") .. "/plugins/stimulation/lua-stimulator-stim-codes.lua") + + math.randomseed(os.time()) + target = box:get_setting(2) + row_base = _G[box:get_setting(3)] + col_base = _G[box:get_setting(4)] + delay = box:get_setting(5) + if target == "" then + for i = 1, 1000 do + a = math.random(1, #grid) + b = math.random(1, #grid[1]) + target = target .. grid[a][b] + end + end +end + +-- this function is called when the box is uninitialized +function uninitialize(box) +end + +-- this function is called once by the box +function process(box) + + -- loop until box:keep_processing() returns zero + -- cpu will be released with a call to sleep + -- at the end of the loop + while box:keep_processing() do + + -- gets current simulated time + t = box:get_current_time() + + -- loops on every received stimulation for a given input + for stimulation = 1, box:get_stimulation_count(1) do + + -- gets stimulation + stimulation_id, stimulation_time, stimulation_duration = box:get_stimulation(1, 1) + + if stimulation_id == OVTK_StimulationId_RestStart then + + -- finds a new target + index = index + 1 + r, c = get_location(string.sub(target, index, index)) + + -- triggers the target + box:send_stimulation(1, row_base+r-1, t+delay, 0) + box:send_stimulation(1, col_base+c-1, t+delay, 0) + + elseif stimulation_id == OVTK_StimulationId_ExperimentStop then + + -- triggers train stimulation + box:send_stimulation(1, OVTK_StimulationId_Train, t+delay+1, 0) + + end + + -- discards it + box:remove_stimulation(1, 1) + + end + + -- releases cpu + box:sleep() + end +end diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/README.txt b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/README.txt new file mode 100644 index 0000000..ac04efc --- /dev/null +++ b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/README.txt @@ -0,0 +1,3 @@ + +The scenario will record its signals here. + diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/p300-xdawn-online-[2022.01.10-09.50.07].ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/p300-xdawn-online-[2022.01.10-09.50.07].ov new file mode 100644 index 0000000..8e6dd45 Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/p300-xdawn-online-[2022.01.10-09.50.07].ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/p300-xdawn-online-[2022.01.10-10.36.50].ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/p300-xdawn-online-[2022.01.10-10.36.50].ov new file mode 100644 index 0000000..0673417 Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/p300-xdawn-online-[2022.01.10-10.36.50].ov differ diff --git a/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/p300-xdawn-train.ov b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/p300-xdawn-train.ov new file mode 100644 index 0000000..72a7863 Binary files /dev/null and b/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/p300-xdawn-train.ov differ diff --git a/Projekte/UIController.py b/Projekte/UIController.py new file mode 100644 index 0000000..1aadb44 --- /dev/null +++ b/Projekte/UIController.py @@ -0,0 +1,171 @@ +from UIModellVisuell import * +from UIModellTaktil import * +import UIViewTKinter as viewTkinter +from shutil import copyfile + + + +class Controller(): + + def __init__(self, pathOVFile, path_ov, path_files, path_default): + self.view = viewTkinter.View(self, path_default) + self.modi = "visuellesBCI" + self.pathOVFile = pathOVFile + self.PATH_OV = path_ov + self.PATH_FILES = path_files + self.infotext = "" + + self.commands = { + "copySpelling": self.commandoCopySpelling, + "stop": self.commandStop, + "freeSpelling": self.commandFreeSpelling, + "test": self.test, + "wechsel": self.wechsel, + "speicherort": self.setDataset + } + + self.nexts = { + "filterXdawn" : self.filterXdawn, + "filterClassic": self.filterClassic, + "save": self.speichern + } + + self.pagesTaktil = { + "stop": "StartPage", + "copySpelling": "WorkingPageTaktil", + "freeSpelling": "WorkingPageTaktil", + "test": "WorkingPageTaktil" + } + self.pagesVisuell = { + "stop": "StartPage", + "copySpelling": "WorkingPageVisuell", + "freeSpelling": "WorkingPageVisuell", + "test": "WorkingPageVisuell" + } + + self.model = None + self.view.mainloop() + + def actionPerformed(self, action): + self.changePage(action) + func = self.commands.get(action) + if(func is not None): + func() + else: + print("Kommado existiert nicht") + + def changePage(self,action): + if(self.modi == "taktilesBCI"): + page = self.pagesTaktil.get(action) + elif(self.modi == "visuellesBCI"): + page = self.pagesVisuell.get(action) + if(page is not None): + self.view.changeFrame(page) + + def wechsel(self): + if(self.modi == "taktilesBCI"): + self.view.setChangeBtnText("Wechsel zu taktilen BCI") + self.view.setTitleText("visuelles BCI") + self.modi = "visuellesBCI" + elif(self.modi == "visuellesBCI"): + self.setTitle("taktiles BCI") + self.view.setChangeBtnText("Wechsel zu visuellen BCI") + self.modi = "taktilesBCI" + + def speichern(self): + print("saveFile") + copyfile(self.pathOVFile, self.file) + + def setDataset(self): + file = self.view.openfiledialog() + copyfile(file, self.pathOVFile) + + + def test(self): + self.file = self.view.savefiledialog() + if(self.modi == "taktilesBCI"): + self.model = ModellTaktil(self, path_files= self.PATH_FILES, path_ov= self.PATH_OV) + elif(self.modi == "visuellesBCI"): + self.model = ModellVisuell(self, path_files= self.PATH_FILES, path_ov= self.PATH_OV) + self.model.positionWindow() + self.model.setFunktion(self.model.trainXDawn) + self.model.start() + + #wird durch Btn gestartet -> startet copyspelling als thread + def commandoCopySpelling(self): + self.file = self.view.savefiledialog() + if(self.modi == "taktilesBCI"): + self.model = ModellTaktil(self, path_files= self.PATH_FILES, path_ov= self.PATH_OV) + elif(self.modi == "visuellesBCI"): + self.model = ModellVisuell(self, path_files= self.PATH_FILES, path_ov= self.PATH_OV) + self.model.setFunktion(self.model.startCopySpelling) + self.model.start() + + #wird durch Copy-Speller Thread copystelling gestartet -> startete filtern als thread + def filterXdawn(self): + if(self.modi == "taktilesBCI"): + self.model = ModellTaktil(self, path_files= self.PATH_FILES, path_ov= self.PATH_OV) + elif(self.modi == "visuellesBCI"): + self.model = ModellVisuell(self, path_files= self.PATH_FILES, path_ov= self.PATH_OV) + self.model.setFunktion(self.model.trainXDawn) + self.model.start() + + #wird durch XDawn-Thread copystelling gestartet -> startete filtern als thread + def filterClassic(self): + if(self.modi == "taktilesBCI"): + self.model = ModellTaktil(self, path_files= self.PATH_FILES, path_ov= self.PATH_OV) + elif(self.modi == "visuellesBCI"): + self.model = ModellVisuell(self, path_files= self.PATH_FILES, path_ov= self.PATH_OV) + self.model.setFunktion(self.model.trainClassifier) + self.model.start() + + def commandFreeSpelling(self): + print("freespelling") + if(self.modi == "taktilesBCI"): + self.model = ModellTaktil(self, path_files= self.PATH_FILES, path_ov= self.PATH_OV) + elif(self.modi == "visuellesBCI"): + self.model = ModellVisuell(self, path_files= self.PATH_FILES, path_ov= self.PATH_OV) + self.model.setFunktion(self.model.freeSpelling) + self.model.start() + + def commandStop(self): + if(self.model is not None): + self.addInfoText("Action: STOP-Command") + self.model.stop() + self.model.join() + self.model.killProzess() + self.mode = None + + + def stop(self, next=None): + print("Stop aus Modell") + self.model.stop() + self.model.join() + self.model.killProzess() + self.mode = None + if(next is not None): + func = self.nexts.get(next) + func() + + def addInfoText(self,text): + self.infotext = self.infotext + text + self.view.setInfoText(self.infotext) + + def resetInfo(self): + self.infotext = "" + + def setTitle(self,text): + self.view.setTitleText(text) + + def changeScreen(self, pageName): + self.view.changeFrame(pageName=pageName) + + def getModi(self): + return self.modi + + def getWindowSize(self): + return self.view.getWindowSize() + + + + diff --git a/Projekte/UIController.pyc b/Projekte/UIController.pyc new file mode 100644 index 0000000..022396d Binary files /dev/null and b/Projekte/UIController.pyc differ diff --git a/Projekte/UIModell.py b/Projekte/UIModell.py new file mode 100644 index 0000000..6bccaaa --- /dev/null +++ b/Projekte/UIModell.py @@ -0,0 +1,43 @@ +from subprocess import * +from threading import Thread +import time + +class Modell(Thread): + + def __init__(self,c): + Thread.__init__(self) + self.controller = c + + def setFunktion(self, func, args=None, kwargs=None): + pass + + def startCopySpelling(self): + pass + + def trainXDawn(self): + pass + + def trainClassifier(self): + pass + + def freeSpelling(self): + pass + + def killProzessParent(self): + print('Parent start killing') + pidOV = 0 + items = [] + + prozesse = Popen(["ps", "-e"], stdout=PIPE).communicate()[0].strip() + zeilen = prozesse.split('\n') + for z in zeilen: + if(z.find("openvibe-design") != -1): + z = z.strip() + items = z.split(' ') + pidOV = items[0] + + #kill -TERM veranlasst dem Prozess sich selbst zu beenden (nicht erzwungen) + Popen(["kill", "-TERM", str(pidOV)], stdout=PIPE).communicate() + + + print("killed openvibe-designer") \ No newline at end of file diff --git a/Projekte/UIModell.pyc b/Projekte/UIModell.pyc new file mode 100644 index 0000000..b223b72 Binary files /dev/null and b/Projekte/UIModell.pyc differ diff --git a/Projekte/UIModellTaktil.py b/Projekte/UIModellTaktil.py new file mode 100644 index 0000000..7ad28e8 --- /dev/null +++ b/Projekte/UIModellTaktil.py @@ -0,0 +1,179 @@ +from subprocess import * +from threading import Thread +import time +from UIModell import * + +class ModellTaktil(Modell): + + def __init__(self,c, path_ov, path_files): + Thread.__init__(self) + Modell.__init__(self, c) + self.PATH_FILES = path_files + self.PATH_OV = path_ov + self.aktiv= True + self.openVibeAktiv = False + + def stop(self): + print("stop thread") + self.aktiv = False + + def setFunktion(self, func, args=None, kwargs=None): + self.func = func + self.args = args or [] + self.kwargs = kwargs or {} + + def run(self): + print("start thread") + #self.aktiv = True + t = Thread(target=self.func, args=self.args, kwargs=self.kwargs) + t.setDaemon(True) + t.start() + + while self.aktiv: + time.sleep(0.1) + + + def startCopySpelling(self): + print("start copySpelling") + self.controller.resetInfo() + self.controller.addInfoText('start copyspelling -- ') + self.controller.setTitle("Copy Spelling") + path = self.PATH_FILES + 'p300-visual-1-acquisition.xml' + process = Popen(['bash', self.PATH_OV, '--play', path, '--no-gui'], + stdout=PIPE, + universal_newlines=True) + self.openVibeAktiv = True + while True: + output = process.stdout.readline() + print(output.strip()) + x = output.find("schlagwort?") + y = output.find("Error") + if(x != -1): + print("Training finished") + process.terminate() + self.controller.addInfoText('finished Copyspelling\n') + self.controller.stop("filterXdawn") + break + elif(y != -1 ): + print("Error occured") + self.controller.changeScreen("StartPage") + self.controller.addInfoText("Fehler beim Copyspelling aufgetaucht\n") + process.terminate() + self.controller.stop() + break + + + self.controller.stop() + #self.killProzess() + #self.controller.filterXdawn() + + def trainXDawn(self): + print("start training Xdawn") + self.controller.addInfoText('start training XDawn -- ') + path = self.PATH_FILES + 'p300-visual-2-train-xDAWN.xml' + #path = 'Projekte/test.xml' + process = Popen(['bash', self.PATH_OV, '--play', path, '--no-gui'], + stdout=PIPE, + universal_newlines=True) + self.openVibeAktiv = True + while self.aktiv: + output = process.stdout.readline() + print(output.strip()) + x = output.find("Training finished and saved") + y = output.find("Error") + if(x != -1): + print("Training finished") + process.terminate() + self.controller.addInfoText('finished Training\n') + self.controller.stop("filterClassic") + break + elif(y != -1 ): + print("Error occured") + self.controller.changeScreen("StartPage") + self.controller.addInfoText("Fehler beim XDawn Training aufgetaucht\n") + self.controller.stop() + process.terminate() + break + + self.controller.stop() + + #self.controller.filterClassic() + + + def trainClassifier(self): + print("start training Classifier") + self.controller.addInfoText("start training with Classifier -- ") + + path = self.PATH_FILES + 'p300-visual-3-train-classifier.xml' + process = Popen(['bash', self.PATH_OV, '--play', path, '--no-gui'], + stdout=PIPE, + universal_newlines=True) + self.openVibeAktiv = True + counter = 0 + while True: + output = process.stdout.readline() + print(output.strip()) + x = output.find("aka Classifier trainer") + accuracy = output.find("Training set accuracy is") + y = output.find("Error") + if(x != -1): + counter = counter +1 + #counter = 18 + if(counter >= 17): + print("Training finished") + self.controller.addInfoText('finished Training\n') + process.terminate() + self.controller.stop("save") + break + elif(y != -1 ): + print("Error occured") + self.controller.changeScreen("StartPage") + self.controller.addInfoText("Fehler beim Classifier Training aufgetaucht\n") + process.terminate() + break + elif(accuracy != -1): + print("ACCURACY" + output) + + self.controller.changeScreen("StartPage") + self.controller.stop() + + def freeSpelling(self): + #bei error auch abrechen? + print("start freeSpelling") + self.controller.resetInfo() + self.controller.addInfoText('start free spelling -- ') + path = self.PATH_FILES + 'p300-visual-4-online.xml' + process = Popen(['bash', self.PATH_OV, '--play', path, '--no-gui'], + stdout=PIPE, + universal_newlines=True) + self.openVibeAktiv = True + while True: + output = process.stdout.readline() + print(output.strip()) + y = output.find("Error") + x = output.find("Schlagwort") + if(x != -1): + print("End Spelling") + process.terminate() + self.controller.addInfoText('finished freespelling\n') + self.controller.changeScreen("StartPage") + self.controller.stop() + break + elif(y != -1 ): + print("Error occured") + self.controller.changeScreen("StartPage") + self.controller.addInfoText("Fehler beim Freespelling aufgetaucht\n") + process.terminate() + self.controller.stop() + break + + self.controller.changeScreen("StartPage") + self.controller.stop() + + def killProzess(self): + if(self.openVibeAktiv): + self.openVibeAktiv = False + self.killProzessParent() + + + diff --git a/Projekte/UIModellTaktil.pyc b/Projekte/UIModellTaktil.pyc new file mode 100644 index 0000000..f06b4a9 Binary files /dev/null and b/Projekte/UIModellTaktil.pyc differ diff --git a/Projekte/UIModellVisuell.py b/Projekte/UIModellVisuell.py new file mode 100644 index 0000000..7ecf555 --- /dev/null +++ b/Projekte/UIModellVisuell.py @@ -0,0 +1,197 @@ +from subprocess import * +from threading import Thread +import time + +from UIModell import Modell + +class ModellVisuell(Modell): + + def __init__(self,c, path_ov, path_files): + Thread.__init__(self) + Modell.__init__(self, c) + self.PATH_FILES = path_files + self.PATH_OV = path_ov + self.aktiv= True + self.openVibeAktiv = False + + def stop(self): + print("stop thread") + self.aktiv = False + + def setFunktion(self, func, args=None, kwargs=None): + self.func = func + self.args = args or [] + self.kwargs = kwargs or {} + + def run(self): + print("start thread") + #self.aktiv = True + t = Thread(target=self.func, args=self.args, kwargs=self.kwargs) + t.setDaemon(True) + t.start() + + while self.aktiv: + time.sleep(0.1) + + + def startCopySpelling(self): + print("start copySpelling") + self.controller.resetInfo() + self.controller.addInfoText('start copyspelling -- ') + self.controller.setTitle("Copy Spelling") + path = self.PATH_FILES + 'p300-visual-1-acquisition.xml' + process = Popen(['bash', self.PATH_OV, '--play', path, '--no-gui'], + stdout=PIPE, + universal_newlines=True) + self.openVibeAktiv = True + while True: + output = process.stdout.readline() + print(output.strip()) + x = output.find("schlagwort?") + y = output.find("Error") + if(x != -1): + print("Training finished") + process.terminate() + self.controller.addInfoText('finished Copyspelling\n') + self.controller.stop("filterXdawn") + break + elif(y != -1 ): + print("Error occured") + self.controller.changeScreen("StartPage") + self.controller.addInfoText("Fehler beim Copyspelling aufgetaucht\n") + process.terminate() + self.controller.stop() + break + + + self.controller.stop() + #self.killProzess() + #self.controller.filterXdawn() + + def trainXDawn(self): + print("start training Xdawn") + self.controller.addInfoText('start training XDawn -- ') + path = self.PATH_FILES + 'p300-visual-2-train-xDAWN.xml' + #path = 'Projekte/test.xml' + process = Popen(['bash', self.PATH_OV, '--play', path, '--no-gui'], + stdout=PIPE, + universal_newlines=True) + self.openVibeAktiv = True + self.positionWindow() + while self.aktiv: + output = process.stdout.readline() + print(output.strip()) + x = output.find("Training finished and saved") + y = output.find("Error") + if(x != -1): + print("Training finished") + process.terminate() + self.controller.addInfoText('finished Training\n') + self.controller.stop("filterClassic") + break + elif(y != -1 ): + print("Error occured") + self.controller.changeScreen("StartPage") + self.controller.addInfoText("Fehler beim XDawn Training aufgetaucht\n") + self.controller.stop() + process.terminate() + break + + self.controller.stop() + + #self.controller.filterClassic() + + + def trainClassifier(self): + print("start training Classifier") + self.controller.addInfoText("start training with Classifier -- ") + + path = self.PATH_FILES + 'p300-visual-3-train-classifier.xml' + process = Popen(['bash', self.PATH_OV, '--play', path, '--no-gui'], + stdout=PIPE, + universal_newlines=True) + self.openVibeAktiv = True + counter = 0 + while True: + output = process.stdout.readline() + print(output.strip()) + x = output.find("aka Classifier trainer") + accuracy = output.find("Training set accuracy is") + y = output.find("Error") + if(x != -1): + counter = counter +1 + #counter = 18 + if(counter >= 17): + print("Training finished") + self.controller.addInfoText('finished Training\n') + process.terminate() + self.controller.stop("save") + break + elif(y != -1 ): + print("Error occured") + self.controller.changeScreen("StartPage") + self.controller.addInfoText("Fehler beim Classifier Training aufgetaucht\n") + process.terminate() + break + elif(accuracy != -1): + print("ACCURACY" + output) + + self.controller.changeScreen("StartPage") + self.controller.stop() + + def freeSpelling(self): + #bei error auch abrechen? + print("start freeSpelling") + self.controller.resetInfo() + self.controller.addInfoText('start free spelling -- ') + path = self.PATH_FILES + 'p300-visual-4-online.xml' + process = Popen(['bash', self.PATH_OV, '--play', path, '--no-gui'], + stdout=PIPE, + universal_newlines=True) + self.openVibeAktiv = True + while True: + output = process.stdout.readline() + print(output.strip()) + y = output.find("Error") + x = output.find("Schlagwort") + if(x != -1): + print("End Spelling") + process.terminate() + self.controller.addInfoText('finished freespelling\n') + self.controller.changeScreen("StartPage") + self.controller.stop() + break + elif(y != -1 ): + print("Error occured") + self.controller.changeScreen("StartPage") + self.controller.addInfoText("Fehler beim Freespelling aufgetaucht\n") + process.terminate() + self.controller.stop() + break + + self.controller.changeScreen("StartPage") + self.controller.stop() + + def killProzess(self): + if(self.openVibeAktiv): + self.openVibeAktiv = False + self.killProzessParent() + + def positionWindow(self): + print("calles positionWindow") + name = "firefox" + parameter = self.controller.getWindowSize() + positionX = int(parameter[0]+ int(parameter[3] * 0.05)) + positionY = int(parameter[1]) + int(parameter[2]*0.08) + height = int(parameter[2])*0.55 + width = int(parameter[3])*0.9 + windowID = Popen(["xdotool", "search", "--onlyvisible", "--name", name], stdout=PIPE).communicate()[0].strip() + Popen(["xdotool", "windowsize", windowID, str(width), str(height)], stdout=PIPE).communicate() + Popen(["xdotool", "windowmove", windowID, str(positionX), str(positionY)], stdout=PIPE).communicate() + Popen(["xdotool", "windowactivate", windowID], stdout=PIPE).communicate()[0].strip() + + #windowminimize ums ein fenster klein zu machen + + + + \ No newline at end of file diff --git a/Projekte/UIModellVisuell.pyc b/Projekte/UIModellVisuell.pyc new file mode 100644 index 0000000..11d1f78 Binary files /dev/null and b/Projekte/UIModellVisuell.pyc differ diff --git a/Projekte/UIView.pyc b/Projekte/UIView.pyc new file mode 100644 index 0000000..26e74de Binary files /dev/null and b/Projekte/UIView.pyc differ diff --git a/Projekte/UIViewTKinter.py b/Projekte/UIViewTKinter.py new file mode 100644 index 0000000..44fd263 --- /dev/null +++ b/Projekte/UIViewTKinter.py @@ -0,0 +1,205 @@ +try: + from Tkinter import * + import tkFileDialog as fd +except ImportError: + from tkinter import * + from tkinter import filedialog as fd + +#from tkinter import font +from UIController import * + + + +class View(Tk): + def __init__(self, c, path_default, *args, **kwargs): + Tk.__init__(self, *args, **kwargs) + self.controller = c + self.PATH_DEFAULT = path_default + self.title("Visuelles Spelling") + self.h = 800 + self.w = 1000 + self.geometry('{}x{}'.format(self.w,self.h)) + self.faktor = [(0.0675),(0.7325), (0.2)] + #self.resizable(height=False, width= False) + self.layout = { + "background": "#00001E", + "backgroundBtn": "#1C86EE", + "fontColor": "#FFFFFF", + "backgroundBar": "#00002E", + "font": ('Calibri', 25, 'bold'), + "fontSmall": ('Calibri', 10, 'bold'), + "fontInfo": ('Calibri', 25) + } + + self.createTopFrame() + self.createMainFrame() + self.createBottomFrame() + + self.bind("", self.adjustSize) + self.protocol("WM_DELETE_WINDOW", self.onClosing) + + + def changeFrame(self, pageName): + frame = self.frames[pageName] + frame.tkraise() + + def adjustSize(self, event): + if(str(event.widget) =="."): + self.h = event.height + self.w = event.width + self.topFrame.configure(height=(self.h*self.faktor[0]), width=self.w) + self.mainFrame.configure(height=(self.h*self.faktor[1]), width=self.w) + self.bottomFrame.configure(height=(self.h*self.faktor[2]), width=self.w) + self.container.configure(height=(self.h*self.faktor[1]), width=self.w) + for f in self.frames: + self.frames[f].configure(height=(self.h*self.faktor[1]), width=self.w) + self.frames[f].adjustSize(height=(self.h*self.faktor[1]), width=self.w) + + + def onClosing(self): + print("closing") + self.controller.commandStop() + print("destroy") + self.destroy() + + + def createTopFrame(self): + self.topFrame = Frame(self, bg=self.layout["backgroundBar"], height=50, width=500) + self.changeBtn = Button(self.topFrame, text="Wechsel zu taktilen BCI", command=lambda: self.controller.actionPerformed("wechsel"), height=2, width = 25, font=self.layout["fontSmall"], bg=self.layout["backgroundBtn"], fg=self.layout["fontColor"]) + self.saveBtn = Button(self.topFrame, text="Auswaehlen der Datei", command=lambda: self.controller.actionPerformed("speicherort"), height=2, width = 25, font=self.layout["fontSmall"], bg=self.layout["backgroundBtn"], fg=self.layout["fontColor"]) + #self.setBtn = Button(self.topFrame, text="Auswaehlen der Datei", command=lambda: self.controller.actionPerformed("setFile"), height=2, width = 25, font=self.layout["fontSmall"], bg=self.layout["backgroundBtn"], fg=self.layout["fontColor"]) + self.toplabel = Label(self.topFrame, text="visuelles BCI", font=self.layout["font"], bg=self.layout["backgroundBar"], fg=self.layout["fontColor"], ) + + self.topFrame.grid(column=0, row=0) + self.topFrame.grid_propagate(0) + self.topFrame.pack_propagate(0) + + self.changeBtn.grid(column=0, row=0, padx=10,pady=5) + self.saveBtn.grid(column=1, row=0, padx=10, pady=5) + #self.setBtn.grid(column=2, row=0, padx=10, pady=5) + self.toplabel.grid(column=2, row=0, padx=100, pady=2) + + def createMainFrame(self): + + self.mainFrame = Frame(self, bg=self.layout["background"], height=250, width=500) + self.mainFrame.grid(column=0, row=1) + self.mainFrame.pack_propagate(0) + + self.container = Frame(self.mainFrame, bg=self.layout["background"], height=250, width=500) + self.container.pack(side="top", fill="both", expand = True) + self.container.pack_propagate(0) + self.container.grid_propagate(0) + + self.frames = {} + for F in (StartPage, WorkingPageTaktil, WorkingPageVisuell): + page_name = F.__name__ + frame = F(parent=self.container, controller=self.controller, layout=self.layout) + self.frames[page_name] = frame + frame.grid(row=0, column=0, sticky="nsew") + + self.changeFrame("StartPage") + + def createBottomFrame(self): + self.bottomFrame = Frame(self, bg=self.layout["backgroundBar"], height=100, width=500) + self.bottomlabel = Label(self.bottomFrame, text="Hier stehen Infos\nGanz viele", justify='left', font=self.layout["fontInfo"], bg=self.layout["backgroundBar"], fg=self.layout["fontColor"]) + + self.bottomFrame.grid(column=0, row=2) + self.bottomFrame.pack_propagate(0) + self.bottomFrame.grid_propagate(0) + + self.bottomlabel.grid(padx=5,pady=5) + + def setInfoText(self, text): + self.bottomlabel['text'] = text + + def setTitleText(self,text): + self.title(text) + self.toplabel["text"] = text + + def setChangeBtnText(self,text): + self.changeBtn["text"] = text + + def openfiledialog(self): + path = self.PATH_DEFAULT + file = fd.askopenfilename(initialdir=path) + return file + + def savefiledialog(self): + path = self.PATH_DEFAULT + file = fd.asksaveasfilename(initialdir=path) + return file + + def getWindowSize(self): + return [self.winfo_x(), self.winfo_y(), self.winfo_height(), self.winfo_width()] + + +class StartPage(Frame): + def __init__(self, parent, controller, layout): + self.layout = layout + + Frame.__init__(self, parent, height=250, width=500, bg=self.layout["background"]) + self.grid_propagate(0) + self.pack_propagate(0) + self.controller = controller + + self.container = Frame(self, bg=self.layout["background"], height=250, width=500) + self.btnFrame = Frame(self.container, bg=self.layout["background"], height=250, width=250) + + self.container.columnconfigure(0, weight=1) # Set weight to row and + self.container.rowconfigure(0, weight=1) # column where the widget is + self.container.grid_propagate(0) + self.container.pack_propagate(0) + + self.container.pack() + self.btnFrame.grid() + + testBtn = Button(self.btnFrame, text="copySpelling", command=lambda: self.controller.actionPerformed("test"), height=6, width = 20, font=self.layout["font"], bg=self.layout["backgroundBtn"], fg=self.layout["fontColor"]) + testBtn.grid(row=0,column=0, padx=25,pady=25) + + freeSpellingBtn = Button(self.btnFrame, text="freeSpelling", command=lambda: self.controller.actionPerformed("freeSpelling"), height=6, width = 20, font=self.layout["font"], bg=self.layout["backgroundBtn"], fg=self.layout["fontColor"]) + freeSpellingBtn.grid(row=0, column=1, padx=25,pady=25) + + def adjustSize(self, height, width): + self.container.configure(height=height, width= width) + self.btnFrame.configure(height=(height*4)/5, width= width/2) + +class WorkingPageTaktil(Frame): + def __init__(self, parent, controller, layout): + self.layout = layout + + Frame.__init__(self, parent, height=250, width=500, bg=self.layout["background"]) + self.controller = controller + + + self.columnconfigure(0, weight=1) # Set weight to row and + self.rowconfigure(0, weight=1) # column where the widget is + + stopBtn = Button(self, text="stop", command=lambda: self.controller.actionPerformed("stop"), height=4, width = 15, font=self.layout["font"], bg=self.layout["backgroundBtn"], fg=self.layout["fontColor"]) + stopBtn.grid() + + def adjustSize(self, height, width): + pass + +class WorkingPageVisuell(Frame): + def __init__(self, parent, controller, layout): + self.layout = layout + + Frame.__init__(self, parent, height=250, width=500, bg=self.layout["background"]) + self.controller = controller + self.grid_propagate(0) + self.pack_propagate(0) + + self.windowFrame = Frame(self, height=200, width=500, bg=self.layout["background"]) + self.windowFrame.grid(column=0, row=0) + + self.buttonFrame = Frame(self, height=200, width=500, bg=self.layout["background"]) + self.buttonFrame.grid(column=0, row=1) + self.buttonFrame.columnconfigure(0, weight=1) # Set weight to row and + self.buttonFrame.rowconfigure(0, weight=1) # column where the widget is + + stopBtn = Button(self.buttonFrame, text="stop", command=lambda: self.controller.actionPerformed("stop"), height=1, width = 15, font=self.layout["font"], bg=self.layout["backgroundBtn"], fg=self.layout["fontColor"]) + stopBtn.grid() + + def adjustSize(self, height, width): + self.windowFrame.configure(height=(height*4)/5, width= width) + self.buttonFrame.configure(height=(height)/10, width= width) \ No newline at end of file diff --git a/Projekte/UIViewTKinter.pyc b/Projekte/UIViewTKinter.pyc new file mode 100644 index 0000000..ea0db31 Binary files /dev/null and b/Projekte/UIViewTKinter.pyc differ diff --git a/Projekte/gui.py b/Projekte/gui.py new file mode 100644 index 0000000..adb160f --- /dev/null +++ b/Projekte/gui.py @@ -0,0 +1,8 @@ +from UIController import * + +PATH_OV = 'meta/dist/designer-Release/openvibe-designer.sh' +PATH_FILES = 'Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/' +pathOVFile = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/p300-xdawn-train2.ov" +PATH_DEFAULT = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets" + +controller = Controller(pathOVFile= pathOVFile, path_ov= PATH_OV, path_files = PATH_FILES, path_default=PATH_DEFAULT) diff --git a/Projekte/test.py b/Projekte/test.py new file mode 100644 index 0000000..b427f67 --- /dev/null +++ b/Projekte/test.py @@ -0,0 +1,16 @@ +from subprocess import * + +name = "firefox" +positionX = 350 +positionY = 150 +width = 500 +height = 400 +windowID = Popen(["xdotool", "search", "--onlyvisible", "--name", name], stdout=PIPE).communicate()[0].strip() +Popen(["xdotool", "windowsize", windowID, str(width), str(height)], stdout=PIPE).communicate() +Popen(["xdotool", "windowmove", windowID, str(positionX), str(positionY)], stdout=PIPE).communicate() +Popen(["xdotool", "windowactivate", windowID], stdout=PIPE).communicate()[0].strip() + +#windowminimize ums ein fenster klein zu machen + + + diff --git a/Projekte/test.xml b/Projekte/test.xml new file mode 100644 index 0000000..8bdcb77 --- /dev/null +++ b/Projekte/test.xml @@ -0,0 +1,197 @@ + + 2 + OpenViBE Designer + 3.2.0 + + + + + + (0x61e10d62, 0x6a0e428c) + Signal display + (0x0055be5f, 0x087bdd12) + + + (0x5ba36127, 0x195feae1) + Data + + + (0x6f752dd0, 0x082a321e) + Stimulations + + + (0x6ab26b81, 0x0f8c02f3) + Channel Units + + + + + (0x5de046a6, 0x086340aa) + Display Mode + Scan + Scan + false + + + (0x33a30739, 0x00d5299b) + Auto vertical scale + Per channel + Per channel + false + + + (0x512a166f, 0x5c3ef83f) + Scale refresh interval (secs) + 5 + 5 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Scale + 100 + 100 + false + + + (0x512a166f, 0x5c3ef83f) + Vertical Offset + 0 + 0 + false + + + (0x512a166f, 0x5c3ef83f) + Time Scale + 10 + 10 + false + + + (0x2cdb2f0b, 0x12f231ea) + Bottom ruler + true + true + false + + + (0x2cdb2f0b, 0x12f231ea) + Left ruler + false + false + false + + + (0x2cdb2f0b, 0x12f231ea) + Multiview + false + false + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 192 + + + (0x207c9054, 0x3c841b63) + 192 + + + (0x4e7b798a, 0x183beafb) + (0x92c056a7, 0x2dc71aff) + + + (0x527ad68d, 0x16d746a0) + + + + (0xce18836a, 0x9c0eb403) + 9 + + + (0xcfad85b0, 0x7c6d841c) + 3 + + + + + (0x7f505714, 0x7bc673b8) + Sinus oscillator + (0x7e33bdb8, 0x68194a4a) + + + (0x5ba36127, 0x195feae1) + Generated signal + + + + + (0x007deef9, 0x2f3e95c6) + Channel count + 4 + 4 + false + + + (0x007deef9, 0x2f3e95c6) + Sampling frequency + 512 + 512 + false + + + (0x007deef9, 0x2f3e95c6) + Generated epoch sample count + 32 + 32 + false + + + + + (0x1fa7a38f, 0x54edbe0b) + 96 + + + (0x207c9054, 0x3c841b63) + 176 + + + (0x4e7b798a, 0x183beafb) + (0x0b214ed8, 0x1f9ad83a) + + + (0xc80ce8af, 0xf699f813) + 1 + + + (0xce18836a, 0x9c0eb403) + 3 + + + + + + + (0x04cb0167, 0x475b0142) + + (0x7f505714, 0x7bc673b8) + 0 + + + (0x61e10d62, 0x6a0e428c) + 0 + + + + + + + (0x6bdb29a7, 0x1d63454e) + (0x3bcce5d2, 0x43f2d968) + [{"boxIdentifier":"(0x61e10d62, 0x6a0e428c)","childCount":0,"identifier":"(0x3081eefd, 0x5a9a555f)","parentIdentifier":"(0xffffffff, 0xffffffff)","type":3},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"height":320,"identifier":"(0x64994542, 0x2e09c0d1)","name":"Default window","parentIdentifier":"(0xffffffff, 0xffffffff)","type":1,"width":480},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x79b8b5cd, 0x317a5aca)","index":0,"name":"Default tab","parentIdentifier":"(0x64994542, 0x2e09c0d1)","type":2},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":0,"identifier":"(0x069ba52a, 0x381ca5c9)","index":0,"name":"Empty","parentIdentifier":"(0x79b8b5cd, 0x317a5aca)","type":0}] + + + \ No newline at end of file diff --git a/UIController.pyc b/UIController.pyc index 897d65c..bf95815 100644 Binary files a/UIController.pyc and b/UIController.pyc differ diff --git a/UIModellVisuell.py b/UIModellVisuell.py index 3111b0f..bbb4127 100644 --- a/UIModellVisuell.py +++ b/UIModellVisuell.py @@ -79,9 +79,8 @@ class ModellVisuell(Modell): break elif(z != -1): print("Initiation finisched") - time.sleep(1) + time.sleep(2) self.positionWindow("p300") - self.minimizeWindow("stimulator") if not self.aktiv: print("stop") break @@ -199,9 +198,8 @@ class ModellVisuell(Modell): break elif(z != -1): print("Initiation finisched") - time.sleep(1) + time.sleep(2) self.positionWindow("p300") - self.minimizeWindow("stimulator") if not self.aktiv: print("stop") break diff --git a/UIModellVisuell.pyc b/UIModellVisuell.pyc index d34f42c..33dc2c5 100644 Binary files a/UIModellVisuell.pyc and b/UIModellVisuell.pyc differ diff --git a/dll.cpp b/dll.cpp index 77c5974..5af41ee 100644 --- a/dll.cpp +++ b/dll.cpp @@ -9,30 +9,33 @@ extern "C"{ string PATH_OV = "meta/dist/Release/openvibe-designer.sh"; string PATH_AquisitionServer = "meta/dist/Release/openvibe-acquisition-server.sh"; - string fileXDawnTraining = "p300-visual-2-train-xDAWN.xml"; - string fileClassifierTraining = "p300-visual-3-train-classifier.xml"; + //visuell //------------------------------------------------------------------------------------------------------------------------------------- - string PATH_FILES_Visual = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/"; - string pathOVFile_visuell = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/p300-xdawn-train2.ov"; - string pathClassifierCFG_visuell = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-classifier.cfg"; - string pathSpatialCFG_visuell = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-spatial-filter.cfg"; - string PATH_DEFAULT_visuell = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets"; + string PATH_FILES_Visual = "Projekte/OpenVibe_THN-p300-bci-main/p300-visual/"; + string pathOVFile_visuell = "Projekte/OpenVibe_THN-p300-bci-main/p300-visual/signals/p300-xdawn-train.ov"; + string pathClassifierCFG_visuell = "Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-classifier.cfg"; + string pathSpatialCFG_visuell = "Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-filter.cfg"; + string PATH_DEFAULT_visuell = "Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets"; string fileCopySpellingVisuell = "p300-visual-1-acquisition.xml"; string filefreeSpellingVisuell = "p300-visual-4-online.xml"; + string fileXDawnTrainingVisuell = "p300-visual-2-train-xDAWN.xml"; + string fileClassifierTrainingVisuell = "p300-visual-3-train-classifier.xml"; //taktil //------------------------------------------------------------------------------------------------------------------------------------ - string fileCopySpellingTaktil = "p300-visual-1-acquisition.xml"; - string filefreeSpellingTaktil = "p300-visual-4-online.xml"; + string fileCopySpellingTaktil = "p300-tactile-1-acquisition.xml"; + string filefreeSpellingTaktil = "p300-tactile-4-online.xml"; + string fileXDawnTrainingTaktil = "p300-tactile-2-train-xDAWN.xml"; + string fileClassifierTrainingTaktil = "p300-tactile-3-train-classifier.xml"; - string PATH_FILES_taktil = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/"; - string pathOVFile_taktil = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/signals/p300-xdawn-train2.ov"; - string pathClassifierCFG_taktil = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-classifier.cfg"; - string pathSpatialCFG_taktil = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/cfg/p300-spatial-filter.cfg"; - string PATH_DEFAULT_taktil = "Projekte/OpenViBE_visual_BCI-master/openvibe_visual_bci/datasets"; + string PATH_FILES_taktil = "Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/"; + string pathOVFile_taktil = "Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/signals/p300-xdawn-train.ov"; + string pathClassifierCFG_taktil = "Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-classifier.cfg"; + string pathSpatialCFG_taktil = "Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/cfg/p300-spatial-filter.cfg"; + string PATH_DEFAULT_taktil = "Projekte/OpenVibe_THN-p300-bci-main/p300-tactile/datasets"; //Befehle //------------------------------------------------------------------------------------------------------------------------------------- @@ -93,7 +96,7 @@ extern "C"{ char* getCommandXDawn_taktil() { string s = ""; - s = s.append(command).append(" ").append(PATH_OV).append(" ").append( play).append(" ").append(PATH_FILES_taktil).append(fileXDawnTraining).append(" ").append(nogui); + s = s.append(command).append(" ").append(PATH_OV).append(" ").append( play).append(" ").append(PATH_FILES_taktil).append(fileXDawnTrainingTaktil).append(" ").append(nogui); char char_array[s.length()+1]; strcpy(char_array, s.c_str()); char* s_convert = char_array; @@ -103,7 +106,7 @@ extern "C"{ char* getCommandXDawn_visuell() { string s = ""; - s = s.append(command).append(" ").append(PATH_OV).append(" ").append( play).append(" ").append(PATH_FILES_Visual).append(fileXDawnTraining).append(" ").append(nogui); + s = s.append(command).append(" ").append(PATH_OV).append(" ").append( play).append(" ").append(PATH_FILES_Visual).append(fileXDawnTrainingVisuell).append(" ").append(nogui); char char_array[s.length()+1]; strcpy(char_array, s.c_str()); char* s_convert = char_array; @@ -113,7 +116,7 @@ extern "C"{ char* getCommandClassifier_visuell() { string s = ""; - s = s.append(command).append(" ").append(PATH_OV).append(" ").append( play).append(" ").append(PATH_FILES_Visual).append(fileClassifierTraining).append(" ").append(nogui); + s = s.append(command).append(" ").append(PATH_OV).append(" ").append( play).append(" ").append(PATH_FILES_Visual).append(fileClassifierTrainingVisuell).append(" ").append(nogui); char char_array[s.length()+1]; strcpy(char_array, s.c_str()); char* s_convert = char_array; @@ -123,7 +126,7 @@ extern "C"{ char* getCommandClassifier_taktil() { string s = ""; - s = s.append(command).append(" ").append(PATH_OV).append(" ").append( play).append(" ").append(PATH_FILES_taktil).append(fileClassifierTraining).append(" ").append(nogui); + s = s.append(command).append(" ").append(PATH_OV).append(" ").append( play).append(" ").append(PATH_FILES_taktil).append(fileClassifierTrainingTaktil).append(" ").append(nogui); char char_array[s.length()+1]; strcpy(char_array, s.c_str()); char* s_convert = char_array; diff --git a/dll.so b/dll.so index d9b04e7..5028c9e 100755 Binary files a/dll.so and b/dll.so differ diff --git a/gui b/gui index 7bc4681..813d194 100755 Binary files a/gui and b/gui differ diff --git a/log.txt b/log.txt index e69de29..878b4ed 100644 --- a/log.txt +++ b/log.txt @@ -0,0 +1,309 @@ +start thread +start Aquisitionserver +10920 (process ID) old priority 0, new priority 19 +[ INF ] Created kernel loader, trying to load kernel module +[ INF ] Kernel module loaded, trying to get kernel descriptor +[ INF ] Got kernel descriptor, trying to create kernel +[ INF ] Adding kernel configuration file [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/kernel/openvibe.conf] +[ INF ] Adding plugins from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-*-stream-codecs*.so] +[ INF ] Added 20 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-stream-codecs.so] +[ INF ] Loading plugin: ExternalStimulations (deprecated) +[ INF ] Loading plugin: TCP Tagging +[ INF ] Loading plugin: LSL Output +[ INF ] Loading plugin: Fiddler +calls positionWindow +52428803 +[ INF ] Connecting to device [[ INF ] Connection succeeded ! +[ INF ] Starting the acquisition... +[ INF ] Now acquiring... +52428803 +Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo +Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo +start thread +start copySpelling +10945 (process ID) old priority 0, new priority 19 +[ INF ] Created kernel loader, trying to load kernel module +[ INF ] Kernel module loaded, trying to get kernel descriptor +[ INF ] Got kernel descriptor, trying to create kernel +[ INF ] Adding kernel configuration file [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/kernel/openvibe.conf] +[ INF ] Adding plugins from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-*.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-acquisition.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-artifact.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-classification.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-file-io.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-misc.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-network-io.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-pybox.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-python3.so] +[ INF ] Added 15 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-signal-processing.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-data-generation.so] +[ INF ] Added 17 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-advanced-visualization.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-examples.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-simple-visualization.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-dll-bridge.so] +[ INF ] Added 6 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-evaluation.so] +[ INF ] Added 5 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-examples.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-features-selection.so] +[ INF ] Added 8 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-file-io.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-games.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-network-io.so] +[ INF ] Added 7 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-riemannian.so] +[ INF ] Added 10 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-classification.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-data-generation.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-feature-extraction.so] +[ INF ] Added 11 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-file-io.so] +[ INF ] Added 25 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-signal-processing.so] +[ INF ] Added 6 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-stimulation.so] +[ INF ] Added 20 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-stream-codecs.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-streaming.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-tools.so] +[ INF ] Added 18 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-signal-processing.so] +[ INF ] Added 10 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-simple-visualization.so] +[ INF ] Added 9 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-stimulation.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-streaming.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-tests.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-tools.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-vrpn.so] +[ INF ] Adding metaboxes from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/metaboxes/;/home/ubuntu/.config/OpenVIBE-3.2.0/metaboxes/] +[ INF ] Added 3 metaboxes from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/metaboxes/] +[ INF ] Added 0 metaboxes from [/home/ubuntu/.config/OpenVIBE-3.2.0/metaboxes/] +[ INF ] Opening and playing scenario [Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-1-acquisition.xml] +Connecting to Acquisition Server's TCP Tagging [localhost , port 15361] +[ INF ] Switch --no-gui is enabled but no play operation was requested. Designer will exit automatically. +[ INF ] Initialization took 1220 ms +Initiation finisched +[ INF ] Received new connection... +calls positionWindow +56623116 +no window + +[WARNING] At time 20.000 sec <Box algorithm::(0x0000470b, 0x00001b1d) aka Speller Stimulator> Input 1 does not exist +[ INF ] Closed connection... +[ INF ] Application terminated, releasing allocated objects +Training finished +Stop aus Modell +stop thread +Parent start killing +0 +killed openvibe-designer +start thread +start training Xdawn +10994 (process ID) old priority 0, new priority 19 +[ INF ] Created kernel loader, trying to load kernel module +[ INF ] Kernel module loaded, trying to get kernel descriptor +[ INF ] Got kernel descriptor, trying to create kernel +[ INF ] Adding kernel configuration file [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/kernel/openvibe.conf] +[ INF ] Adding plugins from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-*.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-acquisition.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-artifact.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-classification.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-file-io.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-misc.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-network-io.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-pybox.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-python3.so] +[ INF ] Added 15 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-signal-processing.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-data-generation.so] +[ INF ] Added 17 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-advanced-visualization.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-examples.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-simple-visualization.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-dll-bridge.so] +[ INF ] Added 6 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-evaluation.so] +[ INF ] Added 5 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-examples.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-features-selection.so] +[ INF ] Added 8 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-file-io.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-games.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-network-io.so] +[ INF ] Added 7 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-riemannian.so] +[ INF ] Added 10 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-classification.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-data-generation.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-feature-extraction.so] +[ INF ] Added 11 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-file-io.so] +[ INF ] Added 25 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-signal-processing.so] +[ INF ] Added 6 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-stimulation.so] +[ INF ] Added 20 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-stream-codecs.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-streaming.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-tools.so] +[ INF ] Added 18 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-signal-processing.so] +[ INF ] Added 10 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-simple-visualization.so] +[ INF ] Added 9 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-stimulation.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-streaming.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-tests.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-tools.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-vrpn.so] +[ INF ] Adding metaboxes from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/metaboxes/;/home/ubuntu/.config/OpenVIBE-3.2.0/metaboxes/] +[ INF ] Added 3 metaboxes from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/metaboxes/] +[ INF ] Added 0 metaboxes from [/home/ubuntu/.config/OpenVIBE-3.2.0/metaboxes/] +[ INF ] Opening and playing scenario [Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-2-train-xDAWN.xml] +[ INF ] Switch --no-gui is enabled but no play operation was requested. Designer will exit automatically. +[ INF ] Initialization took 980 ms +[ INF ] At time 205.688 sec <Box algorithm::(0x00001db8, 0x00001848) aka xDAWN Trainer> Received train stimulation... +[ INF ] At time 205.688 sec <Box algorithm::(0x00001db8, 0x00001848) aka xDAWN Trainer> Training finished and saved to [Projekte/OpenVibe_THN-p300-bci-main/p300-visual/cfg/p300-spatial-filter.cfg]! +Training finished +Stop aus Modell +stop thread +Parent start killing +11000 +killed openvibe-designer +start thread +start training Classifier +11081 (process ID) old priority 0, new priority 19 +[ INF ] Created kernel loader, trying to load kernel module +[ INF ] Kernel module loaded, trying to get kernel descriptor +[ INF ] Got kernel descriptor, trying to create kernel +[ INF ] Adding kernel configuration file [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/kernel/openvibe.conf] +[ INF ] Adding plugins from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-*.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-acquisition.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-artifact.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-classification.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-file-io.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-misc.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-network-io.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-pybox.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-python3.so] +[ INF ] Added 15 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-signal-processing.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-data-generation.so] +[ INF ] Added 17 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-advanced-visualization.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-examples.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-simple-visualization.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-dll-bridge.so] +[ INF ] Added 6 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-evaluation.so] +[ INF ] Added 5 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-examples.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-features-selection.so] +[ INF ] Added 8 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-file-io.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-games.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-network-io.so] +[ INF ] Added 7 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-riemannian.so] +[ INF ] Added 10 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-classification.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-data-generation.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-feature-extraction.so] +[ INF ] Added 11 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-file-io.so] +[ INF ] Added 25 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-signal-processing.so] +[ INF ] Added 6 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-stimulation.so] +[ INF ] Added 20 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-stream-codecs.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-streaming.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-tools.so] +[ INF ] Added 18 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-signal-processing.so] +[ INF ] Added 10 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-simple-visualization.so] +[ INF ] Added 9 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-stimulation.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-streaming.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-tests.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-tools.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-vrpn.so] +[ INF ] Adding metaboxes from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/metaboxes/;/home/ubuntu/.config/OpenVIBE-3.2.0/metaboxes/] +[ INF ] Added 3 metaboxes from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/metaboxes/] +[ INF ] Added 0 metaboxes from [/home/ubuntu/.config/OpenVIBE-3.2.0/metaboxes/] +[ INF ] Opening and playing scenario [Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-3-train-classifier.xml] +[ INF ] Switch --no-gui is enabled but no play operation was requested. Designer will exit automatically. +[ INF ] Initialization took 940 ms +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Received train stimulation. Data dim is [432x306] +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> For information, we have 72 feature vector(s) for input 1 +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> For information, we have 360 feature vector(s) for input 2 +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> k-fold test could take quite a long time, be patient +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Finished with partition 1 / 5 (performance : 80.2326%) +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Finished with partition 2 / 5 (performance : 82.5581%) +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Finished with partition 3 / 5 (performance : 83.908%) +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Finished with partition 4 / 5 (performance : 82.5581%) +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Finished with partition 5 / 5 (performance : 83.908%) +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Cross-validation test accuracy is 82.633% (sigma = 1.34349%) +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Cls vs cls 1 2 +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Target 1: 1.4 98.6 %, 72 examples +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Target 2: 1.1 98.9 %, 360 examples +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Training set accuracy is 83.7963% (optimistic) +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Cls vs cls 1 2 +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Target 1: 2.8 97.2 %, 72 examples +[ INF ] At time 205.688 sec <Box algorithm::(0x0a5a6a4a, 0x1d92a778) aka Classifier trainer> Target 2: 0.0 100.0 %, 360 examples +Training finished +Stop aus Modell +stop thread +Parent start killing +11087 +killed openvibe-designer +saveFile +Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo +Stop aus Modell +stop thread +/home/ubuntu/Desktop/BCIProjekt/Projekte/OpenVibe_THN-p300-bci-main/p300-visual/datasets/Jojo +classifier kopiert +spatialfilter kopiert +.ov kopiert +freespelling +start thread +start freeSpelling +11198 (process ID) old priority 0, new priority 19 +[ INF ] Created kernel loader, trying to load kernel module +[ INF ] Kernel module loaded, trying to get kernel descriptor +[ INF ] Got kernel descriptor, trying to create kernel +[ INF ] Adding kernel configuration file [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/kernel/openvibe.conf] +[ INF ] Adding plugins from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-*.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-acquisition.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-artifact.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-classification.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-file-io.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-misc.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-network-io.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-pybox.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-python3.so] +[ INF ] Added 15 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-contrib-signal-processing.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-data-generation.so] +[ INF ] Added 17 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-advanced-visualization.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-examples.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-designer-simple-visualization.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-dll-bridge.so] +[ INF ] Added 6 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-evaluation.so] +[ INF ] Added 5 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-examples.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-features-selection.so] +[ INF ] Added 8 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-file-io.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-games.so] +[ INF ] Added 3 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-network-io.so] +[ INF ] Added 7 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-riemannian.so] +[ INF ] Added 10 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-classification.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-data-generation.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-feature-extraction.so] +[ INF ] Added 11 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-file-io.so] +[ INF ] Added 25 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-signal-processing.so] +[ INF ] Added 6 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-stimulation.so] +[ INF ] Added 20 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-stream-codecs.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-streaming.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-sdk-tools.so] +[ INF ] Added 18 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-signal-processing.so] +[ INF ] Added 10 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-simple-visualization.so] +[ INF ] Added 9 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-stimulation.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-streaming.so] +[ INF ] Added 1 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-tests.so] +[ INF ] Added 2 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-tools.so] +[ INF ] Added 4 plugin object descriptor(s) from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/lib/libopenvibe-plugins-vrpn.so] +[ INF ] Adding metaboxes from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/metaboxes/;/home/ubuntu/.config/OpenVIBE-3.2.0/metaboxes/] +[ INF ] Added 3 metaboxes from [/home/ubuntu/Desktop/BCIProjekt/meta/dist/Release/share/openvibe/metaboxes/] +[ INF ] Added 0 metaboxes from [/home/ubuntu/.config/OpenVIBE-3.2.0/metaboxes/] +[ INF ] Opening and playing scenario [Projekte/OpenVibe_THN-p300-bci-main/p300-visual/p300-visual-4-online.xml] +Connecting to Acquisition Server's TCP Tagging [localhost , port 15361] +[ INF ] Switch --no-gui is enabled but no play operation was requested. Designer will exit automatically. +[ INF ] Initialization took 1159 ms +Initiation finisched +[ INF ] Received new connection... +calls positionWindow +56623116 +no window + +[WARNING] At time 20.000 sec <Box algorithm::(0x0000470b, 0x00001b1d) aka Speller Stimulator> Input 1 does not exist +[WARNING] Box sends inconsistent chunk dates on output [0] (current chunk dates are [98850849979,101427830356] whereas previous chunk dates were [0,0]) +[WARNING] 'Stimulations' streams should have continuously dated chunks +[WARNING] Please report to box author and attach your scenario +stop thread +Parent start killing +11204 +killed openvibe-designer + +stop +Stop aus Modell +stop thread +[ INF ] Closed connection... +closing +stop thread +stop thread +start killing AS +killed openvibe-acquisitionserver +destroy + +stop diff --git a/start.sh b/start.sh index fe791ef..58e2874 100755 --- a/start.sh +++ b/start.sh @@ -2,6 +2,6 @@ cd Desktop/BCIProjekt/ -> log,txt +> log.txt ./gui >> log.txt