-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 6c71894
Showing
25 changed files
with
963 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
# This workflows will upload a Python Package using Twine when a release is created | ||
# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries | ||
|
||
name: tests | ||
|
||
on: | ||
push: | ||
branches: | ||
- wheels | ||
release: | ||
types: | ||
- published | ||
|
||
jobs: | ||
test: | ||
name: ${{ matrix.platform }} py${{ matrix.python-version }} | ||
runs-on: ${{ matrix.platform }} | ||
strategy: | ||
matrix: | ||
platform: [ubuntu-latest, windows-latest, macos-latest] | ||
python-version: [3.9, "3.10", "3.11"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
|
||
# these libraries enable testing on Qt on linux | ||
- uses: tlambert03/setup-qt-libs@v1 | ||
|
||
# strategy borrowed from vispy for installing opengl libs on windows | ||
- name: Install Windows OpenGL | ||
if: runner.os == 'Windows' | ||
run: | | ||
git clone --depth 1 https://github.com/pyvista/gl-ci-helpers.git | ||
powershell gl-ci-helpers/appveyor/install_opengl.ps1 | ||
if (Test-Path -Path "C:\Windows\system32\opengl32.dll" -PathType Leaf) {Exit 0} else {Exit 1} | ||
# note: if you need dependencies from conda, considering using | ||
# setup-miniconda: https://github.com/conda-incubator/setup-miniconda | ||
# and | ||
# tox-conda: https://github.com/tox-dev/tox-conda | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
python -m pip install setuptools tox tox-gh-actions | ||
# this runs the platform-specific tests declared in tox.ini | ||
- name: Test with tox | ||
uses: aganders3/headless-gui@v1 | ||
with: | ||
run: python -m tox | ||
env: | ||
PLATFORM: ${{ matrix.platform }} | ||
|
||
deploy: | ||
needs: [test] | ||
runs-on: ubuntu-latest | ||
if: github.event_name == 'release' && github.event.action == 'published' # upload to pypi only on release | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.x" | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install -U setuptools setuptools_scm wheel twine build | ||
- name: Build and publish | ||
env: | ||
TWINE_USERNAME: __token__ | ||
TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }} | ||
run: | | ||
python -m build . | ||
twine upload dist/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
*/__pycache__/ | ||
*.py[cod] | ||
.idea | ||
|
||
.DS_Store | ||
.ipynb_checkpoints | ||
.pytest_cache | ||
*.egg-info/ | ||
build/ | ||
dist/ | ||
htmlcov/ | ||
.coverage* | ||
|
||
*.npz | ||
*.tif* | ||
*.hdf5 | ||
*.h5 | ||
*.zip | ||
*.so | ||
*.tfevents.* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
|
||
|
||
<!-- This file is designed to provide you with a starting template for documenting | ||
the functionality of your plugin. Its content will be rendered on your plugin's | ||
napari hub page. | ||
The sections below are given as a guide for the flow of information only, and | ||
are in no way prescriptive. You should feel free to merge, remove, add and | ||
rename sections at will to make this document work best for your plugin. | ||
# Description | ||
This should be a detailed description of the context of your plugin and its | ||
intended purpose. | ||
If you have videos or screenshots of your plugin in action, you should include them | ||
here as well, to make them front and center for new users. | ||
You should use absolute links to these assets, so that we can easily display them | ||
on the hub. The easiest way to include a video is to use a GIF, for example hosted | ||
on imgur. You can then reference this GIF as an image. | ||
![Example GIF hosted on Imgur](https://i.imgur.com/A5phCX4.gif) | ||
Note that GIFs larger than 5MB won't be rendered by GitHub - we will however, | ||
render them on the napari hub. | ||
The other alternative, if you prefer to keep a video, is to use GitHub's video | ||
embedding feature. | ||
1. Push your `DESCRIPTION.md` to GitHub on your repository (this can also be done | ||
as part of a Pull Request) | ||
2. Edit `.napari/DESCRIPTION.md` **on GitHub**. | ||
3. Drag and drop your video into its desired location. It will be uploaded and | ||
hosted on GitHub for you, but will not be placed in your repository. | ||
4. We will take the resolved link to the video and render it on the hub. | ||
Here is an example of an mp4 video embedded this way. | ||
https://user-images.githubusercontent.com/17995243/120088305-6c093380-c132-11eb-822d-620e81eb5f0e.mp4 | ||
# Intended Audience & Supported Data | ||
This section should describe the target audience for this plugin (any knowledge, | ||
skills and experience required), as well as a description of the types of data | ||
supported by this plugin. | ||
Try to make the data description as explicit as possible, so that users know the | ||
format your plugin expects. This applies both to reader plugins reading file formats | ||
and to function/dock widget plugins accepting layers and/or layer data. | ||
For example, if you know your plugin only works with 3D integer data in "tyx" order, | ||
make sure to mention this. | ||
If you know of researchers, groups or labs using your plugin, or if it has been cited | ||
anywhere, feel free to also include this information here. | ||
# Quickstart | ||
This section should go through step-by-step examples of how your plugin should be used. | ||
Where your plugin provides multiple dock widgets or functions, you should split these | ||
out into separate subsections for easy browsing. Include screenshots and videos | ||
wherever possible to elucidate your descriptions. | ||
Ideally, this section should start with minimal examples for those who just want a | ||
quick overview of the plugin's functionality, but you should definitely link out to | ||
more complex and in-depth tutorials highlighting any intricacies of your plugin, and | ||
more detailed documentation if you have it. | ||
# Additional Install Steps (uncommon) | ||
We will be providing installation instructions on the hub, which will be sufficient | ||
for the majority of plugins. They will include instructions to pip install, and | ||
to install via napari itself. | ||
Most plugins can be installed out-of-the-box by just specifying the package requirements | ||
over in `setup.cfg`. However, if your plugin has any more complex dependencies, or | ||
requires any additional preparation before (or after) installation, you should add | ||
this information here. | ||
# Getting Help | ||
This section should point users to your preferred support tools, whether this be raising | ||
an issue on GitHub, asking a question on image.sc, or using some other method of contact. | ||
If you distinguish between usage support and bug/feature support, you should state that | ||
here. | ||
# How to Cite | ||
Many plugins may be used in the course of published (or publishable) research, as well as | ||
during conference talks and other public facing events. If you'd like to be cited in | ||
a particular format, or have a DOI you'd like used, you should provide that information here. --> | ||
|
||
The developer has not yet provided a napari-hub specific description. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
repos: | ||
- repo: https://github.com/astral-sh/ruff-pre-commit | ||
rev: v0.0.254 | ||
hooks: | ||
- id: ruff | ||
args: [--fix, --fix-only, --exit-non-zero-on-fix] | ||
- repo: https://github.com/pre-commit/pre-commit-hooks | ||
rev: v4.3.0 | ||
hooks: | ||
- id: check-yaml | ||
- id: end-of-file-fixer | ||
- id: trailing-whitespace | ||
- repo: https://github.com/psf/black | ||
rev: 22.6.0 | ||
hooks: | ||
- id: black | ||
- repo: https://github.com/mwouts/jupytext | ||
rev: v1.14.0 | ||
hooks: | ||
- id: jupytext | ||
args: [--from, ipynb, --to, "py:percent"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
|
||
Copyright (c) 2023, Albert Dominguez Mantes, Martin Weigert | ||
All rights reserved. | ||
|
||
Redistribution and use in source and binary forms, with or without | ||
modification, are permitted provided that the following conditions are met: | ||
|
||
* Redistributions of source code must retain the above copyright notice, this | ||
list of conditions and the following disclaimer. | ||
|
||
* Redistributions in binary form must reproduce the above copyright notice, | ||
this list of conditions and the following disclaimer in the documentation | ||
and/or other materials provided with the distribution. | ||
|
||
* Neither the name of napari-spotiflow nor the names of its | ||
contributors may be used to endorse or promote products derived from | ||
this software without specific prior written permission. | ||
|
||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | ||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | ||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | ||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | ||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | ||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | ||
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
include LICENSE | ||
include README.md | ||
include requirements.txt | ||
|
||
recursive-exclude * __pycache__ | ||
recursive-exclude * *.py[co] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
[![License: BSD-3](https://img.shields.io/badge/License-BSD3-blue.svg)](https://www.gnu.org/licenses/bsd3) | ||
[![PyPI](https://img.shields.io/pypi/v/napari-spotiflow.svg?color=green)](https://pypi.org/project/napari-spotiflow) | ||
[![Python Version](https://img.shields.io/pypi/pyversions/napari-spotiflow.svg?color=green)](https://python.org) | ||
[![tests](https://github.com/weigertlab/napari-spotiflow/workflows/tests/badge.svg)](https://github.com/weigertlab/napari-spotiflow/actions) | ||
[![napari hub](https://img.shields.io/endpoint?url=https://api.napari-hub.org/shields/napari-spotiflow)](https://napari-hub.org/plugins/napari-spotiflow) | ||
|
||
![Logo](artwork/spotiflow_logo.png) | ||
--- | ||
|
||
# napari-spotiflow | ||
|
||
Napari plugin for *Spotiflow*, a deep learning-based, threshold-agnostic, and subpixel-accurate spot detection method for fluorescence microscopy. For the main repo, see [here](https://github.com/weigertlab/spotiflow). | ||
|
||
|
||
https://github.com/weigertlab/napari-spotiflow/assets/11042162/99c09826-bda7-46bc-a9a8-6e0c52b3f9f1 | ||
|
||
|
||
---------------------------------- | ||
|
||
# Usage | ||
|
||
1. Open 2d raw image (or open one of our samples eg `File > Open Sample > napari-spotiflow > HybISS`) | ||
2. Start Plugin `Plugins > napari-spotiflow` | ||
3. Select model (pretrained or custom trained) and optionally adjust other parameter | ||
4. Click `run` | ||
|
||
## Supported input formats | ||
- [x] 2D (YX or YXC) | ||
- [x] 2D+t (TYX or TYXC) | ||
|
||
## Installation | ||
|
||
Clone the repo and install it in an environment with `napari` and `spotiflow`. | ||
|
||
``` | ||
git clone [email protected]:weigertlab/napari-spotiflow.git | ||
pip install -e napari-spotiflow | ||
``` |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# Welcome to napari-spotiflow | ||
|
||
Napari plugin for Spotiflow |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
site_name: napari-spotiflow | ||
site_description: Napari plugin for Spotiflow | ||
site_author: Albert Dominguez Mantes, Martin Weigert | ||
|
||
theme: readthedocs | ||
|
||
|
||
repo_url: https://github.com/weigertlab/napari-spotiflow | ||
|
||
pages: | ||
- Home: index.md |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
__version__ = "0.0.2" | ||
|
||
_point_layer2d_default_kwargs = dict(size=8, | ||
symbol='ring', | ||
opacity=1, | ||
face_color=[1.,.5,.2], | ||
edge_color=[1.,.5,.2]) | ||
|
||
|
||
# def sample_data_2d(): | ||
# from spotiflow.data import hybiss_data_2d | ||
# | ||
# return [(hybiss_data_2d(), {"name": "HybISS data (2d)"})] |
Oops, something went wrong.