コード例 #1
0
        /// <summary>
        /// Draw waveforms on ZedGraph depending on which one is selected.
        /// </summary>
        private void DrawWaveforms()
        {
            if (csvDataProcessed)
            {
                eegGraph.PlotClear(1);
                waveformColors.Clear();

                BasicDSP.Waveform waveform = emotionizer.Sampler.GetEEGWaveform(currentElectrode);
                EEGAnalyzer analyzer = new EEGAnalyzer(waveform);

                bool normalize = NormalizeEEGWaveformsCheckBox.IsChecked == true ? true : false;

                if (OriginalWaveCheckBox.IsChecked == true)
                {
                    if (normalize)
                    {
                        waveform = EEGUtils.Normalize(waveform);
                    }

                    waveformColors.Add(System.Drawing.Color.Blue);
                    eegGraph.PlotWaveform(1, ref waveform, "Original Wave");
                }

                if (AlphaWaveCheckBox.IsChecked == true)
                {
                    waveformColors.Add(System.Drawing.Color.Red);
                    BasicDSP.Waveform waveformAlpha = analyzer.FilterBand(EEGBand.ALPHA, normalize);
                    eegGraph.PlotWaveform(1, ref waveformAlpha, "Alpha");
                }

                if (BetaWaveCheckBox.IsChecked == true)
                {
                    waveformColors.Add(System.Drawing.Color.Green);
                    BasicDSP.Waveform waveformBeta = analyzer.FilterBand(EEGBand.BETA, normalize);
                    eegGraph.PlotWaveform(1, ref waveformBeta, "Beta");
                }

                if (ThetaWaveCheckBox.IsChecked == true)
                {
                    waveformColors.Add(System.Drawing.Color.DarkMagenta);
                    BasicDSP.Waveform waveformTheta = analyzer.FilterBand(EEGBand.THETA, normalize);
                    eegGraph.PlotWaveform(1, ref waveformTheta, "Theta");
                }

                if (DeltaWaveCheckBox.IsChecked == true)
                {
                    waveformColors.Add(System.Drawing.Color.Orange);
                    BasicDSP.Waveform waveformDelta = analyzer.FilterBand(EEGBand.DELTA, normalize);
                    eegGraph.PlotWaveform(1, ref waveformDelta, "Delta");
                }

                EEGZedGraphRefresh();
            }
        }
コード例 #2
0
        /// <summary>
        /// Draw spectrum on ZedGraph
        /// </summary>
        private void DrawSpectrum()
        {
            if (csvDataProcessed)
            {
                spectrumGraph.PlotClear(1);

                BasicDSP.Waveform waveform = emotionizer.Sampler.GetEEGWaveform(currentSpectrumElectrode);
                EEGAnalyzer analyzer = new EEGAnalyzer(waveform);

                int spectrumIndex = Convert.ToInt32(Convert.ToDouble(analyzer.Waveform.Count) * currentVideoPositionInPercent);

                BasicDSP.Spectrum spectrum = analyzer.GetSpectrum(spectrumIndex, currentSpectrumSize);
                spectrumGraph.PlotDbSpectrum(1, ref spectrum, "");

                SpectrumZedGraphRefresh();
            }
        }