Itk

Latest version: v5.3.0

Safety actively analyzes 629052 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 7

5.0a02

Major improvements in ITK 5.0 include a switch to C++11 language standard, improved performance, and cleanup of legacy code. More information about the C++11 transition, spearheaded by Hans Johnson, can be read in the [ITK 5.0 Alpha 1 announcement](https://discourse.itk.org/t/itk-5-0-alpha-1-modern-c/843).

ITK 5.0 Alpha 2 emphasizes performance improvements: 1) A refactored multithreading infrastructure, 2) in ITK 5, a thread pool is available by default, 3) an Intel Threading Building Blocks (TBB) threading backend with dynamic region splitting, 4) improved image iterator performance, 5) simple APIs to execute functions in parallel, 6) simple construction of unary and binary generator image filters filters, and 7) new, experimental C++11 range classes for iteration in range-based for loops.

1. There are now two multi-threaded "GenerateData" method signatures. The classic one, *ThreadedGenerateData*, is kept when a filter needs to know in advance the number of pieces into which the requested region will be split. This information was previously used by some filters to allocate intermediate, thread-local data. The new dynamic signature, *DynamicThreadedGenerateData*, allows the region to be split dynamically in response to data content and multi-processor load to achieve load balancing. Presently, only the TBB backend performs dynamic splitting. More information can be found in the Multi-Threading section of in The [ITK Software Guide](https://itk.org/ItkSoftwareGuide.pdf). Instructions that describe changes required to leverage dynamic parallelism in external filters can be found in the [migration guide](https://github.com/InsightSoftwareConsortium/ITK/blob/master/Documentation/ITK5MigrationGuide.md#multithreading-refactored). Most existing ITK-based codes will build with minimal to no modifications required.

2. An *itk::PoolMultiThreader* is the default in ITK 5, which provides a thread pool for platform native threads. The *itk::PlatformMultiThreader* is also available, which behaves like the previous *itk::MultiThreader* class.

3. Our multi-threading refactoring enables better load balancing for filters with variable per-pixel computation cost. As [TBB](https://www.threadingbuildingblocks.org/) is one of the best open source libraries for load-balanced threading, it was an easy choice. The *itk::TBBMultiThreader* can be enabled by setting `Module_ITKTBB` to `ON` in ITK's CMake configuration.

4. Most methods in neighborhood iterators were virtual, but this was a rarely-used feature. That virtualization is now a [configure-time](https://github.com/InsightSoftwareConsortium/ITK/blob/7a7d88b85f258c3162001ccfa4e5a89540b4c411/Modules/Core/Common/include/itkMacro.h#L1276-L1288) parameter, and it is off by default. This significantly improves performance of filters which utilize neighborhood iterators. More information can be found in the Discourse [discussion](https://discourse.itk.org/t/removal-of-virtual-keywords-from-constneighborhooditerator/814/).

5. A [ParallelizeImageRegion](https://github.com/InsightSoftwareConsortium/ITK/blob/9382f7bdd89f08a1122d57f8144702ac9341caf3/Modules/Core/Common/include/itkMultiThreaderBase.h#L185) method allows multi-threaded processing without writing a full-blown filter class. As evident in [this example](https://itk.org/ITKExamples/src/Core/Common/FilterAndParallelizeImageRegion/Documentation.html), multiple parallelized operations of arbitrary complexity can now be concisely specified and executed with [C++11 lamda](http://en.cppreference.com/w/cpp/language/lambda)'s or [std::function](http://en.cppreference.com/w/cpp/utility/functional/function)'s.

6. The new [itk::UnaryGeneratorImageFilter](https://itk.org/Doxygen/html/classitk_1_1UnaryGeneratorImageFilter.html) and [itk::BinaryGeneratorImageFilter](https://itk.org/Doxygen/html/classitk_1_1BinaryGeneratorImageFilter.html)'s allow per-pixel operations to be specified in several ways: 1) traditional "Functor", with `operator()`, 2) C++11 lambda functions, with closures, 3) C++11 std::function 4) C-style function pointers.

7. New, experimental classes for C++11 iteration in [range-based for loops](https://en.cppreference.com/w/cpp/language/range-for), e.g. [itk::Experimental::ShapedImageNeighborhoodRange](https://itk.org/Doxygen/html/classitk_1_1Experimental_1_1ShapedImageNeighborhoodRange.html), provide a modern, convenient syntax for image pixel iteration, and dramatic performance improvements.

Furthmore, ITK 5 improves performance by leveraging [Rvalue references](http://thbecker.net/articles/rvalue_references/section_01.html) to implement move semantics and perfect forwarding.

![ITK 5 Performance Benchmarks](https://user-images.githubusercontent.com/25432/40628866-8fb6661c-6295-11e8-91f7-335cf24d9b7c.png)
**ITK 5 Performance Benchmark Improvements** *[ITK Performance Benchmarks](https://github.com/InsightSoftwareConsortium/ITKPerformanceBenchmarking), lower is better, for ITK 4.13.0, ITK 5.0 Alpha 2 with the platform thread pool, and ITK 5.0 Alpha 2 with TBB. ITK 5.0 advances performance in general, especially with the TBB threading backend.*

Thanks to everyone who contributed to the major advancements made in the ITK 5 performance refactoring. Special recognition goes to Dženan Zukić, Kitware, who lead the refactoring effort. Contributions were also made by Jared Vicory, Robert Maynard, Francois Budin, Matt McCormick, Pablo Hernandez-Cerdan, Kitware, Jonathan Lefman, formerly of Intel, Bradley Lowekamp, associated with the National Library of Medicine, Hans Johnson, the University of Iowa, Simon Warfield, Benoit Scherrer, Rene-Paul Debroize, Amir Jaberzadeh, and Etienne St-Onge, Boston's Children's Hospital. The TBB-refactoring was inspired by the [TBBImageToImageFilter](https://github.com/InsightSoftwareConsortium/ITKTBBImageToImageFilter), which was supported in part by the Intel Parallel Computing Center at the Computational Radiology Laboratory, Boston Children's Hospital. Bradley Lowekamp contributed the *itk::UnaryGeneratorImageFilter* and *itk::BinaryGeneratorImageFilter* filters. Neils Dekker, Leiden University Medical Center, contributed the new range classes.

There were many other improvements and bug fixes since 5.0 Alpha 1. For example, addition of [.editorconfig](https://github.com/InsightSoftwareConsortium/ITK/blob/master/.editorconfig), prominent placement of [.clang-format](https://github.com/InsightSoftwareConsortium/ITK/blob/master/.clang-format), addition of ITK-specific debug [visualizers](https://github.com/InsightSoftwareConsortium/ITK/tree/master/Utilities/Debugger) for Visual Studio versions 2012-2017 improve editing and debugging experience in Visual Studio.

To test the ITK 5.0 Alpha 2 Python packages, run

bash
python -m pip install --upgrade pip
python -m pip install --upgrade --pre itk


Note: there are a few warnings that appear when using the wrapping. These will be addressed with the next release.

The next planned release, ITK 5.0 RC1, will focus on the transition of code review process to GitHub.


Changes from v5.0 Alpha 1 to v5.0 Alpha 2
-----------------------------------------------------------

Bradley Lowekamp (22):
PERF: remove virtual methods in neighborhood iterators
ENH: Add ITK_ITERATOR_FINAL
ENH: Use named inputs for the PasteImageFilter
PERF: Remove iterators stored as member variables
BUG: Add specification of OutputImage Type for TobogganImageFilter
BUG: Add specification of OutputImage Type for TobogganImageFilter
ENH: Improve numerics of resampling for linear transform
COMP: Fix gcc 4.8 initialize warning
ENH: Add baseline image to sporadically failing test
ENH: Adding Unary and Binary GeneratorImageFilter
ENH: Convert functor based filters to generator
ENH: Update internal filters to use BinaryGereratorImageFilter
ENH: Updating Functor filter with parameters to the new Generator
COMP: Address Generator filters destructors warning
DOC: Fix BSplineDecompositionImageFilter Doxygen see also link
ENH: reuse default splitter
BUG: revert thread update to BSplineScatteredDataPointSetToImageFilter
ENH: Update CircleCI CMake version to 3.11.2
BUG: Correct detection of most recent data file
ENH: Improve numeric computation of linear interpolation for Resample
ENH: Update baseline image for ResampleImageFilter3Test1
BUG: Add 4 pixel tolerance to ResampleImageFilter3Test1

Dženan Zukić (37):
ENH: start migration guide document
STYLE: increasing initial size of the debug window
BUG: fixing null pointer dereference at the end of iteration
COMP: reducing direct usage of MultiThreader
BUG: remove observations in FilterWatcher's destructor
ENH: support Unicode characters in class documentation
BUG: fixing index computation in resample filter
ENH: reducing code duplication in FilterWatcher
ENH: refactoring MultiThreader infrastructure
ENH: deciding which filters can use the new threading model
ENH: reporting progress
ENH: simplifying Canny filter by using new threading infrastructure
STYLE: Renaming MultiThreader to PlatformMultiThreader
ENH: use C++11 thread primitives instead of SpawnThread
COMP: improve backwards compatibility by retaining the renamed header
ENH: Add TBB-based multi-threader
ENH: refactoring filters to avoid use of memory barrier
ENH: reworking logic for determining default multi-threader
COMP: fixing compile error on GCC 4.8.5 20150623 (Red Hat 4.8.5-28)
STYLE: remove outdated and useless comments from VectorExpandImageFilter
ENH: add a baseline for QuickViewTest.png (Win7x64+VS2017+VTK8.1OpenGL2)
STYLE: reduce number of lines by removing unnecessary empty lines
DOC: document FilterWatcher removal
ENH: adding an .editorconfig file to aid IDE's code formatting options
BUG: forgotten ifdefs for ITK_LEGACY_REMOVE
ENH: adding debugger help files for Visual Studio 2017
ENH: moving .clang-format file into the root folder,
ENH: using the new threading mechanism for FFT module
ENH: explicitly setting threading model in each multi-threaded filter
ENH: support classic ThreadedGenerateData via ITK_CLASSIC_THREADING_MODEL
BUG: fixing a test which has been failing since multi-threading refactoring
ENH: updating baselines for itkBSplineScatteredDataPointSetToImageFilterTest*
COMP: fixing 2 compile warnings
STYLE: renaming migration guide document
ENH: extending migration guide with threading refactoring instructions
ENH: reducing redundancy in itkLandmarkBasedTransformInitializerTest
ENH: eliminate CMake option ITK_CLASSIC_THREADING_MODEL

Hans Johnson (5):
STYLE: Use C++11 override keyword directly
STYLE: Use C++11 override keyword directly
ENH: Add compression option for Transform files
COMP: Address type mis-match compiler warning
COMP: Remove unused variable warning

Jon Haitz Legarreta Gorroño (10):
COMP: Use and move ITK_DISALLOW_COPY_AND_ASSIGN calls to public section.
ENH: Update the WikiExamples remote module commit hash.
COMP: Bump the remote modules' versions.
DOC: Fix miscellaneous typos.
DOC: Update the ITK logo files in `Documentation` folder.
DOC: Remove PSD files containing old ITK logo.
BUG: Address use of CMake variables in CMakeLists.txt.
COMP: Set the minimum required CMake version to 3.10.2.
STYLE: Stick to the ITK style guidelines.
COMP: Bump the remote modules' versions after the CMake ver update.

Lucas Gandel (2):
ENH: include WrapITKConfig for external module
ENH: Allow for itk::ImageSource wrapping override

Matthew McCormick (17):
ENH: Support Python snake case keyword arguments in object initializion
PERF: Avoid extra condition check in itkBase.py
COMP: Detect Linux in itkMemoryUsageObserver.h on Alpine Linux
COMP: Define ITK_DELETE_FUNCTION for backwards compatibility
BUG: Fix bugs in ITKV4_COMPATIBILITY definition
COMP: Wrap MultiResolutionPDEDeformableRegistration for Pyramid filter types
COMP: Do not disallow constructors in Python classes
DOC: Add Mathieu Malaterre to GDCM copyright holders in NOTICE
COMP: Address array initialization in itkShapedImageNeighborhoodRangeGTest
COMP: ShapeImageNeighborhoodRange signed unsigned comparison
COMP: Add missing itkViewImage.h include to itkViewImage.hxx
COMP: Initialize CovariantVector in DeformableSimplexMesh3DFilter
COMP: Update Unary and Binary filters for new generator class base
COMP: Initialize DeformableSimpleMesh3DFilter displacement
COMP: Suppress maybe-uninitialized in SimpleDataObjectDecorator Component
COMP: Do not include itkMultiThreader.h in the header tests
COMP: Fix Python wrapping of MultiThreaderBase

Niels Dekker (11):
ENH: Added Compute member functions to NeighborhoodInnerProduct
STYLE: Added DISALLOW_COPY_AND_ASSIGN(GaussianDerivativeImageFunction), etc.
ENH: Added ShapedImageNeighborhoodRange for modern C++ style iteration
STYLE: Removed '&' from pixelPointer param of NeighborhoodAccessorFunctor::Set
PERF: Removed virtual ~NeighborhoodAccessorFunctor() and made class final
COMP: Fixed ShapedImageNeighborhoodRange doxygen + signed/unsigned warning
BUG: Dropped OffsetTable assumptions from ShapedImageNeighborhoodRange
PERF: Made HoughTransform2DCircles GaussianDerivative call non-virtual
COMP: Workaround Clang range-loop-analysis warning NeigborhoodRange test
ENH: Added class to create offsets for a hyperrectangular neighborhood shape
ENH: Random access support for ShapedImageNeighborhoodRange iterators

Pablo Hernandez-Cerdan (4):
ENH: Add stateless viewer ViewImage with Python wrap.
DOC: Add docs to ViewImage.
COMP: Fix catch by value warning in SpatialObject.
COMP: Fix VNL to compile with gcc8.

Rashad Kanavath (1):
COMP: fix linking on OpenBSD

Sean McBride (4):
COMP: -Wunused-template & -Winconsistent-missing-destructor-override warnings
BUG: removed illegal int to enum conversion
COMP: fix warning about implicit double to bool conversion
COMP: fix warning about implicit double to bool conversion

Simon Rit (1):
COMP: missing include path for FFTW

Taylor Braun-Jones (1):
COMP: Fix clang diagnostic: case value cannot be narrowed

VXL Maintainers (1):
VNL 2018-05-16 (26628604)


Enjoy ITK!

5.0a01

4.13.3

Bradley Lowekamp (7):
BUG: Patch missing const qualifier to GDCM dircos_comp comparison
BUG: Address bug with small size in output of SliceImageFilter
BUG: Update CI scripts from current ITK master
ENH: Update GDCM to latest on the release-2.8 branch
BUG: update CircleCI configuration with selections from master
BUG: Don't use InsertElement which modifies MTime
BUG: Address buffer overflow with deprecated GDCM1 interface

Dženan Zukić (4):
ENH: use double-conversion's CMake targets
COMP: a fix for non-system double-conversion build
ENH: back-porting 1165 to support Visual Studio 2019
COMP: update download location for pre-built ICU for Visual Studio

GDCM Upstream (1):
GDCM 2019-11-04 (7e3be76f)

Jerome Schmid (1):
COMP: VtkGlue module-Provide support for VTK new cmake targets

Marco Nolden (1):
COMP: added vcl compiler detection for GCC 10.x

Matthew McCormick (3):
COMP: Prevent duplicate wrapping ouput file specification
COMP: Add VXL support for GCC 9
ENH: Bump CMakeLists.txt version to 4.13.3

4.13.2

Bai Shi (1):
COMP: To fix compilation error of "cannot dynamic_cast 'x'

Bradley Lowekamp blowekamp (10):
BUG: Support ITK transform files with corrected group names
BUG: Update SCIOFIO to ITKv4.13 branch
BUG: Handle boundary case with max metric
BUG: Remove static member function variable
BUG: Synchronize BSpline MeshDomain parameters from fixed params
COMP: Address CMake policy warnings in ThirdParty libraries
ENH: Update AzurePipelines configuration from master
ENH: Explicitly set the XCode version used in Azure
COMP: Use CMP0048 new for wrapping
COMP: Set CMP0048 to new in ITK (Remote) Modules

Dženan Zukić dzenanz (2):
STYLE: fixing 'No new line at the end of file'
ENH: ITKv5_CONST macro for VerifyPreconditions() and VerifyInputInformation()

Francois Budin fbudin69500 (1):
BUG: Disable Python tests if `ITK_BUILD_DEFAULT_MODULES` is OFF

GDCM Upstream malaterre (3):
GDCM 2019-02-07 (8e1cfd05)
GDCM 2018-10-23 (2e701ed7)
GDCM 2019-02-08 (815caa81)

Isaiah Norton ihnorton (2):
BUG: prevent segfault when transform reader fails to load .mat
BUG: don't quote argument to URL_HASH for FFTW

Matthew McCormick thewtex (9):
BUG: Use manylinux to build CastXML linux executable
COMP: Address empty _FILE_OFFSET_BITS in tif_config.h with MinGW64
BUG: Remove duplicate ITK version number
ENH: Add Azure Pipelines configuration
ENH: Add regression test for reading legacy multi-frame DICOM
COMP: Set CMP0083 for PIE flags
ENH: Bump CMakeLists.txt version to 4.13.2
ENH: Add missing SHA512 content link
ENH: Explicitly use Python 3.7 in Azure builds

Niels Dekker N-Dekker (2):
COMP: Fixed GDCM OpenJPEG name mangling
PERF: Remove SystemInformation data from ResourceProbe, fix issue 350

4.13.1

Bradley Lowekamp (10):
COMP: Use anonymous namespace for internal linkage
COMP: Update SimpleITKFilters for dependency issues
BUG: Add missing extensions to ImageIO
BUG: Add specification of OutputImage Type for TobogganImageFilter
BUG: Prevent concurrent read/write in output image
BUG: Handle case where output image is zero sized
COMP: Fix overflow in floating-point conversion warning
ENH: TileImageFilter learns to use VectorImages
ENH: Update SimpleITKFilters remote modules
BUG: Use pip to install cmake for release

Francois Budin (2):
BUG: Initializes CMAKE_DEBUG_POSTFIX to be empty
BUG: Improvements to ITK NumPyBridge

Jean-Christophe Fillion-Robin (1):
BUG: Prevent gdcm "missing implementation" error on macOS

Jon Haitz Legarreta Gorroño (1):
ENH: Add Python wrap file to itk::MultiResolutionPDEDeforableRegistration.

Martino Pilia (1):
BUG: fix itkFormatWarning in Python wrapping

Matthew McCormick (13):
ENH: Add wrapping for BSplineTransformInitializer
COMP: Do not use absolute path to TestBigEndian.cmake in GDCM
COMP: Enable pthreads shim with Emscripten
BUG: Allow module examples to be enabled when built externally
ENH: Ensure external module examples get added to current build tree
COMP: Work around RegionGrow2DTest compiler error on ppc64le
BUG: Wrap long long instead of long
COMP: Detect Linux in itkMemoryUsageObserver.h on Alpine Linux
COMP: Wrap MultiResolutionPDEDeformableRegistration for Pyramid filter types
BUG: Migrate midas3.kitware.com to data.kitware.com
BUG: Correct Windows and macOS CastXML hashes
COMP: Set CMake project command VERSION
COMP: Bump CastXML for Visual Studio 2017 support

Niels Dekker (1):
COMP: Worked around endless VS2015 Release compilation on Math::Floor

Pablo Hernandez-Cerdan (2):
COMP: Fix VNL to compile with gcc8.
STYLE: Mark CMAKE_DEBUG_POSTFIX as advanced.

Sean McBride (5):
STYLE: arranged/alphabetized things to make subsequent changes reviewable
COMP: Fixed some missing name mangling of libTIFF symbols
BUG: fixed crash on macOS under guardmalloc from RunOSCheck()
COMP: Mangle HDF5 symbol names
COMP: fix warning about implicit double to bool conversion

4.13.0

------------------------------------------------

Adrien Bailly (1) adrien.bailly :
ENH: add wrapping for MultiResolutionIterationEvent and other missing event

Beatriz Paniagua (2) bpaniagua :
ENH: Updating pygccxml version
ENH: Updating libPNG to track upstream libpng16 branch

Brad King (2) brad.king :
ENH: Port GDCM update script to update-third-party.bash
ENH: Update GDCM import script for changes in upstream content

Bradley Lowekamp (93) blowekamp :
DOC: fix spelling transfrom->transform
ENH: Improve Not functor and filter to follow other logic functors
ENH: Separate functors from filters in header by operator groups
DOC: Fix spelling mistakes from SimpleITK JSON, from spellintian
ENH: making available GoogleTest for testing in ITK
COMP: Address missing ITK_TEMPLATE_EXPORT definition
COMP: Use single line for string argument, by-pass multi-line issues
COMP: Revert to CMake 2 compatible line comment
ENH: Move rank filters out of review
BUG: Use const for pipeline inputs and state functions
ENH: Explicitly warn and deprecate negative pixel spacing.
BUG: Modify google test to define _VARIADIC_MAX=10
COMP: Fix using system GoogleTest with a compiled system library
ENH: Add SliceImageFilter
COMP: Use itk::Math::abs over vnl_math_abs
ENH: Add GetProbe method to collectors base.
BUG: Add missing exports for GTest::* targets
BUG: Fix computation of central moments for shape label map
ENH: Adding operator functors from SimpleITK
ENH: Choose efficient central moment computation for run
BUG: Add missing OrientedBoundingBox option
DOC: recommend using separate instances
BUG: Manually set seed for ParticleSwarmOptimzerTest
BUG: Fix computation of oriented bounding box
BUG: shape label object elongation incorrectly zero
ENH: Add GTest utilities for ITK
ENH: adding explicit testing of computed label shape attributes
BUG: Propagate make program to KWStyle ExternalProject
BUG: Error only when unknown module is enabled.
DOC: Document behaviors of ChangeLabelLabelMapFilter
BUG: Document and assert improper usage of transform methods.
COMP: Enable hidden visibility property with GoogleTest static libraries
DOC: Doxygen namespace tag must be full namespace
BUG: Fix computation for Jacobian local vector
BUG: Cast to PrintType for MaskLabel variable printing
ENH: Update FixedPointInverseDisplacementField remote module
BUG: Error only when unknown module is enabled.
BUG: Fix computation of central moments for shape label map
BUG: shape label object elongation incorrectly zero
BUG: Fix computation of oriented bounding box
BUG: Add missing OrientedBoundingBox option
ENH: Update FixedPointInverseDisplacementField remote module
ENH: Only remove hidden visibility for C file with CMake<3
BUG: Print missing Seeds parameter and values used for Upper/Lower
ENH: Remove unneeded m_Upper and m_Lower ivars
ENH: Prefer raw pointers for pipelined owned objects
ENH: Update to use CircleCI 2.0
ENH: Enable MINC IO by default
ENH: Move advance Demons registration filters out of review
BUG: Fix CircleCI command to upload test results
ENH: Test SliceBySlice with non-zero index
BUG: Use same origin for internal image as input image
BUG: Remove duplicate code from local commit
COMP: Remove MINC library level exports
ENH: Add ProcessObject::AddOptionalInputName and more named inputs
ENH: Make more use of AddOptionalInputName
BUG: Use input macros for const correct pipeline inputs
ENH: Remove input name when renamed and add tests
BUG: Correct OBB names in GetAttributeFromName
ENH: Add ShapeLabelObject::GetRegion method
ENH: Hide MINC data in MINCIImageIO interface
BUG: Remove newly added warning in ProcessObject AddRequiredInput
BUG: Apply constant function specifier
BUG: Fix marking of required inputs for GPU PDE registration
BUG: Add missing getter method for PDE InitialDisplacementField
ENH: Use Input macros for set/get GPU PDE inputs
ENH: Move private GE format headers to src
ENH: CircleCI use ccache and cache external data
ENH: Extract reusable code into a copy image information functor
ENH: Change Cast parent class to InPlaceImageFilter
BUG: Add search paths for GoogleTest as source code on system
BUG: Update BinaryImageToLabelMapFilter::m_NumberOfLabels
COMP: Remove shadowing typedef
ENH: Updating remote module TextureFeatures to 3.0.0
COMP: Use integer suffix for long long types
BUG: Disable checking of OBB origin
PERF: Use initialized global variable for default number of threads
ENH: Add remote mote SimpleITKFilters
ENH: Add type for MultiThreader used by the ProcessObject
BUG: Don't use void pointer
BUG: Fix LBFGS2 iteration count and iterface
BUG: Use AutoPtr for initialization based resource acquisition
BUG: Fix factory registration during static initialization
BUG: Fix const correctness of GetDisplacementField, use named input
STYLE: Use LineSearch conventions
BUG: Relax timeout to 60 seconds for itkSimpleFastMutexLockTest
COMP: Mark itkTimeVaryingBSplineVelocityFieldImageRegistrationTest long
COMP: Address linking error using operator<<
COMP: Must define target before adding compile definitions
COMP: Issue a CMake warning if ITKV3_COMPATIBILITY
COMP: Enable CMP0063, support setting visibility properties
COMP: Enable CMP0063, support setting visibility properties
COMP: Enable CMP0063, support setting visibility properties

David Kügler (1) david.kuegler :
BUG: better support for OBJ mesh format

Dženan Zukić (21) dzenanz :
ENH: adding an example and improving tests
ENH: support VCPKG
ENH: rewriting ThreadPool and enabling it by default
ENH: docs and compiler fix for ThreadPool, improvements of itkBarrierTest
ENH: turning off thread pool by default for now
STYLE: minor fix in debug mode and clearer code intent by using macros
STYLE: warn users of the DeformableSimplexMesh3DFilter's limitations
ENH: Addition of type long long and unsigned long long for images
STYLE: VTK Mesh IO code simplification
COMP: fixing warnings
BUG: a call to SetGlobalDefaultNumberOfThreads was not respected
BUG: LONGLONG was not handled by DCMTKImageIO
BUG: PNG IO: return false instead of crashing in CanReadFile
COMP: fix a warning
BUG: ThreadPool hangs on Windows when ITK is compiled as DLLs
BUG: tests writing to the same file randomly fail during parallel invocation
COMP: fixing 2 compile errors on some compilers
ENH: adding JSON format report to resource probe
BUG: NIFTI crashing when requested region is set
BUG: colliding file names caused spurious test failures
BUG: fix two rename mistakes introduced in previous patch

Edwin Bennink (1) ebennink :
BUG: Fixed cylinder bbox, fixed and enhanced IsInside func

Floris Berendsen (2):
COMP: add symbol name mangling for niftilib in ITK
COMP: add symbol name mangling for niftilib in ITK

Francois Budin (54) fbudin :
ENH: Bump ITK version to 4.13.0.
BUG: Update external data content links
ENH: Add cleanup option to content synchronization script
BUG: Used ITK_HAVE_FEENABLEEXCEPT instead of ITK_HAS_FEENABLEEXCEPT
BUG: Used ITK_HAVE_FEENABLEEXCEPT instead of ITK_HAS_FEENABLEEXCEPT
Revert "Merge branch 'feenableexcept-musl-for-release' into release"
Merge branch 'upstream-metaio' into update_metaIO
ENH: Bump CMakeLists.txt version to 4.12.1.
COMP: Remove -fvisibility-inlines-hidden warning with CMake 2.8.12
BUG: Remove VNL view from array functions and rename wrong variable
BUG: itkSimilarity2DTransform was not reporting singular matrices
ENH: Add test to verify ITK-3553 fixes
BUG: itkTestingComparisonImageFilter should derive from itkImageToImageFilter
BUG: Update tests to use ImageToImage compare image filter
ENH: Add options to itkTestDriver and itkTestingComparisonImageFilter
ENH: Adds MINC image IO wrapping
ENH: Replace ICONV with ICU to compile DCMTK
DOC: Document that workaround MSVC 2017 optimization bug has been corrected
BUG: sha512 file must exist before complaining that it hasn't been updated
BUG: Missing files for DCMTK ImageOrientation test
BUG: itkgdcmopenjp2 was not exported in the build tree in GDCM
BUG: Duplicate SetInput()/GetInput() in itkTestingComparisonImageFilter
BUG: ICU_ARGS CMake variable should be declared CACHE
BUG: Typo in CMake variable name
BUG: Build DMCTK on Windows
BUG: Support color images (RGB/RGBA) with DCMTK
ENH: Add test for colored images loaded with DCMTK
BUG: ICU is always compiled statically
ENH: Update DCMTK build instructions for Windows
ENH: Adds itk_module_examples() macro
COMP: Bump CMake required version to 2.8.12
ENH: Simplify itk-module-init.cmake for DCMTK
BUG: Inconsistent image information between result and baseline
BUG: Python docstrings were not generated anymore
ENH: Add __call__() function in Python itkTemplate objects
BUG: DMCTK configuration with ICU on Windows was only correct for VS2017
BUG: Remove man page generation that is not necessary anymore
ENH: Improving factory registration
ENH: Adding factory components
ENH: Update remote modules using FACTORY_NAMES
BUG: Add previously removed function __getattr__() in `itkTemplate.py`
BUG: Synchronize factories across modules in Python
ENH: Allow RAW itk-module as shared library
BUG: ITK_WRAP_DOC should not be saved in ITKConfig.cmake
BUG: Remove unicode characters that stop python docstring generation
BUG: `doxy2swig.py` failed with Python3
BUG: Allow compilation of VNL with MSVC<1600
BUG: \default is not a doxygen keyword
BUG: Better control of GDCM symbols with CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS
ENH: github comparison instead of shortlog in `UpdateThirdPartyFromUpstream.sh`
BUG: DCMTK CMakeLists.txt detects MSVC versions in [1910,1919] as MSVC2017
BUG: itkObjectFactoryBase was making ITK initialization crash
BUG: itkSpatialObject.cxx was not respecting ITK_FUTURE_LEGACY_REMOVE
BUG: Create IO Meta modules at module loading time

GCC-XML Upstream (1):
ENH: pygccxml v1.9.0 (reduced)

GDCM Upstream (4):
GDCM 2017-09-15 (87e3c363)
GDCM 2017-10-13 (46919364)
GDCM 2017-11-09 (af81d444)
GDCM 2017-11-23 (4c51c343)

Google double-conversion Maintainers (1):
ENH: Google double-conversion (reduced)

GoogleTest Upstream (2):
googletest 2016-07-14 (a3ac2d7f)
GoogleTest 2017-12-11 (0fe96607)

Hans Johnson (7) hjmjohnson :
BUG: vnl_fft_1d lacks sufficient numerical stability
COMP: Clang compiler regression
ENH: Synchronized with cmake version of file
BUG: Respect ITK_FUTURE_LEGACY_REMOVE
COMP: Missing ITK_OVERRIDE for BinaryPruningIMageFilter
BUG: Fix non-windows cmake configuration regression
COMP: Fix VariationalRegistration for future const GetMacro support

Jean-Baptiste VIMORT (2) jbvimort :
ENH: Automatic enabling of the -fPIC flag for external modules
ENH: Supression of GDCM's linking to CoreFoundation

Jean-Christophe Fillion-Robin (6) jcfr :
ENH: Support installing each module python wrapping independently
COMP: Update KWsys to set MACOSX_RPATH property based on CMAKE_MACOSX_RPATH
COMP: Update MINC to set MACOSX_RPATH property based on CMAKE_MACOSX_RPATH
COMP: ITKModuleExternal: Reset targets file
BUG: Fix hook clone
COMP: UseITK: Fix configure error due to different subproject requirements

Jon Haitz Legarreta Gorroño (37) jhlegarreta :
ENH: Improve coverage for v3 compatibility image arithm filters.
DOC: Fix typo in 'exception'.
STYLE: Improve the itk::FastMarchingImageFilterBase class style.
STYLE: Improve itkApproximageSignedDistanceMapImageFilterTest style.
ENH: Check for input/output objects with an assertion.
BUG: Fix const casting compiler errors.
DOC: Update old file headers/copyright notices.
STYLE: Improve the itkSmoothingRecursiveGaussiaImageFilter style.
ENH: Improve coverage for itkSmoothingRecursiveGaussianImageFilter.
BUG: Fix links to NOTICE and LICENSE files in `README.md`.
STYLE: Conform (partially) to ITK coding style.
DOC: Add missing links to Markdown file cross-refs.
ENH: Add a Pull Request template.
DOC: Remove extension to Markdown cross-ref link text.
STYLE: Change SubtractConstantFromImageFilterTest name.
BUG: Add missing input image iterator declaration.
BUG: Fix Superclass names in V3Compatibility tests.
DOC: Fix wrong comments in V3Compatibility tests.
DOC: Correct the preferred class names in ITKv4.
COMP: Fix valgrind-detected uninitialized members.
ENH: Improve coverage for itkWarpHarmonicEnergyCalculator.
ENH: Bump lastest version of remote repository.
ENH: Display error message in Iterator classes' wrapping.
DOC: Add links to NOTICE and LICENSE files in README.
DOC: Rework the contributing files.
DOC: Document how to upload binary data in a Markdown file.
DOC: Transition ThirdParty top-level README files to Markdown.
DOC: Add third party project updating documentation markdown file.
DOC: Document the release process in a Markdown file.
DOC: Transition Utilities/Maintenance/README Markdown.
DOC: Remove Documentation/Style.pdf file.
DOC: Redirect the "Submit a patch" link to `CONTRIBUTING.md`.
DOC: Mention the ITK full name in `README.md`.
DOC: Fix broken links and oversights in `CONTRIBUTING.md`.
DOC: Add a `GitHelp.md` resource to Documentation.
DOC: Make the ITK long name be consistent in .md files.
DOC: Create ISSUE_TEMPLATE.md

KWSys Upstream (1):
KWSys 2017-10-17 (fc4d55ba)

Laura Pascal (2):
ENH: Update version of DCMTK to 3.6.1_20170529
ENH: Update the DoubleConversion library upstream update script.

Mathieu Malaterre (4) mathieu.malaterre :
ENH: Explicit set the precision when printing double
ENH: Use double floating point API for MetaImage
ENH: Define a global default double precision for MetaImage
ENH: Enforce data truncation for legacy tests

Matthew McCormick (52) matt.mccormick :
ENH: Add install rules for External Module Python package
COMP: Do not wrap std::_Deque_alloc
ENH: Wrap RegionOfInterestFilter for VectorImage's
COMP: Disable CoreFoundation calls
ENH: Execute the merge when updating third party subtrees
ENH: Allow custom repo and branch for MetaIO subtree updates
COMP: Specify AR to PCRE build on macOS
BUG: Mark GoogleTest CMake options as advanced
COMP: Address LBFGS2Optimizerv4 doxygen warnings
BUG: ITKIOGE has a public dependency on ITKIOIPL
COMP: Bump KWStyle to latest master
ENH: Add TextureFeatures remote module
COMP: Detect the presence of mallinfo
COMP: IsNull() capitalization in LevelSetEquationAdvectionTerm
ENH: Wrap FloatingPointExceptions
COMP: Use GDCM_HAVE_BYTESWAP_H
COMP: Fail early when byteswap functions are not available
COMP: Detect the presence of feenableexcept
BUG: Use itkGetConstObjectMacro for LogBiasFieldControlPointLattice
COMP: Detect the presence of feenableexcept
COMP: Use GDCM_HAVE_BYTESWAP_H
COMP: Fix AnisotropicDiffusionLBR example build
BUG: Correct GPUMeanImageFilter Superclass
BUG: Remove debug code from GPUMeanImageFilter
BUG: Do not use static_cast, SmartPointer in GPUImage::GetGPUDataManager
BUG: Remove debug code in itkGPUImage.hxx
COMP: Do not call vector.data() in ITKIOBruker
ENH: Bump CMakeLists.txt version to 4.12.1
DOC: Format the README in markdown syntax
DOC: Enable offline Doxygen support
BUG: ITKIOMINC DEPENDS on ITKMINC
BUG: Update Bruker IO wrapping after migration from ITKReview
COMP: Update MorphologicalContourInterpolation to 2017-09-22
DOC: Do not pre-cache Doxygen php files
DOC: Expose RayCastInterpolateImageFunction members in Doxygen
BUG: RayCastInterpolateImageFunciton physical space issues
COMP: Overloaded - operator ambiguous in RayCastInterpolateImageFunction
BUG: Add missing template export for GradientAnisotropicDiffusionImageFilter
ENH: Wrap {Correlation,Demons,JointHistogramMI} Metricv4
ENH: Add Python wrapping for ITKIOMesh
BUG: Hide HDF5 CMake options from main configuration
BUG: Add DCMTK external project dependency after ExternalProject_Add
COMP: Bump CastXML to 2017-11-06 master
BUG: Fix hooks clone when ITK is a submodule
BUG: Remove duplicate entries of ITK_WRAP_PYTHON_LIBRARY_IMPORTS
DOC: Remove broken HoughTransform2DCircles wiki examples link
DOC: NeighborhoodIterator documentation formatting improvements
COMP: Do not use export macro in vnl_amoeba default_verbose
COMP: HoughTransform2DCirclesImageFilter lines too long for Software Guide
BUG: Reset LIST_OF_IMAGEIO_FORMATS in UseITK.cmake
COMP: Do not wrap itk::ObjectFactoryBasePrivate
DOC: Update Python package release process

MetaIO Maintainers (5):
MetaIO 2017-07-20 (92caf34d)
MetaIO 2017-08-17 (3e1cb552)
MetaIO 2017-10-04 (55395e3d)
MetaIO 2017-08-31 (5f935e1b)
MetaIO 2017-12-04 (02a2e22e)

Niels Dekker (23) Niels_Dekker :
COMP: Fixed <nifti1_io.h> leak into user code
STYLE: Replaced NiftiImageHolder by AutoPointer
COMP: Fixed "gifti_io.h" leak into user code
COMP: Fixed "Ge5xHdr.h" leak into user code
PERF: Break out of loop as soon as requested number of circles is found
STYLE: Removed useless (or obsolete) local bool, 'found'.
PERF: Avoid redundant search in GetCircles(n)
PERF: GetCircles now calls Graft, instead of copying pixels from GetOutput(0)
DOC: Added comment that the grafted output image should not be modified.
STYLE: Removed HoughTransform GetCircles parameter (n) which appears obsolete
ENH: Added deprecated GetCircles(unsigned int) overload to HoughTransform
COMP: Replaced deprecated GetCircles(n) call in HoughTransform example
BUG: HoughTransform CirclesList should be empty when NumberOfCircles is zero
ENH: Tested HoughTransform CirclesList is empty when NumberOfCircles is zero
BUG: HoughTransform GetCircles() should avoid circles with accumulator <= 0
STYLE: Removed HoughTransform GetLines parameter (n), which appears obsolete
ENH: Improved HoughTransform2DCirclesImageFilter accuracy, using Math::Round
BUG: HoughTransform GetLines() returned too many lines
PERF: Improved speed of HoughTransform2DCirclesImageFilter::GenerateData()
STYLE: HoughTransform calling convenience overload of SetVariance
DOC: Mentioned that HoughTransform2DCirclesImageFilter also finds discs
ENH: Allow different types accumulator and radius image Hough Circles filter
BUG: Access violation itkGaussianDerivativeOperatorTest argv[0]

Pablo Hernandez-Cerdan (4) phcerdan :
ENH: Add External Module IsotropicWavelets.
ENH: Update ExternalModule IsotropicWavelets to v0.4
ENH: Update IsotropicWavelets
COMP: Fix macro ITK_NOEXCEPT, deprecate ITK_NOEXCEPT_OR_THROW

Rene-Paul Debroize (1):
ENH: Add remote module TBBImageToImageFilter

Samuel Gerber (2):
ENH: Adding libLBFGS third party library
BUG: stdint.h missing on Visual Studio 9

Sean McBride (17) seanm :
COMP: Added missing ITK_OVERRIDE
COMP: fixed compilation error with int vs nullptr_t
PERF: Fixed some comments; prefer preincrement
COMP: Set GDCM_USE_COREFOUNDATION_LIBRARY off
COMP: add itk prefix to gdcmopenjp2 library name
COMP: Fixed some -Winconsistent-missing-override warnings
COMP: Added ITK_OVERRIDE to hundreds of destructor declarations.
COMP: Made ITK_OVERRIDE work only in MSVC >= 2012 (instead of 2010)
COMP: Fixed Wshadow warnings by removing shadows
COMP: Added a bunch more missing ITK_OVERRIDE
COMP: suppress all compilers warnings from third party google test
COMP: Added yet more ITK_OVERRIDEs, mostly on destructors
COMP: Added yet more ITK_OVERRIDEs
COMP: Fixed various -Wconst-qual warnings
COMP: Fixed some Wcast-qual warnings
COMP: Removed superfluous declarations in subclass, fixing override warnings
COMP: Silence -Wunused-template warnings by making affected methods inline

Simon Rit (1) simon.rit :
COMP: remove dynamic exception specifications

Steve Pieper (1) pieper :
BUG: ITK-3553 fixes ImageOrientation issue in DCMTK reader

Tobias Wood (3) spinicist :
ENH: Updated the Bruker2DSeq reader to ParaVision 6.0
BUG: Bruker2dseq was not registered correctly due to module name change.
BUG: Fixed origin & orientation issues.

VXL Maintainers (2):
VNL 2017-10-05 (dd7794d9)
VNL 2017-12-08 (a1573ca8)

Vladimir S. FONOV (2):
MINC 2017-09-14 (e11c6df9)
MINC 2017-10-18 (f2d06a67)

Ziv Yaniv (2) zivy :
DOC: Updated documentation for LabelStatisticsImageFilter::GetBoundingBox.
BUG: itkVTKImageIO::CanWriteFile accepted files with wrong extension.

ITK Sphinx Examples Changelog
-----------------------------------------------

Bradley Lowekamp (1) blowekamp :
Add python syntax highlighting

Dženan Zukić (1) dzenanz :
COMP: allow examples to build when ITK_LEGACY_REMOVE is enabled

Francois Budin (1) fbudin :
ENH: Bump ITK version to 4.13.0

Jon Haitz Legarreta Gorroño (6) jhlegarreta :
ENH: Add WatershedImageFilter example.
ENH: Improve layout and doc for adaptive histogram equalization example.
ENH: Update the ToDo list of examples to import from Wiki.
ENH: Add an example for itk::AdaptiveHistogramEqualizationImageFilter.
BUG: Fix the example images not being rendered.
DOC: Improve the README.rst code syntax.

Matt McCormick (2) matt.mccormick :
DOC: Update documentation to install PyPI package
STYLE: Make Python code in src/ flake8 compliant


ITK Software Guide Changelog
-----------------------------------------------

Francois Budin (1) fbudin :
ENH: Add patch number to ITK version in Software guide

Jon Haitz Legarreta Gorroño (21) jhlegarreta :
ENH: Make class and brief dcostring keywords' start columns consistent.
DOC: Update the ITK logo to the new ITK logo.
DOC: Fix `ParseCxxExamples.py` script location in `README.md`.
DOC: Fix use of \center vs. \centering in figures.
DOC: Update to the official name of Apple OS systems.
DOC: Remove redundant greater-than sign in path.
DOC: Keep ITK CMake minimum required version consistency.
DOC: Update the Advanced Module Configuration CMake options.
DOC: Update Figures 2.2 and 2.3 in Advanced Module Configuration.
DOC: Update supported compilers' list.
DOC: Transition SoftwareGuide/Cover and Latex READMEs to Markdown
DOC: Fix ITK long name case mismatch.
DOC: Fix Coding Style Guide formatting issues.
DOC: Add Documentation Style section.
DOC: Add a CMake Style item to the Overview section.
DOC: Mention the ITK full name in common abstract.
DOC: Add a cross compilation section to Configuring and Building ch.
DOC: Add content to empty example in Variable Initialization
DOC: Use tilde to connect names and references.
DOC: Enhance the `README.md` syntax.
DOC: Add a test layout subsection.

Matt McCormick (17) matt.mccormick :
DOC: Correct Coding Style Guide doxygen links
ENH: Enable specification of ITK_GIT_TAG in the superbuild
COMP: Use the xcolor package instead of color
ENH: Split Running and Parsing examples into an ExternalProject
ENH: Improve EPS conversion operation output
ENH: Add support for Ninja job pools
COMP: Address undefined colorlet command
COMP: Undefined toprule command
COMP: Undefined control sequence cellcolor
COMP: Undefined table configuration
BUG: Do not add_subdirectory(Examples) for ITKSoftwareGuide build
BUG: Do not depend on Examples generated .tex sources
BUG: Update ITK version to 2017-12-15 master
COMP: Remove ITKV3_COMPATIBILITY
ENH: Add CircleCI configuration
ENH: Propagate CMAKE_{C,CXX}_COMPILER_LAUNCHER in superbuild
ENH: Bump ITK version to 4.13.0

Page 6 of 7

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.