Neuropype Version: 2019.1.2
Fixes/Changes:
- Updated visualization plot nodes (Bar, TimeSeries, TopoPlot).
- Updated sample pipelines.
- Bugfix in ROIActivation.
- Documentation links point to new location under neuropype.io/docs
Neuropype Version: 2019.1.1
Fixes/Changes:
- Fix to resolve scikit-learn package compatibility issue.
Neuropype Version: 2019.1.0
New Nodes:
- Diagnostics package:
- ChannelDiagnostics: Generates plots showing various quality metrics (streaming data)
- CorrelationMetric: Computes a channel correlation signal QA metric
- HighFrequencyNoise: Computes a high frequency noise signal QA metric
- LineNoise: Computes a line noise signal QA metric
- ElementWiseMath package:
- Discretize: Convert continuous data into discrete values using multi-level thresholding
- FileSystem: package:
- ExportCSV: Export signal data to CSV format
- Visualization package:
- MarkerStreamWindow: Display a window showing markers as they are received in realtime (for QA)
- ScrollPlot: Plot multi-channel continuous time-series data in a scrollable plot (for offline data)
- TopoPlotViewer: Plot EEG electrodes on a 2D head colored based on incoming data (i.e., a metric)
Pipelines:
- Signal Quality Assessment: Displays various plots showing realtime signal quality
Fixes/Changes:
- OverrideAxis: fixed case where running this node would change the axis order
- ExportEDF: writing > 1 marker/sec optional as not supported by all EDF import libraries
- ImportBrainvision: fixed formatting of event marker stream
- Fixed issue that caused Windows not to find python.exe in some cases
- Minor bugfixes
Other:
- Neuropype QuickLaunch: (Run Pipeline ...): support for enum and bool parameter inputs, parameter validity check, graphic makeover, etc.
Neuropype Version: 2019.0.1
- Minor bugfixes, including issue with launch on Windows under certain circumstances
Neuropype Version: 2019.0.0
New Nodes:
- Cardiac package:
- HeartRate: calculates BPM from R peaks
- HeartRateVariability: calculates HRV from R peaks
- RDetection: detect R peaks in QRS complexes in ECG time series and peaks in PPG time series and signals
- Connectivity package:
- PhaseLockingValue: calculates the phase-locking value between all pairs of channels
- FeatureExtraction package:
- FactorAnalyis: perform Factor Analysis of given data
- TensorDecomposition: decompose a tensor into a number of rank-1 tensors
- FileSystem package:
- Export nodes for JSON, MAT, YAML formats
- Import nodes for Axon, BCI2000, BrainVision, NSX, Neuralynx, NeuroExplorer, PLX, Spike2, and TDT file formats
- PathIterator: powerful iterator over a list of paths names, captures metadata, accepts wildcards, or a study manifest file
- SkipIfExists: skip file path if checked path already exists
- Formatting package:
- GetAxisMask: get data slices that meet criteria parameters and output the result as a mask packet
- ApplyAxisMask: apply axis mask created with GetAxisMask
- SeparateSignalChunks: separate signal from non-signal chunks (streams)
- Markers package:
- RemoveIntersectingMarkerSpans: remove spans of markers that intersect signal boundaries
- AddEventMarker: find trials matching a defined set of event markers and add a new marker matching one of those events
- ExportMarkers: export all markers found in data to CSV list
- RewriteMarkers: rewrite event markers according to mapping rules (supports regex)
- Neural package:
- ArtifactDetection: detect artifacts in a sliding window fashion and mark them up with NaNs
- FixSignalUnit: infer and then correct the unit of an electrophysiological signal
- RemoveOutlierTrials: remove trials with abnormally large signal values
- CreateList: create a list from a series of input values
- Passthrough: pass data through when update flag is set
- StringParse: parse a string using a pattern with placeholders in it
- SignalProcessing package:
- ApplyLinearTransformation: calculate the dot product of the data tensor with a filters tensor
- FixGaps: repair data gaps in a time series
- MedianFilter: calculate a sliding-window median over the data
- PeakFinding: find all peaks in the given data along a given axis using a continous wavelet method
- QuantileStandardization: standardize data by converting into quantiles relative to a sliding window
- RobustRectangularStandardization: robustly standardize the signal in a sliding rectangular window
- ShiftedWindows: extract overlapped windows from the given time series
- SignalWhitening: perform a whitening (sphering) transform of the signal
- UnitNormalization: normalize the data along an axis
- Spectral package:
- ContinuousWaveletTransform: calculate a spectrogram (periodogram) of the data using the Continuous Wavelet Transform (CWT)
- CurveLength: compute the curve length of the data over a given axis
- GroupedMean: group instances based on given criteria then calculate the mean (and error) for each group
- RootMeanSquare: compute the root mean square over a given axis
- TTest: calculate a t-test (1-sample or 2-sample unpaired and paired t-tests)
- TTestTwoInput: calculate a t-test from two inputs (1-sample and 2-sample unpaired and paired t-tests)
- Winsorize: winsorize the data
- TensorMath package:
- Operate: perform a mathematical operation on all data between pairs of elements along an axis
- StripSingletonAxis: strip the given singleton axis from the data
- __Diagnostics__package:
- CopyData: copy the given data
- RandomMatrix: create a packet of random data
- CountAlongAxis: count number of instances along an axis
- DiscardNaNChunks: discard chunks with NaNs
- ExtractChunkProperty: extract a given property from one of the chunks of a packet
- OverrideAxisLabel: override the label of an axis
- OverrideProperties: override a meta-data property of a chunk
- RepeatAlongAxis: repeat the data along a given axis
- StripMetadata: strip undesired meta-data from a packet
- Visualization package:
- BarPlotPG: plot EEG channels as a bar plot
Resources
- egi-gsn-hydrocell-257.locs: montage for EGI Hydrocel GSN
Major Engine Changes:
- Caching of intermediate results
- Instance axis can have any number of custom per-element fields
- graph.connect() precedence rules changed if port not given
- Graph now has high-level load/save operations
- Scripting: nodes that accept input1..N can now be given a list of data packets
- Improved workflow for writing nodes that make use of other nodes
- New migrate parameter in ports that can be used to migrate legacy values for backward compatibility
- Scripting: scripts involving nodes now support full auto-complete for node names and their arguments (this is aided by the new refresh_nodes script)
- iPython included with Neuropype to enable Jupyter notebook workflow!
Node Improvements and Bugfixes:
- Too many to list!