Skip to content
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

Migration from microDL #1

Merged
merged 307 commits into from
Jul 18, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
307 commits
Select commit Hold shift + click to select a range
e2cee9c
Gpu mem (#29)
jennyfolkesson Aug 28, 2018
963499c
Masked loss, refactoring train_script and misc changes (#28)
anithapk Aug 28, 2018
b0a3e27
Use sample set for splitting (#31)
anithapk Sep 5, 2018
7ce4978
Refactor networks (#30)
anithapk Sep 6, 2018
198f7ad
Update model_inference.py (#32)
norahsakal Sep 10, 2018
df829bf
Revise pars args in inference_script.py (#35)
norahsakal Sep 12, 2018
2f4dfd7
tests for conv_blocks (#33)
anithapk Sep 13, 2018
bad7c37
Infer on larger image (#36)
anithapk Sep 13, 2018
54ecee5
Csv refactor (#38)
jennyfolkesson Sep 20, 2018
20a8be9
Test unets (#39)
anithapk Sep 20, 2018
fb2165a
Train refactor (#40)
jennyfolkesson Oct 1, 2018
e44e82f
avoid last tile repeats (#42)
jennyfolkesson Oct 2, 2018
5fe97fa
2d data augmentation + tests for stack_2D Unet (#45)
anithapk Oct 12, 2018
b8557de
Testing (#46)
jennyfolkesson Oct 18, 2018
a625caa
Tests regression nets (#47)
anithapk Oct 19, 2018
4719110
Stack2im test (#48)
jennyfolkesson Oct 22, 2018
39373da
added arbitrary length and order (#49)
jennyfolkesson Oct 24, 2018
599ba9b
Preprocess tests (#50)
jennyfolkesson Oct 26, 2018
455d5c1
Update README.md
anithapk Oct 26, 2018
bc78a38
Augmentations (#53)
jennyfolkesson Nov 6, 2018
f6cc506
Updated readme
jennyfolkesson Nov 20, 2018
01374e8
Inference (#54)
jennyfolkesson Nov 20, 2018
916c085
Preprocess extend (#55)
jennyfolkesson Nov 21, 2018
7aca2ac
Keras contrib (#56)
jennyfolkesson Nov 22, 2018
7996c1a
Revert threading (#57)
jennyfolkesson Nov 27, 2018
fdd3614
Gpu selector (#58)
jennyfolkesson Nov 29, 2018
67a1f1c
Update README.md (#61)
norahsakal Nov 29, 2018
92aac0e
Config fix (#63)
jennyfolkesson Dec 10, 2018
ff15f64
Add pos_ids field to preprocess_script.py (#65)
smguo Dec 14, 2018
e4689e4
Multi ch stack 2d + misc (#68)
anithapk Jan 7, 2019
8ff66b9
Mp nonuni tiling (#64)
anithapk Jan 9, 2019
296331c
Powerai (#70)
jennyfolkesson Jan 11, 2019
70b459c
bug fixes (#71)
jennyfolkesson Jan 14, 2019
324c316
make sure df is assigned before reference (#72)
jennyfolkesson Jan 15, 2019
def076b
Resampling (#73)
jennyfolkesson Jan 18, 2019
aef938a
SSIM and fixes for image_inference (#76)
smguo Jan 25, 2019
f63df8a
fixes for mask generation and tiling to work with flat field correcti…
anithapk Jan 26, 2019
def1097
fix 2d inference (#78)
jennyfolkesson Jan 31, 2019
5cc2969
Mask csv (#77)
jennyfolkesson Jan 31, 2019
b2e96a6
Create readme.md
anithapk Feb 19, 2019
6ec5450
Update README.md
anithapk Feb 19, 2019
efc0775
Create readme.md
anithapk Feb 19, 2019
ab95698
Update readme.md
anithapk Feb 19, 2019
b22b20b
Update readme.md
anithapk Feb 19, 2019
c63be23
Update readme.md
anithapk Feb 19, 2019
2815d86
Update readme.md
anithapk Feb 19, 2019
d54103c
moved training curves
anithapk Feb 19, 2019
4bc375b
Update readme.md
anithapk Feb 19, 2019
39fc489
Update readme.md
anithapk Feb 19, 2019
27a6f1e
Update README.md
anithapk Feb 19, 2019
356dddc
Update readme.md
anithapk Feb 19, 2019
f0c4bc4
adding symbolic link to bin/sh and activate tensorboard (#81)
jennyfolkesson Feb 20, 2019
8650643
Update readme.md
anithapk Feb 20, 2019
0dca5b9
Update readme.md
anithapk Feb 20, 2019
a4d3e1c
Create LICENSE
anithapk Feb 20, 2019
0fa2d75
Travis (#83)
jennyfolkesson Feb 22, 2019
992f2c9
supressed skimage warnings (#85)
jennyfolkesson Feb 27, 2019
16df940
Tiling vols (#84)
anithapk Feb 27, 2019
23d1a30
Mask 2dfix (#86)
jennyfolkesson Feb 28, 2019
7d23fd6
Patch for train script! (#87)
anithapk Feb 28, 2019
8977a11
Generate meta (#88)
jennyfolkesson Mar 5, 2019
6acc754
Docker update (#92)
jennyfolkesson Mar 12, 2019
aa602af
pip install of jupyter (#93)
jennyfolkesson Mar 13, 2019
da29e82
Test preprocess (#91)
jennyfolkesson Mar 16, 2019
9e3a1c3
fixes for generating masks from >1 channel
smguo Mar 7, 2019
c99e127
add "save_mask_fig" option to save the mask as uint8 PNG in addition to
smguo Mar 7, 2019
f94d8e1
output either png or npy for masks; fixed test
smguo Mar 11, 2019
d0149cd
fixed test_read_imstack
smguo Mar 11, 2019
2fa8700
fixed test_create_save_mask
smguo Mar 11, 2019
218bba5
fix for test_create_save_mask
smguo Mar 11, 2019
81cc679
last fix (hopefully) for test_create_save_mask
smguo Mar 12, 2019
627b071
added docstring
smguo Mar 21, 2019
361b2b9
Remove singular dimension of 3D image
smguo Mar 23, 2019
24156ed
update test_read_imstack
smguo Mar 24, 2019
f7fc280
Update README.md
jennyfolkesson Mar 27, 2019
9d63afc
Maskdir fix (#95)
jennyfolkesson Mar 28, 2019
69ef511
Plot z (#94)
jennyfolkesson Mar 28, 2019
30036d7
Pull changes from master
anithapk Nov 12, 2018
eae7cf5
add preprocess test config
smguo Dec 15, 2018
67b2671
misc changes
anithapk Dec 17, 2018
308b858
update config file
smguo Dec 24, 2018
0acc552
merge changes from master
smguo Jan 18, 2019
705f28c
minor fixes
smguo Jan 23, 2019
07bbec3
add Pearson correlation in metrics
smguo Mar 6, 2019
c41983d
Use metrics in config as default test metrics
smguo Mar 7, 2019
b43fca9
made it work for 2.5D
jennyfolkesson Mar 12, 2019
fea284d
added if statement for 2.5D save figs
jennyfolkesson Mar 12, 2019
e15360c
addressed PR comments
smguo Mar 16, 2019
7b70f0c
minor fix
smguo Mar 16, 2019
14f3077
addressed Jenny's comments
smguo Mar 29, 2019
1a42be2
minor fix
smguo Mar 29, 2019
1ab2c68
added codecov (#96)
jennyfolkesson Apr 9, 2019
9a578d4
Added codecov badge
jennyfolkesson Apr 9, 2019
5138def
updated dockerfile (#98)
jennyfolkesson May 7, 2019
81b1b96
Updated training readme with config settings.
jennyfolkesson May 13, 2019
0568242
Update readme.md
jennyfolkesson May 13, 2019
4d4c40f
Updated main reamde
jennyfolkesson May 13, 2019
44e938c
Update README.md
jennyfolkesson May 16, 2019
f036473
Update README.md
jennyfolkesson May 16, 2019
44f1cf0
Update README.md
jennyfolkesson May 16, 2019
4348dd2
Update README.md
jennyfolkesson May 16, 2019
de89a81
Update README.md
jennyfolkesson May 16, 2019
dac19c0
Update README.md
jennyfolkesson May 16, 2019
3a7e23e
Update README.md
jennyfolkesson May 16, 2019
9f75c67
Ms ssim (#102)
jennyfolkesson May 31, 2019
e816c16
Restructuring inference (#97)
anithapk Jun 7, 2019
e3c2c9b
Clean notebooks (#103)
jennyfolkesson Jun 7, 2019
845669c
updated to torch1 (#105)
jennyfolkesson Jun 13, 2019
92cd852
weight map mask for boundaries (#106)
pranathivemuri Jun 22, 2019
7f38a83
Row idx (#107)
jennyfolkesson Aug 7, 2019
56a97d9
Imagestitcher tests (#108)
anithapk Aug 9, 2019
1d4d75c
Inference tests (#110)
jennyfolkesson Aug 20, 2019
b4d70ba
Inference doc (#112)
jennyfolkesson Aug 21, 2019
0e3955a
[WIP] distance map mask (#111)
pranathivemuri Aug 30, 2019
ea1f6da
Test inference (#116)
jennyfolkesson Sep 16, 2019
3eea1a6
Mask inference (#117)
jennyfolkesson Sep 23, 2019
b2eef03
Input tests (#118)
jennyfolkesson Sep 30, 2019
2b39ac0
update matplotlib version
pranathivemuri Nov 22, 2019
cc79985
Update requirements.txt
pranathivemuri Nov 22, 2019
f8d9bf5
Update requirements_docker.txt
pranathivemuri Nov 22, 2019
cde7bc9
Update requirements.txt
pranathivemuri Apr 20, 2021
bdcfa4a
Update requirements_docker.txt
pranathivemuri Apr 20, 2021
07193cd
removing travis, adding actions
jennyfolkesson Sep 28, 2021
90f2ef2
added back import
jennyfolkesson Oct 4, 2021
bb07323
exclude deprecated from linting
jennyfolkesson Oct 4, 2021
353ad7a
exclude deprecated from linting
jennyfolkesson Oct 4, 2021
59a31a1
fix path in linting
jennyfolkesson Oct 4, 2021
805893a
fix path in linting
jennyfolkesson Oct 4, 2021
0b0e0f2
change linting
jennyfolkesson Oct 4, 2021
51cb554
added max line length
jennyfolkesson Oct 4, 2021
006cad3
added max line length
jennyfolkesson Oct 4, 2021
a1e64d9
testing w exit 0
jennyfolkesson Oct 5, 2021
0f9d627
removed F63 - identity/equality
jennyfolkesson Oct 5, 2021
df9343b
added badge
jennyfolkesson Oct 5, 2021
5f5ef9b
added bracket
jennyfolkesson Oct 5, 2021
7038ebd
Bump opencv-python from 4.1.0.25 to 4.2.0.32 (#137)
dependabot[bot] Mar 18, 2022
824a58f
Data pooling (#129)
smguo Mar 19, 2022
46d0073
Bump numpy from 1.16.4 to 1.21.0 (#146)
dependabot[bot] Mar 19, 2022
64a0dbb
Inference features (progressbar, define prediction folder name, metri…
JohannaRahm May 2, 2022
2544749
Master tests (#149)
jennyfolkesson May 10, 2022
f93e10e
Flatfield correction and metadata (#150)
jennyfolkesson May 31, 2022
7dd397a
removed deprecated dir (#151)
jennyfolkesson May 31, 2022
633c977
Flatfield channels (#152)
jennyfolkesson Jun 6, 2022
ea2997c
Inference bug, pandas docker version (#153)
JohannaRahm Jun 17, 2022
21a6713
add z-align and zarr->single page tif scripts (#156)
JohannaRahm Jul 11, 2022
7f13ab0
fix preprocess metadata keyerror bug (#157)
JohannaRahm Jul 13, 2022
3bb738e
Integer datatype for output names (#159)
Soorya19Pradeep Jul 22, 2022
a3462a0
Sort `os.listdir` to maintain position order (#158)
talonchandler Jul 22, 2022
1838c47
added pytorch 2d unet implementation and training notebook
Aug 27, 2022
b94343c
first iteration of 2.5D Unet implementation in PyTorch
Aug 31, 2022
2ccbb39
commiting changes to IO in training script
Sep 1, 2022
211c71c
implemented Unet25d training script and attachment dataloader for pyt…
Sep 2, 2022
5417341
fixed naming schemes/documentation
Sep 2, 2022
f07e6a7
Added threshold masking transformation to dataset manager. Added cach…
Sep 2, 2022
65a333f
added modules related to inference and evaluation
Sep 7, 2022
09cab71
made changes to training notebook to outline improved data path organ…
Sep 8, 2022
37d77f3
updated output layer to allow for dynamic input sizing. added starter…
Sep 12, 2022
0c0abc3
fixed file corruption and transitioning away from notebooks
Sep 13, 2022
66800e5
adding restored notebook for reference
Sep 13, 2022
64a95cf
added noise generation and normalizing to torch dataset util
Sep 13, 2022
6235b54
improved inference documentation, altered inference to work with torc…
Sep 15, 2022
8c3044f
added training scripts and inference scripts configurable through cli…
Sep 16, 2022
f6d06e7
updated readme
Sep 16, 2022
0913996
cleaned up save-location bug, added support for tiling predictions us…
Sep 16, 2022
1ec9885
added debugging script for inference, final changes to inference docu…
Sep 21, 2022
4ae67d1
Removed support for 3d inference and tensorflow models in inference
Sep 22, 2022
cbf67f8
Added unit tests for 2d and 3d conv blocks
Sep 24, 2022
bcac309
implemented unit testing for network module
Sep 27, 2022
4e3fc78
All structure implementations in torch_unet/networks module passing a…
Sep 27, 2022
b7582d2
made some fixes to allow for training of 2d Unet
Sep 28, 2022
cec9660
Improved pytorch testing documentation. tested to successfully train …
Oct 1, 2022
779683a
successfully performed inference with 2d and 2.5d
Oct 1, 2022
6372c3e
added disabling of caching for augmentations
Oct 6, 2022
eb58af0
fixed old augmentation indexing bug,
Oct 6, 2022
590d6ae
made changes in response to code review comments,
Oct 6, 2022
6565f1e
small change to fix inference prediction path creation
Oct 6, 2022
d07da2c
bug fixed in safety checks
Oct 6, 2022
73655f4
fixed caching bug that caused an overusage of gpu memory
Oct 7, 2022
038a991
restored cli training script
Oct 7, 2022
3e306f6
added pydantic config validation skeleton for torch config file
Oct 8, 2022
b08ee45
fixed some issues with inference saving directories
Oct 11, 2022
fea4895
implemented dynamic block layer ordering to test conv->act->norm perf…
Oct 11, 2022
d296f85
modified architecture to compute residual after activation
Oct 12, 2022
808fd41
fixed stop in training, ready for testing
Oct 12, 2022
a6853c6
added additional multi-channel test
Oct 13, 2022
3337e2a
addressed code review issues in image_inference
Oct 13, 2022
d77e6bd
removed unused/deprecated model_inference
Oct 13, 2022
3f023d7
removed lingering imports from deprecated module + small changes
Oct 13, 2022
50c56f3
removed lingering imports from deprecated module (2)
Oct 13, 2022
8b59c96
revisions addressing code review comments
Oct 18, 2022
da8f156
added error handling checks in figure plotting during epoch testing
Oct 19, 2022
5be0225
added compatibility in 2D inference with unspecified input depth in p…
Oct 20, 2022
0fd3692
added logging tool and functionality for logging in 2.5D unet
Oct 20, 2022
7de85a0
Added multithreaded dataloaded functionality, see torch_unet/readme.m…
Oct 21, 2022
be0d05b
improved robustness of inference. Error handling with input dims is m…
Oct 21, 2022
f90e3ca
added script for monitoring gpu usage over time during training
Oct 21, 2022
e9b2bf2
suppressed deprecation warnings in input module until imminent
Oct 21, 2022
ee47daa
removed old training and inference scripts
Oct 24, 2022
92ceb1b
increased default lr_scheduler reduction factor
Oct 28, 2022
3e0dfef
Addressed code review comments,
Nov 3, 2022
2ed9e08
fixed docstrings in new model objects
Nov 4, 2022
31e9544
removed point-wise masking in training loop
Nov 21, 2022
86e559b
fixed LR scheduler factor
Nov 21, 2022
c5775c4
implemented regularization: lr_scheduler and earlystopping
Nov 10, 2022
86c53f1
corrected split metadata save folder: now saves in timestamped model dir
Nov 10, 2022
54e0a5b
fixed issue with gpu-memory hogging in parallel processes
Nov 11, 2022
0434638
Saving changes from detached head:
Nov 15, 2022
7d7aeaf
updated worker persistence to remove reinitialization overhead,
Nov 16, 2022
b313839
fixed bug creating copies of tensors on gpu
Nov 22, 2022
bcab13d
removed break in training loop
Nov 22, 2022
72530b7
added requirements.txt for new environment
Dec 15, 2022
e6dd900
Gunpowder dataloading (#188)
Christianfoley Apr 21, 2023
2e0d590
rewrote batch-prediction to use windowed batches
Apr 23, 2023
7d55ac5
exposed api for numpy array prediction using predictor object, update…
Apr 24, 2023
479cf6f
updated inference to progressively write samples as they are inferred,
Apr 25, 2023
478ce13
removing comments
Apr 27, 2023
569c68c
fixed bug requiring norm statistics even if norm false
Apr 30, 2023
7247aff
data organization draft
mattersoflight May 3, 2023
a48b5c6
Codebase cleanup (#229)
ziw-liu May 5, 2023
3523909
save to config root dir by default (#230)
ziw-liu May 5, 2023
00d519a
Data storage schema (#233)
ziw-liu May 11, 2023
54785fa
Improve data loading performance (#232)
ziw-liu May 15, 2023
359a324
Update data_organization.md
Christianfoley May 15, 2023
f616892
Fix model architecture for deployment to ONNX (#234)
ziw-liu May 29, 2023
b2c2812
merge recent changes into pytorch_implementation (#237)
mattersoflight May 30, 2023
bfa1453
rename the micro_dl module to viscy (#2)
ziw-liu May 30, 2023
530af3b
Cleanup (#5)
ziw-liu May 30, 2023
5b8114f
remove outdated scripts (#6)
ziw-liu May 31, 2023
1a325d2
remove empty svg file
ziw-liu May 31, 2023
e65184f
remove tensorflow environment files
ziw-liu Jun 1, 2023
a5cd478
remove gunpowder documentation
ziw-liu Jun 1, 2023
f4f88a1
rename callback path to viscy
ziw-liu Jun 1, 2023
d547db2
cache on a single process to avoid race
ziw-liu Jun 2, 2023
0c42fb7
set state in main process
ziw-liu Jun 2, 2023
0ff7e04
unpack tuple for target
ziw-liu Jun 6, 2023
a1522fd
Packaging the project (#7)
ziw-liu Jun 6, 2023
0dd32d1
Update docs (#8)
ziw-liu Jun 7, 2023
0d4aca5
ONNX export CLI (#9)
ziw-liu Jun 9, 2023
fa114dc
fix target size in validation stage
ziw-liu Jun 9, 2023
9fd175e
log debug messages properly
ziw-liu Jun 12, 2023
6748f37
revert to default black line length
ziw-liu Jun 12, 2023
69ec0a9
Upgrade MONAI (#10)
ziw-liu Jun 12, 2023
bee3ca6
Merge branch 'microdl' of github.com:mehta-lab/viscy into microdl
ziw-liu Jun 15, 2023
1ccdba9
Update CI and code QA (#12)
ziw-liu Jun 16, 2023
ea4e9e2
add installation guide
ziw-liu Jun 23, 2023
2c7f9cc
document export method in trainer
ziw-liu Jun 29, 2023
2a4132c
move init docstring to class level
ziw-liu Jun 29, 2023
620e04e
Multi-channel training and prediction (#14)
ziw-liu Jul 6, 2023
9760a24
Merge branch 'microdl' of github.com:mehta-lab/viscy into microdl
ziw-liu Jul 6, 2023
cf0a633
Test metrics (#21)
ziw-liu Jul 18, 2023
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
14 changes: 14 additions & 0 deletions .codecov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
coverage:
precision: 2
round: down
range: "70...100"

status:
project: yes
patch: no
changes: no

comment:
layout: "header, reach, diff, flags, files, footer"
behavior: default
require_changes: no
35 changes: 35 additions & 0 deletions .github/workflows/pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Lint and Test

on: pull_request

jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: psf/black@stable
with:
src: "viscy"
options: "--check --verbose"
- uses: chartboost/ruff-action@v1
with:
src: "viscy"

test:
needs: [lint]
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9", "3.10"]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install ".[metrics,dev]"
- name: Test with pytest
run: pytest -v
40 changes: 40 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
.idea
.DS_Store
__pycache__/
.ipynb_checkpoints/
.vscode

# written by setuptools_scm
*/_version.py

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
pip-wheel-metadata/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.coverage.*
.cache
coverage.xml
*.cover
.hypothesis/
.pytest_cache/
19 changes: 19 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Contributing to viscy

## Development installation

Clone or fork the repository,
then make an editable installation with optional dependencies:

```sh
# in project root directory
pip install ".[dev,metrics]"
```

## Testing

Run tests with `pytest`:

```sh
pytest
```
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
BSD 3-Clause License

Copyright (c) 2023, Computational Microscopy Platform (Mehta Lab), CZ Biohub
Copyright (c) 2023, CZ Biohub SF

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Expand Down
41 changes: 41 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# viscy

viscy is a machine learning toolkit to solve computer vision problems
in high-throughput imaging of cells.

## Installation

(Optional) create a new virtual/Conda environment.

Clone this repository and install viscy:

```sh
git clone https://github.com/mehta-lab/viscy.git
pip install viscy
```

Verify installation by accessing the CLI help message:

```sh
viscy --help
```

For development installation, see [the contributing guide](CONTRIBUTING.md).

Full functionality is only tested on Linux `x86_64` with NVIDIA Ampere GPUs (CUDA 12.0).
Some features (e.g. mixed precision and distributed training) may not work with other setups,
see [PyTorch documentation](https://pytorch.org) for details.

## Predicting sub-cellular structure

Training a model for the segmentation of sub-cellular landmarks
such as nuclei and membrane
directly can require laborious manual annotation.
We use fluorescent markers as a proxy of human-annotated masks
and turn this instance segmentation problem into
an image-to-image translation (I2I) problem.

viscy features an end-to-end pipeline to design, train and evaluate
I2I models in a declarative manner.
It supports 2D, 2.5D (3D encoder, 2D decoder) and 3D U-Nets,
as well as 3D networks with anisotropic filters.
51 changes: 51 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
[build-system]
requires = ["setuptools", "setuptools-scm[toml]"]
build-backend = "setuptools.build_meta"

[project]
name = "viscy"
description = "Learning vision for cells"
readme = "README.md"
# cannot build on 3.11 due to https://github.com/cheind/py-lapsolver/pull/18
requires-python = ">=3.9,!=3.11"
license = { file = "LICENSE" }
authors = [{ name = "CZ Biohub SF", email = "[email protected]" }]
dependencies = [
"iohub==0.1.0.dev3",
"torch>=2.0.0",
"torchvision>=0.15.1",
"tensorboard>=2.13.0",
"lightning>=2.0.1",
"monai>=1.2.0",
"jsonargparse[signatures]>=4.20.1",
"scikit-image>=0.19.2",
"matplotlib",
]
dynamic = ["version"]

[project.optional-dependencies]
metrics = [
"cellpose==2.1.0",
"lapsolver==1.1.0",
"scikit-learn>=1.1.3",
"scipy>=1.8.0",
"torchmetrics[detection]>=1.0.0",
]
dev = ["pytest", "pytest-cov", "hypothesis", "profilehooks", "onnxruntime"]

[project.scripts]
viscy = "viscy.cli.cli:main"

[tool.setuptools_scm]
write_to = "viscy/_version.py"

[tool.black]
src = ["viscy"]
line-length = 88

[tool.ruff]
src = ["viscy", "tests"]
extend-select = ["I001"]

[tool.ruff.isort]
known-first-party = ["viscy"]
Empty file added tests/ conftest.py
Empty file.
1 change: 1 addition & 0 deletions tests/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
"""Tests for viscy"""
Empty file added tests/cli/__init__.py
Empty file.
Loading