Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: 'bug'
assignees: ''

---

## Bug Report

### Description

A clear and concise description of what is the overall operation that is intended to be
performed that resulted in an error.

### Reproducibility
Include:
- OS (WIN | MACOS | Linux)
- DataJoint Element Version
- MySQL Version
- MySQL Deployment Strategy (local-native | local-docker | remote)
- Minimum number of steps to reliably reproduce the issue
- Complete error stack as a result of evaluating the above steps

### Expected Behavior
A clear and concise description of what you expected to happen.

### Screenshots
If applicable, add screenshots to help explain your problem.

### Additional Research and Context
Add any additional research or context that was conducted in creating this report.

For example:
- Related GitHub issues and PR's either within this repository or in other relevant
repositories.
- Specific links to specific lines or a focus within source code.
- Relevant summary of Maintainers development meetings, milestones, projects, etc.
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: DataJoint Contribution Guideline
url: https://docs.datajoint.org/python/community/02-Contribute.html
about: Please make sure to review the DataJoint Contribution Guidelines
57 changes: 57 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---
name: Feature request
about: Suggest an idea for a new feature
title: ''
labels: 'enhancement'
assignees: ''

---

## Feature Request

### Problem

A clear and concise description how this idea has manifested and the context. Elaborate
on the need for this feature and/or what could be improved. Ex. I'm always frustrated
when [...]

### Requirements

A clear and concise description of the requirements to satisfy the new feature. Detail
what you expect from a successful implementation of the feature. Ex. When using this
feature, it should [...]

### Justification

Provide the key benefits in making this a supported feature. Ex. Adding support for this
feature would ensure [...]

### Alternative Considerations

Do you currently have a work-around for this? Provide any alternative solutions or
features you've considered.

### Related Errors
Add any errors as a direct result of not exposing this feature.

Please include steps to reproduce provided errors as follows:
- OS (WIN | MACOS | Linux)
- DataJoint Element Version
- MySQL Version
- MySQL Deployment Strategy (local-native | local-docker | remote)
- Minimum number of steps to reliably reproduce the issue
- Complete error stack as a result of evaluating the above steps

### Screenshots
If applicable, add screenshots to help explain your feature.

### Additional Research and Context
Add any additional research or context that was conducted in creating this feature request.

For example:
- Related GitHub issues and PR's either within this repository or in other relevant
repositories.
- Specific links to specific lines or a focus within source code.
- Relevant summary of Maintainers development meetings, milestones, projects, etc.
- Any additional supplemental web references or links that would further justify this
feature request.
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,17 @@
Observes [Semantic Versioning](https://semver.org/spec/v2.0.0.html) standard and [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) convention.

## [0.3.0] - 2022-10-7

+ Add - Function `prairieviewreader` to parse metadata from Bruker PrarieView acquisition system


## 0.2.1 - 2022-07-13

+ Add - Adopt `black` formatting
+ Add - Code of Conduct

## 0.2.0 - 2022-07-06

+ First release of `element-interface`.
+ Bugfix - Fix for `tifffile` import.
+ Add - Function `run_caiman` to trigger CNMF algorithm.
Expand All @@ -19,9 +23,11 @@ Observes [Semantic Versioning](https://semver.org/spec/v2.0.0.html) standard and
+ Update - Remove `extras_require` feature to allow this package to be published to PyPI.

## 0.1.0a1 - 2022-01-12

+ Change - Rename the package `element-data-loader` to `element-interface`.

## 0.1.0a0 - 2021-06-21

+ Add - Readers for: `ScanImage`, `Suite2p`, `CaImAn`.

[0.3.0]: https://github.com/datajoint/element-interface/releases/tag/0.3.0
35 changes: 16 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,27 +60,24 @@ repositories for example usage of `element-interface`.
loaded_dataset = suite2p_loader.Suite2p(output_dir)
```


+ Suite2p wrapper functions for triggering analysis

Each step of Suite2p (registration, segmentation and deconvolution)
can be run independently for single plane tiff files. The functions in this
package will facilitate this process. Requirements include the [ops dictionary](
https://suite2p.readthedocs.io/en/latest/settings.html) and db dictionary.
These wrapper functions were developed primarily because `run_s2p` cannot
individually run deconvolution using the `spikedetect` flag
([Suite2p Issue #718](https://github.com/MouseLand/suite2p/issues/718)).
+ Functions to independently run Suite2p's motion correction, segmentation, and deconvolution steps. These functions currently work for single plane tiff files. If running all Suite2p pre-processing steps concurrently, these functions are not required and one can run `suite2p.run_s2p()`.

```python
from element_data_loader.suite2p_trigger import motion_correction_suite2p,
segmentation_suite2p, deconvolution_suite2p
from suite2p import default_ops
+ These wrapper functions were developed primarily because `run_s2p` cannot individually run deconvolution using the `spikedetect` flag ([Suite2p Issue #718](https://github.com/MouseLand/suite2p/issues/718)).

ops = dict(default_ops(), nonrigid=False, two_step_registration=False)
```
Details of db dictionary can be found [here](https://github.com/MouseLand/suite2p/blob/4b6c3a95b53e5581dbab1feb26d67878db866068/jupyter/run_pipeline_tiffs_or_batch.ipynb)
+ Requirements
+ [ops dictionary](https://suite2p.readthedocs.io/en/latest/settings.html)
+ [db dictionary](https://github.com/MouseLand/suite2p/blob/4b6c3a95b53e5581dbab1feb26d67878db866068/jupyter/run_pipeline_tiffs_or_batch.ipynb)

+ Note that the ops dictionary returned from the `motion_correction_suite2p` and `segmentation_suite2p` functions is only a subset of the keys generated with the `suite2p.default_ops()` function.

```python
import element_interface
import suite2p

ops = dict(suite2p.default_ops(), nonrigid=False, two_step_registration=False)

db = {
'h5py': [], # single h5 file path
'h5py_key': 'data',
Expand All @@ -91,13 +88,13 @@ repositories for example usage of `element-interface`.
}

ops.update(do_registration=1, roidetect=False, spikedetect=False)
registration_ops = motion_registration_suite2p(ops, db)
motion_correction_ops = element_interface.suite2p_trigger.motion_correction_suite2p(ops, db)

registration_ops.update(do_registration=0, roidetect=True, spikedetect=False)
segmentation_ops = segmentation_suite2p(registration_ops, db)
motion_correction_ops.update(do_registration=0, roidetect=True, spikedetect=False)
segmentation_ops = element_interface.suite2p_trigger.segmentation_suite2p(motion_correction_ops, db)

segmentation_ops.update(do_registration=0, roidetect=False, spikedetect=True)
spikes = deconvolution_suite2p(segmentation_ops, db)
spikes = element_interface.suite2p_trigger.deconvolution_suite2p(segmentation_ops, db)
```


Expand Down
Loading