Skip to content

Releases: sanderslab/magellanmapper

MagellanMapper v1.6.0

20 Feb 17:20
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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

MagellanMapper v1.4.0

31 May 09:07
Compare
Choose a tag to compare

Highlights

This release brings many usability enhancements, foremost of which is our new standalone installers. Install and run MagellanMapper through point-and-click (no terminal required!) and open new files through your file browser.

We also added new options to the editors such as ROI centering/zooming and labels toggle, and we reorganized the tool panel for a cleaner, clearer look. Several tools are more responsive, such as Maximum Intensity Projections and Atlas Editor positioning.

Under the hood, we added blob co-localization across channels. Image volumes can be compared using different atlases. Imported images store metadata in a YAML file for readability as plain text files. Python support is extended to 3.6-3.8, and the R stats package supports a basic command-line interface and profiles.

Dependency and Command-Line Updates

  • The appdirs package has been added to store user application files in standard operating system-dependent locations:
    • Windows: C:\Users\<your-username>\AppData\Local\MagellanMapper
    • macOS: /Users/<your-username>Library/Application Support/MagellanMapper
    • Linux: /home/<your-username>/.local/share/MagellanMapper
  • Existing environments need to be updated, which can be done using one of the setup scripts:
    • Conda: bin/setup_conda or for Windows, bin/setup_conda.bat
    • Venv: bin/setup_venv.sh or for Windows, bin\setup_venv.bat
  • The database (magmap.db) is generated and stored in this user app folders listed above; any existing magmap.db in the project root folder is left in place and can be manually copied there if you would like to use it
  • Logs for debugging are now saved to out.log in these folders
  • Custom binary packages have been built for SimpleElastix and Javabridge to support Python 3.6-3.8 for MagellanMapper
  • Command-line changes: please see this table

Changes since v1.4.0-beta.3

Show details - After toggling the "Labels" box, all views update as soon as the Atlas Editor is entered - Labels reference files support alternate column names (`ID` or `Region` for the region number, `name` or `RegionName` for the name) - Command-line arguments are documented online - Fixed error when no `JAVA_HOME` environment variable is set - Fixed loading YAML files without any settings

Complete Changelog for v1.4.0

Show details

Installation

  • Windows, macOS, and Linux standalone packages are now provided!
    • MagellanMapper can now be installed without the command-line
    • The Windows installer allows launching the application from the Start Menu
    • The macOS app can be dragged to the Applications to access from Launchpad
  • Environment setup scripts support package updates
    • As we added a new dependency, we made it easier to update existing environments
    • Re-running bin\setup_conda.bat on Windows updates as bin/setup_conda has on Mac/Linux
    • bin/venv.sh can now also be re-run to update Venv environments
  • Python version support has been expanded to 3.6-3.8 now that we have built custom dependencies for these Python versions

GUI

  • Reorganized options to group by viewer
  • More tooltips (hover mouse over labels)
  • Option to treat the ROI offset as the center of the ROI
  • Atlas Editor
    • Zoom in to the ROI in the Atlas Editor
    • Paintbrush only appears in Edit mode
    • Annotating an image without labels will generate a new labels image file
    • Option to move the editor planes when moving the ROI sliders (on by default)
    • Option to turn off crosslines
  • Atlas labels
    • Option to turn off atlas labels
    • Label selection options to include both sides and child labels
  • 3D visualization
    • Adjust 3D surface opacities to look inside structures
    • Overlay blobs detected in full resolution images onto downsampled images
    • Blobs can be selected to view an ROI around specific blobs
    • 3D Atlas regions and ROIs can be added sequentially (keep the new "clear" option unchecked)
    • Fixed shadow panes for multichannel images, isotropic visualization, and z-axis inversion
  • Maximum intensity projections
    • Support added to the Atlas Editor
    • Automatically applied to both the ROI and Atlas Editor when toggled
  • Color styles for blobs! Color by atlas labels, channel, or unique per blob (original style)
  • Registered images selections are grouped into dropdowns for a cleaner look
  • Refreshes viewers when the ROI changes in more cases
  • Fixed error when looking up atlas label without a loaded reference file
  • Fixed the size of the ROI outline after detecting blobs

