PyOPIA 2.16.0__tar.gz → 2.16.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. {pyopia-2.16.0 → pyopia-2.16.1}/PKG-INFO +69 -1
  2. {pyopia-2.16.0 → pyopia-2.16.1}/README.md +68 -0
  3. pyopia-2.16.1/pyopia/__init__.py +1 -0
  4. pyopia-2.16.0/pyopia/__init__.py +0 -1
  5. {pyopia-2.16.0 → pyopia-2.16.1}/.gitignore +0 -0
  6. {pyopia-2.16.0 → pyopia-2.16.1}/LICENSE +0 -0
  7. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/auxillarydata.py +0 -0
  8. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/background.py +0 -0
  9. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/cf_metadata.json +0 -0
  10. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/classify.py +0 -0
  11. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/classify_torch.py +0 -0
  12. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/cli.py +0 -0
  13. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/dataexport/__init__.py +0 -0
  14. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/dataexport/ecotaxa.py +0 -0
  15. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/exampledata.py +0 -0
  16. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/instrument/__init__.py +0 -0
  17. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/instrument/common.py +0 -0
  18. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/instrument/holo.py +0 -0
  19. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/instrument/silcam.py +0 -0
  20. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/instrument/uvp.py +0 -0
  21. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/io.py +0 -0
  22. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/metadata.py +0 -0
  23. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/pipeline.py +0 -0
  24. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/plotting.py +0 -0
  25. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/process.py +0 -0
  26. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/realtime.py +0 -0
  27. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/simulator/__init__.py +0 -0
  28. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/simulator/silcam.py +0 -0
  29. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/statistics.py +0 -0
  30. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/tests/__init__.py +0 -0
  31. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/tests/test_auxillarydata.py +0 -0
  32. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/tests/test_classify.py +0 -0
  33. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/tests/test_io.py +0 -0
  34. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/tests/test_notebooks.py +0 -0
  35. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/tests/test_pipeline.py +0 -0
  36. {pyopia-2.16.0 → pyopia-2.16.1}/pyopia/tests/test_realtime.py +0 -0
  37. {pyopia-2.16.0 → pyopia-2.16.1}/pyproject.toml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PyOPIA
3
- Version: 2.16.0
3
+ Version: 2.16.1
4
4
  Summary: A Python Ocean Particle Image Analysis toolbox.
5
5
  Project-URL: Repository, https://github.com/sintef/pyopia
6
6
  Project-URL: Documentation, https://pyopia.readthedocs.io
@@ -86,6 +86,74 @@ Will show you a montage of all the processed particle images in one.
86
86
 
87
87
  See the documentation for more information on how to install and use PyOPIA.
88
88
 
89
+ # Running with Docker
90
+
91
+ A prebuilt container image is published to GitHub Container Registry on every release, for users who prefer not to install PyOPIA's dependencies directly.
92
+
93
+ ## One-off invocation
94
+
95
+ From any directory that contains a `config.toml`:
96
+
97
+ ```bash
98
+ docker run --rm \
99
+ --user $(id -u):$(id -g) \
100
+ -v "$PWD:$PWD" -w "$PWD" \
101
+ ghcr.io/sintef/pyopia:latest \
102
+ process config.toml
103
+ ```
104
+
105
+ The 1:1 volume mount (`-v "$PWD:$PWD"`) makes the container see your current directory at the same path as the host, so an existing `config.toml` with absolute paths under `$PWD` works unchanged.
106
+
107
+ **If your config references paths outside `$PWD`** — most commonly a classifier weights file — add a matching bind mount for each of them.
108
+ The target (right of the colon) must equal the source (left) so the path in the config resolves unchanged.
109
+ For a config like
110
+
111
+ ```toml
112
+ [steps.classifier]
113
+ pipeline_class = "pyopia.classify_torch.Classify"
114
+ model_path = "/home/you/models/classifier.pt"
115
+ ```
116
+
117
+ the invocation becomes
118
+
119
+ ```bash
120
+ docker run --rm \
121
+ --user $(id -u):$(id -g) \
122
+ -v "$PWD:$PWD" -w "$PWD" \
123
+ -v /home/you/models:/home/you/models:ro \
124
+ ghcr.io/sintef/pyopia:latest \
125
+ process config.toml
126
+ ```
127
+
128
+ Any PyOPIA CLI command works, e.g. `docker run --rm ghcr.io/sintef/pyopia:latest --help`.
129
+
130
+ ## Using docker compose
131
+
132
+ Each GitHub release attaches a `compose.yaml` as an asset.
133
+ Download it once per project:
134
+
135
+ ```bash
136
+ curl -LO https://github.com/SINTEF/pyopia/releases/latest/download/compose.yaml
137
+ docker compose run --rm pyopia # runs `pyopia process config.toml`
138
+ docker compose run --rm pyopia --help # or any other CLI argument
139
+ ```
140
+
141
+ The compose file has commented-out stubs for paths that live outside `$PWD` — in particular the classifier weights file.
142
+ Edit `compose.yaml` to uncomment the line and point it at your actual host path, e.g.
143
+
144
+ ```yaml
145
+ volumes:
146
+ - ${PWD}:${PWD}
147
+ - /home/you/models:/home/you/models:ro # classifier weights
148
+ ```
149
+
150
+ The target must match the source so the config-referenced path resolves unchanged.
151
+ Override the default config filename with `PYOPIA_CONFIG`:
152
+
153
+ ```bash
154
+ PYOPIA_CONFIG=my_run.toml docker compose run --rm pyopia
155
+ ```
156
+
89
157
  # Documentation:
