docs: update documentation and add RECONST_2_5D_WORKFLOW#105
Closed
FIrgolitsch wants to merge 529 commits intopr-a-build-toolingfrom
Closed
docs: update documentation and add RECONST_2_5D_WORKFLOW#105FIrgolitsch wants to merge 529 commits intopr-a-build-toolingfrom
FIrgolitsch wants to merge 529 commits intopr-a-build-toolingfrom
Conversation
Copilot recommendation Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Charles Poirier <41654474+CHrlS98@users.noreply.github.com>
Co-authored-by: Charles Poirier <41654474+CHrlS98@users.noreply.github.com>
…ss slices in parallel
…saic_parallel # Conflicts: # linumpy/reconstruction.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…act step handling, adding unreliable transition refinement via image registration, and improving inter-slice shift estimation from tile stage positions.
Improve pairwise registration: multi-scale ITK, shift filtering, motor-position mode
e273235 to
e987f1c
Compare
Relocates thread-pool configuration into a dedicated config sub-package.
- Remove dead modules data_io.py and npz.py (unused). - Move Allen brain atlas helpers from io/allen.py into a new linumpy.reference sub-package. - Drop star imports from io/__init__.py. - Modernize remaining io/ modules (Path, type hints, docstrings).
- Move utils/io.py argparse helpers to a new linumpy.cli.args module. - Move utils/metrics.py into a top-level linumpy.metrics package. - Remove now-empty linumpy.utils package.
…in.py Promotes the single-file linumpy.segmentation module into a package with a dedicated brain.py module for clarity and future extension.
- imaging/transform.py: image transformation helpers. - imaging/overlay.py: overlay/composite helpers.
…osaic.quick_stitch - mosaic/discovery.py: tile-discovery helpers. - mosaic/quick_stitch.py: quick low-resolution stitching helpers.
- mosaic/grid.py: grid construction (from stitching/mosaic_grid.py).
- mosaic/overlap.py: tile overlap helpers (extracted from stitching).
- registration/manual.py: interactive registration GUI
(from stitching/manual_registration.py).
- registration/sitk.py: SimpleITK-based registration
(from stitching/registration.py).
- registration/phase_correlation.py: phase-correlation registration.
- registration/refinement.py: multi-stage refinement helpers.
- registration/transforms.py: affine/rigid transform utilities.
- Drop dead modules stitching/FileUtils.py, stitching/topology.py,
stitching/stitch_utils.py.
…ckage Splits the 1786-line linumpy/preproc/icorr.py module into focused modules: - intensity/normalize.py: intensity normalization helpers. - intensity/attenuation.py: attenuation correction. - intensity/psf_model.py: PSF-model-based illumination correction. - intensity/vignette.py: vignetting correction. - intensity/artifact.py: artifact removal helpers. - intensity/convert.py: intensity conversion helpers.
…ckage Splits xyzcorr.py into focused modules: - geometry/crop.py: volume cropping helpers. - geometry/resample.py: resampling utilities. - geometry/interface.py: tissue-interface detection and fitting. - geometry/galvo.py: galvo / scanner geometry helpers. Repoints linumpy.microscope.oct to use the new geometry.galvo module.
…it utils.py - stack_alignment/io.py: I/O helpers (CSV/JSON read/write). - stack_alignment/units.py: unit conversion helpers. - stack_alignment/filter.py: outlier filtering helpers. Renames the corresponding test module from test_utils_shifts.py to test_stack_alignment.py.
- psf/synthetic.py: synthesize_3d_psf helper (renamed from get_3d_psf for clarity). - psf/extract.py: extract experimental PSFs from data.
Updates all 43 linum_*.py scripts plus 2 script tests to use the
new sub-packages introduced in this refactor:
linumpy.preproc.icorr -> linumpy.intensity.{normalize,attenuation,
psf_model,vignette,
artifact,convert}
linumpy.preproc.xyzcorr -> linumpy.geometry.{crop,resample,
interface,galvo}
linumpy.shifts.utils -> linumpy.stack_alignment.{io,units,filter}
linumpy.psf.psf_estimator -> linumpy.psf.{synthetic,extract}
linumpy.stitching -> linumpy.mosaic.{grid,overlap,discovery,
quick_stitch} and
linumpy.registration.{manual,sitk,
phase_correlation,
refinement,transforms}
linumpy.utils_images -> linumpy.imaging.{transform,overlay}
linumpy.utils.io -> linumpy.cli.args
linumpy.utils.metrics -> linumpy.metrics
linumpy.io.allen -> linumpy.reference.allen
linumpy.segmentation -> linumpy.segmentation.brain
linumpy.reconstruction -> linumpy.mosaic.{discovery,quick_stitch}
linumpy._thread_config -> linumpy.config.threads
- Update setuptools `packages.find` and ruff `per-file-ignores` to reflect the renamed/split modules (intensity/, geometry/, mosaic/, registration/, stack_alignment/, etc.). - Update isort `thread-config` section to reference linumpy.config.threads. - Refresh uv.lock to pick up incidental dependency updates. - Pre-existing tooling tweaks (expanded ruff rule set, ty config, GPU dependency cleanup) carried in the working tree.
Refreshes all transitive package versions to current resolutions (idna, magicgui, ome-zarr, pre-commit, pydantic, pytest, ruff, ty, typer, virtualenv, etc.).
Removed pins on numpy, scipy, hyperactive, pynrrd, and numcodecs. basicpy 2.0.0 (latest available) transitively pins scipy<1.13, which forces numpy<2; override that ceiling via [tool.uv].override-dependencies so we resolve modern numpy 2.x and scipy 1.17 across the stack.
ce8e35d to
cc75fc8
Compare
e987f1c to
85536d5
Compare
85536d5 to
57c6267
Compare
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Docs update: refresh existing docs and add RECONST_2_5D_WORKFLOW.md.
Stacks on top of #95 (pr-a-build-tooling).