Recent Releases of The Vascular Modeling Toolkit

The Vascular Modeling Toolkit - JOSS Review

Release for zendoo archiving associated with https://github.com/openjournals/joss-reviews/issues/745

Scientific Software - Peer-reviewed - C++
Published by rlizzo over 7 years ago

The Vascular Modeling Toolkit - Release 1.4.0

We are pleased to announce the latest version of VMTK is ready for general use! Please see the documentation below for details.

Python 3 Support

VMTK now supports the following python versions for each platform:

  • Linux (Many Linux Compatible): 2.7, 3.5, 3.6+
  • MacOSX (Minimum MacOS 10.9): 2.7, 3.5, 3.6+
  • Windows 10: 3.5, 3.6+

Packaging and Distribution via Anaconda

VMTK has officially embraced the Anaconda Python packaging and distribution system for dependency and code management. Official releases are posted to the VMTK Anaconda Channel. Our Installation Instruction have been updated on the VMTK webpage to reflect the change.

Executable installers are also available at the VMTK Downloads Page.

In the future, we plan to also post releases to the conda-forge Anaconda channel. We are waiting for conda-forge to support VTK on MacOSX before making this transition.

Please note: we will no longer be releasing new versions of VMTK on PyPi


Native Conversion of VMTK Data Structures to Numpy Arrays

We now allow you to use all of the functionality that VMTK offers in filtering images, creating surfaces, centerlines, or volumetric meshes, while seemlessly being able to employ any external processing available in the scientific python ecosystem. With the following new methods, you can losslesly translate data (generated in either VMTK or in Python proper) back and forth between the VTK data formats and Numpy Arrays:

  • vmtkImageToNumpy
  • vmtkNumpyToImage
  • vmtkCenterlinesToNumpy
  • vmtkNumpyToCenterlines
  • vmtkSurfaceToNumpy
  • vmtkNumpyToSurface
  • vmtkMeshToNumpy
  • vmtkNumpyToMesh

A tutorial has been provided on the VMTK website which walks you through the process of interacting with the translation routines


Store Data to Disk as HDF5 or Pickled Python Files

With the VMTK-Numpy conversion utilities, we now allow VMTK data structures to be saved (and read) to disk as HDF5 or Python Pickle objects. These methods are available in the following methods:

  • vmtkNumpyWriter
  • vmtkNumpyReader

Pype Scripts Include Sensible Default Values

It is now significantly easier to break up pypes run on the command line. Instead of relying on output members to specify input array names for scripts down the pype, we now include sensible defaults to the input array names. It is now possible to run one set of commands which generate a surface/centerline from an image, write those files to disk, and run another set of commands which perform further calculations or visualizations with no need to respecify array names.

It should be noted that this does not require any change in workflows that are already predefined. Any manually specified pype argument will override the default value. The same goes for vmtkscripts which are run from within a conventional python file. The default values have been updated on the VMTK Docs Webpage.


VTK & ITK Versions

VTK 8.1 is the default which will be distributed with binary packages. Custom builds should be able to use back to VTK 6.

ITK 4.13.0 is the default which is distributed with binary packages. Custom builds should be able to use back to ITK 4.9


Significant Backend Changes and Modernization

The VMTK build system and community workflows have undergone significant updates. We’ve documented the new process in our Contributing Guidelines. Changes of particular significance are:

  • Unit Testing and Continuous Integration - We’ve built a PyTest based unit-test framework from scratch, and are using Travis-CI and Appveyor to test pull requests.
  • Modernization of Our CMake Build System to improve local development builds. Activation of a development build no longer modifies LDLIBRARYPATH on Linux, or DYLDLIBRARYPATH on MacOSX. We have transitioned from CMAKEMINIMUMREQURED(2.8) to Version 3.4.
  • External projects depending on VMTK should note that we now export VMTK-Targets in our cmake install methods.
  • Overhaul our packaging & distribution system to allow for regular symantic version releases.

Script Improvements:

  • #249 Add additional smoothing filter to vmtkimagesmoothing using ITK an-isotropic diffusion.
  • #247 Font size scales based on display screen size.
  • #233 Fix vmtkbranchclipper with insideout enabled.
  • #200 Modify vmtksurfaceendclipper to clip based on centerline information
  • Many bugfixes

Breaking Changes

  • Python 2.7 is no longer supported on Windows.
  • No further packages will be released on the VMTK PyPi channel.
  • Removed ability to read in DICOM files specified only via a directory path (pypescript -d argument). See #220

Contributors

Rick Izzo - @rlizzo Luca Antiga - @lantiga Kurt Sansom - @kayarre Andras Lasso - @lassoan Jean-Christophe Fillion-Robin - @jcfr Alain Berod

Scientific Software - Peer-reviewed - C++
Published by rlizzo almost 8 years ago

The Vascular Modeling Toolkit - Python 3 Support

Creating a release tag in order to specify project version in the anaconda distribution build. This is a pre-release.

Scientific Software - Peer-reviewed - C++
Published by rlizzo almost 9 years ago

The Vascular Modeling Toolkit - OSX Rendering Fix

The issue is related to opening a render window and starting the interactor on a multiprocessing Process (it worked before Sierra). We must now avoid forking a new Process if platform is Darwin.

Scientific Software - Peer-reviewed - C++
Published by daron1337 almost 9 years ago

The Vascular Modeling Toolkit - VTK 7.1.0 compatibility

Scientific Software - Peer-reviewed - C++
Published by daron1337 about 9 years ago