• jcfr's avatar
    ENH: Update ITK from v4.13 to v5.0rc1, BRAINSTools and SimpleITK · bb4e7bb9
    jcfr authored
    To help extension developers transition their code base, a migration guide is also
    available on the wiki.
    See https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/MigrationGuide/ITK4-to-ITK5
    This commit implements the following changes
    * Compatibility with refactor of threading models in ITK: Fix compilation
      using ProcessingThreader class instead of PlatformMultiThreader.
      ITKv5 reorganized the multi-threading capabilities of ITK into a more modular organization
      and naming to support several modern parallelism paradigms.
      Note that these changes allow Slicer to compile with ITKv5, but does not take advantage
      of any enhancement supporting new threading models. ProcessingThreader
      is still the old-renamed PlatformMultiThreader.
      These changes were originally associated with PR https://github.com/Slicer/Slicer/pull/1057
    * Fix compilation issue related to ComputeJacobianWithRespectToPosition parameter mismatch.
      ITKv5 change the argument of some transform functions from JacobianType to JacobianPositionType.
      This fixes the new signatures.
      These changes were originally associated with PR https://github.com/Slicer/Slicer/pull/1055Co-authored-by: phcerdan's avatarPablo Hernandez-Cerdan <pablo.hernandez.cerdan@outlook.com>
    Co-authored-by: Hans Johnson's avatarHans Johnson <hans.j.johnson@gmail.com>
    Co-authored-by: Sam Horvath's avatarSam Horvath <sam.horvath@kitware.com>
    Co-authored-by: default avatarJean-Christophe Fillion-Robin <jcfr@kitware.com>
    Highlighted changes
    SimpleITK (v1.1 -> v1.2):
    * Compatibility with ITKv5
    * New Filters: ObjectnessMeasuresImageFiler (Frangi's vesselness), IterativeInverseDisplacementFieldImageFilter,
      UnsharpMaskImageFilter, and RoundImageFilter.
    * Multi-resolution BSpline registration by adapting the BSplineTransform resolution in the ImageRegistrationMethod
    * Add support for multi-component images to ClampImageFilter, MeanProjectionImageFilter, SumProjectionImageFilter,
      and the TileImageFilter.
    * More information at: https://github.com/SimpleITK/SimpleITK/releases
    ITK (4.13 -> 5.0rc1):
    * Performance improvements:
      * N4BiasFieldCorrectionImageFilter accelerated through itk::ImageBufferRange and other optimizations.
      * Various modern C++ improvements related to default constructors and move operations.
      * ResampleImageFilter::CastPixelWithBoundsChecking is now faster.
      * Data copies in itk::BSplineTransform were reduced.
      * The number of evaluations in line search optimizer were reduced by half.
      * CanRead is now faster for inspection of potential DICOM files, both with the GDCM and DCMTK DICOM backends.
      * Add Frequency Domain Support for working with images in the dual domain, such as the output of FFT images.
      * A new Simple Linear Iterative Clustering (SLIC) super-pixel segmentation filter is available.
    * Completed transition to modern features introduced in c++11
    * Third Parties updated and full support for new ones, such as DCMTK and Eigen3.
    * More information at: https://github.com/InsightSoftwareConsortium/ITK/releases
    BRAINSTools (v4.7.1 -> v5.0.0):
    * Completed transition to modern features introduced in c++11
    * Bug fixes
    Complete list of changes
    List of ITK changes:
    $ git shortlog 87f5d83..fec5de4 --no-merges
    Bai Shi (1):
          COMP: To fix compilation error of "cannot dynamic_cast 'x'
    Bradley Lowekamp (159):
          ENH: Adding more swap methods
          BUG: Respect Visibility Preset for initial template visibility
          COMP: Use explicit equality for boolean evaluation of real number
          BUG: Keep the SetSeed# methods in IsolatedConnectedImageFilter
          ENH: Use direct for loops for implementing image transformations
          ENH: Mark 2 template parameter ModulusTransform to be removed
          COMP: Remove legacy marking on definition of SetSeed methods
          STYLE: Use itk::v3 nested namespace for Rigid3DTransform
          BUG: Preserve option to use a "label value" mask and boolean mask
          ENH: update C+11 headers and try compile for headers
          ENH: Remove duplicated CMake module from upstream CMake
          COMP: Explicitly include the fixed width integer header before usage
          BUG: The CXX language must be enable to check compiler variables
          PERF: Support move semantics for ITK smart pointers
          ENH: Remove usage of SmartPointerForward reference
          ENH: Remove unneeded internal smart pointer type
          COMP: Require MSVC VS14 2015 for C++11 compatibility
          ENH: Use C++11 template alias for Image::Rebind
          STYLE: Use copy-swap idiom for SmartPointer
          ENH: Use std::unique_ptr over itk::AutoPointer
          DOC: Document additional MaskValue variable
          BUG: remove unused cmake CXX try compile file
          BUG: Remove un-configured and unused CMake configure define
          BUG: Improve Doxygen extraction with blank line
          ENH: Remove TEMPLATED_FRIEND macro and try compile
          ENH: Replace optional tr1 type_traits with c++11 standard
          ENH: Assume c++11, remove configure defines for optional TR1 features
          ENH: Only use std::atomic implementation for AtomicInt class
          ENH: Add direct SmartPointer conversions to match raw Pointers
          PERF: Use emplace when inserting into map for ProcessObject
          ENH: Create virtual interface for the MultiTheader
          ENH: Trying out the ThreadPool as a separate MultiThreader
          BUG: Fix uninitialized cross structuring element buffer
          BUG: Disable ThreadPools by default
          COMP: Add forward declaration of ExceptionObject in Macro.h
          COMP: Add forward declaration of ExceptionObject in Macro.h
          ENH: Use gtest_discover_tests if available
          DOC: Watershed filters is not stream-able
          COMP: Use nullptr over 0 for null pointer
          STYLE: Use SmartPointer direct conversion constructors
          Revert "BUG: Disable ThreadPools by default"
          BUG: Actually disable ThreadPools by default
          COMP: Suppress warning on CircleCI about itkIndex out of bounds
          ENH: Update CircleCI external data cache
          ENH: Address incorrect types with neighborhood iterator base class
          COMP: Make MirrorPadImageFilter::DelayBase a conventional parameter
          PERF: remove virtual methods in neighborhood iterators
          ENH: Use named inputs for the PasteImageFilter
          PERF: Remove iterators stored as member variables
          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
          BUG: Prevent concurrent read/write in output image
          BUG: Handle case where output image is zero sized
          BUG: Add missing dependencies in Module testing
          ENH: Remove  SPECIFIC_IMAGEIO_MODULE_TEST feature
          BUG: Fix name typo for ITK_GLOBAL_DEFAULT_THREADER
          BUG: Fix incorrect library variable for MeshIO test drivers
          ENH: Create TestKernel library
          ENH: Add SLIC segmentation to new Superpixel module
          COMP: Fix C++11 compatibility with assert in constexpr
          COMP: Use std::min over vnl_math_min
          BUG: Fix index type and and number of indexes
          BUG: Add alternate baseline itkSLICImageFilterTest1 test
          ENH: Update test output to include test name
          BUG: improve numeric consistency in linear algorithm
          COMP: Add missing overrride to virtual destructor
          COMP: Remove unused testing function and headers
          BUG: Finish updating to ScanlineIterator in nonlinear method
          ENH: Update SLIC filter to use new ITK threading model
          ENH: TileImageFilter learns to use VectorImages
          COMP: remove duplicate declaration of TempImageType
          DOC: Add link to published Insight Journal paper
          ENH: Update CenteredTransformInitializer print self method
          PERF: Remove internal streaming in DiscreteGaussianImageFilter
          ENH: Update MinimumMaximumImageFilter to use dynamic threading
          ENH: Update StatisticsImageFiler to use DynamicThreadedGenerateData
          ENH: Add compensated summation to the StatisticsImageFitler
          BUG: Use pip to install cmake
          PERF: Use the recursive Gaussian filter in registration method
          BUG: Add additional baseline for debug
          COMP: Length GTest discovery timeout
          BUG: Correct image used for debug SimpleImageRegistrationTest
          BUG: Add cxx suffix to specified source GTest code
          ENH: Consistently use default OutputWindow for messages
          BUG: Explicitly set sampled pointset in virtual domain
          ENH: Use std::enable_if and std::is_same in  filters
          PERF: Memory alloc reduction in ComputeJacobianWithRespect
          PERF: Improve MatrixOffset Jacobian computation performance
          COMP: Address signed to unsigned comparison warning
          STYLE: Cleanup development comments
          PERF: perform matrix multiplication in-place for composite Jacobian
          ENH: Provide explicitly instantiated vnl_svd_fixed
          PERF: Change type of Jacobian w.r. position to vnl_matrix_fixed
          PERF: Change the purpose of the cache jacobian argument
          DOC: Improve Extract exception for region size mismatch
          BUG: Print ImageIOBase::m_Spacing
          BUG: Fix TIFFImageIO spacing for multi-page
          BUG: Support ITK transform files with corrected group names
          ENH: Only use one Work Unit in BSpline convergence checker
          BUG: Fix HDF5ImageIO reporting any HDF5 file is readable
          ENH: Improve N4BiasFieldCorrectionImageFilter
          ENH: Add extensions to HDF5ImageIO
          ENH: Add ImageIO methods to check name for file extensions
          BUG: Quiet HDF5-DIAG from H5File::isHdf5
          ENH: Update LabelStatistics to use dyanmic threading
          ENH: Move JPEG200 ImageIO into separate ImageIO module
          BUG: Update SCIOFIO to ITKv4.13 branch
          ENH: Make ProcessObject::VerifyInputInformation constant
          BUG: Handle boundary case with max metric
          PERF: Reduce number of evaluations in line search optimizer by half
          COMP: Fix unused argument warnings in SpatialObjectPoint::operator=
          BUG: Handle boundary case with max metric
          ENH: Update ImageToHistogram to use modern dynamic threading.
          PERF: implement concurrent histogram merge/reduce
          BUG: Fix move of histogram smart pointer
          BUG: Add parameter which stores the requested number of work units.
          BUG: use =default for default implementation of destructor
          BUG: Prevent square root of negative number
          BUG: Check all entries are not null
          STYLE: Prefer immediate exception over long if
          BUG: Fix sqrt of negative values
          BUG: Address valgrind leaks for classes which use ScanlineFilterCommon
          BUG: Limit number of threads used for testing ITK
          ENH: Replace centered transforms with non-centered versions
          BUG: Remove static member function variable
          DOC: Fix LBFBS2 typo
          BUG: Remove static member function variable
          BUG: Fix multi-resolution bspline registration example
          BUG: Adding updated baseline image for improved example
          DOC: Fix typos in LBFGS2 optimizer's error string
          ENH: On Azure DevOps only show test output on failure
          STYLE: Use GTest file name suffix for Google Test based tests
          BUG: Remove unused TRansfromDomainDirectionInverse IVAR
          BUG: Synchronize BSpline MeshDomain parameters from fixed params
          ENH: Adding GTest for  BSplineTransform
          ENH: Create method to set transform domain params from coeff images
          BUG: Synchronize BSpline MeshDomain parameters from fixed params
          ENH: Refactor BSplineTransform
          DOC: Update the BSplineTransform class doxygen
          ENH: Update N4BiasField to utilized named positional inputs
          COMP: Addressed unused parameter warning in ImageRegion default
          BUG: Use compatible ITKv4 computation
          BUG: Fix Ostu test to work with ITKv4 default options
    Brian Avants (1):
          PERF: Only throw exception if zero valid points
    Brian Helba (1):
          BUG: Ensure that itkSampleToHistogramFilterTests fail on errors
    Bryce A Besler (1):
          ENH: Move DiscreteGaussianDerivativeImageFilter from Review to ITKImageFeature
    Chao Wu (2):
          ENH: Enable writing scl_slope and scl_inter in NIfTI header
          BUG: Missing SetCPUBufferPointer in GPUImage<...>::SetPixelContainer(...)
    Dženan Zukić (169):
          ENH: updating SphinxExamples and pointing to GitHub
          COMP: Get rid of warning about registry key
          STYLE: minor fixes
          BUG: duplicator crashes if buffered region is smaller than largest region
          STYLE: reducing code duplication and cleaning up method documentation
          ENH: adding itkReviewPrintTest to tests. It existed but was not invoked.
          COMP: turn FEM off by default, as it takes a long time to build
          COMP: fixing compiler warnings
          ENH: making ITKBioCell and ITKNeuralNetworks remote modules
          COMP: fixing configure error
          COMP: long paths are not yet supported by all the tools in the build chain
          COMP: using ITK_DELETED_FUNCTION, and more consistent override specifier
          ENH: simplify code and properly support long long type
          COMP: fix compile warning
          STYLE: avoid redirect for repository address in DVMeshNoise
          ENH: update remote modules to require CMake 3.9.5
          BUG: fixing crash in test
          ENH: Remove ITKFEMRegistration from default configuration
          ENH: Fixing error and improving examples' test
          ENH: Use MultiThreaderBase
          STYLE: reducing duplication and removing commented code in DistanceMap tests
          STYLE: fixing typo
          BUG: more reliably detect Windows+DLLs case
          ENH: enable thread pool by default
          ENH: adding exponential decay option to MirrorPadImageFilter
          BUG: Set/GetGlobalDefaultNumberOfThreads was forgotten in legacy #ifdef
          BUG: fixing Windows+DLL ThreadPool sporadic destructor hanging
          COMP: Using MultiThreaderBase, avoids legacy warning
          BUG: fixing null pointer dereference in PreOrderTreeIterator<>::Next()
          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
          STYLE: a more direct link (after PR has been merged)
          STYLE: update clang-format configuration
          ENH: adding ParallelizeArray method to MultiThreaderBase
          COMP: fixing warning in external module
          COMP: Address usage of deleted assignment operator
          ENH: more thorough removal of deprecated "multiple method"
          DOC: add compatibility warning to Barrier
          STYLE: initializing SingleMethod/SingleData in base class
          DOC: merging instructions from itkMultiThreader.h into migration guide
          ENH: rename NumberOfThreads into NumberOfWorkUnits in filters
          ENH: Add backwards compatibility for Get/SetNumberOfThreads
          ENH: renaming NumberOfThreads into NumberOfWorkUnits in MultiThreaderBase
          ENH: adding backwards compatibility for MultiThreaders
          ENH: default number of work units is greater than default number of threads
          COMP: fixing compile warning on GCC 4.8
          ENH: rewriting thread pool to take advantage of C++11
          ENH: implement Parallelize Array and ImageRegion in PoolMultiThreader
          COMP: SmoothingRecursiveYvvGaussianFilter compiles with new ITKv5 threading
          ENH: RGB/RGBA consistency, operator / and remove comments from implementation
          ENH: refactoring RecursiveSeparableImageFilter to use new threading
          ENH: updating MCI: adjusting to split between threads and work units in ITKv5
          ENH: compute spacing using n-1 instead 2-1 in ImageSeriesReader
          BUG: updating the HDF5 symbol mangling
          ENH: fix reading of oblique image series
          BUG: fixing crash in ThreadPool's destructor
          COMP: fixing warning about shadowed global
          COMP: avoid warning with CMake 3.12 and newer regarding policy CMP0075
          ENH: write format which is backwards-compatible with HDF5 version 1.8
          ENH: refactoring BinaryImageToLabelMapFilter to use the new threading model
          ENH: adding ProgressTransformer
          ENH: proper backwards compatibility to HDF5 1.8
          STYLE: fixing 'No new line at the end of file'
          ENH: adding short description of split between threads and work units
          ENH: rewriting BarrierTest to work with any MultiThreader
          ENH: cause compile error with HDF5 version 1.10.0 and 1.10.1
          ENH: restore BeforeThreadedGenerateData method
          DOC: state that SetRecursive must be called before SetInputDirectory
          BUG: updating the symbol mangling list
          BUG: removing mangling of unversioned variant of versioned definitions
          ENH: update migration guide: prefer C++11 classes over ITK's
          ENH: cleaning up ProcessObject
          ENH: using progress transformer in recently refactored classes
          COMP: fixing LoggerBase to compile even when DEBUG is defined
          DOC: ProgressReporter should be replaced by ProgressTransformer
          ENH: code simplification and more granular progress reporting
          ENH: return bin maximum as threshold
          STYLE: removing void if used in place of empty parameter list
          ENH: update remote module MorphologicalContourInterpolation
          BUG: nbOfThreads was bounded to GlobalMaximumNumber, but not work units
          ENH: Ignore current load in PoolMultiThreader
          COMP: missing ConstPointer declaration
          BUG: fix crash in RegionGrowingBenchmark
          ENH: reducing duplication in 4 scanline-based image filters
          ENH: use scanline iterators and clean up the code a little
          COMP: fix [-Wc++11-narrowing] in initializer list during Python wrapping
          ENH: refactor ConnectedComponent to not use Barrier. Also reduce duplication.
          STYLE: aligning macro continuation backslash
          COMP: fixing unused variable warning
          COMP: add Python wrapping for ScanlineFilterCommon
          ENH: updating remotes to their latest versions
          DOC: mentioning ITKV4_COMPATIBILITY in the migration guide
          COMP: minor fixes in preparation for deprecating atomic, mutex and friends
          ENH: updating remotes to latest versions
          ENH: using standard library's mutex primitives
          ENH: deprecating functionality which exist in C++11 standard library
          COMP: missing #include <condition_variable>
          BUG: clamp work units to ITK_MAX_THREADS in Platform and Pool MultiThreaders
          BUG: fix Python wrapping after deprecating MutexLock and friends
          ENH: adding new remote modules: Montage and BSplineGradient
          DOC: fixing copy-paste error about functor type
          ENH: improve precision of median calculation by default
          STYLE: minor space and line break improvements
          ENH: FrequencyBandImageFilter derives from UnaryFrequencyDomainFilter
          ENH: ITKv5_CONST macro for VerifyPreconditions() and VerifyInputInformation()
          ENH: ITKv5_CONST macro for VerifyPreconditions() and VerifyInputInformation()
          BUG: background label could be the same as one of the object labels
          COMP: fix compiler warning in itkIndexRange.h
          ENH: adding wrapping for UnaryFrequencyDomainFilter
          DOC: updating commit information for ITKv5_CONST in ITK 4.13.x
          ENH: commit message script uses GitHub issue referencing format.
          ENH: update Montage remote module
          BUG: test image was not properly initialized. Closes #207.
          COMP: fixing compile errors on Ubuntu 16.04 with GCC 5.4.0
          ENH: compile VNL in parallel on Visual Studio
          COMP: fix compile errors with CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS:BOOL=ON
          COMP: Remove VNL_EXPORT from header only class. Closes #191.
          COMP: fix link errors coming from undefined static constexpr member
          STYLE: rename template parameter TMatrixDimension into VDimension
          DOC: EigenValues parameter uses operator[], not operator[][]
          COMP: compile with Visual Studio in conformance mode AKA /permissive-
          COMP: moving the default constructor of vnl_matrix from .h into .hxx
          STYLE: removing empty lines between comments and constructors
          ENH: enable progress reporting with ITKV4_COMPATIBILITY. Closes #228.
          ENH: updating ITKMontage module
          DOC: trying to fix the doxygen warning
          ENH: Updating Visual Studio debug visualizer definitions
          DOC: removing long outdated comment
          ENH: updating Montage module
          STYLE: minor fixes to release notes
          COMP: a fix for system double-conversion build
          ENH: updating Montage: fix double-conversion include directory
          ENH: update ITKMontage: Fix crash when setting tiles from memory
    Eigen Upstream (2):
          Eigen3 2018-11-19 (493fa50e)
          Eigen3 2019-01-14 (16812519)
    Francois Budin (30):
          BUG: Update ITK test files SHA and debug ContentLinkSynchronization.sh
          ENH: Bump ITK version to 5.0.0.
          ENH: lifting path length limitation on Windows 10 version 1607+
          BUG: Remove bad guards stopping inclusion of necessary hxx file
          BUG: Remove extern "C" call to include <cstring>
          BUG: Initializes CMAKE_DEBUG_POSTFIX to be empty
          DOC: Remove CMake comments mentioning CMake 3.4
          DOC: ITK_CONSTEXPR* and ITK_HAS_CXX11_RVREF are deprecated
          BUG: DCMTK builds fails with ICU ON on Linux and Mac
          BUG: LabelErodeDilate remote module repositories are out of sync
          BUG: Projects could not link to DCMTK on Windows and MacOS
          DOC: Add missing documentation for `github_compare` option
          ENH: Update CMake code to use IN_LIST (CMake >= 3.3)
          BUG: Update LabelErodeDilate
          ENH: Compile ITK with MKL (FFTW) installed on system
          BUG: Update ParabolicMorphology remote module
          ENH: Sync ThreadPool and MultiThreaderBase global variables across modules
          BUG: Add function to not wait for threads when destroying thread pool
          BUG: Improvements to ITK NumPyBridge
          DOC: Improve exception message to precise what image sizes can be processed
          BUG: THEADER instead of THREADER
          BUG: Disable using mkl_tbb_thread
          ENH: Adding IOOpenSlide ImageIO remote module to ITK
          BUG: WRAP_2 is a local variable, not a CACHE variable
          BUG: Wrong path to baseline images
          ENH: Allow selecting ImageIO in Python template code
          ENH: Support loading image series in itkTemplate.
          ENH: `itk.imread()` now supports image series
          ENH: Support for tuples passed as arguments through itkTemplate New() function
          BUG: Missing ITK_WRAP_rgba_* variables in WrapITKConfig.cmake.in
    GCC-XML Upstream (1):
          ENH: pygccxml develop (reduced)
    GDCM Upstream (3):
          GDCM 2018-05-23 (69cb71a4)
          GDCM 2018-11-05 (3ffbf1ed)
          GDCM 2018-11-30 (ec82fb48)
    Gabriel A. Devenyi (1):
          PERF: Enable MINC internal compression by default
    Gregory C. Sharp (1):
          DOC: Fix misspelling of vertices
    HDF5 Maintainers (3):
          HDF5 2016-05-10 (7453bbef)
          HDF5 2018-07-20 (bed5b207)
          HDF5 2018-08-22 (08d77e43)
    Hans Johnson (164):
          ENH: Update Wiki examples for latest code changes
          COMP: Remove override warnings
          ENH: Cuberille future compilation deprecations
          ENH: Strain future compilation deprecations
          COMP: TwoProjectionRegistration Future proof code
          COMP: LevelSetsv4 used deprecated api
          COMP: N4 remove testing of deprecated SetMaskLabel
          BUG: Provide consistent GetOutput behavior
          BUG: GetModifiableTransformList needs to always be available
          BUG: Restore backwards compatibility
          DOC: Remove ITKv3 to ITKv4 migration documentation.
          COMP: Provide migration documentation old macros
          STYLE: Remove deprecated code directory contents
          STYLE: Remove all vestiges of ITKv3 code
          STYLE: Remove legacy code for ITKv5 starting
          ENH: Revert to include itkv3::Rigid3DTransform
          STYLE: Move Future deprecated to deprecated
          BUG: Restored testing for long HistorgramMatching
          COMP: Remove unnecessary conditional tests
          COMP: Force using lower deployment targert for fftw
          COMP: Use C++ headers over C headers
          COMP: Set ITK_VERSION_MAJOR to 5
          STYLE: Fix header guard format
          ENH: Set cmake Minimums to 3.9.5
          COMP: Change min cmake version to 3.9.5 for circleci
          COMP: Directly use cmake compiler_detection.h
          STYLE: Fix typo requireing -> requiring
          COMP: Consistently set use of CMake 3.9.5 and options
          COMP: Enforce building ITK with C++11
          COMP: Modularize cmake config like VTK.
          COMP: Use C++ headers over C headers (part 2)
          ENH: Scripts used during ITKv5 migration
          STYLE: Remove conditional version 201103L code
          COMP: Need to match type for different threaders
          COMP: Preparing for ITKv5 by adding override
          COMP:  Use C++11 override directly
          STYLE: Use override statements for C++11
          COMP:  Use C++11 ITK_NULLPTR directly
          COMP: Use nullptr instead of 0 or NULL
          STYLE: Prefer nullptr for C++11
          COMP:  Use C++11 nullptr directly
          BUG: VXL visibility must match ITK visibility
          COMP:  Use C++11 = delete directly
          COMP:  Use C++11 constexpr directly
          STYLE: ITK_COMPILER_CXX_CONSTEXPR is always true
          BUG: Missing external linkage options for float and double.
          COMP: Remove deprecated C++ 11 features
          ENH: ReplaceitkGetObjectMacro.sh used during ITKv5 migration
          ENH: Update SeveralRemotes to latest version.
          COMP: Suppress invalid warning
          STYLE: Remove outdated conditional code
          STYLE: Remove unnecessary old CMakeCode
          ENH: Remote for SmoothingRecursiveYvvGaussianFilter
          STYLE: Prefer C++11 type alias over typedef
          BUG: Type alias errent typo in name
          BUG: ConceptChecking type matching failed.
          STYLE: Remove ITK_HAS variables that should not be defined
          COMP: Allow using cmake 3.9.5 default for RPATH setting
          STYLE: Replace itkStaticConstMacro with static constexpr
          BUG: Propagate C++11 requirements to external project
          STYLE: Prefer constexpr for const numeric literals
          STYLE: Use range-based loops from C++11
          PERF: Allow compiler to choose best way to construct a copy
          PERF: Replace explicit return calls of constructor
          STYLE: Use auto for variable creation
          BUG: Restore ITK.kws.xml preferences
          ENH: Provide advanced development mode for writing GTests
          COMP:  Use C++11 noexcept directly
          ENH: Use simplified/natural conversion to const pointer
          ENH: Use natural ConstPointer conversion
          STYLE: Use override statements for C++11
          COMP:  Use C++11 noexcept directly
          ENH: Add google test for itkIndex.h
          ENH: Make const operator[] conform to standards
          STYLE: Change aggregate classes to mirror std::array
          ENH: Update all remote modules with C++11 conformance
          BUG: New SmartPointer conversion ambiguity
          BUG: Error in ITK_VERSION construction
          ENH:  Add introspection into the build process
          COMP: Silence warning of mismatched signs.
          ENH: Bring in C++11 updates for ITKBridgeNumPy
          STYLE: Do not use itkGetStaticConstMacro in ITK
          COMP: Make member name match kwstyle requirements.
          BUG: Add ability to construct SmartPointer with NULL
          BUG: Update NULL pointer patch with final fixes
          COMP: std::bind2nd deprecated C++11, remove C++17
          COMP: Improve variable naming for m_DerivativeOperator
          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
          ENH: HDF5 moved from svn to git
          ENH: Update HDF5 import script for 1.10.2
          ENH: Remove svn version of hdf5 files not added by import from git
          STYLE: Consistently name for ITK conventions
          BUG: Fixing the HDF5 internal path names tests
          COMP: Fix const assignment error in testing
          COMP: Prefer snprintf to avoid buffer overruns
          STYLE: Use modern C++11 =delete to indicate not implemented
          ENH: Update KWStyle hash to build latest updates
          STYLE: Prefer error checked std::stoi over atoi
          BUG: GE4IO atoi failures resulted in implicit 0 image slices
          BUG: Commandline arguments were not properly processed
          BUG: atoi failure => 0 hid processing failures
          BUG: Command line parsing silently failed
          STYLE: Prefer error checked std::stod over atof
          BUG: Failed conversion to float with uncaught failure
          STYLE: Pefer = default to explicitly trivial implementations
          COMP: Use nullptr instead of 0 or NULL
          STYLE: Replace defines with constexpr and using statements
          COMP: Fix VS2017 compilation regression
          COMP: Use static method from class directly
          STYLE: Remove support for pre 20160229 VXL_VERSION_DATE_FULL
          STYLE: Decouple matlab printing explicit instantiations
          ENH: Adding explicit instantiations for dimensions 1-10
          COMP: Remove duplicate explicit instantiations
          COMP: Remove unused variables.
          BUG: vidl_itk_istream does not override an ITK object
          ENH: Use C++11 override for overridden functions.
          STYLE: Remove unnecessary vcl_XXX.h headers
          ENH: Add scripts to assist with migrations
          ENH: Adding a few more clang tidy checks.
          BUG: Do not override user selection settings
          ENH: Update to require VXL 2.0.0 or later
          STYLE: Remove unused include headers
          ENH: Provide mechanism for changing git remote url
          COMP: Many of the remotes require updates for ITKv5
          STYLE: Remove VCL_INCLUDE_CXX_0X outdated reference.
          ENH: Add specification for -D__clang__ to clang-tidy
          PERF: emplace_back method results in potentially more efficient code
          STYLE: Replace integer literals which are cast to bool.
          ENH: Fetch upstream as part of setup.
          ENH: Stop abort on first failure.
          BUG: Default commit message fixed for =delete modernization
          ENH: Provide consistency with C++11 core guidelines
          BUG: Missing default argment override
          ENH: VXL 2.0.0 provides all instantiations needed by ITK
          ENH: Fix deficient itkCastImageFilter test
          STYLE: Minor variable naming and readability changes.
          COMP: Provide conversion range testing valid_static_cast function
          ENH: Increase minimum VXL version to 2.0.1 for wrapping
          ENH: REVERT compile VNL in parallel on Visual Studio
          ENH: Require VXL v2.0.2 release.
          ENH: Increase size attribute for large third party file.
          STYLE: Remove VXL_VERSION_DATE_FULL conditionals
          COMP: Remove duplicate explicit instantiation
          ENH: Provide range for non-warned cmake versions
          ENH: Update the GIFTI codebase
          DOC: Typo: @tparam -> @param fix doxygen generation
          DOC: Improved documentation for the migration guide
          ENH: Manually update nifti version from github
          ENH: Employ the `rule of zero` for aggregate types
          STYLE: Use default member initialization
          STYLE: Remove the register keyword
          ENH: NIFTI needs to be part of ITKTargets
          STYLE: rm initializer list extra lines
          ENH: DCMTK 3.6.4 api changes accomodated
          ENH: Move default [con/de]strutor to .h
          COMP: Protected static function must be public
          PERF: GDCM & DCMTK CanRead fails very slowly for non-DICOM files.
          PERF: readability container size empty
          STYLE: Prefer = default to explicit constructor(){}
    Hastings Greer (1):
          ENH: Add wrapping for Labeled PointSet to PointSet registration classes
    Hui Xie (1):
          BUG: The Z spacing was set using thickness
    Isaiah Norton (3):
          PERF: improve DCMTKFileReader::CanReadFile perf
          BUG: prevent segfault when transform reader fails to load .mat
          BUG: don't quote argument to URL_HASH for FFTW
    Jean-Christophe Fillion-Robin (3):
          BUG: Prevent gdcm "missing implementation" error on macOS
          STYLE: MeshIO: Introduce ITKIOMeshBase module. See #3393
          BUG: Refactor itkFloatingPointExceptions to fix macOS support
    Jon Haitz Legarreta (16):
          STYLE: Fix typo in itk::VariableLengthVector struct name.
          ENH: Set the InsightSoftwareConsortium repo as the remote.
          STYLE: Improve itkHoughTransform2DLinesImageFilter style.
          DOC: Add different GitHub badges to the `README.md` file.
          DOC: Change the ITK Git tips wiki page reference for Git scm website.
          DOC: Add commands in a `Review` section to the ITK Git cheat sheet.
          DOC: Change the `ITKGitCheatSheet.tex` file tittle.
          DOC: Make references to ITK issue tracking system consistent.
          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.
          ENH: User initialization lists over direct assignment.
          ENH: Improve itkEuclideanDistancePointMetric coverage.
    Jon Haitz Legarreta Gorroño (41):
          BUG: Fix bug in class LaTeX documentation Doxygen link.
          BUG: Fix unnecessary explicit itk namespace mention in Doxygen link.
          DOC: Remove redundant ellipsis after "etc." in LaTeX doc.
          DOC: Remove unnecessary EOF comments.
          DOC: Make namespace closing bracket comments consistent.
          DOC: Fix typo: substract to subtract.
          DOC: Remove unnecessary ifdef and class ending comments in FEM.
          DOC: Remove non-existing namespace comment.
          ENH: Add a code of conduct to the ITK project.
          ENH: Bump latest version of the ITKSplitComponents remote module.
          DOC: Remove unnecessary Doxygen \ref keyword in module crossrefs.
          DOC: Remove crossrefs to non-existing classes.
          DOC: Improve the ISSUE_TEMPLATE.md markdown file contents.
          DOC: Change the term `mailing list` in README.md.
          DOC: Fix syntax mistake in `Sharing Data` section of CoC.
          DOC: Fix typos in class doc.
          STYLE: Update the wrap files to match current CMake syntax.
          DOC: Fix typo.
          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.
          ENH: Add the ITK BoneMorphometry module as a remote.
          COMP: Bump remote modules versions.
          ENH: Clean up itkGrayscaleMorphologyImageFilter tests.
          ENH: Increase itk::OtsuMultipleThresholdsImageFilter coverage.
          COMP:  Use C++11 nullptr directly
          DOC: Fix incorrect class ref for Doxygen.
          ENH: Bump remote modules to their latest commits.
          ENH: Increase coverage for itk::GrayscaleFillholeFilterImage.
          DOC: Update the documentation concerning binary data.
          DOC: Format remote module documentation README to markdown.
          ENH: Update the SmoothingRecursiveYvvGaussianFilter remote module hash.
          DOC: Point to the ITK git cheat sheet in the repository.
          DOC: Fix the ITK Git cheat sheet file link.
          ENH: Add script to priviledge C++11 type alias over typedef.
          DOC: Advise users to delete the PR template in message.
          DOC: Move the issue and pull request templates to a specialized folder.
          ENH: Remove `FindITKPythonLibs.cmake` file.
          ENH: Follow remote repositories name changes.
          DOC: Adjust the CoC Committe to the 01/09/2019 meeting decision.
    KWSys Upstream (2):
          KWSys 2018-01-08 (f7990fc2)
          KWSys 2018-06-01 (8ef62b28)
    Kwame Kutten (2):
          BUG: Removed quotes from fftwf and fftwd hashes
          ENH: Make StatisticsImageFilter returns Sum Of Squares
    Lucas Gandel (2):
          ENH: include WrapITKConfig for external module
          ENH: Allow for itk::ImageSource wrapping override
    Marcus D. Hanwell (1):
          DOC: Add GitCheatSheet sources
    Marian Klymov (1):
          ENH: Mark copy constructor of ExceptionObject and derived classes noexcept.
    Martino Pilia (1):
          BUG: fix itkFormatWarning in Python wrapping
    Matthew McCormick (197):
          BUG: Remove ITKTubeTK remote
          ENH: Add PolarTransform remote module
          COMP: Do not use absolute path to TestBigEndian.cmake in GDCM
          COMP: Enable pthreads shim with Emscripten
          COMP: Specify OutputImageType for boundary conditions in FFTPadImageFilter
          COMP: Update DCMTK to 2018.01.16 and support Emscripten
          COMP: Fix cross compiling DCMTK
          BUG: Do not set DCMTK_WITH_XML to ON in DCMTK configuration
          COMP: itk::Math perfect forward return type
          BUG: Do not segfault when trying to use PDEDeformableRegistrationFilter
          COMP: Ensure CastXML uses C++11 with GCC or Clang
          COMP: Remove legacy BackTransform methods from Rigid3DTransform
          COMP: Explicitly add NumericTraits::max to the API
          COMP: Address SG line length warnings in DataRepresentation, Filtering
          DOC: Update README Software Guide link
          DOC: Update Discussion link in the README
          ENH: Add banner to the README
          COMP: Bump KWStyle to 2018-02-22 master
          COMP: Add missing wrapping for MultiThreaderBase
          COMP: Do not wrap methods with ?unknown? type
          COMP: Add missing itkSimpleFastMutexLock headers
          ENH: Import the ITKBridgeNumPy module
          BUG: GetArrayFromImage calls UpdateLargestPossibleRegion
          BUG: Add missing wrapping for PoolMultiThreader
          BUG: Exclude MultiThreaderBase from GetNameOfClass test
          COMP: Add SimpleFastMutexLock include to ESMDemonsRegistrationFunction
          BUG: Cast to correct iterator type in PeriodicBoundaryCondition
          BUG: Fix casting in PeriodicBoundaryCondition
          BUG: Bump KWStyle for C++11 brace list initialization support
          BUG: Fix MeshFileWriter export specification
          ENH: Create ITKIOMeshVTK module
          COMP: ExceptionObject declaration must come before usage
          ENH: Migrate BYU IO into ITKIOMeshBYU
          COMP: Bump ParabolicMorphology for MultiThreaderChanges
          COMP: Remove SmartPointer NULL initialization compatibility code
          DOC: Use http for issues.itk.org
          ENH: Migrate MultiScaleHessianBasedMeasureImageFilter out of ITKReview
          ENH: Move ContourExtractor2DImageFilter out of ITKReview
          DOC: Avoid Voronoi term when referring to the pixel center
          COMP: Wrap MultiResolutionPDEDeformableRegistration for Pyramid filter types
          ENH: Support Python snake case keyword arguments in object initializion
          PERF: Avoid extra condition check in itkBase.py
          COMP: Define ITK_DELETE_FUNCTION for backwards compatibility
          BUG: Fix bugs in ITKV4_COMPATIBILITY definition
          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
          COMP: Reduce example line lengths for inclusion in the SG
          COMP: Remove duplicate InPlaceImageFilter wrapping for RGB -> UC
          BUG: Do not copy workbox files when BUILD_DOCUMENTATION is OFF
          COMP: Remove duplicate BinaryGeneratorImageFilter class wrapping
          ENH: Remove itkzlib in preparation for subtree update
          ENH: Add ZLIB UpdateFromUpstream.sh
          BUG: Do not use P-threads with Emscripten
          COMP: Remove extra argument from HoughTransform3DCircles wrapping
          ENH: Update testing data content links
          BUG: Correct Windows and macOS CastXML hashes
          BUG: Fix SLICImageFilter wrapping
          BUG: Improve backwards compatibility of BoxUtilities functions
          BUG: Remove commented, unused Python wrapping configuration
          BUG: Remove deprecated GetPointer wrapping method
          ENH: Python snake case functions
          BUG: Remove deprecated itk.write function
          BUG: Remove unmaintained itk.show, itk.show2D
          ENH: Add snake case function aliases for NumPy conversions
          DOC: ITK 5 now requires CMake 3.10.2
          BUG: Bump SplitComponents remote module to 2018-07-18
          BUG: Remove TBBImageToImageFilter remote module
          COMP: Set CMake project command VERSION
          COMP: Do not wrap itk::ThreadJob
          ENH: Add ParallelizeImageRegionRestrictDirection
          ENH: Bump pygccxml hash to 2018-08-07 develop branch
          ENH: Update pygccxml git subtree version
          BUG: Remove ArchiveTestingDataOnMidas.py
          BUG: Avoid symlink issues in UpdateThirdPartyFromUpstream.sh
          DOC: Additional information and updates on bug fix release process
          COMP: Prevent duplicate wrapping ouput file specification
          COMP: Support instantiation of a 1D TranslationTransform
          DOC: Update how to reference a GitHub issue in the commit-msg hook
          DOC: ITK 5 Migration Guide grammar tweaks
          ENH: PEP8 for itk.Extras arguments
          ENH: Synchronize testing data content links
          DOC: Updates and improvements on the release process
          COMP: Address empty _FILE_OFFSET_BITS in tif_config.h with MinGW64
          BUG: Do not warn about FFTW GPL license when using Intel MKL
          DOC: Improve ITK_USE_MKL description
          BUG: Mark MKL CMake configuration options as advanced
          ENH: Add support for NVidia CUDA FFTs via cuFTTW
          COMP: Fix HDF5 itk_h5CX_set_apl implicit declaration
          COMP: Use the Platform Threader by default with Emscripten
          COMP: Set CMP0074 to NEW
          COMP: Fix HDF5TransformIO compatibility with HDF 1.8
          COMP: Set CMP0074 in third party libraries
          COMP: Do not mark itk::FloatingPointExceptions constructor as deleted
          COMP: Define TransformBaseTemplate constructor / destructor
          COMP: DataObject InvalidRequestedRegionError unused parameter
          COMP: Remove unused orig parameters in DataObject
          BUG: Remove unused itk_minc2 imported library statement
          BUG: Skip MINC static library build when building shared libraries
          COMP: Suppress undefined public symbol warnings in third party libs
          BUG: Remove duplicate ITK version number
          COMP: Do not install HDF5 static library with BUILD_SHARED_LIBS enabled
          COMP: Add override to TransformBaseTemplate destructor
          COMP: Avoid GCC 4.8 default destructor internal compiler error
          BUG: Import zlib1.rc from ZLib subtree
          BUG: Use GlobalDefaultNumberOfThreads for FFTW plans
          BUG: Simplify specification of greatest prime factor with cuFFTW
          ENH: Add Azure Pipelines configuration
          BUG: Remove ResampleImageFilter duplicate number of pixels check
          COMP: Avoid Intel compiler warning on unknown deprecated attribute
          ENH: Ensure that .sha512 content links have LF newlines
          ENH: Configure .gitattributes for ghostflow-director CheckSize
          DOC: Update ITK Git Reference for GitHub
          DOC: Update CONTRIBUTING.md for GitHub
          COMP: Address ITKReview module wrapping following migration of ITKIOJPEG2000
          BUG: Migrate Python tests into their modules
          ENH: Use Release CMAKE_BUILD_TYPE for macOS Python CI builds
          BUG: Remove apt-get install's from macOS Azure Pipeline's configuration
          ENH: Update Git client side hooks for GitHub
          ENH: Add UploadBinaryData.sh script
          COMP: Remove vcl_complex.h from Python builds
          BUG: Remove vcl_complex support from itkTemplate.py
          BUG: Disable PythonGetNameOfClass test
          BUG: Enable ITKIOJPEG2000 by default
          DOC: Add Test a Topic to overview section
          DOC: Organize code of conduct sub-documents into a folder
          DOC: Update Documentation/Introduction.md for GitHub migration
          DOC: Fix spelling of "individual" in CONTRIBUTING.md
          DOC: Add CI status badges to the README
          COMP: Add missing mutex include to itkImageToHistogramFilter.h
          PERF: Use initializer list in ShapedImageNeighborhoodRange operator*
          DOC: Fix UploadBinaryData.sh link
          BUG: Run apt-get update for Linux Azure configuration
          COMP: Wrap InPlaceImageFilter for complex float to complex double
          BUG: Do not gpg sign third party updates
          DOC: Note that a pull request has to be explicitly opened
          DOC: Suggest using 72 characters or less in commit hooks
          ENH: Ensure NumPy is available for Python tests
          BUG: Add missing export specification for XMLReader, XMLWriterBase
          BUG: Remove invalid ShapeDetectionLevelSetFilter arguments
          COMP: Remove Doxygen \ref, \copydetails commands
          STYLE: Improve readability of HexadedronCell::EvaluatePosition.
          COMP: Fix IsFloatingPoint concept check for VariableLengthVector
          BUG: Set up wrapping options for use in modules
          ENH: Add PhaseSymmetry remote module
          ENH: Download ExternalData cache for CI builds
          DOC: Remove the convention that release branches start with "release"
          ENH: Run content link synchronization script
          ENH: Add setup-girder-api-key Git Setup script
          BUG: Remove ExternalData MD5 content link generation
          ENH: Move FreeSurfer Mesh IO into a separate module
          DOC: Add missing CONTRIBUTING.md link in UploadBinaryData.md
          ENH: Add regression test for reading legacy multi-frame DICOM
          COMP: Float narrowing conversion in BSpline class initialization
          DOC: Move maintainer documentation into Documentation/Maintenance
          DOC: Import release archive notes from the Wiki
          DOC: Improve 4.13, 5 release notes from GitHub Releases
          ENH: Update Azure Pipelines CI testing cache to 5.0b03
          DOC: Releasing ITK updates for 5.0b03
          BUG: Exercise BinaryMaskToNarrowBandPointSetFilterTest
          BUG: BinaryMaskToNarrowBandPointSetFilter GenerateData protected
          BUG: Remove unused FixedDensityFunction in JensenHavrdaChatvatTsallis
          BUG: Do not build/use PoolMultiThreader without WinThreads or PThreads
          BUG: ShapeDetectionLevelSetFilter outputs
          BUG: ShapeDetectionLevelSetFilter outputFileName
          COMP: Remove itk::ThreadPool::GetGlobalDefaultNumberOfThreadsByPlatform
          DOC: Add 5.0 Beta 3 release notes
          DOC: Fix link to UpdatingThirdParty.md in CONTRIBUTING.md
          ENH: Add wrapping for BinaryMaskToNarrowBandPointSetFilter
          COMP: Mark DCMTKImageIO::CanWriteFile argument as unused
          COMP: Fix Software Guide line length too long warnings
          COMP: Fix Software Guide line length too long warnings
          ENH: Use CompensatedSummation in point set metrics to improve robustness
          COMP: ShapedImageNeighborhoodRangeGTest array initialization
          ENH: Move Gifti Mesh IO into a separate module
          ENH: Consistency in wrapped mesh types
          PERF: Parallelize ManifoldParzenWidnowsPointSetFunction::SetInputPointSet
          ENH: Move OBJ Mesh IO into a separate module
          ENH: Migrate OFF IO into ITKIOMeshOFF
          ENH: Update IOSTL to 2019-01-16 master
          COMP: Do not use readNoPreambleDICOM with Emscripten
          BUG: Fix Azure Pipelines commit checkout
          BUG: Fix Azure Pipelines master checkout on Windows
          BUG: Default MeshIOBase PointDimension is 3
          ENH: Update IOMeshSTL remote module and update name
          ENH: Improve loading to help pyinstaller can analyze module dependencies
          COMP: Wrapping of VectorContainer and DefaultStaticMeshTraits
          ENH: Add legacy multi-frame DICOM MD5 content links
    MetaIO Maintainers (1):
          MetaIO 2018-07-17 (6328f544)
    Niels Dekker (103):
          PERF: Improved speed of copying and resizing NeighborhoodAllocator
          STYLE: Removed 'char(255)' casts from NumericTraits min() and max()
          STYLE: Removed assignments from Neighborhood copy constructor
          BUG: Fixed semantics NeighborhoodAllocator operator== and operator!=
          BUG: GaussianDerivativeImageFunction should use image spacing consistently
          PERF: NeighborhoodOperatorImageFunction avoids copy ConstNeighborhoodIterator
          PERF: Removed blurring from GaussianDerivativeImageFunction
          ENH: Added GetCenterPoint and SetCenterPoint to EllipseSpatialObject
          DOC: Explained calling GetCenterPoint() when using Hough filter->GetCircles()
          ENH: IsInside(point) made easier, especially for HoughTransform circles
          STYLE: Using C++11 auto in HoughTransform2DCirclesImageFilter
          PERF: GaussianDerivativeImageFunction now reuses NeighborhoodIterator objects
          PERF: GaussianDerivativeImageFunction constructor, RecomputeGaussianKernel()
          COMP: ITK_DISALLOW_COPY_AND_ASSIGN now unconditionally does '= delete'
          COMP: Moved ITK_DISALLOW_COPY_AND_ASSIGN calls to public section
          COMP: Manually moved ITK_DISALLOW_COPY_AND_ASSIGN calls to public section
          COMP: Moved ITK_DISALLOW_COPY_AND_ASSIGN calls in *.cxx to public section
          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
          DOC: Fixed \code sections ShapedImageNeighborhoodRange and added \author
          STYLE: Renamed RelativeIndices to ShapeOffsets in ShapedImageNeighborhoodRange
          ENH: Added ConnectedImageNeighborhoodShape, for N-connected neighborhoods
          ENH: Added operator[] to ShapedImageNeighborhoodRange
          ENH: Documented + tested order offsets ConnectedImageNeighborhoodShape
          COMP: Fixed conversion to PDFValueType in MattesMutualInfo...Threader
          ENH: Added reverse iterators to ShapedImageNeighborhoodRange
          STYLE: Removed HoughTransform2DCircles default for TRadiusPixelType
          ENH: Changed type float data members HoughTransform filters to double
          ENH: Added Functor::CoLexicographicCompare
          ENH: Made Functor::LexicographicCompare more generic and easier to use
          BUG: Added default-constructor iterator ShapedImageNeighborhoodRange
          ENH: Added ImageNeighborhoodPixelAccessPolicy for custom border extrapolation
          STYLE: Removed LinearInterpolateImageFunction::m_Neighbors
          PERF: Made ResampleImageFilter::CastPixelWithBoundsChecking faster
          STYLE: NumericTraits::NonpositiveMin() using numeric_limits::lowest()
          BUG: Fixed casts to int64_t and double in ResampleImageFilter
          ENH: Tested ResampleImageFilter preserves 'double' and int64_t pixels
          STYLE: Replaced 'bool pre = 0' by 'bool pre = false'
          STYLE: Declared "IsAt" iterator member functions 'const'
          DOC: Replaced leading stars ('*') by spaces in Doxygen code blocks
          STYLE: Replaced "Hyperrect..." by "Rect..." in class + function names
          BUG: Removed underscores from GTest test names
          STYLE: Shortened itkShapedImageNeighborhoodRangeGTest test names
          STYLE: Declared VerifyPreconditions() member functions 'const'
          STYLE: Replaced star ('*') by space in front of Doxygen \code tags
          PERF: Made ConstNeighborhoodIterator::GetPixel(i) much faster
          ENH: Added GradientNormThreshold to HoughTransform2DCirclesImageFilter
          STYLE: Removed unused ShapedImageNeighborhoodRange::m_Image
          ENH: Added ConstShapedNeighborhoodIterator::ActivateOffsets(offsets)
          DOC: Replaced leading stars ('*') by spaces in indented Doxygen code
          ENH: Added GenerateConnectedImageNeighborhoodShapeOffsets()
          COMP: Fixed GDCM OpenJPEG name mangling
          ENH: Added ShapedImageNeighborhoodRange::SetLocation(index)
          COMP: Fixed GDCM OpenJPEG name mangling
          ENH: Added HoughTransform2DCirclesImageFilter::UseImageSpacing
          ENH: Added IndexRange for efficient region and grid space iteration
          COMP: Fixed IndexRange warnings -Wshadow -Wmissing-field-initializers
          PERF: unsharpenedImage iterator in N4Bias...Filter is now "WithIndex"
          BUG: Avoid premature GaussianDerivative kernel computation HoughCircles
          BUG: ShapedImageNeighborhoodRange should not try to avoid rvalue offsets
          ENH: Added policy for constant NeighborhoodRange values outside image
          STYLE: AccessorFunctor::SetPixelAccessor parameter reference to const
          PERF: Removed 'virtual' from Default Pixel Accessor destructors
          ENH: Added ImageRange: a range of iterators to the pixels of an image
          STYLE: ImageHelper now doing '+=' and using C++11 std::integral_constant
          BUG: Fixed ShapedImageNeighborhoodRange copying pixel access parameter
          COMP: Fixed ImageRange warning, passing object to variadic constructor
          DOC: Did #136 Update migration guide with Hough transform changes
          ENH: Added default-constructor and empty() to ImageRange
          ENH: ShapedImageNeighborhoodRange now supports any buffered region index
          PERF: Defining ImageRange iterator as raw pixel pointer, when possible
          ENH: Added Experimental::MakeImageRange(TImage*)
          PERF: Replaced postfix ++ calls on ITK iterators by the prefix ++ calls
          PERF: Small improvements to equality operators of Image Region classes
          PERF: Added C++11 final, noexcept, default, initializers to ImageRegion
          DOC: issue #273: SyNImageRegistrationMethod default member initializers
          STYLE: Small improvements ImageBase constructor, SetRequestedRegion, '\'
          COMP: Fix "unreachable code" MakeOutput RegistrationMethods
          PERF: N4BiasFieldCorrectionImageFilter implementation using ImageRange
          STYLE: Renamed ImageRange to ImageBufferRange
          PERF: Remove SystemInformation data from ResourceProbe, fix issue #350
          STYLE: Remove dynamic_cast from CastToSTLContainer(), add noexcept
          PERF: N4BiasFieldCorrectionImageFilter adds points + weights ~20% faster
          PERF: Fast assign point data, weights BSplineScatteredData filter
          COMP: ImageBufferRange iterator same as const_iterator, for const image
          PERF: BSplineDecompositionImageFilter now calls ImageAlgorithm::Copy
          ENH: Add default-constructor and empty() to ShapedImageNeighborhoodRange
          ENH: Made ShapedImageNeighborhoodRange assignable and tested copy + move
          STYLE: C++ "Rule of Zero" for iterator classes of Range types
          PERF: Add fast noexcept move semantics to Neighborhood and its Allocator
          BUG: ResourceProbe::Reset() should set m_MaximumValue to lowest value
          BUG: Fixed MoveAssignedRangeHasSameIterators GTest of two range types
          STYLE: Move test utils default-constructed ranges to RangeGTestUtilities
          ENH: Add default-constructor and empty() to IndexRange
    Pablo Hernandez-Cerdan (47):
          STYLE: Add script Move_DISALLOW_COPY_to_public
          ENH: Add stateless viewer ViewImage with Python wrap.
          DOC: Add docs to ViewImage.
          COMP: Fix catch by value warning in SpatialObject.
          COMP: Remove ignored const qualifier in template.
          COMP: Fix warnings -Wcatch-value
          ENH: Update isotropic wavelets module.
          ENH: Add frequency iterators and band pass filter.
          COMP: Update IsotropicWavelets, remove FrequencyIterators
          STYLE: Remove comment in ITKImageFrequency cmake
          BUG: Fixes generating floating point exceptions
          COMP: Fix warnings in cdash introduced after FPE.
          DOC: Add example using std::atomic for multithreading.
          COMP: Avoid extra point copy in MetaTube
          COMP: Fix hdf5 warning missing perl script
          COMP: Fix HDF5 CMake warning policy CMP0075
          ENH: Tweak constructors, Ro5 in FixedArray, Point
          ENH: Add Ro5 to FixedArray and derived classes
          COMP: Fix warnings related to Ro5 changes in FixedArray
          ENH: Add Ro5 constructors to SymmetrySecondRankTensor
          ENH: Add Ro5 to classes derived from Point
          ENH: Initialize SecondRankTensor and RGBPixelType
          ENH: Print direction in ImageIOBase
          ENH: Add HalfHermitianFrequencyIterator
          ENH: Use variadic templates for SetPosition
          ENH: Add ThirdParty module Eigen3
          COMP: Add CONFIG to find_package(Eigen3)
          COMP: Add missing headers SymmetricEigenAnalysis
          COMP: Use the right constructors for fixed eigen3 matrix
          COMP: Reorder variables associated find_package in Eigen3
          ENH: Update external module ITKIsotropicWavelets
          DOC: Fix doxygen in SymmetricEigenAnalysis
          ENH: Python, wrap complex in NumericTraits
          ENH: Update IsotropicWavelets module
          BUG: Fix failure of ITK_EIGEN macro expansion
          ENH: Add test checking noexcept moves in FixedArray
          STYLE: Change EXPECT_EQ to EXPECT_TRUE|FALSE in CommonTypeTraitGTest
          ENH: Add python wrapping for std::pair and other int containers
          ENH: Add internal/external eigen3 libraries
          ENH: Update IsotropicWavelets
          ENH: Add new c++11 member functions of std::vector to itk::VectorContainer
          ENH: Simplify specialization of NumericTraits<std::complex<TComponent>>
          BUG: itkMatrix: Use NumericTraits::Zero instead of literal 0
          DOC: SoftwareGuide: improve TransformIndexToPhysicalPoint notation
          COMP: Fix multi-line comment warning generated by latex notation
          [Backport] BUG: Fix OFFIS_DMCTK_VERSION_NUMBER where wrunlock was introduced
          [Backport] BUG: Fix export for ITKDeprecated classes
    Rashad Kanavath (1):
          COMP: fix linking on OpenBSD
    Roman Grothausmann (3):
          DOC: adjusted to fit more general case n != m
          DOC: corrected description of the output
          BUG: avoid overwriting output in 2nd run used for comparison in test:
    Sean McBride (29):
          STYLE: Fixed up confusion between base 2 and base 10 prefixes
          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()
          BUG: don't use double underscore, which is reserved in C++
          STYLE: fixed some spelling, spacing, and comments
          DOC: Fixed comment about LegacyAnalyze75Mode default value
          BUG: Some minor cleanup and improvement after itkNiftiImageIO code review
          BUG: Analyze 7.5 fixes/improvements
          COMP: Mangle HDF5 symbol names
          COMP: Fixed clang Wrange-loop-analysis warnings
          DOC: fixed minor typo in comment
          BUG: Revert part of f38b1dd4, which caused a regression
          ENH: Added new DetermineFileType() API to NiftiImageIO
          COMP: fixed clang warning about unnecessary copy in for loop
          COMP: -Wunused-template & -Winconsistent-missing-destructor-override warnings
          COMP: Exercise dead code, fixing -Wunused-template
          COMP: Removed dead code, fixing -Wunused-template
          COMP: Fixed -Winconsistent-missing-destructor-override warnings
          COMP: Suppress some warnings in ThirdParty/DoubleConversion
          BUG: fixed null access found by UBSan
          BUG: removed illegal int to enum conversion
          COMP: fix warning about implicit double to bool conversion
          COMP: Fixed warning about missing case label in public header
          COMP: Fixed three misc clang warnings
          COMP: Added additional HDF5 symbols for mangling
          DOC: improved comments about HDF5 symbol mangling
          COMP: fixed some -Wunused-template warnings by adding private namespaces
    Simon Rit (6):
          BUG: fix deadlock in FFTW for windows shared libs
          COMP: missing include path for FFTW
          ENH: allow wrapping of XML writers
          BUG: fix NumPy bridge for itk::Image with PixelType itk::Vector
          ENH: improve automatic Python ImageFileReader for non-scalar pixel types
          BUG: python itk.Image returned by GetImageFromArray now manages its own buffer
    Taylor Braun-Jones (2):
          BUG: Handle single-component PLANARCONFIG_SEPARATE TIFF images (#ITK-3518)
          COMP: Fix clang diagnostic: case value cannot be narrowed
    Tobias Wood (1):
          BUG: Swapped int to SizeType to prevent overflow errors
    VXL Maintainers (15):
          VNL 2018-01-25 (ed159d55)
          VNL 2018-01-31 (39559d06)
          VNL 2018-03-04 (09a097e6)
          VNL 2018-05-16 (26628604)
          VNL 2018-07-26 (2a77e40b)
          VNL 2018-08-04 (3dafea87)
          VNL 2018-09-05 (fc0c9043)
          VNL 2018-11-04 (ea3a2cc9)
          VNL 2018-11-08 (88b72533)
          VNL 2018-11-14 (ee083096)
          VNL 2018-11-15 (4fe68119)
          VNL 2018-11-18 (fa7c7abd)
          VNL 2018-11-23 (cb6f5dcb)
          VNL 2018-11-29 (f6e20c3c)
          VNL 2018-12-15 (bb0d2eb6)
    Vladimir S. FONOV (1):
          MINC 2018-08-09 (ce4333ca)
    Yann Le Poul (4):
          BUG: make sure the palette is empty when m_IsReadAsScalarPlusPalette is false
          DOC: fix rotation spelling issue in some versor related files
          STYLE: IsReadAsScalarPlusPalette already printed in parent class
          BUG: unnecessary call to GetExpandRGBPalette
    Ziv Yaniv (1):
          ENH: Adding user set min and max values for noise.
    Zlib Upstream (2):
          zlib 2018-06-11 (355d8648)
          zlib 2018-06-11 (355d8648)
    allywarner (1):
          BUG: CMake build errors
    ihnorton (1):
          COMP: use HDF5 library names only to avoid abspaths w/ SYSTEM_HDF5
    pierre33 (1):
          ENH: Update itkNaryFunctorImageFilter
    List of BRAINSTools changes:
    $ git shortlog --no-merges b045970..ac4dafaa
    Alexander Leinoff (1):
          COMP: Allow cmake generation on OSX without XCode
    David Ellis (2):
          ENH: Adds logismosb interfaces and workflows
          ENH: Nipype recon-all workflow added
    Hans J. Johnson (196):
          ENH: Prefer to build everything as static to avoid libary dependancies.
          ENH: Force the NO_MODULE for RTK.
          ENH: Resyncronized with Slicer packages.
          ENH: Update Opencv
          ENH: Propagate CXX settings to all sub-projects
          ENH: ITK Intermediate update.
          STYLE: Name ITKv5 as target name for dependancies
          ENH: Turn off ITK_LEGACY to prep for ITKv5
          ENH: Update ANTS,RTK and SlicerExecutionModel checkout tags
          COMP: Set VTK version identifier.
          ENH: Updated VTK with C++11 override instrumentation.
          BUG: UseImageSpacing should be defaulted to On
          ENH: Add github templates for PR and ISSUES
          COMP: Disable floating point exceptions checking
          BUG: New ITK enhanced random needs consistency in test.
          ENH: Set random number generated to historical ITK values
          COMP: Make tests pass
          BUG: Fix incorrect DATA{} syntax.
          ENH: Fix pre-mature exit when writing debug image
          STYLE: Minor code organization
          ENH: Setting min cmake version number.
          STYLE: Remove CMake-language block-end command arguments
          STYLE: Convert CMake-language commands to lower case
          COMP: Use recommended const interfaces
          ENH: Explicitly use parameters instead of defaults.
          ENH: Instrument to identify test failures
          COMP: Link to correct version of zlib
          COMP:  Use C++11 nullptr directly
          COMP: Identify null pointer assignments
          COMP:  Use C++11 override directly
          STYLE: Setting override for overriden member functions.
          BUG: Missing data dependancies for test suite
          COMP:  Remove compiler warnings from cnpy
          COMP: BRAINSSurfaceTools are not compiling currently.
          COMP: Remove outdated policies for CMP0017.
          STYLE: Use override statements for C++11
          ENH: Change to https from git download.
          ENH: Set BRAINSABC to always build.
          COMP: Update to new version of tbb
          ENH: Use C++ headers instead of C headers.
          COMP: Missing dependancy on ITKv5
          ENH: Setting deployment target to 10.9 for mac
          ENH: Put BRAINSSuperResolution code together.
          COMP: Attempt to build BRAINSTools for redistribution.
          STYLE: Push parts of codebase into an ARCHIVE dir
          BUG: Provide mechanism to move some modules to the ARCHIVAL status.
          COMP: Remove outdated cmake policy behavior
          ENH: Move old programs to an archive directory
          COMP: Remove shadowed typedefs by using explit namespaces
          ENH: Move BRAINSTalairach to the ARCHIVE Directory.
          ENH: Move BRAINSRefacer to the archive directory.
          ENH: Set ARHIVE project to on if ARCHIVE builds choosen.
          ENH: Add old DicomSignature program to archive
          COMP: Fix building against new GDCM version.
          Update NOTICE
          ENH: Use file introspection to determine BVec file format
          ENH: Remove unnecessary manual read file type flag
          ENH: Add thicknes from spacing when converting from FSL to NRRD.
          ENH: use constant scale factor initialization
          BUG: ITK_VERSION_MAJOR version checking
          ENH: Remove redundant ExternalData.cmake that overrode CMake version.
          STYLE: Prefer constexpr for const numeric literals
          STYLE: Replace itkStaticConstMacro with static constexpr
          STYLE: Prefer constexpr for const numeric literals
          STYLE: Do not use itkGetStaticConstMacro in ITK
          ENH: Update to ITKv5 with using over typedefs.
          ENH: Update dependancies for BRAINSTools.
          COMP: Wrong name specified for target_properties.
          BUG: regex substitution failure for const
          COMP: Silence build warning about unused CMAKE_EXPORT_COMPILE_COMMANDS
          COMP: Cleanup build options for BRAINSTools
          ENH: Organized for project name setting.
          ENH: Improve CXX_STANDARDS checking logic
          ENH: Remove outdated ITKv3 configuration checking.
          ENH: Set GENERATECLP_USE_MD5 unconditionally.
          STYLE: Organize build default settings.
          ENH: Use explicit named mark_as_superbuild parameters.
          ENH: Add better debugging to version checking.
          ENH: Improve version settings for BRAINSTools
          ENH: Use MultiThreaderBase to get GlobalVariables.
          ENH: Provide new baseline for BRAINSFitTest_RigidRotGeomNoMasks
          ENH: Prevent constant changes as patches are added
          BUG: Prevent constant changes as patches are added
          ENH: Fixed tests failures due to incorrect testing environments
          ENH: Syncronized external superbuilds with Slicer.
          ENH: Convert BRAINSCut python to python 3
          ENH: Convert all python code to python 3 conformance
          ENH: Version 5.0.0 of BRAINSTools
          ENH: Allow for compressed transform files.
          ENH: Reorganize python code to be compliant with Python3 modules
          BUG: New versions of ANTs have slightly different options
          BUG: Fix new nipype behavior of data sink with missing values.
          ENH: Consolodate duplicate functions
          ENH: Fix simple itk usage failure.
          STYLE: Update comments.
          BUG: Nipype needs OrderedDict for hash consistency
          ENH: Passing dict() or OrderedDict() through pipeline causes hashing issues
          BUG: Incorrect debugging option retained for None images
          ENH: Allow for possiblility of compiling with ITKv4
          ENH: Update ITKv5 to version with UseCompression for transforms.
          ENH: Update to latest version of boost.
          BUG: Fix bug in mark_as_superbuild PROJECT->PROJECTS
          BUG: Error in caused mark_as_superbuild items to be missed
          ENH: Sync with slicer mark_as_superbuild options.
          ENH: Re-organize build option settings
          STYLE: Reviewed and cleaned up superbuild
          ENH: Updated  static version string setting.
          COMP: Add quick -march=native compiler flag adding
          ENH: Remove unnecessary build code for superbuild.
          ENH: Syncronized with NAMICExternalProjects build.
          ENH: Propogate default /lib /bin directories to all projects
          BUG: Bad hash for scan3Mask1.nii.gz.md5.
          ENH: Unlink ITK from VTK GUI build.
          COMP: HD5 changed API for printing Errors.
          COMP: Remove unused variables.
          COMP: ITKv5 updates for JPEG2000.
          ENH: Updated packages for improved C++11.
          ENH: Add azure testing scripts.
          COMP: Fix KWStyle compilation fixes.
          BUG: Mismatch type for CovariantVector initialization.
          COMP: virtual designation is redundant with override designation.
          COMP: ITKv5 multi-threading model compatibility.
          COMP: ITKv5 uses std::mutex directly.
          COMP: Only configure inner BRAINSTools
          COMP: Fix function signature for override
          COMP: Future proof vnl_math_XXX function usage.
          COMP: Replace vcl_XXX items with std::XXX
          COMP: Remove unused variable.
          ENH: ITKv5 itkMultiThreader.h -> itkMultiThreaderBase.h
          STYLE: Replace itkStaticConstMacro with static constexpr
          STYLE: Use "typename" for template parameters
          STYLE: Prefer error checked std::sto[id] over ato[if]
          COMP: Prefer C++ headers to C99 headers.
          COMP:  Use C++11 nullptr directly
          COMP: Use and move ITK_DISALLOW_COPY_AND_ASSIGN calls to public section.
          ENH: Update external packages C++11 compliance
          ENH: ITKv5 Threading Model changes needed for testing
          STYLE: Prefer C++11 type alias over typedef
          DOC: Add documentation for newer OS versions.
          ENH: Comment out tests that do not work due to missing data
          ENH: Disable building of BRAINSSurfaceTools
          COMP: Remove compiler warnings.
          COMP: Make VerifyInputInformation a const function (ITKv5)
          ENH: Update to 2019_U2 to fix TBB issues with mac min version compilations.
          ENH: Propagate MAC_OS_X_VERSION_MIN_REQUIRED to TBB build.
          ENH: Improve TBB versioning selection.
          COMP: Update new reference data after VXL ITKv5 updates.
          ENH: Updated BCD baselines for ITKv5
          COMP: ITKv5 backward compatibility fixess.
          ENH: Update BRAINSFit baselines for ITKv5
          ENH: Try to make random number generation consistent.
          ENH: Update ANTs and ITKv5 for more test coverage.
          ENH: Update data regression.
          COMP: Remove compiler warnings.
          ENH: Duplicate names for testing
          BUG: Failing test updated after visual review
          COMP: Cleanup compiler warnings.
          ENH: UPdate ITK to include vxl explicit instantiations.
          COMP: Remove deprecated SetUseFixedSampledPointSet
          COMP: SetNumberOfThreads -> SetNumberOfWorkUnits
          ENH: Update reference data to sha512 on new data source.
          ENH: Remove duplicate md5 signatures.
          BUG: Failed uploads fixed for sha512
          COMP: Valgrind un-initialized memory reads
          STYLE: Prefer error checked std::sto[id] over ato[if]
          ENH: Adding an editor config for BRAINSTools.
          ENH: Add extra landmark Eye sanity checking for BCD.
          ENH: Add component testing for valid values to workflow running.
          STYLE: Remove trailing whitespace from files
          COMP: Add missing iostream header.
          STYLE: Remove unused file and directory ExternalSources.
          ENH: Fix dependency ordering for new project() syntax.
          ENH: Use range of new CMake features.
          ENH: Update to latest TBB build 2019_U3 for 10.14 compatibility.
          ENH: Update to latest version of packages
          ENH: Temporary ITK branch for dcmtk api compatibility.
          ENH: Add Travis pull request builds.
          ENH: Add helper file for configuring BRAINSTools for IDE.
          COMP: Errors with VTK TBB building in superbuild mode.
          STYLE: Fix naming of variables for DWIConverter class.
          ENH: Force clean ITKv5 building, remove legacy modes.
          ENH: ITKv5 const fix for duplicater image filter.
          ENH: ITKv5 fix for duplicater image filter.
          COMP: Allow building with C++ > 11
          ENH: Fix failing CI .travis.yml syntax.
          ENH: Add diagnostics for failed TBB download.
          ENH: Test for extra long test times.
          COMP: Moved my.cdash.org only supports https now.
          ENH: The maximum cmake version is only for policies
          ENH: Fix backward compatibility with OpenCV4.
          COMP: Match types for loops.
          BUG: Python set inclusion syntax error fixed.
          ENH: The maximum cmake version is only for policies
          ENH: Update wts reference file to have comment line.
          ENH: Wts file has header line to be ignored.
          BUG: Simple ITK does not currently expose SetNumberOfWorkUnits
    Hui-Xie (6):
          COMP:  change VTK min version
          ENH: Add support for r/w Dicom, FSL, Nrrd formats
          BUG: erase unnecessary cmake config
          BUG: erase unnecessary lib in CMake file
          ENH: add DWI file convert utility interfaces
          BUG: stat uses ITK KWSys wrapper interface
    Isaiah Norton (4):
          BUG: DWIConverter hard-coded transpose/FSLBy3Rows setting
          ENH: don't allow matching bvec and bval file names
          ENH: DWIConvert, Philips: also check supplement 49 b value field
          Bump ITK to v5b1 to resolve FFTW broken download
    Jean-Christophe Fillion-Robin (4):
          Add License file
          STYLE: Add Notice file
          ENH: Improve build targets organization in IDE that support folders
          ENH: Use a single data management target and support customizing its name
    Johan Andruejol (1):
          BUG: Add try/catch around BrainsFitHelper update
    Regina EY Kim (2):
          BUG: Add a missing header
          ENH: fix the probabilityMap RegistrationToSubject option
    azure-pipelines[bot] (1):
          Set up CI with Azure Pipelines
    List of SimpleITK changes:
    $ git shortlog --no-merges v1.1.0..dc5c1a1d
    ASVBPREAUBV github_user (1):
          Update DicomSeriesReadModifySeriesWrite.R
    Bradley Lowekamp (164):
          Bumping version to 1.2 for development
          Adding Python wheel downloads for v1.1.0 from SourceForge
          Fix template generator custom method with multiple parameters
          Add docs for set methods
          Add SetRegionOfInterest method
          Document conventions for Image Regions
          Add GetRegion method to LabelMap based statistics filters
          Correct RegionOfInterest doxygen from proper ITK class
          Adding wrapping for filters from remote LabelErodeDilate module
          Use named inputs for the paste image filter
          Adding wrapping for StochasticFractalDimensionImageFilter
          Add names inputs for FFTConvolutionImageFilter
          Update JSON python scripts to end files with newline
          Add ExternalData step to building Sphinx documentation
          Adding Readme for Sphinx images directory
          Adding Readme to white list of files
          Correct code-block indentation
          Add overflow and underflow count to ShiftScaleImageFilter
          Adding wrapping for the BSplineDecompositionImageFilter
          Add interpolator enum for the BSplineResampleImageFunction
          Fix documentation for GetCoefficientImages method
          Adding test for resampling with the BSplineResampler iterpolator
          Add specification of ITK ImageIO used to read image
          Use return self macro
          Adding testing for setting ImageIO
          Adding baseline hash for LabelSetErode filter
          Update require CMake version to 3.10
          Remove CMake version checks for version before required version
          Remove local CMake GTest module, use gtest_discover_tests
          Set pointer to null after deleting
          Correct interpolate for ruby bspline_resample test
          Only label unstable on apple systems
          Correct capitalization style for ruby enum
          Update SimpleITK Version in Sphinx
          Adding support for ImageBase types to ImageTypeToPixelIDValue
          Add a descriptive error message for image casting failure
          Add propagation of CMake job pool variables in Superbuild
          Remove deprecated midas3 from external download URLs
          Remove unused variable value
          Remove imported CMake ExternalData module
          Update referenced json
          Update name field and reference script used for doc fields
          Add doc for itk_module json field
          Adding R language to CircleCI testing
          Only add R dependencies for R job
          Adding R Unit tests when R is built as a project
          Add junit test formatting for python and R
          Make and use separate environment anchor
          Update documented CMake required version
          Add wrapping for Toboggan filter
          Update ITK superbuild version along ITK v41.3 release
          Make variables, functions, and structs local scope
          Add support for VectorImages to the Tile filter
          Specifying Toboggan output types as uint32_t for portability
          Just link the SimpleITK on Sourceforge, not the versioned sub-directory.
          Reduce CircleCI dependencies, and use system SWIG
          Correcting link to Java visual guide
          Improve doxygen documentation for the Image class
          Fix tense per code review
          Use standard find_package for ITK in SimpleITK Config
          Use modern CMake IN_LIST if operator
          Remove legacy BasicFiltersN loop code
          Correct variable name used to disable building documentation
          Update Superbuild ITK version along 4.13 release branch
          Set CircleCI to use Github for ITK repo
          Add wrapping for SLICImageFilter from SimpleITKFilters module
          Correct Github ITK repo in CircleCI CMake configuration
          Specify data root as SimpleITK root project
          Add BUILD_EXAMPLES option to standalone language builds
          Enable CircleCI testing of examples when language is built
          ENH: Support passing ITKV4_COMPATIBILITY to ITK superbuild
          Enable ITK_LEGACY_REMOVE to be overridden
          Explicitly specify stretch docker image add python 3.6 for testing
          Explicitly use python to invoke pip, print python version
          COMP: Lengthen GTest discovery timeout
          Adding Java build to CircleCI
          Add testing for Java stand-alone project
          No CI for languages on next branch
          Remove BUILD_DOCUMENTS CMake option
          Exclude files leading with a '.' from globs
          Add Update data link for R man documents
          Add TransformVector method to Transform class
          Update Superbuild ITK version to 4.13.1
          This data file hash is neither used nor does it exit
          Update links for downloads in tarball generation
          Adding data links from ContentLinkSynchronization.sh execution
          If ITKv5 map number of threads to number of "Work Units"
          Add access to number of valid point used during registration
          Fix Python index test with empty comparison
          Fix recursive option with GetGDCMSeriesFileNames
          Adding Transform method to flatten composites transforms
          Add mirror of SimpleITK External Data repository
          Documentation tweaks
          Remove dimension limitations form GetImageFromNumpy
          Improve exception for unsupported Image size
          Use baseline images for testing
          Set the default CMake policy to 3.10
          Adding request of IO region to ImageFileReader
          Adding testing for reading an extraction region
          Update ITK superbuild along 4.13 release branch
          Adding vector image support to Mean and Sum projection image filters
          Improve documentation for SetExtractSize
          Add new 5d test image
          Add IO extract direction matrix behavior documentation
          Add IO extraction test with 5d file
          Fix size shortening warning
          Remove uint64 to uint copy to avoid warnings
          Add Doxygen grouping to ImageReaderBase::Set/GetImageIO
          Create common method to create ImageIO by string name
          Fix indentation in ImageFileWriter
          Add SetImageIO method to ImageFileWriter
          Add option to set ImageIO to the series writer
          Add debugging information to ReadInformation
          Remove typename outside of template
          Add support for vector images to the clamp image filter
          Improve documentation of some RegistrationMethod methods.
          Add method to access the metric's sampling percentage.
          Add testing for GetMetricSamplingPercentagePerLevel method
          ITK superbuild version along the 4.13 release branch
          Address implicit conversion warnings from float to double
          Adding construction of BSpline transform from coefficient images
          Add testing of constructing BSpline Transform from images
          Add methods to transform class to get number of parameters
          Improve image registration per level documentation
          Add registration support for multi-resolution bspline transform
          Add unit testing of BSpline parameters
          Fix reassigning initial transform issue
          Adding testing of BSplineTransform registration in place
          Update the ITK superbuild version along release-4.13
          ENH: Adding example of multi-resolution bspline registration
          Adding prose document to BSpline3 example
          Adding C++ BSpline3 example
          Add labels to docs referenced from BSpline3
          Quote function name and remove extraneous prose fragment.
          Use the official ITK Github repo
          Restore needed storage option to increase default size
          Update manylinux to use CMake 3.11.4
          Update manylinux openssl to 1.0.2q
          Create wheel even when tests fail
          Update JSON documentation from ITK release-4.13
          Updating Java and Python docstrings from current build
          Updating ITK version with BSpline mesh parameter fix
          Add test for BSplineTransform copy on write
          Add multi-resolution BSpline registration test non-inplace
          Adding option to procedure ReadImage to specify the ImageIO
          Sort the json descriptions to maintain order
          Update Sphinx filter descriptions via script.
          Fix conversion warning
          Update the FAQ
          Fix up in wording in FAQ
          Update SwigDocStrings for Python and Java
          Update R documentation files
          Add missing parameter documentation to the ReadImage method
          Update from SwigDocUpdate.sh with latest changes
          Update R documentation archive
          Change broken quote to bash code block.
          Update R Rd document files with manual fix
          Applied correction to escape % in R documentation.
          Apply escape sequence to all occurrences of %
          Add isysroot as require flag in non-cmake superbuild projects
          Don't use CMAKE_OSX_SYSROOT is empty string
          Update ITK Superbuild version along 4.13 release  branch
          Remove extraneous CMake message statement
          Adding Azure Pipelines configuration from master branch
    Dave Chen (11):
          Large refactor of GenerateDoc.py
          Ran JSONBeautify.py
          Ran new GenerateDoc.py on JSON files
          GenerateDoc.py fixed to handle Unicode input
          Added test of default ResampleImageFilter params
          Fixed wrong method.
          Missing '&' on Windows
          Fixed memory leak
          Improved testing of the ImageViewer class
          Modified test to improve code coverage
          Fix for hang in Show function on Windows
    David T. Chen (19):
          Fixed some formatting, adjusted a few other things.
          Use TextOutput for OutputWindow
          Fix string comparison bug
          ENH: Initial check-in of the ImageViewer class
          Use ImageViewer class
          Fix for ITK code style
          More code fixes
          Print more defaults it ToString
          Added SetGlobalDefaultDebugOn/Off methods
          Fix type warning on Windows
          Added 'command' param to SetApplication.
          Fix for Show w/o ImageJ or Fiji
          Improve test coverage for ImageViewer class.
          Removed ImageJ stuff from Installation doc
          Updated the building.rst doc
          A few small fixes
          Updated for Python 3
          Re-run for SimpleITK v1.2rc1
          Fix R documentation warning
    Jean-Christophe Fillion-Robin (2):
          circleci: Fix and simplify install of CMake
          circleci: Install scikit-ci-addons to ensure ctest_junit_formatter is available
    Kasper Marstal (2):
          ENH: Use return instead of raising StopIteration (PEP 479)
          ENH: Add empty image Python indexing test
    Richard Beare (25):
          Vignette update
          R package DESCRIPTION update
          moved methods import to namespace and referenced the dll
          Modified generation of namespace file
          R version check during configuration
          Installation of R from CRAN for circleci testing
          R package rules don't allow non standard file formats in the data directory.
          Add index entry to latex preamble of vignette
          Update formatting of license field in R DESCRIPTION file
          use Rd note section instead of usage as the latter requires R code
          Formulas processed to avoid breaking latex after conversion
          place holders in empty sections for procedural interface
          tidied up testing for missing fields
          importFrom for utils package in NAMESPACE file
          updated instructions for documentation
          Add as.image to index entry
          Add text to empty fields and allow additional sectiondef
          Modified creation of filenames of R documentation
          Add documentation file for S4 methods.
          Add replacement R functions.
          Add better support for R namespaces and documentation
          Fix: spurious bracket in script
          ENH: Improving formatting of DESCRIPTION file according to --as-cran checks
          Fix: C++11 style init causing problems with RTools(windows) c++
          Modified functions exported by R package.
    Seungkyoon Bong (24):
          Updated tutorial link for SimpleITK
          Translated the common conventions page from the Doxygen
          Deleted the .rst change
          Added hyperlinks and inline markups for code
          Created a page with SimpleITK Filters
          Changed the HTML template of the documentation
          Added Relevant Resources and link to paper to index.rst
          Corrected LaTeX notation in Registration Overview
          Create image and transformation IO page
          Translate and Update Page for Eclipse Set Up
          Translate and Update Visual Studio Set Up
          Convert pngs to web-optimized jpgs
          Restore simpleitk_logo.png.md5
          Translate N4BiasFieldCorrection R Example
          Create filter and slicing operator comparison
          Translate DemonsRegistration1 R Example
          Translate DemonsRegistration2 R Example
          Translate DicomSeriesFromArray R Example
          Translate ImageRegistrationMethodBSpline1-2 R Example
          Fix spelling error in N4BiasFieldCorrection
          Translate 2 ImageRegistrationMethod R Examples
          Translate ImageRegistrationMethod2-4 R Example
          Remove internal function in ImageRegistrationMethod1
          Remove internal functions in DemonsRegistration1-2
    Ziv Yaniv (18):
          Adding support for vector images in as.image conversion.
          Adding test to the patch (moving between R array 2 image 2 R array).
          Adding read the docs sphinx fundamental concepts documentation.
          Adding concepts of channels and resampling.
          Adding section on resampling and updating the images location.
          Adding reference to image md5 for download.
          Typo in example, comma instead of bar in the specification of Instance Number.
          ImageJ not found in expected location FAQ information.
          Updatind publication citation list.
          Adding the tutorials and course page to the documentation.
          Adding introductory information with respect to tutorials.
          Corrected backslash not visible in documentation of windows path.
          Renamed the example to reflect its content.
          Adding image viewing example.
          ENH: Adding new example illustrating new SimpleITK IO.
          ENH: separated the example in two based on code review.
          Upadated readme file to match our current state (rc1.2).
          Adding the SPIE course to the tutorials' list.
    From: Hans Johnson <hans.j.johnson@gmail.com>
    git-svn-id: http://svn.slicer.org/Slicer4/trunk@28016 3bd1e089-480b-0410-8dfb-8563597acbee
CMakeLists.txt 47 KB