90
158
 
91
159
  [![Jupyter Book Badge](https://jupyterbook.org/badge.svg)](https://pyopia.readthedocs.io) [![Documentation](https://readthedocs.org/projects/pyopia/badge/?version=latest)](https://pyopia.readthedocs.io/en/latest/?badge=latest)
@@ -34,6 +34,74 @@ Will show you a montage of all the processed particle images in one.
34
34
 
35
35
  See the documentation for more information on how to install and use PyOPIA.
36
36
 
37
+ # Running with Docker
38
+
39
+ A prebuilt container image is published to GitHub Container Registry on every release, for users who prefer not to install PyOPIA's dependencies directly.
40
+
41
+ ## One-off invocation
42
+
43
+ From any directory that contains a `config.toml`:
44
+
45
+ ```bash
46
+ docker run --rm \
47
+ --user $(id -u):$(id -g) \
48
+ -v "$PWD:$PWD" -w "$PWD" \
49
+ ghcr.io/sintef/pyopia:latest \
50
+ process config.toml
51
+ ```
52
+
53
+ The 1:1 volume mount (`-v "$PWD:$PWD"`) makes the container see your current directory at the same path as the host, so an existing `config.toml` with absolute paths under `$PWD` works unchanged.
54
+
55
+ **If your config references paths outside `$PWD`** — most commonly a classifier weights file — add a matching bind mount for each of them.
56
+ The target (right of the colon) must equal the source (left) so the path in the config resolves unchanged.
57
+ For a config like
58
+
59
+ ```toml
60
+ [steps.classifier]
61
+ pipeline_class = "pyopia.classify_torch.Classify"
62
+ model_path = "/home/you/models/classifier.pt"
63
+ ```
64
+
65
+ the invocation becomes
66
+
67
+ ```bash
68
+ docker run --rm \
69
+ --user $(id -u):$(id -g) \
70
+ -v "$PWD:$PWD" -w "$PWD" \
71
+ -v /home/you/models:/home/you/models:ro \
72
+ ghcr.io/sintef/pyopia:latest \
73
+ process config.toml
74
+ ```
75
+
76
+ Any PyOPIA CLI command works, e.g. `docker run --rm ghcr.io/sintef/pyopia:latest --help`.
77
+
78
+ ## Using docker compose
79
+
80
+ Each GitHub release attaches a `compose.yaml` as an asset.
81
+ Download it once per project:
82
+
83
+ ```bash
84
+ curl -LO https://github.com/SINTEF/pyopia/releases/latest/download/compose.yaml
85
+ docker compose run --rm pyopia # runs `pyopia process config.toml`
86
+ docker compose run --rm pyopia --help # or any other CLI argument
87
+ ```
88
+
89
+ The compose file has commented-out stubs for paths that live outside `$PWD` — in particular the classifier weights file.
90
+ Edit `compose.yaml` to uncomment the line and point it at your actual host path, e.g.
91
+
92
+ ```yaml
93
+ volumes:
94
+ - ${PWD}:${PWD}
95
+ - /home/you/models:/home/you/models:ro # classifier weights
96
+ ```
97
+
98
+ The target must match the source so the config-referenced path resolves unchanged.
99
+ Override the default config filename with `PYOPIA_CONFIG`:
100
+
101
+ ```bash
102
+ PYOPIA_CONFIG=my_run.toml docker compose run --rm pyopia
103
+ ```
104
+
37
105
  # Documentation:
38
106
 
39
107
  [![Jupyter Book Badge](https://jupyterbook.org/badge.svg)](https://pyopia.readthedocs.io) [![Documentation](https://readthedocs.org/projects/pyopia/badge/?version=latest)](https://pyopia.readthedocs.io/en/latest/?badge=latest)
@@ -0,0 +1 @@
1
+ __version__ = "2.16.1"
@@ -1 +0,0 @@
1
- __version__ = "2.16.0"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes