You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: paper.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,20 +20,20 @@ bibliography: paper.bib
20
20
21
21
# Summary
22
22
23
-
`python-oephys` is an open-source Python library designed to facilitate the acquisition, processing, and analysis of high-density electrophysiology data, specifically targeting the Open Ephys ecosystem. It provides a unified interface for both offline analysis of binary recordings and real-time streaming via ZeroMQ (ZMQ). Key capabilities include modular signal processing pipelines, automated channel quality assessment (QC), and integrated machine learning models (CNN-LSTM) optimized for low-latency gesture classification.
23
+
`python-oephys` is an open-source Python library designed to facilitate the acquisition, processing, and analysis of high-density electrophysiology data, specifically targeting the Open Ephys ecosystem. It provides a unified interface for both offline analysis of binary recordings and real-time streaming via ZeroMQ [@pyzmq]. Key capabilities include modular signal processing pipelines, automated channel quality assessment (QC), and integrated machine learning models (CNN-LSTM) optimized for low-latency gesture classification.
24
24
25
25
# Statement of need
26
26
27
27
The Open Ephys GUI [@siegle2017open] is a widely used platform for neural data acquisition, but researchers often face significant friction when transitioning from raw data acquisition to real-time closed-loop control or advanced offline analysis. Existing tools often handle either file I/O or real-time streaming, but rarely both in a unified, high-performance package.
28
28
29
29
`python-oephys` satisfies this need by providing:
30
30
1.**Unified I/O**: A consistent API for both `.oebin` and `.npz` formats.
31
-
2.**Real-time Integration**: Low-latency ZMQ clients that allow Python scripts and GUI applications to react to live neural streams.
31
+
2.**Real-time Integration**: Low-latency ZeroMQ [@pyzmq] clients that allow Python scripts and GUI applications to react to live neural streams.
32
32
3.**ML-Ready Pipelines**: Pre-integrated deep learning architectures tailored for spatio-temporal neural signals, reducing the time required to build predictive models for BCIs or myoelectric control.
33
33
34
34
# State of the field
35
35
36
-
The field of neural data analysis is supported by several specialized tools. The official `open-ephys-python-tools` provide basic file loading capabilities but lack high-level processing or real-time application layers. In the domain of myoelectric control, libraries like `LibEMG` offer comprehensive pipelines but are often decoupled from the specific streaming protocols used by hardware like Open Ephys.
36
+
The field of neural data analysis is supported by several specialized tools. The official `open-ephys-python-tools`[@OpenEphysPythonTools]provide basic file loading capabilities but lack high-level processing or real-time application layers. In the domain of myoelectric control, libraries like `LibEMG`[@Campbell2022] offer comprehensive pipelines but are often decoupled from the specific streaming protocols used by hardware like Open Ephys.
37
37
38
38
`python-oephys` bridges these domains by specializing in the high-density spatial configurations typical of Open Ephys hardware while providing the real-time application layer (viewers and decoders) missing from low-level I/O libraries. It leverages the scientific Python stack, including NumPy [@harris2020array], SciPy [@virtanen2020scipy], and Matplotlib [@hunter2007matplotlib], to provide robust data structures and visualizations.
39
39
@@ -43,17 +43,17 @@ The field of neural data analysis is supported by several specialized tools. The
43
43
44
44

45
45
46
-
-**Interface Layer**: Implements ZMQ and LSL clients for low-latency data streaming. The `ZMQClient` is designed to run asynchronously, ensuring that data acquisition does not block processing or UI updates.
46
+
-**Interface Layer**: Implements ZeroMQ [@pyzmq]and LSL[@LSL] clients for low-latency data streaming. The `ZMQClient` is designed to run asynchronously, ensuring that data acquisition does not block processing or UI updates.
47
47
-**Processing Layer**: Provides a suite of filters and feature extraction tools. This includes the `EMGPreprocessor` for standardized filtering and `ChannelQC` for real-time signal quality monitoring.
48
48
-**ML Layer**: Integrated with PyTorch [@paszke2019pytorch] and scikit-learn [@pedregosa2011scikit], this layer provides pre-configured models like `EMGClassifierCNNLSTM`. These models are designed to handle the variable channel counts and sampling rates common in high-density recordings.
49
-
-**Visualization Layer**: Built on PyQt5 and pyqtgraph, providing high-frame-rate real-time plots and interactive offline analysis tools.
49
+
-**Visualization Layer**: Built on PyQt5 [@PyQt5]and pyqtgraph[@pyqtgraph], providing high-frame-rate real-time plots and interactive offline analysis tools.
50
50
51
51
# Research Impact
52
52
53
53
`python-oephys` has been deployed in the Neuromechatronics Lab at Carnegie Mellon University to support research in high-density EMG-based human-computer interaction and robotic control. Its ability to provide sub-millisecond latency for feature extraction has enabled more responsive myoelectric interfaces compared to previous custom implementations.
54
54
55
55
# Acknowledgements
56
56
57
-
This work was supported by the Neuromechatronics Lab at Carnegie Mellon University.
57
+
This work was supported by the Neuromechatronics Lab at Carnegie Mellon University. We would like to express our gratitude to the Open Ephys community and the developers of the Open Ephys GUI for their foundational work and support of open-source electrophysiology tools.
0 commit comments