Difference between revisions of "MITK ReleaseNotes 2015.05"
SaschaZelzer (talk | contribs) |
|||
(28 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
− | + | [[File:Release2015-05.png|thumb|300px|MITK ReleaseNotes 2015.05]] | |
− | + | This is the 2015.05 release of the [[MITK_Release_Cycle|MITK release cycle]]. You find a list of new features, bug fixes and known issues below: | |
− | |||
− | This is the 2015. | ||
__TOC__ | __TOC__ | ||
− | == What | + | == What is included? == |
Binary installers for Windows, Mac OS X and Linux are provided, which contain the ''MITK Workbench'' application. In addition to image loading/saving and level windowing, the following plugins are included: | Binary installers for Windows, Mac OS X and Linux are provided, which contain the ''MITK Workbench'' application. In addition to image loading/saving and level windowing, the following plugins are included: | ||
Line 24: | Line 22: | ||
* '''experimental''' DICOM Query/Retrieve (based on components from the Common Toolkit [http://commontk.org CTK]) | * '''experimental''' DICOM Query/Retrieve (based on components from the Common Toolkit [http://commontk.org CTK]) | ||
− | Please note that the installers | + | Please note that the installers neither contain the source code nor header files of the precompiled libraries. To develop applications or plug-ins with MITK please get the [[Downloads#Source_code| source code]]. |
Line 31: | Line 29: | ||
− | == Highlights of 2015. | + | == Highlights of 2015.05 release == |
+ | |||
=== Build system === | === Build system === | ||
− | * C++ 11 support | + | * C++ 11 support (see [[MITK_C%2B%2B_11/14_Status|C++ 11/14 Status]]) |
− | + | * CMake 3.2 is the minimum required version | |
− | * CMake 3.2 is | + | * Qt 5 is default for Windows and Linux, Qt 4 for Mac OS X |
− | * Qt 5 is default for | + | * Minimum required compiler versions: GNU 4.7.3, Clang 3.4, AppleClang 5.0, MSVC 2012 |
− | * | + | * Directory layout has changed (e.g. external projects moved to top-level "ep" directory) |
+ | * Source files of modules are organized in src and include directories | ||
+ | |||
=== Core modules === | === Core modules === | ||
− | * | + | * Cleanup of the geometry classes: |
− | ** GeometryTransformHolder is a new helper class which manages the transform related variables. Its job is to keep all information about the transform (as e.g.: spacing, offset, transformation matrices) in consistent states. It provides getters and setters to all transformation related information. To make sure | + | ** GeometryTransformHolder is a new helper class which manages the transform related variables. Its job is to keep all information about the transform (as e.g.: spacing, offset, transformation matrices) in consistent states. It provides getters and setters to all transformation related information. To make sure that the geometries are in a proper state, you should always use the set methods to change them. |
** BackTransform() function is removed. Please use WorldToIndex() instead. | ** BackTransform() function is removed. Please use WorldToIndex() instead. | ||
** The scaling factor in the PlaneGeometry class is removed. It can be calculated directly by GetExtent()/GetExtentInMM(). | ** The scaling factor in the PlaneGeometry class is removed. It can be calculated directly by GetExtent()/GetExtentInMM(). | ||
− | ** Pre- and Post-functions are removed and not necessary any more (except PreSetSpacing). New functions are CheckBounds() and CheckIndexToWorldTransform. Assertions can be implemented in these functions (e.g. see PlaneGeometry.cpp). If you implement these functions in a subclass, make sure | + | ** Pre- and Post-functions are removed and not necessary any more (except PreSetSpacing). New functions are CheckBounds() and CheckIndexToWorldTransform. Assertions can be implemented in these functions (e.g. see PlaneGeometry.cpp). If you implement these functions in a subclass, make sure to have an implementation of this function (e.g. inheritance BaseGeometry <- A <- B. Implementation of CheckBounds in class B needs implementation in A as well!). |
+ | |||
+ | |||
+ | === BlueBerry === | ||
− | + | The MITK application framework BlueBerry got a lot of attention, resulting in a cleaner plug-in structure and an improved API. Standard MITK plug-ins will need no or only minimal code changes to be compatible with this new version. | |
− | |||
==== Removed Functionality ==== | ==== Removed Functionality ==== | ||
Line 56: | Line 59: | ||
The following deprecated functionality has been removed | The following deprecated functionality has been removed | ||
− | * BlueBerry plug-in system: The org.blueberry.compat plugin was removed and the non plug-in system related code from the org.blueberry.osgi and org.blueberry.solstice.common plug-ins was merged with org.blueberry.core.runtime plug-in. | + | * BlueBerry plug-in system: The org.blueberry.compat plugin was removed and the non plug-in system related code from the org.blueberry.osgi and org.blueberry.solstice.common plug-ins was merged with the org.blueberry.core.runtime plug-in. |
+ | |||
==== Changed API ==== | ==== Changed API ==== | ||
Line 62: | Line 66: | ||
* The org.blueberry.ui plug-in was merged with the org.blueberry.ui.qt plug-in, removing one level of indirection related to the usage of GUI classes within BlueBerry. | * The org.blueberry.ui plug-in was merged with the org.blueberry.ui.qt plug-in, removing one level of indirection related to the usage of GUI classes within BlueBerry. | ||
* Many usages of STL containers and Poco types in method signatures have been replaced with their Qt counterparts. This may affect derived classes which need to adapt the signature of methods intended to override base class methods. | * Many usages of STL containers and Poco types in method signatures have been replaced with their Qt counterparts. This may affect derived classes which need to adapt the signature of methods intended to override base class methods. | ||
+ | * The berry::IApplication interface was changed to support an application context and generic return values | ||
+ | * The org.blueberry.osgi.application extension point now requires the application id to be an attribute of the extension tag instead of the application tag. | ||
+ | |||
==== New Features ==== | ==== New Features ==== | ||
− | * Command Framework | + | * Commands and Handlers - A powerful mechanism for extending menus and toolbars. BlueBerry now implements the Eclipse command framework and provides the ''org.blueberry.ui.menus'' extension point for adding UI contributions to menus, toolbars, status bars and context menus. More detailed information about the concepts can be found in the original Eclipse documentation: |
− | + | ** [http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fworkbench.htm Commands] | |
+ | ** [http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fworkbench.htm Handlers] | ||
+ | ** [http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fworkbench.htm Menu extensions] | ||
+ | ** [http://wiki.eclipse.org/Command_Core_Expressions Command Core Expressions] | ||
+ | * New plug-in and framework debugging features. BlueBerry makes use of the improved debugging facilities in the CTK Plugin Framework as described in [[How to enable debugging output]]. | ||
+ | |||
=== Modules === | === Modules === | ||
− | The following modules were | + | The following modules were added or factored out from existing modules: |
* AlgorithmsExt: Added the anisotropic iterative closest point registration algorithm (AICP) for surfaces | * AlgorithmsExt: Added the anisotropic iterative closest point registration algorithm (AICP) for surfaces | ||
* Multilabel Module: Contains data structures and mappers for displaying multilabel data | * Multilabel Module: Contains data structures and mappers for displaying multilabel data | ||
* RDF: Containing basic support for dealing with RDF data | * RDF: Containing basic support for dealing with RDF data | ||
+ | * AppUtil: A utility module for launching BlueBerry applications | ||
+ | |||
==== Python ==== | ==== Python ==== | ||
Line 81: | Line 95: | ||
* Experimental Qt5 support | * Experimental Qt5 support | ||
* Upgraded to Numpy 1.9.2 | * Upgraded to Numpy 1.9.2 | ||
+ | |||
==== Segmentation ==== | ==== Segmentation ==== | ||
* The 3D-interpolation has been extended to work on 4D-images as well. | * The 3D-interpolation has been extended to work on 4D-images as well. | ||
* Segmentation Utilities View was extended for a ContourModelToImage tab, which allows to convert contour data into an binary image | * Segmentation Utilities View was extended for a ContourModelToImage tab, which allows to convert contour data into an binary image | ||
− | * | + | * Morphological operators can now be applied in 2D |
− | ==== MITK Workbench | + | |
+ | ==== MITK Navigation Modules (IGT, US and ToF) ==== | ||
+ | Please see [[MITK_IGT_ReleaseNotes_2015.05]]. | ||
+ | |||
+ | |||
+ | ==== Diffusion ==== | ||
+ | * To ease maintenance, the DiffusionImage class has been removed. All functionality previously provided by the DiffusionImage can now be achieved by using the Image class. For an example of how to change your code see the [[DiffusionImageMigrationGuide]] | ||
+ | * The new reader/writer concept, introduced in the last release, has enabled us to recognize and load .nrrd and .nii/.nii.gz images as diffusion weighted images if diffusion information is present. You no longer need to rename them to .dwi or .fsl/fslgz. You can still read the old files however. | ||
+ | |||
+ | |||
+ | === MITK Workbench === | ||
* A new ''Perspectives'' preference page allows custom perspectives to be reset or removed. | * A new ''Perspectives'' preference page allows custom perspectives to be reset or removed. | ||
− | |||
− | |||
* Views are not listed as tool bar buttons any more. Instead the ''view shortcuts'' of the currently active perspective are shown in the ''Show View'' sub-menu. | * Views are not listed as tool bar buttons any more. Instead the ''view shortcuts'' of the currently active perspective are shown in the ''Show View'' sub-menu. | ||
* A new ''Show View / Other...'' menu entry allows to browse all available views by category and keyword | * A new ''Show View / Other...'' menu entry allows to browse all available views by category and keyword | ||
Line 99: | Line 122: | ||
* A MRU list (most recently used) of editor inputs is shown in the ''File'' menu if the editor supports it. | * A MRU list (most recently used) of editor inputs is shown in the ''File'' menu if the editor supports it. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==== Third-Party Toolkits ==== | ==== Third-Party Toolkits ==== | ||
Line 116: | Line 133: | ||
* HDF5 | * HDF5 | ||
* Redland, Raptor, Rasqal for RDF support | * Redland, Raptor, Rasqal for RDF support | ||
+ | |||
== Deprecated Functionality == | == Deprecated Functionality == | ||
− | The documentation contains a detailed list of [http://docs.mitk.org/2015. | + | The documentation contains a detailed list of [http://docs.mitk.org/2015.05/deprecatedSince2015_05.html deprecated functionality]. |
− | |||
+ | == Major Changes ahead == | ||
− | + | We are currently working on restructuring a lot of Geometry and Interaction related code. | |
+ | This will lead to breaking changes that will be introduced '''after''' this release, so be sure to study the updated deprecated list. Most significant changes are | ||
+ | * DisplayGeometry (will become obsolete) | ||
+ | * Legacy Interaction will be completely removed | ||
+ | |||
+ | Please be sure follow our annoucements on the MITK Mailing-List concerning these changes. | ||
== Bugfixes == | == Bugfixes == | ||
− | In the | + | In the 6 months since the last release around [http://bugs.mitk.org/buglist.cgi?bug_severity=blocker&bug_severity=critical&bug_severity=major&bug_severity=medium&bug_severity=minor&bug_severity=trivial&bug_severity=unspecified&resolution=FIXED&chfieldto=2015-05-19&chfield=resolution&chfield=bug_status&query_format=advanced&chfieldfrom=2014-11-27&chfieldvalue=FIXED&bug_status=RESOLVED&component=Biophotonics&component=BlueBerry&component=Build%20system&component=Core&component=CoreApp%20Plugins&component=CoreUI&component=Diffusion%20Imaging&component=Documentation&component=IGT&component=Measurement%20%26%20Statistics&component=Modules&component=Other&component=Python%20Wrapping&component=QtWidgetModules&component=Rendering&component=Segmentation&component=ToF&component=Workbench%20Plugins&product=MITK&list_id=83681 240] bugs were fixed. |
+ | |||
+ | |||
+ | == New feature list == | ||
+ | Complete list of new features since MITK 2014.10: | ||
+ | |||
+ | {| class="wikitable" width=100% style="background-color:#ffffff;" | ||
+ | !ID | ||
+ | !Comp | ||
+ | !Summary | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18781 18781] | ||
+ | |BlueBerry | ||
+ | |Logging View: Reset search filter button is missing | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18319 18319] | ||
+ | |Build system | ||
+ | |Update default build configuration with new release plugins | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18532 18532] | ||
+ | |Build system | ||
+ | |Enhance Module and Plugin Preset Configurations | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18118 18118] | ||
+ | |Build system | ||
+ | |Update SOFA to latest revision (18/09/2014). | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18657 18657] | ||
+ | |Build system | ||
+ | |Update ITK to version 4.7.0 | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18765 18765] | ||
+ | |Build system | ||
+ | |move vigra and hdf5 open source | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18605 18605] | ||
+ | |Build system | ||
+ | |Support modern CMake and C++11 features | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18653 18653] | ||
+ | |Core | ||
+ | |Extend custom mime type by functions to get filename and extension | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=14866 14866] | ||
+ | |Core | ||
+ | |Make FileReader and FileWriter Microservice-based | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18850 18850] | ||
+ | |Core | ||
+ | |Allow setting point size for surface rendering | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18313 18313] | ||
+ | |Diffusion | ||
+ | |implement direction dependent fiber removal | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18568 18568] | ||
+ | |Diffusion | ||
+ | |implement improved method to process fiber bundle curvatures | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=17928 17928] | ||
+ | |Diffusion | ||
+ | |Convert diffusion image to mitk image | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=16656 16656] | ||
+ | |Diffusion | ||
+ | |Fiberextraction: placed planar figure should be automatically selected after placing | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18641 18641] | ||
+ | |Diffusion | ||
+ | |Support diffusion images in .nii format | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18767 18767] | ||
+ | |Diffusion | ||
+ | |move machine learning based tractography to MITK | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18844 18844] | ||
+ | |Diffusion | ||
+ | |Fiberfox: add partial fourier and move noise to k-space | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=15459 15459] | ||
+ | |Diffusion | ||
+ | |Enable loading of SIEMENS MOSAIC DICOM diffusion files | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18182 18182] | ||
+ | |IGT | ||
+ | |IGT Release Candidates 2014-10 | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18295 18295] | ||
+ | |IGT | ||
+ | |Add Virtual Tracking Device to UI of tracking toolbox | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18267 18267] | ||
+ | |IGT | ||
+ | |Feature to freeze navigation data source | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=8329 8329] | ||
+ | |IGT | ||
+ | |Integrate VirtualTrackingDevice into NavigationToolStorage | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=19005 19005] | ||
+ | |IGT | ||
+ | |Extend NavigationDataPlayer to work with .csv | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=17739 17739] | ||
+ | |Measurement | ||
+ | |Change PlanarFigure::PolyLineElement to Point2D | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=14580 14580] | ||
+ | |Measurement | ||
+ | |Allow measurement on all data with geometry | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=14643 14643] | ||
+ | |Measurement | ||
+ | |Delete planar figures after selecting them in the four window view | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18481 18481] | ||
+ | |Modules | ||
+ | |Image to UnstructuredGrid filter | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18556 18556] | ||
+ | |Modules | ||
+ | |Add CopyDeep method to PlanarFigure | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18579 18579] | ||
+ | |Modules | ||
+ | |Move the mitkPlaneFit Filter from mbi to mitk | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18637 18637] | ||
+ | |Modules | ||
+ | |DBSCAN filter for unstructured grids in mitk | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18682 18682] | ||
+ | |Modules | ||
+ | |Add colorbar overlay | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18802 18802] | ||
+ | |Modules | ||
+ | |Create MitkSurfaceToPointSetFilter | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18886 18886] | ||
+ | |Modules | ||
+ | |New convenient methods to insert openCV images as time slice in mitk image | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18062 18062] | ||
+ | |Modules | ||
+ | |It should be possible to select nothing in QmitkDataStorageComboBox | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=14717 14717] | ||
+ | |Python Wrapping | ||
+ | |Add detailed Documentation for Python module and view | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18536 18536] | ||
+ | |Rendering | ||
+ | |Add Overlay flag to render mitkOverlays on top | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=9899 9899] | ||
+ | |Rendering | ||
+ | |Surfaces seem to be rendered in software modus | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=19044 19044] | ||
+ | |Rendering | ||
+ | |Transparent JET LUT | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=17810 17810] | ||
+ | |Segmentation | ||
+ | |Enhance segmentation utilities with contourmodel to image functionality | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18541 18541] | ||
+ | |Segmentation | ||
+ | |Create module for multilabel segmentation | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18567 18567] | ||
+ | |Segmentation | ||
+ | |Enable 2D morphological operations in segmentation utility plugin | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=16133 16133] | ||
+ | |Segmentation | ||
+ | |Provide 4D support for 3D interpolation | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18728 18728] | ||
+ | |ToF | ||
+ | |Create a Parameter Widget for Structure Sensor | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18423 18423] | ||
+ | |ToF | ||
+ | |View for saving screen shots of ToF images for calibration | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18222 18222] | ||
+ | |Workbench | ||
+ | |CMD Plugin does not support MiniApp | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18732 18732] | ||
+ | |Workbench | ||
+ | |Make Base data property list available in developer mode of Properties view | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18957 18957] | ||
+ | |Workbench | ||
+ | |Enhance Properties View Usability | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=18219 18219] | ||
+ | |Workbench | ||
+ | |View navigator: copying perspective does not take into account changes made to copied perspective. | ||
+ | |} | ||
− | |||
+ | == Known Issues == | ||
− | + | Incomplete list of known issues affecting the binary release of MITK 2015.05: | |
− | |||
{| class="wikitable" width=100% style="background-color:#ffffff;" | {| class="wikitable" width=100% style="background-color:#ffffff;" | ||
Line 140: | Line 364: | ||
!Comp | !Comp | ||
!Summary | !Summary | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=19054 19054] | ||
+ | | BlueBerry | ||
+ | | Save Perspective As dialog shows wrong item names | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=19057 19057] | ||
+ | | BlueBerry | ||
+ | | Context help will not open on F1 after starting | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=19089 19089] | ||
+ | | BlueBerry | ||
+ | | Some application menu entries are not shown on Mac OS X | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=19122 19122] | ||
+ | | BlueBerry | ||
+ | | Help Contents view contains only one entry on first start | ||
+ | |- | ||
+ | |[http://bugs.mitk.org/show_bug.cgi?id=19123 19123] | ||
+ | | BlueBerry | ||
+ | | "General" preferences pages missing on first start | ||
|} | |} | ||
+ | |||
+ | For a more complete and up-to-date list of all current major bugs check our [http://bugs.mitk.org/buglist.cgi?priority=high&priority=medium&priority=low&f1=creation_ts&list_id=83733&bug_severity=blocker&bug_severity=critical&bug_severity=major&o1=lessthan&resolution=---&query_format=advanced&bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&v1=2015-06-03&component=BlueBerry&component=Build%20system&component=Core&component=CoreApp%20Plugins&component=CoreUI&component=Documentation&component=Measurement%20%26%20Statistics&component=Modules&component=Other&component=Python%20Wrapping&component=QtWidgetModules&component=Rendering&component=Segmentation&component=Workbench%20Plugins&product=MITK bug tracker] | ||
+ | |||
+ | == List of all contributors == | ||
+ | We want to thank all developers who contributed to the MITK 2015.05 release: | ||
+ | |||
+ | * Adrian Winterstein | ||
+ | * Alfred Franz | ||
+ | * Andreas Fetzer | ||
+ | * Caspar Goch | ||
+ | * Christian Weber | ||
+ | * Christoph Kolb | ||
+ | * Daniel Knorr | ||
+ | * Eric Heim | ||
+ | * Esther Wild | ||
+ | * Heather | ||
+ | * Ingmar Wegner | ||
+ | * Jan Hering | ||
+ | * Jan Zieher | ||
+ | * Jasmin Metzger | ||
+ | * Jonas Cordes | ||
+ | * Joseph Görres | ||
+ | * Keno März | ||
+ | * Marco Nolden | ||
+ | * Markus Engel | ||
+ | * Martin Klemm | ||
+ | * Matt Clarkson | ||
+ | * Matthias Eisenmann | ||
+ | * Michael Brehler | ||
+ | * Michael Goetz | ||
+ | * Miklos Espak | ||
+ | * Nico Riecker | ||
+ | * Paul Mercea | ||
+ | * Peter Neher | ||
+ | * Rostislav Khlebnikov | ||
+ | * Sandy Engelhardt | ||
+ | * Sascha Zelzer | ||
+ | * Sebastian Wirkert | ||
+ | * Stefan Kislinskiy | ||
+ | * Thomas Kilgus | ||
+ | * Thomas Kirchner | ||
+ | * Tobias Norajitra | ||
+ | * Vincent Reuter |
Latest revision as of 12:35, 18 June 2015
This is the 2015.05 release of the MITK release cycle. You find a list of new features, bug fixes and known issues below:
What is included?
Binary installers for Windows, Mac OS X and Linux are provided, which contain the MITK Workbench application. In addition to image loading/saving and level windowing, the following plugins are included:
- Volume Visualization
- Measurement
- Interactive Segmentation
- Logging View
- Remeshing
- Pointset Interaction
- Image Cropper
- View Navigator
- Screenshot Maker
- Movie Maker
- experimental Point-based, rigid and manual registration
- experimental DICOM Query/Retrieve (based on components from the Common Toolkit CTK)
Please note that the installers neither contain the source code nor header files of the precompiled libraries. To develop applications or plug-ins with MITK please get the source code.
How to get it?
Please have a look at the download page.
Highlights of 2015.05 release
Build system
- C++ 11 support (see C++ 11/14 Status)
- CMake 3.2 is the minimum required version
- Qt 5 is default for Windows and Linux, Qt 4 for Mac OS X
- Minimum required compiler versions: GNU 4.7.3, Clang 3.4, AppleClang 5.0, MSVC 2012
- Directory layout has changed (e.g. external projects moved to top-level "ep" directory)
- Source files of modules are organized in src and include directories
Core modules
- Cleanup of the geometry classes:
- GeometryTransformHolder is a new helper class which manages the transform related variables. Its job is to keep all information about the transform (as e.g.: spacing, offset, transformation matrices) in consistent states. It provides getters and setters to all transformation related information. To make sure that the geometries are in a proper state, you should always use the set methods to change them.
- BackTransform() function is removed. Please use WorldToIndex() instead.
- The scaling factor in the PlaneGeometry class is removed. It can be calculated directly by GetExtent()/GetExtentInMM().
- Pre- and Post-functions are removed and not necessary any more (except PreSetSpacing). New functions are CheckBounds() and CheckIndexToWorldTransform. Assertions can be implemented in these functions (e.g. see PlaneGeometry.cpp). If you implement these functions in a subclass, make sure to have an implementation of this function (e.g. inheritance BaseGeometry <- A <- B. Implementation of CheckBounds in class B needs implementation in A as well!).
BlueBerry
The MITK application framework BlueBerry got a lot of attention, resulting in a cleaner plug-in structure and an improved API. Standard MITK plug-ins will need no or only minimal code changes to be compatible with this new version.
Removed Functionality
The following deprecated functionality has been removed
- BlueBerry plug-in system: The org.blueberry.compat plugin was removed and the non plug-in system related code from the org.blueberry.osgi and org.blueberry.solstice.common plug-ins was merged with the org.blueberry.core.runtime plug-in.
Changed API
- The org.blueberry.ui plug-in was merged with the org.blueberry.ui.qt plug-in, removing one level of indirection related to the usage of GUI classes within BlueBerry.
- Many usages of STL containers and Poco types in method signatures have been replaced with their Qt counterparts. This may affect derived classes which need to adapt the signature of methods intended to override base class methods.
- The berry::IApplication interface was changed to support an application context and generic return values
- The org.blueberry.osgi.application extension point now requires the application id to be an attribute of the extension tag instead of the application tag.
New Features
- Commands and Handlers - A powerful mechanism for extending menus and toolbars. BlueBerry now implements the Eclipse command framework and provides the org.blueberry.ui.menus extension point for adding UI contributions to menus, toolbars, status bars and context menus. More detailed information about the concepts can be found in the original Eclipse documentation:
- New plug-in and framework debugging features. BlueBerry makes use of the improved debugging facilities in the CTK Plugin Framework as described in How to enable debugging output.
Modules
The following modules were added or factored out from existing modules:
- AlgorithmsExt: Added the anisotropic iterative closest point registration algorithm (AICP) for surfaces
- Multilabel Module: Contains data structures and mappers for displaying multilabel data
- RDF: Containing basic support for dealing with RDF data
- AppUtil: A utility module for launching BlueBerry applications
Python
- Fixed MITK-Python installers for all supported platforms with Qt4
- Added documentation and build instructions for the MITK-Python module
- Added build instructions for MITK-Python with Qt5
- Experimental Qt5 support
- Upgraded to Numpy 1.9.2
Segmentation
- The 3D-interpolation has been extended to work on 4D-images as well.
- Segmentation Utilities View was extended for a ContourModelToImage tab, which allows to convert contour data into an binary image
- Morphological operators can now be applied in 2D
Please see MITK_IGT_ReleaseNotes_2015.05.
Diffusion
- To ease maintenance, the DiffusionImage class has been removed. All functionality previously provided by the DiffusionImage can now be achieved by using the Image class. For an example of how to change your code see the DiffusionImageMigrationGuide
- The new reader/writer concept, introduced in the last release, has enabled us to recognize and load .nrrd and .nii/.nii.gz images as diffusion weighted images if diffusion information is present. You no longer need to rename them to .dwi or .fsl/fslgz. You can still read the old files however.
MITK Workbench
- A new Perspectives preference page allows custom perspectives to be reset or removed.
- Views are not listed as tool bar buttons any more. Instead the view shortcuts of the currently active perspective are shown in the Show View sub-menu.
- A new Show View / Other... menu entry allows to browse all available views by category and keyword
- A perspective shortcut list is now available in the Open Perspective sub-menu
- The Open Perspective / Other... menu entry allows to browse and open any available perspective
- If multiple workbench windows are open, the list of windows is displayed in the Window menu
- A MRU list (most recently used) of editor inputs is shown in the File menu if the editor supports it.
Third-Party Toolkits
The following toolkits were updated:
- OpenCV was updated to 2.4.11
- VTK was updated to 6.2
The following third-party toolkits were added to the MITK superbuild:
- HDF5
- Redland, Raptor, Rasqal for RDF support
Deprecated Functionality
The documentation contains a detailed list of deprecated functionality.
Major Changes ahead
We are currently working on restructuring a lot of Geometry and Interaction related code. This will lead to breaking changes that will be introduced after this release, so be sure to study the updated deprecated list. Most significant changes are
- DisplayGeometry (will become obsolete)
- Legacy Interaction will be completely removed
Please be sure follow our annoucements on the MITK Mailing-List concerning these changes.
Bugfixes
In the 6 months since the last release around 240 bugs were fixed.
New feature list
Complete list of new features since MITK 2014.10:
ID | Comp | Summary |
---|---|---|
18781 | BlueBerry | Logging View: Reset search filter button is missing |
18319 | Build system | Update default build configuration with new release plugins |
18532 | Build system | Enhance Module and Plugin Preset Configurations |
18118 | Build system | Update SOFA to latest revision (18/09/2014). |
18657 | Build system | Update ITK to version 4.7.0 |
18765 | Build system | move vigra and hdf5 open source |
18605 | Build system | Support modern CMake and C++11 features |
18653 | Core | Extend custom mime type by functions to get filename and extension |
14866 | Core | Make FileReader and FileWriter Microservice-based |
18850 | Core | Allow setting point size for surface rendering |
18313 | Diffusion | implement direction dependent fiber removal |
18568 | Diffusion | implement improved method to process fiber bundle curvatures |
17928 | Diffusion | Convert diffusion image to mitk image |
16656 | Diffusion | Fiberextraction: placed planar figure should be automatically selected after placing |
18641 | Diffusion | Support diffusion images in .nii format |
18767 | Diffusion | move machine learning based tractography to MITK |
18844 | Diffusion | Fiberfox: add partial fourier and move noise to k-space |
15459 | Diffusion | Enable loading of SIEMENS MOSAIC DICOM diffusion files |
18182 | IGT | IGT Release Candidates 2014-10 |
18295 | IGT | Add Virtual Tracking Device to UI of tracking toolbox |
18267 | IGT | Feature to freeze navigation data source |
8329 | IGT | Integrate VirtualTrackingDevice into NavigationToolStorage |
19005 | IGT | Extend NavigationDataPlayer to work with .csv |
17739 | Measurement | Change PlanarFigure::PolyLineElement to Point2D |
14580 | Measurement | Allow measurement on all data with geometry |
14643 | Measurement | Delete planar figures after selecting them in the four window view |
18481 | Modules | Image to UnstructuredGrid filter |
18556 | Modules | Add CopyDeep method to PlanarFigure |
18579 | Modules | Move the mitkPlaneFit Filter from mbi to mitk |
18637 | Modules | DBSCAN filter for unstructured grids in mitk |
18682 | Modules | Add colorbar overlay |
18802 | Modules | Create MitkSurfaceToPointSetFilter |
18886 | Modules | New convenient methods to insert openCV images as time slice in mitk image |
18062 | Modules | It should be possible to select nothing in QmitkDataStorageComboBox |
14717 | Python Wrapping | Add detailed Documentation for Python module and view |
18536 | Rendering | Add Overlay flag to render mitkOverlays on top |
9899 | Rendering | Surfaces seem to be rendered in software modus |
19044 | Rendering | Transparent JET LUT |
17810 | Segmentation | Enhance segmentation utilities with contourmodel to image functionality |
18541 | Segmentation | Create module for multilabel segmentation |
18567 | Segmentation | Enable 2D morphological operations in segmentation utility plugin |
16133 | Segmentation | Provide 4D support for 3D interpolation |
18728 | ToF | Create a Parameter Widget for Structure Sensor |
18423 | ToF | View for saving screen shots of ToF images for calibration |
18222 | Workbench | CMD Plugin does not support MiniApp |
18732 | Workbench | Make Base data property list available in developer mode of Properties view |
18957 | Workbench | Enhance Properties View Usability |
18219 | Workbench | View navigator: copying perspective does not take into account changes made to copied perspective. |
Known Issues
Incomplete list of known issues affecting the binary release of MITK 2015.05:
ID | Comp | Summary |
---|---|---|
19054 | BlueBerry | Save Perspective As dialog shows wrong item names |
19057 | BlueBerry | Context help will not open on F1 after starting |
19089 | BlueBerry | Some application menu entries are not shown on Mac OS X |
19122 | BlueBerry | Help Contents view contains only one entry on first start |
19123 | BlueBerry | "General" preferences pages missing on first start |
For a more complete and up-to-date list of all current major bugs check our bug tracker
List of all contributors
We want to thank all developers who contributed to the MITK 2015.05 release:
- Adrian Winterstein
- Alfred Franz
- Andreas Fetzer
- Caspar Goch
- Christian Weber
- Christoph Kolb
- Daniel Knorr
- Eric Heim
- Esther Wild
- Heather
- Ingmar Wegner
- Jan Hering
- Jan Zieher
- Jasmin Metzger
- Jonas Cordes
- Joseph Görres
- Keno März
- Marco Nolden
- Markus Engel
- Martin Klemm
- Matt Clarkson
- Matthias Eisenmann
- Michael Brehler
- Michael Goetz
- Miklos Espak
- Nico Riecker
- Paul Mercea
- Peter Neher
- Rostislav Khlebnikov
- Sandy Engelhardt
- Sascha Zelzer
- Sebastian Wirkert
- Stefan Kislinskiy
- Thomas Kilgus
- Thomas Kirchner
- Tobias Norajitra
- Vincent Reuter