-
Notifications
You must be signed in to change notification settings - Fork 190
[ENH] microelectrode electrophysiology specification (BEP032) #1705
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: master
Are you sure you want to change the base?
Conversation
|
Also relevant if you'd like to comment. → https://docs.google.com/document/d/1oG-C8T-dWPqfVzL2W8HO3elWK8NIh2cOCPssRGv23n0/edit?disco=AAABIzHGpUU |
|
Also I forgot to link to this when I wrote it → https://docs.google.com/document/d/1oG-C8T-dWPqfVzL2W8HO3elWK8NIh2cOCPssRGv23n0/edit?disco=AAABIGPAMOw |
|
New appendix for coordinate systems: #2247 |
| ch003 ref01 HP uV 30000 HighpassFilter n/a 500 good n/a | ||
| ch004 ref01 HP uV 30000 HighpassFilter n/a 500 bad high_noise | ||
| ch005 ref02 LFP uV 1000 HighpassFilter LowpassFilter 500 good n/a | ||
| ch006 n/a SYNC V 30000 n/a n/a 1 good n/a |
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.
we might see to add description for this value with the .json file to state where the SYNC comes from etc.
fixing a typo
src/modality-specific-files/microelectrode-electrophysiology.md
Outdated
Show resolved
Hide resolved
|
|
||
| Microelectrode electrophysiology supports two approaches for specifying electrode positions: | ||
|
|
||
| ### Default: Probe-Relative Coordinates |
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.
| ### Default: Probe-Relative Coordinates | |
| ### Required: Probe-Relative Coordinates |
src/modality-specific-files/microelectrode-electrophysiology.md
Outdated
Show resolved
Hide resolved
| ## Terminology: Modality and Datatypes | ||
|
|
||
| The Microelectrode Electrophysiology modality encompasses recordings made with micrometer-scale electrodes, | ||
| distinguishing it from related BIDS modalities (EEG, MEG, iEEG) that use larger electrodes. |
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.
please drop MEG from "EEG, MEG, iEEG", as that is too different. I suggest to order it as "(iEEG, EEG)" to sort from most related to less related.
|
|
||
| - **`icephys`** (Intracellular Electrophysiology): Electrodes penetrate or attach to cell membranes to directly measure | ||
| intracellular potentials (mV) and cellular dynamics. | ||
| Examples: cell-attached patch clamp, whole-cell patch clamp, sharp electrode recordings. |
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.
sharp electrodes can also be used to record extracellular, especially when the exposed tip is large enough (1 um or larger). See for example https://www.thomasrecording.com/np-electrodes-fm-single-electrodes.
I find this "sharp electrode recordings" example therefore more confusing than clarifying, and therefore suggest to drop it.
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.
how about "intracellular sharp electrode recordings"? The idea was to indicate that patch-clamp is not the only option for intracellular. Also 1 um is not very sharp, patch electrodes are typically 1-2 um.
This reverts commit d1835cf . spotted by seeing na na in the table. We have height and depth so makes sense to keep width, and now we get ❯ git grep __probes -- src/schema/objects/columns.yaml src/schema/objects/columns.yaml:AP__probes: src/schema/objects/columns.yaml:depth__probes: src/schema/objects/columns.yaml:DV__probes: src/schema/objects/columns.yaml:height__probes: src/schema/objects/columns.yaml:hemisphere__probes: src/schema/objects/columns.yaml:manufacturer__probes: src/schema/objects/columns.yaml:material__probes: src/schema/objects/columns.yaml: name: material__probes src/schema/objects/columns.yaml:ML__probes: src/schema/objects/columns.yaml:type__probes: src/schema/objects/columns.yaml:width__probes: Ideally the rendered should have failed and not just added na's row but that shouldn't be fixed here...
Reorganize coordinate system documentation in microelectrode electrophysiology spec by removing standalone "Coordinate Systems for Electrode Positions" section and consolidating the information into a new "Electrode Position Coordinates" subsection under the electrodes description. This improves document flow and places coordinate guidance closer to the relevant table definition.
Add new appendix documenting stereotaxic coordinate conventions for intracranial probe placement during surgery, including: - Anatomical reference points (Bregma and Lambda) - AP/ML/DV coordinate system conventions - Angle definitions for probe orientation (AP, ML, rotation) - Reference to BrainSTEM documentation source
Add new section defining restricted keywords for MicroephysCoordinateSystem field in coordsystem.json for icephys and ecephys datasets. Includes: - Pixels (2D electrode localization) - Stereotaxic (generic animal neuroscience coordinates) - AllenCCFv3 (mouse brain reference space) - WaxholmSpace (rat brain coordinate system) - WistarRatAtlas
for more information, see https://pre-commit.ci
Bep032 coord enum
Document the stream_id column format for linking channels to their corresponding data streams. Include specifications for: - NWB files with internal HDF5 paths to ElectricalSeries objects - NIX files referencing data arrays following NIX/Neo organization - Handling multiple data streams with comma-separated lists - Cross-file references using filename:path syntax
docs(ephys): add stream_id column documentation for channels.tsv
Replaces #1352 submitted from a fork outside of bids-specification.
Add specification for microelectrode electrohpysiology datasets based on the BEP032 proposal. old google doc
Note
We meet regularly and everyone is welcome
Next meeting: insert date on URL to join
Communication channel: https://framalistes.org/sympa/info/neuroscience-data-structure
Tip
bids-validatorwith a custom schema. (attn @TheChymera)DONEs
TODOs
Please ensure your name is credited on our Contributors appendix.
To add your name, please edit our Contributors wiki and add your name with the type of contribution.
For assistance, please tag @bids-standard/maintainers.
After opening the PR, our continuous integration services will automatically check your contribution for formatting errors and render a preview of the BIDS specification with your changes.
To see the checks and preview, scroll down and click on the
show all checkslink.From the list, select the
Detailslink of theci/circleci: build_docs artifactcheck to see the preview of the BIDS specification.Add instructions here on how to run new
bids-validatorusing schema in this PRc557d1fto1c30c6elegacy-validator#1798 is the first one trying it on whitelisted set of packages, and I think we should create a helper action for that : https://github.com/bids-standard/bids-validator/issues/1931bids-validator changes needed
Populate schema with specifications from the google doc ...
schema/rules/checkswith checks specific to this BEP032 (from experiences with data conversion eg by @CodyCBakerPhD on @mvmdmlab data)<extension>and get a table of extensions (nwb and nix) and check if schema encodes that only one is allowedFurther markdown description: @Peyman-N is working on a PR
Define enums of coord spaces to be added -- some image based, some ad-hoc
Add and reference here PR on
bids-examplesadding sample dandisets : Draft examples for BEP032 on animal electrophysiology bids-examples#430 (@robertoostenveld )Add CI action (likely github) to run
bids-validatoron sample datasets and this modified schema (@yarikoptic)Decide on "contours" specification
typecolumn for electrodes[ie]cephys/sectionShare/use examples of real datasets
Issues this PR would likely to address
Issues to see being addressed while working on this BEP (likely to move above) or not (moved below):
Other issues which relate but not in scope here and provided for reference/backreference
Spreadsheet with correspondence to ProbeInterface: https://docs.google.com/spreadsheets/d/1O0bZzD-n4MjR68r1GlcH3d2JLXBLAU1PfsDceD3IPeo/edit?usp=sharing