Skip to content

Releases: funkelab/gunpowder

v1.3.3

20 Apr 01:11
Compare
Choose a tag to compare
  1. Fix bugs in RasterizeGraph edge coloring
  2. Resample Node no longer results in volume shrinkage by 1 pixel
  3. SpecifiedLocation won't get stuck in an infinite loop if None of the points to choose from are valid, instead throws an error.
  4. removed references to np.float128 which may not be available on all platforms (mac). Tests now pass on mac.
  5. Removed code for python 2 compatibility
  6. padding falls back on 'constant' if mode provided is not supported

v1.3.2

03 Jan 05:32
52248e1
Compare
Choose a tag to compare

Merging patch branch into master and making new release

Change Log:
bugs fixed:

  • torch nodes forward hooks moved to start method of nodes to work better with the spawn_subprocess flag
  • torch train/predict work when setting multiprocessing start method = "spawn"
  • fixed bug in rasterize graph due to usage of the old api for accessing graph nodes

new features:

  • torch nodes support defining specific cuda devices via e.g. "cuda:0"
  • added support for "reflect" mode padding in the pad node
  • improved error printing.
    • Reversed the order of exceptions so the cause of the error is printed at the bottom, and you can scroll up to trace the requests and batches through the tree. Now we no longer need to scroll to the top to see the cause of the error,
    • PreCache and other multiprocessing nodes no print repeats of the same error, it is simply printed once
    • removed unhelpful tracebacks (and many repititions) for the try, except blocks in node superclasses

general improvements:

  • moved many tests from unittest to pytest, adding parametrization to simplify them and cover more cases
  • improved the dependency version bounds
  • improved docs, formatting, and pass more ci/cd workflows
  • removed unused imports and f-strings

V1.3.1

06 Oct 20:16
Compare
Choose a tag to compare

Bug fixes:

  • RandomLocation is more robust to rounding errors when selecting locations based on points
  • Request seeds have been updated to be less likely to accidentally repeat
  • Torch Predict can now take checkpoints that were saved directly instead of as dicts
  • zarr read/write now properly inverts voxel size for n5 containers

v1.3

18 Apr 17:36
Compare
Choose a tag to compare

Change log:
Features:

  • Added GraphSource with tests and added to docs
  • Added IterateLocations node with tests and added to docs
  • Added write_if helper function to Snapshot that can be overwritten for data dependent snapshot saving
  • Added Jax Train/Predict nodes
  • RandomLocation can save the chosen location to a nonspatial array.
  • support the spawn start method for gunpowder subprocesses
  • ZarrSource and ZarrWrite now match zarr.open convenience function
  • HDF5LikeSource and HDF5LikeWrite depricated
  • ElasticAugment depricated
  • DeformAugment replaces ElasticAugment and works in world units.

Dependencies:

  • Switched to funlib.geometry for Roi and Coordinate to make use with daisy and other similar libraries simpler
  • Update daisy version in dependencies

Bug Fixes:

  • avoid hanging teardown in generic predict if worker process dies
  • fix nonspatial array handling during training
  • up/downsampling arrays with channel dimensions works now
  • removed depricated numpy dtypes (np.int, np.bool, ...)

v1.1

17 Mar 21:47
c2007d8
Compare
Choose a tag to compare

Change log:

  • add PyTorch Train and Predict nodes
  • introduce gunpowder.Graph to replace gunpowder.Points
  • add support for non-spatial arrays (like one-hot classification vectors)
  • add Stack to create batches with multiple samples
  • add Upsample
  • improved logging/error messages
  • guarantee availability of requested dependencies, independent of other node's requests
  • several minor bugfixes

v1.0

30 May 16:24
Compare
Choose a tag to compare
Update docs