-
Notifications
You must be signed in to change notification settings - Fork 221
Remove artefacts based of an enveloppe #3715
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
We already have remove_artifacts.py with the US spelling of artifacts. Should probably keep the spelling unified for all artifact based stuff. (Chris is really going to hate me). |
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
self.enveloppe = RectifyRecording(recording) | ||
self.enveloppe = GaussianFilterRecording(self.enveloppe, freq_min=None, freq_max=freq_max) | ||
self.enveloppe = CommonReferenceRecording(self.enveloppe) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
self.enveloppe = RectifyRecording(recording) | |
self.enveloppe = GaussianFilterRecording(self.enveloppe, freq_min=None, freq_max=freq_max) | |
self.enveloppe = CommonReferenceRecording(self.enveloppe) | |
self.envelope = RectifyRecording(recording) | |
self.envelope = GaussianFilterRecording(self.enveloppe, freq_min=None, freq_max=freq_max) | |
self.envelope = CommonReferenceRecording(self.enveloppe) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@yger can you add some docs on the detect_onsets?
Also enveloppe
-> envelope
in english :)
Because this code has been asked by several people, I have the feeling that there might be the need for such a preprocessing Node, to remove artefacts. The idea is the following: the node creates an low-pass filtered version of the rectified signal, compute the noise levels of this new signal, and detect thresholds crossings (onsets/offsets). We are then using these detected time periods to feed a silence_periods nodes, such that periods spotted by the enveloppe will be blanked.
Do you think such a node can be useful? For people using tetrode/few channels it seems to matter quite a lot. For denser probes, this could be debatted, and especially one could think about extending the silence_periods node to work on a per_channel basis instead of across all channels. But this could be debated