Releases: computational-cell-analytics/micro-sam
v1.2.0 🌈
Version 1.2.0
The main changes in this version are:
- Installation using only conda-forge dependencies and simplified installation instructions (on Linux and Mac OS)
- Fix annotation in napari widgets with scale factors thanks to @psobolewskiPhD
- Support for several parameter-efficient training methods thanks to @caroteu and @anwai98
Changes
- Bump to version 1.2.0 @constantinpape (#816)
- Merge dev into master @constantinpape (#815)
- Update conda environments and CI @constantinpape (#814)
- Allow flexible choice between metrics for grid-search @anwai98 (#812)
- Refactor peft test @constantinpape (#810)
- Add SSF method @anwai98 (#727)
- Minor update to interactive multi-dim segmentation functionality @anwai98 (#802)
- Add AdaptFormer @caroteu (#741)
- Add logo to doc @anwai98 (#809)
- [Enh] Handle segmenting image layers that have non-1 layer.scale @psobolewskiPhD (#804)
- Add SAM export scripts in bioengine format @anwai98 (#803)
- Update start_page.md @constantinpape (#807)
- Update README.md @constantinpape (#806)
- Minor fix to caching embeddings in AIS evaluation @anwai98 (#800)
- Upstream dev with master @anwai98 (#799)
- Minor update to path for storing iterative prompting results @anwai98 (#797)
- Add tooltip mentions in FAQ section @anwai98 (#796)
- Minor fix to finetuning UI tooltip @anwai98 (#795)
- Ensure segmentation data type after connected components @anwai98 (#783)
- Fix choice of automatic segmentation mode in CLI @anwai98 (#788)
- Minor update to avoid caching embeddings in evaluation @anwai98 (#782)
- Add example script for automatic segmentation @anwai98 (#781)
- Minor fix to casting masks in AMG post-processing @anwai98 (#780)
- Add documentation for micro-sam CLIs @anwai98 (#777)
- Minor fixes to automatic segmentation notebook @anwai98 (#779)
- Add LoRA scaling factor @caroteu (#770)
- Remove merge conflict artifacts @anwai98 (#774)
- Fix automatic segmentation CLI - return tiling window segmeter @anwai98 (#767)
- Update workshop @constantinpape (#764)
- Fix training UI @anwai98 (#763)
- Make caching embeddings optional for evaluation scripts @anwai98 (#759)
- Add latest release overview to doc @anwai98 (#761)
- Add suggestion to transfer downloaded checkpoints and rename filenames @anwai98 (#758)
- Add release overview to doc @anwai98 (#757)
- Updates for the workshop @constantinpape (#755)
- Minor updates to finetuning notebook @anwai98 (#753)
- Minor updates to workshop documents @anwai98 (#752)
v1.1.1 🌈
Release 1.1.1
Fixing minor issues with 1.1.0 and enabling pytorch 2.5 support.
Changes
- Update __version__.py @constantinpape (#749)
- Update workshop notes @constantinpape (#750)
- Doc and workshop updates @constantinpape (#746)
- Update build_installers.yaml @constantinpape (#748)
- Update build_installers.yaml @constantinpape (#747)
v1.1.0 🌈
Version 1.1.0
micro_sam
is a tool for microscopy image segmentation based on Segment Anything model.
This version introduces several improvements:
- Compatibility with napari >= 0.5
- CLI for automatic instance segmentation
- Initial support for parameter efficient finetuning and automatic 2d/3d semantic segmentation (not available via the napari plugin yet, but part of the python library)
- And several other minor improvements and bugfixes
Changes
- Bump to version 1.1 @constantinpape (#745)
- Changes for release 1.1 @constantinpape (#744)
- Add materials for hands-on workshops @anwai98 (#742)
- Disable thread workers @constantinpape (#739)
- Fix link to the finetuning notebook in doc @anwai98 (#743)
- Updates to the image series annotator @constantinpape (#738)
- Expose is_seg_dataset argument in sam dataset @anwai98 (#736)
- Add CLI for benchmarking datasets on SAM models @anwai98 (#728)
- Add dry run for loaders to check for valid instances @anwai98 (#705)
- Minor update to ignore warnings in train_sam functionality @anwai98 (#722)
- Update docs - add hints on starting napari @anwai98 (#724)
- Add recommendations in finetuning notebook @anwai98 (#720)
- Expose kwargs to allow changing peft module arguments @anwai98 (#718)
- Add selective peft methods @anwai98 (#708)
- Update dropout defaults for FacT finetuning method @anwai98 (#714)
- Overwrite keybindings of prompt layers @constantinpape (#711)
- Extend iterative prompt generators to return prompts for 3d @anwai98 (#692)
- Napari updates @constantinpape (#710)
- Revert "Fix clearing shape layer" @constantinpape (#709)
- Fix clearing shape layer @constantinpape (#696)
- Add section in FAQ for passing custom model weights @anwai98 (#707)
- Add tests for automatic segmentation function @anwai98 (#702)
- Add automatic segmentation cli @anwai98 (#699)
- Update yaml files - pin napari < 0.5 @anwai98 (#694)
- Fix livecell top-level finetuning script - adapt with new peft changes @anwai98 (#691)
- Add nifty pin to yaml files @anwai98 (#688)
- Minor update to move edge-related attributes to border @anwai98 (#689)
- Minor update to peft kwargs in SAM wrappers @anwai98 (#686)
- Add FaCT Finetuning for SAM @anwai98 (#682)
- Update the python versions in test matrix @constantinpape (#685)
- Add LoRA support to LIVECell finetuning scripts @anwai98 (#681)
- Minor updates to resource efficient finetuning experiments @anwai98 (#665)
- Minor fix to label transform function in finetuning notebook @anwai98 (#677)
- Add livecell lora plots @anwai98 (#674)
- Fix issue in AIS precomputation and extend training functionality @constantinpape (#673)
- Fix issue with dtypes that leads to integer overflow in committing @constantinpape (#671)
- Add plotting scripts for AIS experiments @anwai98 (#666)
- Remove disconnected objects after AMG @constantinpape (#668)
- Update docstrings to document recent functionalities @anwai98 (#664)
- Add AIS benchmarking scripts @anwai98 (#657)
- Minor update to input checking for training functionality @anwai98 (#663)
- Add min-size to training and fix other issues @constantinpape (#658)
- Add weighting to dice loss in semantic trainer @anwai98 (#656)
- Add timing outputs @constantinpape (#655)
- Minor refactor to LoRA model initialization in
get_trainable_sam_model
@anwai98 (#654) - Refactor resource efficient finetuning scripts @anwai98 (#653)
- Fix bug in precompute for 3d data @constantinpape (#649)
- Api cleanup @constantinpape (#648)
- Minor fix to trainable sam model functionality @anwai98 (#646)
- Add simple 3d wrapper and enable freezing the encoder in sam 3d wrapper @constantinpape (#645)
- Add SemanticSam3dLogger @anwai98 (#643)
- 636 enhance 3d image processing based on ma sam @lufre1 (#639)
- Minor fix to loading incompatible layers @anwai98 (#641)
- Minor update to loading models @anwai98 (#640)
- Add SemanticSamTrainer @anwai98 (#637)
- Add LoRA Implementation @anwai98 (#611)
- Minor update to default rescaling params in resizerawtrafo @anwai98 (#635)
- Add SimpleSamTrainer @anwai98 (#631)
- Add mentions for annotating 3D RGB volumes @anwai98 (#629)
- Remove device input for TrainableSAM @anwai98 (#632)
- Add MedSAM Reimplementation @anwai98 (#612)
- Add PanNuke specialist finetuning @anwai98 (#622)
- Upstream dev with master @anwai98 (#624)
- Add progressbar to pooch download @constantinpape (#623)
- Update docs @constantinpape (#621)
v1.0.1 🌈
Changes
- Bump to 101 @constantinpape (#620)
- Update installation.md @constantinpape (#617)
- Update modelzoo urls @constantinpape (#619)
- Update notebooks - extend descriptions @anwai98 (#609)
- PyPI deployment (so micro-sam can be listed on napari-hub) @GenevieveBuckley (#606)
- Fix bug in ais state caching @constantinpape (#608)
- adapted code to fit to the new os-specific construct.yaml files @lufre1 (#605)
- 541 windows installer error @lufre1 (#593)
- Minor update to notebook docs @anwai98 (#602)
- Finalize inference and evaluation notebook with all functionalities @anwai98 (#600)
- Update napari.yaml, include napari-hub category labels @GenevieveBuckley (#599)
- Update links in notebooks and minor fixes @anwai98 (#598)
- Add more video links, clean up doc @constantinpape (#594)
- Update inference and evaluation notebook @anwai98 (#597)
- Update dataset mention for tracking specialist @anwai98 (#596)
- Fix pyqt error on macos-14 (macos-latest) @GenevieveBuckley (#595)
- Update FAQ: add resource and finetuning suggestions @anwai98 (#591)
- Minor doc fix in finetuning directory @anwai98 (#592)
- Add scripts for model uploads to zenodo @anwai98 (#587)
- Add zenodo links to all finetuned models @anwai98 (#589)
- Doc updates v10 @constantinpape (#588)
- Update inference time benchmarking plots @anwai98 (#579)
- Add batched inference and evaluation notebook @anwai98 (#586)
- Update evaluation functions for optional verbose @anwai98 (#585)
- Minor update to suggestion for running evaluation scripts @anwai98 (#584)
- Update dataset mention in notebooks @anwai98 (#583)
- Update paths in documentation and minor touch-ups @anwai98 (#580)
- Full bioimageio integration @constantinpape (#569)
- Update contributing.md @constantinpape (#582)
- corrected typo in python library.md and updated installer isntaructio… @lufre1 (#581)
- Finalize documentation @constantinpape (#568)
v1.0.0: Stable Napari Tool and Library
Post release to include minor changes, especialy UI fixes.
Changes
- Update __version__.py @constantinpape (#578)
- Add experimental scripts for AIS with tiling @anwai98 (#485)
- Minor touch-up to finetuning directory @anwai98 (#577)
- Document and refactor the plotting scripts dir @anwai98 (#576)
- Refactor plots with feedback @anwai98 (#554)
- added windows installer logo.ico and changed paths accordingly @lufre1 (#575)
- Show window for empty automatic segmentation results @constantinpape (#574)
- Adding doc for using samplers in finetuning @anwai98 (#571)
- Move suggestions and limitations to FAQ section @anwai98 (#567)
v1.0.0: Stable Napari Tool and Library
Stable version of the napari plugin and library!
Changes
- Bump version to 1.0 @constantinpape (#565)
- Add release workflow @constantinpape (#564)
- Documentation updates @constantinpape (#562)
- Sync changes from dev @constantinpape (#561)
- 539 update doc @lufre1 (#546)
- 555 add new logo to installer and update finetune gui @lufre1 (#556)
- Wrap annotator in a scroll area @constantinpape (#553)
- Fix state precomputation for instance segmentation @constantinpape (#552)
- Update state precomputation and extend test @constantinpape (#551)
- Updates to the image series annotator @constantinpape (#549)
- Add documentation for finetuning folder @anwai98 (#491)
- Minor fix to precomputing image embeddings @anwai98 (#545)
- Upstream master with dev @anwai98 (#544)
- Update logo for the website @anwai98 (#543)
- Implement preserve committed @constantinpape (#535)
- Improve gap closing by using a directed structuring element @constantinpape (#538)
- Update validation.md @constantinpape (#534)
- Update lm_v2.md @constantinpape (#531)
- Update the training UI @constantinpape (#532)
- fix build pipeline @lufre1 (#533)
New plugin design, models and automatic segmentation
Version 0.5
This release redesigns the user interface and provides it as napari plugins. It also provides updated models that are now hosted on https://bioimage.io/#/ and several other improvements and new features.
We are working on updating the documentation to reflect this new release ASAP and will also create a 1.0.0 release, focusing on minor improvements and bugfixes, soon to mark the tool as stable.
What's Changed
- Sync dev and master by @constantinpape in #328
- Prototype for annotator plugins by @constantinpape in #304
- Add Lucchi amg results by @anwai98 in #340
- Add SNEMI amg results by @anwai98 in #339
- Add MitoEM results by @anwai98 in #343
- Add Covid-IF results by @anwai98 in #345
- Update Covid-IF Results (for cyto2) by @anwai98 in #346
- Add LiveCELL Vanilla Results by @anwai98 in #348
- Add livecell cellpose results by @anwai98 in #349
- Add scripts for plotting results by @constantinpape in #313
- Refactor livecell evaluation by @anwai98 in #344
- Add EM generalist evaluation by @anwai98 in #320
- Add partial finetuning submission script by @anwai98 in #352
- Add n_objects experiment by @anwai98 in #353
- Implement instance segmentation merging across 3d by @constantinpape in #351
- Add evaluation scripts for experiments by @anwai98 in #354
- Saving the grid search parameters by @anwai98 in #362
- Overwrite existing keybindings to avoid error when re-opening plugin widgets by @GenevieveBuckley in #366
- Add description for plotting scripts by @anwai98 in #365
- Update Mito Nuc Finetuning by @anwai98 in #364
- Add plot scripts for additional experiments by @anwai98 in #360
- Add LM Specialist Evaluation by @anwai98 in #310
- Refactor EM generalist evaluations by @anwai98 in #368
- Minor fix to preprocessing LM datasets by @anwai98 in #374
- Minor fix to saving grid search params by @anwai98 in #373
- Fix test failure due to change in torchvision by @constantinpape in #375
- Refactor plotting scripts by @anwai98 in #372
- Refactor all evaluation scripts by @anwai98 in #376
- Update function signatures by @anwai98 in #377
- Add override to folder paths for evaluation by @anwai98 in #378
- Add description to more plotting scripts by @anwai98 in #367
- Add M1 MacOS runner to github actions jobs by @GenevieveBuckley in #370
- Update LM generalist training (with new decoder setup) by @anwai98 in #379
- Add NeurIPS CellSeg Specialist by @anwai98 in #363
- Refactor CellPose scripts by @anwai98 in #347
- Add plotting scripts for evaluation by @anwai98 in #387
- Minor update to finetuning scripts by @anwai98 in #386
- Minor fix to documentation by @anwai98 in #399
- Update default parameter for foreground smoothing by @anwai98 in #396
- Update evaluation plot scripts by @anwai98 in #401
- Update run_all_finetuning.py - for flexible finetuning models by @anwai98 in #395
- Minor refactor to label transform in LM generalist by @anwai98 in #394
- Add inference for cellpose 3.0 by @anwai98 in #393
- Restore EM boundaries finetuning by @anwai98 in #403
- Update JointSamTrainer's
save_checkpoint
by @anwai98 in #404 - Shorte widget names and suppress mobile-sam import warnings by @constantinpape in #409
- Batch point seg by @constantinpape in #410
- Minor fix to inference function for instance segmentation by @anwai98 in #411
- Add resource efficient finetuning experiments by @anwai98 in #391
- Add volumetric instance segmentation scripts by @anwai98 in #402
- Compute best grid search parameters by @anwai98 in #413
- Implement new segmentation plugin by @constantinpape in #305
- 331 add options for tiling in the embdding widget by @lufre1 in #419
- Update projection modes by @constantinpape in #418
- Update CLI to enable loading a finetuned model by @constantinpape in #427
- Fix initialization with segmentation result by @constantinpape in #431
- Enable tile based segmentation for more options and add more tests by @constantinpape in #432
- Enable specifying the device in the CLI by @constantinpape in #433
- Parallelize commit operations by @constantinpape in #436
- Add input logits logic to iterative prompting evaluation by @anwai98 in #438
- Add exception message for no objects found by @anwai98 in #443
- Clear annotation in slice or frame only by @constantinpape in #447
- Implement commit restricted to actually segmented slices for 3d annotator by @constantinpape in #448
- Implement commit to file by @constantinpape in #451
- Update model comparison to work with prompt gen syntax by @constantinpape in #453
- Fix issues in loading segmentation result and image series annotator by @constantinpape in #456
- Update image_series_annotator - for flexible inputs by @anwai98 in #454
- Update evaluation scripts for custom experiments by @anwai98 in #442
- Update inference and evaluation top-level scripts (for LIVECell) by @anwai98 in #439
- Amg artifacts by @constantinpape in #458
- Include min_size in multi dim evaluation by @anwai98 in #459
- Unify SAM model loading by @constantinpape in #460
- Update supplementary experiments by @anwai98 in #420
- Update current metric saving in joint trainer by @anwai98 in #461
- Add convenience function for training and add user study scripts by @constantinpape in #457
- Fix issue with segmentation for non-square images...
0.4.1
What's Changed
- Minor doc fix by @anwai98 in #329
- Update finetuning example by @anwai98 in #338
- Minor fix to documentation by @anwai98 in #357
- Explain import of submodules by @constantinpape in #359
- Fix amg for the image series annotator by @constantinpape in #398
Full Changelog: 0.4.0...0.4.1
0.4.0
What's Changed
- More comprehensive .gitignore file at repository root by @GenevieveBuckley in #222
- CI testing - automatic code coverage reports by @GenevieveBuckley in #214
- Simple GUI test for CI by @GenevieveBuckley in #223
- Improve test train by @constantinpape in #233
- Update CI on master by @constantinpape in #232
- Make numba optional by @constantinpape in #238
- Add documentation for how to run micro-sam via BAND by @constantinpape in #229
- Add LM Generalist Finetuning by @anwai98 in #228
- Fixes for test_training.py failures by @GenevieveBuckley in #245
- Add EM Generalist Finetuning (2) by @anwai98 in #247
- Developer documentation by @GenevieveBuckley in #243
- Documenation build script - add check for missing docs files by @GenevieveBuckley in #250
- Merge master into dev by @constantinpape in #252
- Add support for batched inference with prompts by @constantinpape in #253
- Implement singleton state and use it in the 2d annotator by @constantinpape in #240
- Add Histopathology Generalist Training by @anwai98 in #248
- Fix Bounding Box Sorting by @anwai98 in #257
- Refactor Iterative Prompting Evaluation by @anwai98 in #254
- Add 3d segmentation functionality by @constantinpape in #255
- Fix EM Generalist Raw Transform by @anwai98 in #259
- Update Evaluation - Iterative Prompting by @anwai98 in #260
- Embedding widget for napari plugin by @GenevieveBuckley in #235
- Use a consistent cache directory by @GenevieveBuckley in #268
- Fixup README 404s by @claydugo in #270
- Fix typo in function name _segment_slice_widget by @GenevieveBuckley in #273
- Update Description - LiveCELL Inference by @anwai98 in #271
- Use qtpy by @constantinpape in #275
- Experiments with Mask Inputs Probability by @anwai98 in #265
- Merge dev into master by @constantinpape in #278
- Keep master and dev in sync by @constantinpape in #279
- napari widget to set cache directory (for model weights and sample data downloads) by @GenevieveBuckley in #277
- Run github actiosns CI tests on Windows, Mac and Linux by @GenevieveBuckley in #267
- Improve device handling by @constantinpape in #251
- Increase test coverage by @constantinpape in #280
- Fixup typo by @claydugo in #281
- Fix Plugin Link by @anwai98 in #282
- Download models with pooch by @GenevieveBuckley in #276
- Add xxh128 version of hashes for model by @hmaarrfk in #284
- Update Rescaling Inputs by @anwai98 in #286
- Add Joint Training by @anwai98 in #288
- Fix
load_checkpoint
by @anwai98 in #290 - Update LiveCELL Specialist Fine-tuning by @anwai98 in #291
- Update livecell evaluation scripts by @constantinpape in #296
- New instance segmentation by @constantinpape in #297
- Update finetune_hela.py by @Mobinapournemat in #294
- Fix Resizing Input Prompts by @anwai98 in #299
- Minor fix to Instance Segmentation by @anwai98 in #302
- Simplify training implementations by @constantinpape in #301
- Make grid search functionality more flexible by @constantinpape in #300
- Update livecell finetuning by @anwai98 in #303
- Update LM Generalists by @anwai98 in #292
- Update LM Generalist Dist. Trafo. by @anwai98 in #306
- Update README.md - Minor doc fix by @anwai98 in #307
- Add EM Mito-Nuc Generalist by @anwai98 in #295
- Implement grid search for livecell training and update instance seg grid search by @constantinpape in #308
- Minor update to EM finetuning by @anwai98 in #309
- Minor typo in em mito nuc by @anwai98 in #311
- Add EM Boundaries Generalist by @anwai98 in #312
- Minor updates to finetuning desc. by @anwai98 in #314
- Update LiveCELL inference scripts by @anwai98 in #315
- Fix instance segmentation checkpoint loading by @anwai98 in #318
- Add livecell specialist results by @anwai98 in #317
- Add livecell (lm) generalist results by @anwai98 in #319
- Minor fix to livecell eval. scripts by @anwai98 in #316
- Minor fix to experiment path convention by @anwai98 in #323
- Refactor files in
scripts
by @anwai98 in #321 - Update mitonet results by @anwai98 in #325
- Update to new finetuned models by @constantinpape in #326
- Changes for new release by @constantinpape in #327
New Contributors
- @claydugo made their first contribution in #270
- @hmaarrfk made their first contribution in #284
- @Mobinapournemat made their first contribution in #294
Full Changelog: 0.3.0...0.4.0
0.3.0post1
Fix tests for conda forge.