We are proud to announce Voreen 4.0, the first official release after more than a year of development. For an (almost) complete list of changes see the Changelog. What follows are the most relevant/exciting changes:
We have integrated the Insight Segmentation and Registration Toolkit (ITK) to massively extend the volume filtering and segmentation features provided by Voreen. The ITK module consists of over 140 processors wrapping a wide range of algorithms implemented in ITK.
Redesigned Volume Classes
We have redesigned our volume classes remove a bunch of shortcomings and removed the VolumeContainer from Voreen since it does not fit in the overall concept. You can still view all loaded volumes in a volume-viewer widget.
The volume classes now store all kinds of meta-data. You can use the new MetaDataExtractor processor customize the display of this data on the screen.
New Default Fileformat
We have replaced the previously used .dat+.raw file format by the new .vvd+.raw format. The .vvd format is a straightforward XML-serialization of the internal representation and therefore allows us to store all the meta-data effortlessly.
You can still load and save .dat files, but we'd suggest you avoid this format since it cannot store meta-data and messes up the spacing.
Correct Handling of Spacing and Transformations
Our volume classes now correctly interpret spacings (which were interpreted as aspect ratios until now). VolumeReaders have been adapted accordingly and now also support reading of transformation matrices. This means that you can (finally!) measure distances and volumes in voreen.
Correct Handling of Values
Since Voreen development is moving from a pure focus on volume rendering towards a (medical) visualization/analysis rapid prototyping tool we added another missing feature that is almost to embarrassing to mention: Voreen 4.0 supports correct handling of values. So you can finally get your voxel intensities in houndsfield units instead of a meaningless number. The transfer function editor now allows you to configure the domain of the transfer function and displays minimal and maximal values in the volume.
Processors can now cache their results based on hashes of the input data and property state. This is mostly utilized in volume-processors.
Improved DICOM Support
Good DICOM support is crucial for medical applications. We have worked hard on a new DICOM reader based on the GDCM library. Our reader is configurable using XML and supports reading JPEG 2000 compressed DICOMs and of all kinds of meta data, including transformations and value mapping information. Using GDCM >= 2.2 you can load volumes directly from your PACS-Server.
Improved Registration Support
The new volume classes allow for an easier registration support in voreen. In case your multimodal volume data isn't pre-registered (supported by many of our readers) Voreen 4.0 ships with an additional interactive registration workspace that implements convenient manual rotation and transformation widgets.
Extended Multi-view Capabilites
We have implemented the TripleView processor as an addition to the already available QuadView processor. The new Splitter processor implements a functionality well known from GUI toolkits: It splits the view horizontally or vertically in a configurable ratio. By combining a few of these you can quickly realize advanced layouts.
Improved Copy & Paste in the Network-Editor
It might not seems like a big deal, but copy & paste in the network-editor now also includes connections and links as well as relative position of processors and therefore greatly improves usability.
64-Bit Support for Windows
From now on, we also provide 64-bit builds of voreen for windows so you can load larger volumes to the RAM. (Unix users who built from source get 64-bit executables anyway)
We have updated our development infrastructure and now use CMake instead of QMake which results in an easier and more flexible build process, especially on windows. We have also replaced subversion with git as version control system and are working on a solution to make the development more public. As a start, we added a new "staging" module that contains code which is not quite release-ready but may be interesting for developers. Internally we have designed a new regression-test framework which we plan to make available to the public shortly.
As you can see we have updated and extended the documentation provided here and plan to continue to write new articles explaining how to use Voreen for developers and end-users.