Skip to content

Scalismo 0.16.0

Compare
Choose a tag to compare
@marcelluethi marcelluethi released this 14 Dec 14:36

Release highlights

  • Simplified registration interface (#213)
  • New registration metrics and improved metric interface (#200)
    • Mutual information metric for image to image registration (#214)
    • Robust metrics
  • More flexible interpolation scheme for DiscreteField and DiscreteGaussianProcess (#220) (#216) (#219)
    • Linear interpolation for GaussianProcesses and DiscreteFields which are defined on an image domain. (#221)

Breaking changes

For improving the registration and to be able to add the mutual information metric, a number of breaking changes were necessary:

  • The steps for setting up the registration pipeline have changed.
  • DiscreteGaussianProcess and DiscreteFields now take the domain as a type parameter.
  • To guarantee that all the random computations can be made deterministic by seeding a random generator,
    we have made it necessary to define an implicit val with a properly seeded instance of scalismo.util.Random or to import an implicit.

A working example that includes all the breaking changes can be found in the quickstart guide.

Bugfixes and minor changes

  • Corrected computation of covariance matrix in MultivariateNormalDistribution (fixes #204)
  • Removed implicit random value from sampling interface. Fixes #211 (#226)
  • Corrected inconsistent DiscreteDomain.hashCode (#209)
  • Changed GPA alignement, such that it does not change the reference. (#202)
  • Implicit Random needs now explicit import for the default value (#210)
  • run vtk garbage collector on initialization (#207)
  • remove requirement that transformationspaces have to be differentiable for registration (#206)
  • Return InterpolatedLowRankGP in DiscreteLowRankGP.interpolate (#219)
  • Changed hierarchy of ClosestPoint classes (see Issue #201) (#203)

Contributors

The following people contributed to this release:

  • Anna Smolinski (Mutual information)
  • Andreas Forster (several bugfixes)
  • Thomas Gerig (Linear interpolation)
  • Sandro Schönborn (several bugfixes)
  • Marcel Lüthi (Metric interface, Registration interface, Interpolation of DiscreteGaussianProcesses, several bugfixes)

Use git shortlog v0.15.0..v0.16.0 --no-merges for a detailed overview of the individual commits

Obtaining Scalismo

In order to use this version of Scalismo, bump the Scalismo version in your sbt-based project.
See the the setup guide for details.