CLI

  • Unrecognized arguments are simply ignored rather than giving an error
  • The new --load parameter replaces --proc load as a more flexible way to specify data to load, including --load blobs and --load blobs blob_matches
  • Output of profiles settings is now pretty printed for readability

Atlas refinement

  • Option to increase tapering during labels lateral extension by weighting label erosion with lateral distance, set by the wt_lat atlas profile setting
  • Set an alternative intensity image for edge detection using the registration suffixes atlas flag (--reg_suffixes [atlas])
  • Added a watershed_mask_filter setting in the edge_aware_reannotation atlas profile group to set the filter type and size for the watershed mask
  • atlas_mirror profile setting to toggle mirroring the intensity image across hemispheres during atlas curation
  • Fixed to exclude labels that were not eroded from undergoing watershed-based reannotation
  • Fixed saving edited images loaded through the GUI (#11)

Atlas registration

  • Customize the atlas images used during image registration by using the --reg_suffixes CLI parameter
  • Measure the distance from labels to specified landmarks before and after registration through the --register labels_dist task
  • The carve_threshold and holes_area atlas profile settings are also applied to regular (non-groupwise) registration
  • The similarity metric used for registration is included in the summary CSV file
  • Fixed smoothing metrics for non-existent labels

Cell detection

  • Blob co-localization
    • Detected blobs can now be co-localized two ways:
      1. Intensity-based: intensities above threshold at each blob's location in the remaining channels are considered co-localized signal
      2. Match-based: blobs from different channels are matched to find spatially overlapping blobs, similarly to automated blob verification against ground truth
    • The co-localization method can be set in the GUI when detecting blobs for a given ROI, shown as overlaid channel numbers (intensity-based) or corresponding blob numbers (match-based)
    • The --proc detec_coloc task performs intensity-based co-localization during whole image detections
    • The --proc coloc_match task performs match-based co-localization after detections were completed
    • Load blob matches with --load blob_matches
  • Block processing settings can be set per channel rather than using the same settings for all channels; any block setting difference compared with other channels' profiles will trigger processing in separate blocks
  • Accuracy metrics for each ROI are saved to CSV file
  • Compare atlases translated to labels from different references and children

Volumetric image processing

  • Volume comparisons: include raw pixel and volume counts
  • Compare volumes registered to different atlases
    • Translate atlas labels IDs in one image to the IDs used in another image
      • --atlas_labels translate_labels=<translation.csv>, where translation.csv is a CSV file with FromLabel and ToLabel columns
      • --atlas_labels translate_children=1 causes children of the given labels to be translated to the ID as well
      • Multiple translation files can be given (separate paths by ,) to translate IDs in each image file
    • Option to compare volumes of only ROIs within a whole image using the crop_to_first_image option to compare matching volumes between two images by cropping the second image to the size of the first image
  • Option to specify the registered images used for volume metrics through --reg_suffixes
  • Option to specify channel(s) to include in heatmaps
  • Blobs positions are scaled to the main image

I/O

  • Open image files through file browsers (eg macOS Finder, Windows Explorer) (#18)
    • Open files in key supported file formats (eg .npy, .mhd, .nii.gz) by double-clicking or using "Open with...", or drag-n-drop onto the application icon in macOS
    • If MagellanMapper already has a loaded image, another application instance will be opened with the new image
  • Open files on macOS through URIs: open magmap:<path>
  • Image file metadata now uses YAML format for human-readable files; NPZ files are still supported for backward-compatibility
  • Logging
    • Logging using the in-built Python logging facility is now supported, including output to log files
    • The --verbose level=<n> log_path=<path> flag specifies the log level from 1 (DEBUG, most verbose) to 5 (CRITICAL, least verbose) and log output path
    • Unhandled exceptions are now logged (saved to a temp file if caught before logging is set up) (#17)
  • PDF export
    • Use nearest neighbor interpolation for consistency with 2D image export to other formats
    • Avoid merging layers by turning off image compositing
  • Matplotlib style is set more consistently to "default"
  • Intensity-based co-localizations are stored in the blobs archive
  • Database
    ...
Read more