ENH: Add parameter weighting option to Optimizersv4

A per-parameter weighting array can optionally be used to
mask or otherwise alter optimization behavior separately from
optimization scales.

Also, fix MultiGradientOptimizerv4. It was effectively running
the optimization with 2xN iterations instead of N.

Also, add option to Optimizerv4's StartOptimization() method
to only perform initialization and not start optimization loop.

Change-Id: I70995f038b47883dece271913327725becb15115
ENH: adding support for VectorImage to JoinSeries filter

Additional, validation is performed that the that all images have the
same number of components.

Change-Id: I3e294905edd07d09eb6c0e984c6ce567db109ccb
ENH: Add DCMTKImageIO to ITK

DCMTKImageIO -- original work by Andrew Wassem,
Bill Ryan, and Alexandre Gouaillard.

Make DCMTK an ITK ThirdParty Module, that gets
built as a ExternalProject.  The transparent
build is only done for Linux and Mac builds. Windows
builds of DCMTK require more manual intervention than
could be done consistently.  The USE_SYSTEM_DCMTK
option works for all platforms.

A separate helper file is provided for building DCMTK on Windows see
ITK/Modules/ThirdParty/DCMTK/WindowsBuild/CMakeLists.txt
This separate version should have no trouble building a version of
DCMTK libraries linkable to ITK.

Change-Id: I4e26c96756a2e72968f33c522eb9d81d5b098244
Merge topic 'Add_DCMTKImageIO'

e081d83 ENH: Add DCMTKImageIO to ITK
Merge topic 'JoinSeriesVectorImage'

80c9bd9 ENH: adding support for VectorImage to JoinSeries filter
BUG: Origin was lost reading HDF5 format images.

This fixes this bug report
https://itk.icts.uiowa.edu/jira/browse/ITK-2973

Two problems:

1. The origin was being set before the # of
dimensions, and ImageIOBase::SetNumberOfDimensions()
resizes the origin, spacing etc, and overwrites the
origin member variable.

2. The regression test neglected to set a non-zero
origin in the created test image, so the test would
always succeed, because the origin of the test image
and the image read from disk were both zeroes.

Change-Id: I95e9bc129627307c6d44b23d7e7cf53fe11bbe76
Merge topic 'HDF5OriginFix-2973'

91a100d BUG: Origin was lost reading HDF5 format images.
ENH: support for VectorImage output to GradientRecursiveGaussian

Add support for VectorImage in the NthElementPixelAccessor by using
partial template specialization.

The implementation of the transformation of from local vector ro
physical vector has been extrated into overloaded member functions for
different image and pixel types.

Additionally, dead code was removed for the partially implemented
itk::Image of VariableLengthVectors.

Change-Id: I53ebbac83ede53f068a3c4e0189c8042845d89ae
COMP: Disable DCMTK for MinGW.

Does not build:

  ERROR:
  'Modules/ThirdParty/DCMTK/ITKDCMTK_ExtProject-build/lib/libdcmdata.a',
  needed by 'bin/ITKIODCMTKTestDriver.exe', missing and no known rule to
  make it

Disable for now.

Change-Id: Ia8449b855999719a702e58561e3f751328aec9fd
Merge topic 'DCMTKMingw'

af1a28c COMP: Disable DCMTK for MinGW.
Merge topic 'OptimizerParamWeighting'

3b0873a ENH: Add parameter weighting option to Optimizersv4
Merge topic 'GradientRecursiveGaussianForVectorImages'

d4f4215 ENH: support for VectorImage output to GradientRecursiveGaussian
ENH: Improve MRCImageIO support for VectorImages

The handling of the ImageIO's interpretation of NumberOfComponents,
and PixelType has been improved to handle VectorImages. Specifically,
this will allow writing VectorImage from SimpleITK to be interpreted
as RGB images.

Additionally, the sample tilt mrc image has been added from the
original IJ paper, this includes advance information in the
header. This it further tested to improve coverage.

Change-Id: I2155610f870d83c5fcb9064476adedc355d69704
BUG: Correcting wrapping CMakeList.txt for DCMTK

The wrapping CMakeLists.txt file appears to be for prior
versions. This has been udpated to work with the current wrapping.

Change-Id: I3c978ac593c47faf5ac2ff3793fd21d2240da7e0
Merge topic 'FixDCMTKWrapITK'

db6456b BUG: Correcting wrapping CMakeList.txt for DCMTK
Merge topic 'MRCImageIOImprovements'

113bdf3 ENH: Improve MRCImageIO support for VectorImages
DOC: Modify AnisotropicDiffusionFunction comments.

Author: marktsuchida@gmail.com
Correct typos.

Change-Id: I3904ef11a2d70cfc11a92069bae37ebfff6ab1b3
Merge topic 'EditDoxygen_AnisotropicDiffusionFunction_1353438854'

97ac9d4 DOC: Modify AnisotropicDiffusionFunction comments.
COMP: Adding Valgrind suppression for NRRD IO on RH6

Change-Id: Idf5e07b038aac2e596046e2640375ffc8f5ce79b
ENH: Convert the Modulus filter to standard binary filter

By converting to a BinaryFunctor filter the ModulusImageFilter can
take a constant for either the first argument or the second thanks to
the generalization for the BinaryFunctor. And the additional
functionality of being able to operate on two images is also gained.

Change-Id: Ic0b796babcc4be6bbc3a989661383a4ec98f94cc