Releases: mahmoodlab/TRIDENT
v0.2.5
What's Changed
- Update README to remove Details link by @guillaumejaume in #190
- feat: h0-mini, openmidnight, gpfm supported by @guillaumejaume in #191
- Add GrandQC citation and license notice by @Superzlw in #192
- Add GenBio-PathFM patch encoder (ViT-Giant, 4608-dim, JEDI training)#196 by @guillaumejaume in #197
- Gja/speed/patching by @guillaumejaume in #199
- New OME ZARR Image Reader by @guillaumejaume in #200
- feat: option to dump patches when patching coords by @guillaumejaume in #201
New Contributors
Full Changelog: v0.2.4...v0.2.5
v0.2.4
- Fixed compound-extension filename handling (.ome.tif / .ome.tiff) using splitext() and applied it across WSI, Processor, and Converter where artifact stems are derived.
- Added robust WSI lifecycle management with context-manager support (enter/exit), updated usage in run_single_slide.py, Processor (ExitStack), and related tests.
- Added a new third segmenter, otsu (image-processing only), implemented in trident/segmentation_models/otsu.py and integrated via segmentation_model_factory, CLI options, and module exports.
- Set Otsu segmentation default magnification to 1.25x and optimized its runtime path (lower allocation overhead + CPU execution path for Otsu in CLI flows).
- Added unit tests for Otsu (tests/test_otsu_segmenter.py) plus earlier lifecycle/extension tests (test_wsi_core_behaviors.py, test_processor_lifecycle.py).
- Improved dependency and install UX in pyproject.toml (including scikit-image for Otsu), plus expanded docs in README.md and DETAILS.md.
- Expanded trident-doctor (including convert profile checks and runtime library checks) and improved output formatting (FAIL/WARN/PASS, summary, JSON mode).
- Added/kept unified CLI wrapper behavior (trident batch/single/convert/doctor) while preserving legacy entrypoints.
v0.2.3
-
Bug fix: When patching with overlap, the first patch was not used for overlapping. Now fixed using modified _colrow_to_xy function.
-
Speed: GigaPath and Midnight12k now run by default on float16 for increased speed.
-
Bug fix: Allow ResNet50-IN model weights to be restored from either the pytorch_model.bin or the model.safetensors
-
Clear tissue mask (gdf_contours) after segmentation. Restored with lazy initialization. Avoids steady increase of CPU memory usage when processing 4k+ WSIs.
v0.2.2
-
bug fix, default argument for segment_tissue throws an exception
-
add num_workers arg to segment_tissue
-
bug fix, display mpp for patcher vis if magnification is None
-
don t install heavy libraries by default
-
add ability to create WSIPatcher from CLAM type coordinates
-
fix from_legacy_coords
-
add coords_only arg to from_legacy
-
add pil argument to from_legacy_coords
-
pass slide_path as positional argument in CuCIMWSI, ImageWSI + fix src_pixel_size exception WSIPatcher
-
add semantic segmentation inference
-
add semantic segmentation inference
-
test
-
add forward_kwargs and create save_coords_h5
-
cleanup before PR
-
fix parameter propagation from ImageWSI to WSI
-
cleanup before PR
-
add README newline
-
remove forward_kwargs
-
remove get_channels
-
fix: set correct wsi path in processor unit test
v0.2.1
- Add Feather slide encoder (ICLM'25)
- Set huggingface mirror
- Fix bug in tutorial 3
- Expose segmentation arguments in run single slide
v0.2.0
-
Search nested to process WSIs located in nested dirs (--search_nested)
-
New caching mechanism to process very large batches of WSIs. When processing 100k+ WSIs, they are often stored on slow HDDs. To address this, use local caching on a fast SSD (--wsi_cache ./cache --cache_batch_size 32). Data will be copied automatically in batches, and processed in parallel. Automatic cleanup.
-
New release() function in the Processor and WSI to ensure GPU memory is released.
-
Version automatically inferred from the the
tomlfile.
v0.1.1
Add readthedoc documentation
v0.1.0
-
Added native support for CuCIM and PIL.
-
All segmentation models now use Hugging Face and support local checkpoints (no more torch.hub).
-
All patch models migrated to Hugging Face with local support (except Hibou and MUSK).
-
Improved error handling and enhanced docstrings.
v0.0.5
New AnyToTiffConverter. Handy to convert non openslide readable files into pyramidal tiff.
v0.0.4: Merge pull request #2 from mahmoodlab/more_models
Support for 7 additional patch encoders:
- hibou_l
- kaiko-vits8
- kaiko-vits16
- kaiko-vitb8
- kaiko-vitb16
- kaiko-vitl14
- lunit-vits8
Support for 1 additional slide encoder:
- madeleine (based on conch_v1 patch encoder with 256x256 patches at 10x)