Class AlgorithmN4MRIBiasFieldCorrectionFilter

  • All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.lang.Runnable, java.util.EventListener

    public class AlgorithmN4MRIBiasFieldCorrectionFilter
    extends AlgorithmBase
    Version:
    0.1 May 16, 2014
    Author:
    William Gandler This a a port of itkN4MRIBiasFieldCorrectionImageFilter.txx, itkN4MRIBiasFieldCorrectionImageFilter.h, itkCoxDeBoorBSplineKernelFunctionTest2.cxx, itkBSplineScatteredDataPointSetToImageFilterTest, itkBSplineScatteredDataPointSetToImageFilterTest2, and itkBSplineControlPointImageFilterTest from the itk package. Here is the original itk header: Program: Advanced Normalization Tools Module: $RCSfile: itkN4MRIBiasFieldCorrectionImageFilter.txx,v $ Language: C++ Date: $Date: 2009/06/09 16:22:05 $ Version: $Revision: 1.6 $ Copyright (c) ConsortiumOfANTS. All rights reserved. See accompanying COPYING.txt or http://sourceforge.net/projects/advants/files/ANTS/ANTSCopyright.txt for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information.
    • Field Detail

      • entireImage

        private boolean entireImage
        Flag, if true, indicates that the whole image should be processed. If false either: 1.) Process where the mask is set true 2.) Make sure the mask is set false and process where the confidence image is > 0.0
      • confidenceImage

        private ModelImage confidenceImage
      • confidence

        private double[] confidence
      • nDims

        private int nDims
      • numberOfHistogramBins

        private int numberOfHistogramBins
      • logBiasFieldControlPointLattice

        private ModelImage logBiasFieldControlPointLattice
      • WienerFilterNoise

        private double WienerFilterNoise
      • biasFieldFullWidthAtHalfMaximum

        private double biasFieldFullWidthAtHalfMaximum
      • splineOrder

        private int[] splineOrder
      • fittingLevels

        private int fittingLevels
      • originalNumberOfFittingLevels

        private int[] originalNumberOfFittingLevels
      • controlPoints

        private int controlPoints
      • originalNumberOfControlPoints

        private int[] originalNumberOfControlPoints
      • sigmoidNormalizedAlpha

        private double sigmoidNormalizedAlpha
      • sigmoidNormalizedBeta

        private double sigmoidNormalizedBeta
      • maximumIterations

        private int maximumIterations
      • maximumNumberOfIterations

        private int[] maximumNumberOfIterations
      • convergenceThreshold

        private double convergenceThreshold
      • length

        private int length
      • origin

        private float[] origin
      • resolutions

        private float[] resolutions
      • xDim

        private int xDim
      • sliceSize

        private int sliceSize
      • xyzSize

        private int xyzSize
      • maskOrigin

        private float[] maskOrigin
      • maskIndex

        private int[] maskIndex
      • maskLargest

        private int[] maskLargest
      • maskExtents

        private int[] maskExtents
      • latticeExtents

        private int[] latticeExtents
      • latticeExtentsLength

        private int latticeExtentsLength
      • selfTest

        private boolean selfTest
      • CoxDeBoorBSplineKernelFunctionTest

        private boolean CoxDeBoorBSplineKernelFunctionTest
      • CoxDeBoorBSplineKernelFunctionTest2

        private boolean CoxDeBoorBSplineKernelFunctionTest2
      • BSplineScatteredDataPointSetToImageFilterTest

        private boolean BSplineScatteredDataPointSetToImageFilterTest
      • BSplineScatteredDataPointSetToImageFilterTest2

        private boolean BSplineScatteredDataPointSetToImageFilterTest2
      • BSplineControlPointImageFilterTest

        private boolean BSplineControlPointImageFilterTest
      • BSplineKernelFunctionTest

        private boolean BSplineKernelFunctionTest
    • Constructor Detail

      • AlgorithmN4MRIBiasFieldCorrectionFilter

        public AlgorithmN4MRIBiasFieldCorrectionFilter​(ModelImage destImg,
                                                       ModelImage fieldImage,
                                                       ModelImage srcImg,
                                                       int maximumIterations,
                                                       double convergenceThreshold,
                                                       double biasFieldFullWidthAtHalfMaximum,
                                                       double WienerFilterNoise,
                                                       int fittingLevels,
                                                       int controlPoints,
                                                       ModelImage confidenceImage,
                                                       boolean maskFlag)
        Constructor which sets the source and destination images
        Parameters:
        destImg - the destination image
        fieldImage -
        srcImg - the source image
        confidenceImage -
        maskFlag - the mask flag
    • Method Detail

      • finalize

        public void finalize()
        Prepares this class for destruction.
        Overrides:
        finalize in class AlgorithmBase
      • sharpen

        private double[] sharpen​(double[] unsharpened)
      • updateBiasFieldEstimate

        private double[] updateBiasFieldEstimate​(double[] fieldEstimate)
      • calculateConvergenceMeasurement

        private double calculateConvergenceMeasurement​(double[] fieldEstimate1,
                                                       double[] fieldEstimate2)
      • selfTest

        private void selfTest()