Skip to content

Releases: sanderslab/magellanmapper

MagellanMapper v1.7a1

30 Dec 23:31

Choose a tag to compare

Highlights in v1.7a1 release

  • Javabridge/Bioformats has been replaced with multipage TIF file support
  • Minimum supported Python version is now 3.10 to reduce maintenance burden and improve testing on more recent versions of Python

Major changes since 1.6.0

  • TIF files can be imported without Javabridge/Bioformats in the GUI ("Import" tab) or by loading a TIF image directly with the flag, --savefig npy (#738, #753, #756)
  • Read and write PhysicalSpacingX-style TIF resolutions (#753)
  • Exports to TIF are now multichannel TIF files (#756)
  • Fixed issues with loading certain TIF files' metadata (#738, #754)
  • import group packages (Javabridge/Bioformats) are deprecated and no longer included in the most group install (#745)
  • Fixed display of label RGB values and coordinates in figure filenames (#753)
  • Fixed saving/loading rescaled images using Numpy 2 (#738)
  • Make normalizing data frames more flexible (#746)
  • Fixed to apply plot setting across shared axes (#740)
  • Better encapsulated the main image to pave the way for loading multiple images in the same session (#754)
  • Bumped minimum supported Python version to 3.10 (#712)
  • project.toml installation configuration replaces setup.py (#741)
  • Integration tests for loading images and large stack blob detection (#754)

See the full release notes draft here for more details.

All Changes

Show details
  • Bump fonttools from 4.55.3 to 4.57.0 in /envs by @dependabot[bot] in #710
  • Bump pyparsing from 3.2.0 to 3.2.3 in /envs by @dependabot[bot] in #709
  • Bump pyarrow from 18.1.0 to 19.0.1 in /envs by @dependabot[bot] in #702
  • Bump charset-normalizer from 3.4.0 to 3.4.1 in /envs by @dependabot[bot] in #689
  • Increase Python minimum version requirement to 3.10 by @yoda-vid in #712
  • Bump urllib3 from 2.3.0 to 2.5.0 in /envs by @dependabot[bot] in #717
  • Bump certifi from 2025.4.26 to 2025.6.15 in /envs by @dependabot[bot] in #722
  • Bump pillow from 11.2.1 to 11.3.0 in /envs by @dependabot[bot] in #731
  • Bump fonttools from 4.58.2 to 4.59.0 in /envs by @dependabot[bot] in #735
  • Bump pygments from 2.19.1 to 2.19.2 in /envs by @dependabot[bot] in #724
  • Option to import TIF files to NPY format without Javabridge by @yoda-vid in #738
  • Fix applying settings across shared axes by @yoda-vid in #740
  • Bump treelib from 1.7.1 to 1.8.0 in /envs by @dependabot[bot] in #737
  • Bump certifi from 2025.6.15 to 2025.8.3 in /envs by @dependabot[bot] in #742
  • Replace setup.py with project.toml by @yoda-vid in #741
  • Simplify normalizing a data frame from a specific condition by @yoda-vid in #746
  • Remove import group from default environment setup by @yoda-vid in #745
  • Support more TIF metadata by @yoda-vid in #753
  • Refactor image references to use Image5d by @yoda-vid in #754
  • Implement TIF import without Bioformats in GUI by @yoda-vid in #756

Full Changelog: v1.6.0...v1.7a1

MagellanMapper v1.6.0

20 Feb 17:20

Choose a tag to compare

Highlights in v1.6.0 release

  • Atlas navigation
    • Smoother, faster interactions with main plots, including atlas label name display, label editing, and pan and zoom navigation
    • Atlas regions can be searched (see "Atlases > Region")
    • Atlas Editor orthogonal planes can be reordered or turned off
    • Detection channels can be selected independently of the loaded image to overlay prior detections or compare channels (see "Detect > Chl")
    • Images can be viewed as RGB (see "ROI > Channels") or merged channels
    • New atlases can be downloaded through BrainGlobe (see the new "Atlases" panel)
  • Installation simplification
    • Simpler entry point to launch MagellanMapper: mm
    • Available as binary wheel to install without requiring the source code
    • Faster, lighter installation with fewer required dependency packages
    • Extends support to Python 3.12 and defaults to Python 3.9 (note: this is the last release to officially support Python 3.6-3.9)
    • Supports ITK-Elastix for image registration
    • Fixed installation on Apple Silicon (Mac M-chip) platforms (#634)
  • Tutorial: Jupyter Notebook for running common tasks

Major changes since beta 4

Further fixes for these features/issues:

  • Jupyter Notebook as a tutorial for running various tasks in the CLI (#659)
  • Expand continuous integration testing to both pinned and fresh dependencies across Python 3.6-3.12 (#682)
  • ITK-Elastix is now supported for image registration (#682)
  • Fixed for NumPy v2 (#680)

See the full release notes draft here for more details.

All Changes

Show details
  • 6241874 - Bump project version to v1.6b4
  • 2ecc2da - Fix regex specification for converting ITK-SNAP labels to CSV
  • 9b57e77 - Bump project version to 1.6b5
  • 0bdf480 - Bump Venv setup script Python version compatibility to 3.12
  • 5a41c4a - Bump readme year to 2024
  • 700a5c9 - Fix initializing RangeEditor in Python 3.12
  • f54d51b - Docs update on quick install and vignette
  • 02166ce - Fix CI for macos-latest supported Python versions
  • 434e109 - Test CI without Python 3.12
  • 5e2ece4 - Test CI with multiple dependencies in include
  • 8a32358 - Test CI with fixed include/exclude for Ubuntu and macOS
  • f6c23d1 - Bump ITK-Elastix to v0.19.2 to support macOS Arm64
  • c7f1ed1 - Release notes for extending support to Python 3.12 (#640)
  • 759db62 - --- updated-dependencies: - dependency-name: requests dependency-type: direct:production update-type: version-update:semver-minor ...
  • edc8c72 - Bump brainglobe-space from 1.0.0 to 1.0.2 in /envs
  • 71c0035 - Bump tifffile from 2024.2.12 to 2024.5.22 in /envs
  • 531e5c1 - Fix deprecated access to Matplotlib colormap
  • 8d72c4d - Fix converting slice argument of 0 to None
  • 12afc3f - Fix conflict in colormaps naming
  • 6a09fa6 - Fallback to earlier Matplotlib colormap access
  • eee83ed - Show registration parameters when running ITK-Elastix
  • 183dd2a - Deconstruct reg suffixes from rescaled/transformed image names
  • ddcf3e7 - Update BrainGlobe Atlas API to v2
  • ee20927 - Use older BrainGlobe Atlas API for Python < 3.9
  • e404733 - Add more settings to example blobs ROI profile
  • c73ef6c - Fix stale absolute coordinate columns in blobs archive
  • 6278845 - Upgrade blobs archive for missing absolute coordinates
  • f32d632 - Accept blob column enums when accessing values from a column
  • 4337af9 - Add blob region column and update docs
  • 7f60581 - Set up region IDs for blobs when loading them during image setup
  • ef32735 - Turn off "Raw" 3D option by defaut
  • cceda7b - Turn off on-the-fly blob detection in surrounding areas if blobs are given
  • c7da12e - Reduce extracting surrounding blobs
  • 1d436d0 - Move region feedback to the atlas panel
  • 743a305 - Show 3D blobs for selected regions
  • 6b97d13 - Fix type hint reference to BlobMatch
  • f210ed5 - Allow layering multiple sets of 3D blobs
  • ca7421c - Re-enable "Raw" 3D mode by default if no labels image is present
  • 655a9be - Release notes on BrainGlobe Atlas API v2 update (#650)
  • 0621904 - Release notes on selecting 3D blobs by region (#651)
  • 4c99f3c - Bump fonttools from 4.51.0 to 4.53.0 in /envs
  • a0172d7 - Fix crosshairs for Matplotlib v3.9.0
  • f09a061 - Release notes for fixing crosshairs in Matplotlib v3.9.0 (#657)
  • b886132 - Print CLI args at regular level
  • d4d9c57 - Simplify warnings during region export
  • 3f9870b - Find ontology file path from labels metadata when making labels level image
  • 3745dc8 - Support specifying labels image for mapped metric image
  • 4739c13 - Get children IDs from a table of label IDs with immediate parents
  • fd0fe38 - Release notes for simplified mapping metric to labels image (#658)
  • 568ff8f - Fix np.lib reference for NumPy v2 release
  • 39f9617 - Release notes for fix for NumPy v2 (#661)
  • 6211658 - Bump urllib3 from 2.2.1 to 2.2.2 in /envs
  • eeb0ae6 - Bump scikit-image from 0.22.0 to 0.24.0 in /envs
  • 4bed64a - Bump certifi from 2024.2.2 to 2024.7.4 in /envs
  • 23fe1ad - Bump zipp from 3.18.1 to 3.20.2 in /envs
  • e738f8f - Bump fonttools from 4.53.0 to 4.54.1 in /envs
  • bf140fb - Release notes for fixing region RGB export (#675)
  • 3d48162 - Fix region export RGB values
  • d186bdb - Fix colormaps' corresponding negative labels for NumPy v2 type casting
  • fd94711 - Add sample commands Notebook navigation
  • 34ea142 - Demo command for exporting map of regions to parents
  • 624bdb8 - Add Notebook anchor tags for navigation
  • 50a0bb9 - Add more image export example commands to Notebook
  • 4a05b0e - Fix parsing "none" for --slice
  • 6e9d6d3 - Release notes for adding navigation pane to Notebook
  • 34b32f7 - Fix discrete colormap generation for
  • 6b821fb - Release notes for fixing discrete colormaps for single-label images
  • 21dbe5f - Pin ITK-Elastix to v0.20
  • 8e479bd - Update requirements for 2024-12-22
  • 0d1f195 - Pin PyQt5-Qt5 for all major platforms
  • 2e8f499 - Fix CI for Ubuntu 24.04 libglx dependencies
  • 9ce884d - Fix CI for Python 3.7 removal from Ubuntu 24.04
  • 71b80e9 - Release notes for ITK-Elastix 0.21 workaround
  • 21c5bd0 - Increase max Dependendabot PRs
  • 51fec06 - Fix Dependabot open PR limit syntax
  • 02367d1 - Version bump to v1.6.0
  • b69d015 - Release notes for v1.6.0
  • 468e32b - Bump year

Full Changelog: v.1.6b4...v1.6.0

MagellanMapper v1.6 beta 4

13 Apr 18:19

Choose a tag to compare

Highlights in v1.6 pre-releases

  • Smoother, faster interactions with main plots, including atlas label name display, label editing, and pan and zoom navigation
  • Available as binary wheel to install without requiring the source code
  • Faster, lighter installation with fewer required dependency packages
  • Extends suppor to Python 3.11 and defaults to Python 3.9
  • Simpler entry point to launch MagellanMapper: mm
  • Supports ITK-Elastix for image registration
  • Atlases can be downloaded directly through BrainGlobe (see the new "Atlases" panel)
  • Atlas regions can be searched (see "Atlases > Region")
  • Atlas Editor planes can be reordered or turned off
  • Detection channels can be selected independently of the loaded image to overlay prior detections or compare channels (see "Detect > Chl")
  • Images can be viewed as RGB (see "ROI > Channels") or merged channels
  • Jupyter Notebook tutorial for running common tasks
  • Fixed installation on Apple Silicon (Mac M-chip) platforms

Major changes since beta 3

  • Fixed installation on Apple Silicon (Mac M-chip) platforms (#634)
  • Select colormaps for each channel (#574)
  • Fixed image adjustment controls
    • Fixed synchronization between images and adjustment controls (#576)
    • Fixed intensity sliders to cover the full range (#572, #576, #606, #613)
    • Fixed intensity range of "filtered" ROI and overview images (#613)

See the full release notes draft here for more details.

All Changes

Show details

Full Changelog: v.1.6b3...v1.6b4

MagellanMapper v1.6 beta 3

25 Sep 18:12

Choose a tag to compare

Highlights in v1.6 pre-releases

  • Smoother, faster interactions with main plots, including atlas label name display, label editing, and pan and zoom navigation
  • Available as binary wheel to install without requiring the source code
  • Faster, lighter installation with fewer required dependency packages
  • Extends support to Python 3.11 and updates default to Python 3.9
  • Simpler entry point to launch MagellanMapper: mm
  • Supports ITK-Elastix for image registration
  • Atlases can be downloaded directly through BrainGlobe (see the new "Atlases" panel)
  • Atlas regions can be searched (see "Atlases > Region")
  • Atlas Editor planes can be reordered or turned off
  • Detection channels can be selected independently of the loaded image to overlay prior detections or compare channels (see "Detect > Chl")
  • Images can be viewed as RGB (see "ROI > Channels") or merged channels
  • Jupyter Notebook tutorial for running common tasks

Major changes since beta 2

  • Fixed running on Python >= 3.9 (#559)
  • Fixed resetting label opacity when scrolling among planes (#552)

See the full release notes draft here for more details.

MagellanMapper v1.6 beta 2

26 Jun 11:15

Choose a tag to compare

Highlights in v1.6 pre-releases

  • Smoother, faster interactions with main plots, including atlas label name display, label editing, and pan and zoom navigation
  • Available as binary wheel to install without requiring the source code
  • Faster, lighter installation with fewer required dependency packages
  • Extends suppor to Python 3.11
  • Simpler entry point to launch MagellanMapper: mm
  • Supports ITK-Elastix for image registration
  • Atlases can be downloaded directly through BrainGlobe (see the new "Atlases" panel)
  • Atlas regions can be searched (see "Atlases > Region")
  • Atlas Editor planes can be reordered or turned off
  • Detection channels can be selected independently of the loaded image to overlay prior detections or compare channels (see "Detect > Chl")
  • Images can be viewed as RGB (see "ROI > Channels") or merged channels
  • Jupyter Notebook tutorial for running common tasks

Major changes since beta 1

  • Python 3.10-3.11 are now supported (#379, #517)
  • Supports image I/O and registration through ITK-Elastix (#495, #497, #500, #504)
  • "Merge" option in the ROI panel to merge channels using additive blending (#492)
  • Use core fonts in PDF/PS file exports to keep vector text (#486)
  • Fixed parsing some metadata when importing files with Bio-Formats (#502)

See the full release notes draft here for more details.

MagellanMapper v1.6 beta 1

06 Apr 02:47

Choose a tag to compare

Highlights in v1.6 pre-releases

  • Smoother, faster interactions with main plots, including atlas label name display, label editing, and pan and zoom navigation
  • Available as binary wheel to install without requiring the source code
  • Simpler entry point to launch MagellanMapper: mm
  • Atlases can be downloaded directly through BrainGlobe (see the new "Atlases" panel)
  • Atlas regions can be searched (see "Atlases > Region")
  • Detection channels can be selected independently of the loaded image to overlay prior detections or compare channels (see "Detect > Chl")
  • Images can be viewed as RGB (see "ROI > Channels")
  • Jupyter Notebook tutorial for running common tasks

Major changes since alpha 3

  • Mayavi/VTK are now optional, installed in the 3d group (#455)
  • Basic spectral unmixing through channel subtraction (#458)
  • Fixed redundant triggers when adjusting the displayed image (#474)
  • Fixed conflict between shortcut to add blob and jumping to ROI plane (ctrl+click) by changing the jump shortcut to j+click (#456)
  • Fixed groupwise registration for current atlas profiles, turned off default cropping (#444)
  • More fixes to blob archives with custom columns (#449, #475)
  • 2D plots, R stats, and server pipeline improvements (#445, #451, #457, #469, #470)

See the full release notes draft here for more details.

MagellanMapper v1.6 alpha 3

03 Feb 19:33

Choose a tag to compare

Highlights in v1.6 pre-releases

  • Smoother, faster interactions with main plots, including atlas label name display, label editing, and pan and zoom navigation
  • Available as binary wheel to install without requiring the source code
  • Simpler entry point to launch MagellanMapper: mm
  • Atlases can be downloaded directly through BrainGlobe (see the new "Atlases" panel)
  • Atlas regions can be searched (see "Atlases > Region")
  • Detection channels can be selected independently of the loaded image to overlay prior detections or compare channels (see "Detect > Chl")
  • Images can be viewed as RGB (see "ROI > Channels")
  • Jupyter Notebook tutorial for running common tasks

Major changes since alpha 2

  • Workaround for Qt run issue (#431)

See the full release notes draft here for more details.

MagellanMapper v1.6 alpha 2

10 Jan 03:23

Choose a tag to compare

Pre-release

Highlights in v1.6 pre-releases

  • Smoother, faster interactions with main plots, including atlas label name display, label editing, and pan and zoom navigation
  • Available as binary wheel to install without requiring the source code
  • Simpler entry point to launch MagellanMapper: mm
  • Atlases can be downloaded directly through BrainGlobe (see the new "Atlases" panel)
  • Atlas regions can be searched (see "Atlases > Region")
  • Detection channels can be selected independently of the loaded image to overlay prior detections or compare channels (see "Detect > Chl")
  • Images can be viewed as RGB (see "ROI > Channels")
  • Jupyter Notebook tutorial for running common tasks

Major changes since alpha 1

  • Simpler entry point to launch MagellanMapper: mm
  • Smoother, faster interactions with main plots, including atlas label name display, label editing, and pan and zoom navigation (#317)
  • Image adjustment channels are radio buttons for easier selection (#212)
  • Existing blob archives are backed up before saving (#216)
  • Multiple multiplane image files can be selected directly for import instead of relying on file auto-detection (#201)

See the full release notes draft here for more details.

MagellanMapper v1.6 alpha 1

31 Aug 04:25

Choose a tag to compare

Highlights

  • Available as binary wheel to install without requiring the source code
  • Atlases can be downloaded directly through BrainGlobe (see the new "Atlases" panel)
  • Atlas regions can be searched (see "Atlases > Region")
  • Detection channels can be selected independently of the loaded image to overlay prior detections or compare channels (see "Detect > Chl")
  • Images can be viewed as RGB (see "ROI > Channels")
  • Jupyter Notebook tutorial for running common tasks

See the full release notes draft here for more details.

MagellanMapper v1.5.0

25 Nov 10:36

Choose a tag to compare

Highlights

This release brings many enhancements aimed at creating a smoother user experience. Key changes include:

  • We overhauled the profile panel to preview each profile and show the currently loaded settings
  • Window sizes and positions are now saved between sessions
  • Image brightness-related settings are saved while scrolling through image planes
  • On Windows platforms, we now support all major atlas refinement tasks
  • Atlas smoothing supports adaptive kernel sizes per region and improves stat output
  • Newly generated atlases now collect labels metadata to make the atlases more portable
  • Image import supports single-plane RAW images and provides more feedback

Changes

Show details

GUI

  • Profile panel overhaul (#66)
    • Preview profiles before adding them
    • Skip the "Load" step; profiles are automaticaly loaded when added
    • View the complete settings for all loaded profiles
    • Clearer and more compact labels and button arrangement
    • Settings panel for resetting preferences and finding version information
  • Window size and position are saved as user preferences
  • The default window size is smaller to fit into 720p displays
  • The default focus is no longer the main image file path to avoid accidental file loading
  • Registered image selectors are now more compact
  • Fixed image intensity values and auto-adjustment to persist for each channel while scrolling and switching among channels (#76)
  • Fixed to retain opacity settings for borders images while scrolling (#79)

CLI

See the table of CLI changes for a summary of all changes in v1.5

  • Multiple processing tasks can be given in the same command; eg --proc detect coloc_match (#30)
  • Image preprocessing tasks have been integrated into --proc, no longer requiring a separate ROI profile; eg --proc preprocess=rotate
  • The new --prefix_out flag allows customizing output paths when --prefix is used to modify input paths (#73)

Atlas refinement

  • Adaptive kernel sizes can be used for smoothing operations (#53)
  • Metadata for labels images are saved when importing an atlas and registering the atlas to another image so that the original atlas no longer needs to be available (and --labels argument does not to be given) when loading the atlas or registered image (#65, #67)
  • Smoothing metrics are output during the --register merge_atlas_segs task (#51, #54)
  • The atlas profile settings meas_edge_dists and meas_smoothing turn off these metrics to save time during atlas generation, and the profile fewerstats turns off both these settings (#31)
  • Multiprocessing is turned off for lateral extension for better performance
  • Labels difference images, which map metrics for labels onto the labels themselves for data visualization, can now take specific metric files and columns from the included R package (#73)
  • Labels referencs loaded from CSV files now support level, abbreviation, and parent ID columns (#61)
  • Fixed multiprocessing tasks with SimpleElastix 2.0
  • Fixed DSC metrics between the atlas and its new labels, and more DSC metrics are saved (#57)
  • Fixed exporting labels reference files when a label ID is missing (#61)

Atlas registration

  • Image masks can be set to focus the field for image registration. Use the new --reg_suffixes fixed_mask=<suffix-or-abs-path> moving_mask=<suffix-path> command-line sub-arguments to load these mask files. (#40)
  • Register multiple atlases at a time, applying the same transformation to each of them. Specify additional atlase after the first, with output paths specified as prefixes, eg: ./run.py <sample-path> <atlas1> <atlas2> --prefix <atlas1-output-path> <atlas2-output-path>. (#69)
  • When registration fails, it will attempt to match more image parameters such as spacing and direction as fallbacks (#71)

Cell detection

  • Previously saved blobs are no longer loaded prior to re-detection
  • More flexibility when loading databases with blob truth sets
  • Grid searches support output path modifiers
  • Fixed blob segmentation and showing labels when none of either are present
  • Fixed exporting ROIs

Volumetric image processing

I/O

  • Improvements to loading registered images
    • The main image is no longer loaded if a registered atlas image is given
    • Images can be specified as absolute paths using --reg_suffixes to load any image, including those registered to another image (#36)
    • Images loaded for edge detection can be configured using --reg_suffixes
    • Files with two extensions (eg .nii.gz) are supported
    • Files modified by --prefix can now also be found in the registered image dropdowns
    • More support for CSV format reference files
  • Improvements to image import
    • Single plane RAW images can be loaded when importing files from a directory, in addition to multiplane RAW files (#32)
    • Skips single plane files that give errors (eg non-image files in the input directory) (#83)
    • Provides import error feedback in the GUI (#83)
    • The known parts of the import image shape are populated even if the full shape is not known
    • The Bio-Formats library has been updated to support more file formats (from Bio-Formats 5.1.8 to 6.6.0 via Python-Bioformats 1.1.0 to 4.0.5, respectively) (#70)
    • Fixed to disable the import directory button when metadata is insufficient
    • Fixed to create parent directories when importing images (#44)
    • Fixed to create default resolutions even when none are specified (#44)
  • Improvements to exporting image stacks
    • Images can be exported to multiple separate figures (#68)
    • Sub-plots are labeled
    • Image rotation arguments are applied (#50)
    • Plane index is only added when exporting multiple planes
  • Fixed to update metadata files when loaded through the --meta flag (#35)
  • Fixed error when unable to load a profile .yml file

Server pipelines

  • Continuous integration has been implemented through GitHub Actions to improve quality control (#55)

Python stats and plots

  • Scatter plot updates
    • Annotation columns can be names of index columns
    • Colors can be specified

R stats and plots

Code base and docs

  • Multiprocessing tasks are now more widely supported in Windows (spawn start mode), including the --register import_atlas, make_edge_images, merge_atlas_segs, vol_stats, and make_density_images tasks (#60, #68)
  • Type hints are now being integrated, replacing docstring types for better typing info and debugging (#46)

Dependency Updates

Python Dependency Changes

  • Python-Bioformats has been upgraded to 4.0.5 and uses a custom package that uses the existing Javabridge rather than Python-Javabridge to avoid a higher NumPy version requirement
  • Workaround for failure to install Mayavi because of a newer VTK, now pinned to 9.0.1
  • Matplotlib >= 3.2 is now required