Track places where mne-denoise could remove duplicated infrastructure only after a corresponding public API/change lands in MNE-Python.
The idea inspire from #91 . With #92 landing a first phase of already public mne functions.
This is from a brainstorming with codex: TBD.
| MNE-Python change |
mne-denoise target |
Change |
Impact |
Related |
| Public/generalized GED transformer |
dss/linear.py, DSS |
Reuse MNE's existing GED infrastructure for generic decomposition, whitening/rank handling, filters/patterns and inverse transform; keep DSS biases/selection local. |
Very high |
MNE #13392, related PR #14050 |
| Annotations → sample spans/mask |
asr/_windowing.py |
Public API around _annotations_starts_stops() so MNE owns orig_time, cropping, first_samp, clipping and annotation→sample conversion. |
High |
New MNE issue needed |
| Array covariance API |
_covariance.py, DSS |
Generalize useful parts of _regularized_covariance() if needed by public GED; keep weighted/chunked mne-denoise-specific modes local. |
Medium–High |
Prefer discussing with GED work |
| Generic sensor pre-whitening |
dss/_whitening.py |
Factor reusable pre-whitening from ICA rather than exposing ICA private helpers directly. |
Medium |
New MNE issue if generally useful |
Public/generalized _COLA |
_blending.py |
Investigate whether MNE overlap-add infrastructure can support mne-denoise's segmented/owned-window semantics. |
Medium |
New MNE issue if equivalent |
Public/generalized _Interp2 |
asr/_reconstruction.py |
Investigate reuse for ASR raised-cosine reconstruction-matrix transitions. |
Low–Medium |
New MNE issue if exact semantics match |
Priority
Do not expose private MNE helpers directly just to reduce local LOC. The goal is to establish the right public abstraction in MNE first, then simplify mne-denoise. Not every function needs to be reused.
Track places where mne-denoise could remove duplicated infrastructure only after a corresponding public API/change lands in MNE-Python.
The idea inspire from #91 . With #92 landing a first phase of already public mne functions.
This is from a brainstorming with codex: TBD.
dss/linear.py,DSSasr/_windowing.py_annotations_starts_stops()so MNE ownsorig_time, cropping,first_samp, clipping and annotation→sample conversion._covariance.py, DSS_regularized_covariance()if needed by public GED; keep weighted/chunked mne-denoise-specific modes local.dss/_whitening.py_COLA_blending.py_Interp2asr/_reconstruction.pyPriority
_COLA, and_Interp2only if they are generally useful upstream.mne.decoding.SpatialFilterfor vizDo not expose private MNE helpers directly just to reduce local LOC. The goal is to establish the right public abstraction in MNE first, then simplify mne-denoise. Not every function needs to be reused.