The Insight Software Consortium is happy to announce the release of ITK 4.3!
The 4.3 release is a major milestone that marks the hard work of many outstanding community members. Links to the Sourceforge.net tarballs can be found on the download page: http://www.itk.org/ITK/resources/software.html InsightToolkit 4.3.1 tarballs were created after a bug in the PhilipsRecImageIO was discovered immediately after the 4.3.0 tag was pushed. We are excited to announce that experimental DICOM image reading is available via the DCMTK library as a backend in addition to the GDCM library. By default, DCMTK ImageIO support is not enabled. To try DCMTK ImageIO support, turn the CMake option Module_ITKIODCMTK ON. For Unix platforms, the supporting DCMTK library will automatically be built as a CMake ExternalProject. On Windows, the DCMTK library must be built independently of the ITK build system. Then, specify the location to the external build after setting the CMake option ITK_USE_SYSTEM_DCMTK ON. WrapITK has undergone extensive improvements and bug fixes. The status of WrapITK on various platforms can be found on the following Wiki page: http://www.itk.org/Wiki/ITK/WrapITK_Status A number of registration-related feature enhancements were added. The image registration methods have been updated to accommodate multiple image metrics within a single optimization scheme. This permits, for example, registration of a T1/T2 fixed image pair with a T1/T2 moving image pair using a single metric for both T1 and T2 gradients or even using two different metrics. New exponential transforms are available along with automated B-Spline transform scale estimation. A new physics-based non-rigid registration class is also available. Updated third-party library versions include: * NrrdIO from Teem 1.11, * libtiff 4.03, * FFTW 3.3.2 A large number of important bugs were crushed, including fixes to the ObjectFactoryBase, Patch-Based Denoising improvements, support for a system libtiff, mesh processing, and FFTW use. Support for itk::VectorImage’s was added to many algorithms, and a single templated Adaptor class can now be applied without modification to both itk::VectorImage’s and itk::Image’s of itk::Vector’s, itk::RGBPixel’s, etc. An extensive amount of code cruft was removed and coding style was made more consistent; ITK gets more stylish and classy with every release! Performance optimizations were achieved by removing GetInput/GetOutput calls within filter inner loops, improving memory alignment, memory access pattern optimizations, and parallelization through threading. NOTE: As previously scheduled, Visual Studio 2005 will no longer be supported after this release. Changes from v4.2.0 to v4.3.0: Andreas Schuh (1): DOC: Modify BSplineDeformableTransform comments. Andriy Kot (1): ENH: Main filter for A2D2 PBNRR. Arnaud Gelas (10): PERF: couple of performance improvements useful for mesh processing PERF: Minor performance improvement in KernelTransform BUG: Fix errors on MS Visual COMP: missing includes in itkVectorImageToImageMetricTraitsv4.h ENH: Add tests for iterator indices COMP: fix doxgen warnings COMP: fix warning about uninitialized value COMP: Fix compilation error (missing include). COMP: fix clang warning about unused parameter STYLE: Make CopyMeshToMesh a function just like the other Copy Container ones. Baohua Wu (2): BUG: fixed a few bugs related to GPU Demons ENH: added suport for buffered region in GPU image Bill Lorensen (11): COMP: Macro definition of None in X11 breaks enum BUG: ThirdParty should not depend on ITK ENH: Utility to find modules needed by an ITK app COMP: Incorrect test signature BUG: GDCMImageIO ignores ImagePositionPatient STYLE: Fix according to KWstyle BUG: DCMTKImageIOFactory has wrong class name COMP: Remove DCMTK from default modules COMP: add set methods for member variables where missing. BUG: Cannot read a 2 channel (gray, alpha) png file correctly COMP: Revert recent change to iterator that fails to compile Brad King (11): MetaIO: Avoid NULL dereference in MetaOutput::GetUsername KWSys: Fix SystemInformation declaration order ENH: Allow ITK modules to export custom information ENH: ExternalData: Fix typo in unknown action error message COMP: Make module header tests depend on module libraries COMP: Make module header tests depend on module libraries STYLE: Replace write_file() with file(WRITE) and file(APPEND) STYLE: Replace make_directory() with file(MAKE_DIRECTORY) STYLE: Replace install_(files|programs|targets) with install command STYLE: Replace remove() with list(REMOVE_ITEM) STYLE: Remove unsed vxl source directory Bradley Lowekamp (46): COMP: fixing error when instatiated with image of double PERF: remove per sample allocation, use per-thread structure BUG: prevent static initialization fiasco during factory registration PERF: Avoid memcpy call per component for Nift BUG: Correct for divide by zero when first bin has zero frequency PERF: add alignment data attribute to per-thread structure BUG: fix writing a corrupt meta image header from unknow metadata PERF: remove per sample allocation, use per-thread structure BUG: prevent static initialization fiasco during factory registration BUG: fix writing a corrupt meta image header from unknow metadata BUG: fix for overlay functor for llvm optimization bug ENH: adding support for VectorImage output in LabelMapCountorOverlay BUG: Fix segfault when no inital means were set. BUG: verify sigma is a positive number for Recursive Gaussian COMP: fix exception specification warning BUG: Restore automatic loading of factories in ITK_AUTOLOAD_PATH BUG: Avoid warning by using ProcessObject::GetInput method COMP: add missing functional header for logic ops tests BUG: The incorrect auto_load path was specified in itkIOPluginTest BUG: Use path to configure NrrdIO.h for installation PERF: Replacing iterator copy with optimized ImageAgotithm::Copy BUG: Prevent segfault when logger not set for PatchedBasedDenoising BUG: Update uncrustify configuration with space before access spec ENH: Enabling support for system lib versions prior to TIFF 4.0.0 STYLE: Fixed numerous style error in PatchBased denoising BUG: Internal factory must use RegisterFactoryInternal method BUG: Fix Wrapping FFTWComplexToComplex ENH: updating to libtif 4.0.3 BUG: Fix compilation ofswig external project BUG: Fix segfault from integer overflow in NIFTI reader BUG: disable wrapping of Toboggan filter for win 64 ENH: adding support for VectorImage to JoinSeries filter ENH: support for VectorImage output to GradientRecursiveGaussian BUG: Correcting wrapping CMakeList.txt for DCMTK ENH: Improve MRCImageIO support for VectorImages COMP: Adding Valgrind suppression for NRRD IO on RH6 ENH: Convert the Modulus filter to standard binary filter BUG: unset environmental default number of threads COMP: Adding valgrid suppression file for RHEL6 BUG: Remove NiftiBigIO Test add MEMORY_SIZE test lock COMP: Fix WrapITK warning in DCMTK BUG: Append FFTW dirs to ITK's in ITKConfig COMP: Fix link error with visibility-inlines-hidden BUG: ShrinkImageFilter marked as modified in SetShrinkFactor BUG: Prevent modulus by zero is Modulus functor BUG: Enable the rehash method to re-register internal factories. Brian Avants (2): COMP: The + operation was not registering on Win7-vc10-vce32rel BUG: InputImageDimension should be OutputImageDimension Brian Helba (1): ENH: Update Remote/LesionSizingToolkit to newer commit Cory Quammen (4): BUG: Added missing include BUG: Propagate the spacing and meta-data in FFTWForwardFFT fitler. BUG: Added locking around fftw_destroy_plan DOC: Modify PasteImageFilter comments. David Doria (6): ENH: Add a SetRegion function to all ImageIterators. ENH: Add SetRegion function to NeighborhoodIterators. ENH: Allow the ShapedNeighborhoodIterators to use SetRegion. COMP: Replace stdlib.h with cstdlib. STYLE: Replace dash character in comment. STYLE: Replace C Library headers with c[headername] Dirk Padfield (3): PERF: Faster distance computation and fixed reflective iterator bug BUG: Corrected bug in SignedDanielssonDistanceMap and added regression tests. ENH: Templated MaskedFFTNormalizedCorr. over MaskType (#ITK-2940) Fotis Drakopoulos (1): BUG: Variance and structure tensor fix Gang Song (2): ENH: Add sparse threader for ANTS CC metric COMP: Remove deque header from metric class header Gordon Kindlmann (5): ENH: updating ITK's NrrdIO to reflect state of Teem's NrrdIO, take 4 ENH: re-enabling warnings for NrrdIO ENH: warning about idxIn in reorder.c; no trailing whitespace ENH: still trying to quash warning about idxIn in reorder.c BUG: tracking changes (hopefully the last) in Teem prior to its 1.11 release Hans Johnson (35): ENH: Bump version to 4.3.0 BUG: Test harness gave false positives BUG: Remove duplicate file in wrong place ENH: Allow removal of all Deprecated code COMP: Remove unnecessary const_cast. STYLE: Remove all references to StartRegistation BUG: Array overrun in LaplacianRecursiveGaussian COMP: Revert use of itkLegacyMacro ENH: Improve testing of GetInverse PERF: Const correct optimize initialization. COMP: Fix data type for consistency ENH: Imaging data should not be in git BUG: Missing DisplacementFieldTransform IO COMP: Fix warning for propogating success status BUG: Make IsTransformQueueEmpty const STYLE: Convert CMake-language commands lower case STYLE: Remove CMake-language block-end arguments BUG: Reading composite transform error ENH: Update compiler fixes for fftw external BUG: Test harness gave false positives BUG: Remove duplicate file in wrong place COMP: Remove unnecessary const_cast. COMP: Unused variable warning with FFTW options ENH: Test always uncondintionally returned true STYLE: Add more files that need to be ignored STYLE: Fix typo in comment. PERF: Avoid costly redundant computations. BUG: Removed too stringent ConceptChecking PERF: Remove unnecessary function GetImageDimension STYLE: Remove dead code ITK_TEMPLATE_EXPLICIT STYLE: Made use of .hxx guards consistent DOC: Update space before access specification BUG: Allow backwards compatibilty for ITK_TEMPLATE_TXX STYLE: Make round consistent in ITK. BUG: Incorrect syntax for Intel optimize pragma Ho Cheung (4): COMP: Add "#include " to classes for VS2012 PERF: Fix usage of ElementAt in PolyLineParametricPath to use const version BUG: Make LaplRecurGauss filter set the number of threads on the subfilters COMP: Fix regression of name mangling for libtiff ITK Migration V4 (3): DOC: Modify ComposeImageFilter comments. DOC: Modify VectorIndexSelectionCastImageFilter comments. DOC: Modify AnisotropicDiffusionFunction comments. Jean-Christophe Fillion-Robin (2): BUG: Prevent MetaIO vessel tube from getting stuck in while loop BUG: Add test for MetaIO vessel tube from getting stuck in while loop Jeffrey Duda (1): ENH: Updates for multivariate metrics Kent Williams (18): PERF: Pull expensive GetInput/GetOutput calls out of inner loops COMP: propogate compiler selection & flags to FFTW build STYLE: Remove superfluous static_cast PERF: Pull expensive GetInput/GetOutput calls out of inner loops STYLE: Refine usage of static_cast BUG: B.Lowenkamp's changes to detect empty fields in Meta files BUG: isblank is missing on Microsoft Visual Studio. COMP: propogate compiler selection & flags to FFTW build BUG: Added test to verify metadata gets copied on file write w/Nrrd BUG: Add regression test to try very long filename w/MetaIO ENH: Allow change of tolerance in ImageToImageFilter DOC: Document spacing/direction tolerance access methods. BUG: Orientation vector in FiniteCylinderFunction PERF: hoist computation of norm outside Evaluate method. ENH: Add DCMTKImageIO to ITK BUG: Origin was lost reading HDF5 format images. COMP: add new gdcm test for SeriesReader + MetaDataDictionary COMP: add set methods for member variables where missing. Kris Zygmunt (5): PERF: Optimize patch-based denoiser tensor computations BUG: GPU tests sometimes fails BUG: SymmetricEigenAnalysis OrderByMagnitude bug PERF: speed up patch-based denoising tests BUG: Denoising 3D patch weights incorrect Marius Staring (1): ENH: Creating a typedef for the modified time Matthew McCormick (64): ENH: Allow custom name for ProcessObject Primary Input/Output. DOC: Clarify ProcessObject NumberOfRequiredInputs. STYLE: Fix style in itkBlockMatchingImageFilterTest. BUG: Fix BlockMatchingImageFilter for pipeline updating. DOC: Use one column in the Doxygen alphabetical class index. BUG: Fix GCC_XML and SWIG ExternalProject dependencies. BUG: Fix multi-object MetaIO reading for ASCII MetaVesselTube. STYLE: Improve readability and debugability in MetaScene. BUG: Fix multi-object MetaIO reading for ASCII MetaVesselTube. COMP: Fix QuadEdgeMesh doxygen warnings. ENH: Wrap new exponential Transform classes. STYLE: Use typedefs in TreeNode. STYLE: Use more descriptive names in itkSceneSpatialObject.hxx. STYLE: Cleanup WrapITK comments. BUG: Fix WrapITK GCCXML ExternalProject dependency. COMP: Make sure the VC script gets executed after gccxml installation. ENH: Use tarball for gccxml ExternalProject build. PERF: Use GetPrimaryOutput in ImageSource GetOutput. COMP: Add missing deque header for ANTSNeighborhoodCorrelation metric. BUG: Fix WrapITK GCCXML ExternalProject dependency. COMP: Make sure the VC script gets executed after gccxml installation. BUG: Fix multi-object MetaIO reading for ASCII MetaVesselTube. ENH: Bump release branch CMakeLists.txt version to 4.2.1. DOC: Update Doxygen config's for 1.8.2. DOC: Remove out-of-date files in Documentation/ STYLE: Use EXIT_SUCCESS in itkQuadEdgeMeshPolygonCellTest. DOC: Improve Doxygen HTML layout. STYLE: Improve style in itkGaussianImageSourceTest. COMP: GaussianImageSource unsigned comparison always false. BUG: Fix VelocityFieldTransform classes wrapping. ENH: Support Vector scalar product with CovariantVector. MetaIO: Remove the executable bit from metaFEMObject.{h,cxx}. MetaIO: Fix invalid memory dereference with empty Meta field. COMP: Fix invalid unsigned comparison with 1D instantiation. ENH: Archive testing data in Midas. BUG: FixedArray wrapping for 4D wrapping. ENH: Add operator=( FloatType & rhs ) to CompensatedSummation. BUG: Improve robustness of RayCastInterpolateImageFunction. BUG: VTKPolyDataMeshIO for Meshes with Tensor Pixels. #2961 COMP: Do not wrap WatershedImageFilter on Windows. BUG: Set the third-party libtiff VERSION to the correct value. COMP: Build with ITK_USE_SYSTEM_TIFF. #2967 COMP: Fix wrapping of itkNarrowBandCurvesLevelSetImageFilter. #2970. COMP: Do not run itkSampleToHistogramFilterTest4 with VC. COMP: Fix 1D wrapping of itkImageToVTKImageFilter. MetaIO: Prevent vessel tube from getting stuck in while loop MetaIO: Fix error in metaVesselTube ASCII reader. COMP: Disable DCMTK for MinGW. COMP: Ignore DCMTK build warnings. BUG: Use HTTP protocol by default for Git pull URLs. COMP: Better identification of MSVC90. STYLE: Fix style of BorderQuadEdgeMeshFilter. STYLE: Fix style of CleanQuadEdgeMeshFilter. STYLE: Rename itkMultiTransformBase to itkMultiTransform. COMP: Wrap MultiTransform. STYLE: Fix style in MultiTransform. COMP: Disabling the VideoStreamTest. COMP: Suppress fftw ExternalProject warnings. COMP: LabelImageInterpolateImageFunctionTest type conversion. COMP: Add include directory for ITK_USE_SYSTEM_HDF5. COMP: itkLabelImageGaussianInterpolateImageFunctionTest signed unsigned. COMP: Fix Doxygen warnings. COMP: Ignore libtool FFTW warnings with quote. COMP: Fix HDF5IO with ITK_USE_64BITS_IDS on Windows. Matthias Seise (1): COMP: Compile wrapITK for python2.7,64bit on windows Michael Stauffer (6): PERF: Optimize GetValue in v4 image metrics. ENH: Add "WithOnlyIndex" iterators. PERF: improve speed of ImageToImageMetricv4 and derived metrics ENH: Add parameter weighting option to Optimizersv4 ENH: Add MultiTransformBase DOC: Fix to ObjectToObjectOptimizerBase documentation Nick Tustison (20): ENH: Expanding HasLocalSupport to transform categories. ENH: Adding ability to prepend transform queue. ENH: Adding labeled point set metric. ENH: Add GetTransformCategory() to translation transform. ENH: Adding exponential transforms. ENH: Adding common transforms to be registered. BUG: Voxel size scaling needed ENH: Enable inverse for exponential transforms. ENH: BSpline automated scales estimation. BUG: Fix resampling of constant velocity field. BUG: Uninitialized variable. ENH: Reorganization of vel. field transforms. BUG: Control point grid origin wasn't set correctly. ENH: Adding option to permit voxel-based smoothing. ENH: Adding Multiple label STAPLE. BUG: Disp. field xfrm inverse not set correctly. ENH: Multiple metrics in registration methods. BUG: Incomplete dynamic casting. BUG: Correcting valgrind error. BUG: Set correct images in update field. Paul Novotny (1): COMP: Fix Spatial Object Test Segfaults Richard Beare (1): ENH: Functors for logic operations Willi Huber (2): COMP: WrapITK generates non-unique typedefs in FFT submodule COMP: Fix the wrapping for some modules Xiaoxiao Liu (3): ENH: Update LSTK version. BUG: Update LSTK version to sync with VTK 6.0. BUG: Fix ffmpeg VideoStream failing tests. Changes from v4.3.0 to v4.3.1: Bill Lorensen (1): COMP: Fix compile error in PhilipsRECImageIO Hans Johnson (1): COMP: Remove unnecessary BORLAND code Matthew McCormick (4): COMP: Fix HDF5 unused function for long long on Unix. BUG: Remove unused metric test content link. COMP: Add DLL to PATH for Python tests on Visual Studio. ENH: Bump CMakeLists.txt ITK version to 4.3.1. Enjoy ITK! _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Kitware offers ITK Training Courses, for more information visit: http://kitware.com/products/protraining.php Please keep messages on-topic and check the ITK FAQ at: http://www.itk.org/Wiki/ITK_FAQ Follow this link to subscribe/unsubscribe: http://www.itk.org/mailman/listinfo/insight-developers
