Class AlgorithmTalairachTransform

java.lang.Object
java.lang.Thread
gov.nih.mipav.model.algorithms.AlgorithmBase
gov.nih.mipav.model.algorithms.AlgorithmTalairachTransform
All Implemented Interfaces:
ActionListener, WindowListener, Runnable, EventListener

public class AlgorithmTalairachTransform extends AlgorithmBase
Performs original to ACPC, original to Talairach, ACPC to original, ACPC to Talairach, Talairach to original, or Talairach to ACPC transformation.
Version:
May 26, 2005
Author:
Pilou Bazin
  • Field Details

    • TRILINEAR

      public static final int TRILINEAR
      Trilinear interpolation.
      See Also:
    • BILINEAR

      public static final int BILINEAR
      Biilinear interpolation.
      See Also:
    • NEAREST_NEIGHBOR

      public static final int NEAREST_NEIGHBOR
      Nearest neighbor interpolation.
      See Also:
    • BSPLINE3

      public static final int BSPLINE3
      Cubic bspline interpolation.
      See Also:
    • BSPLINE4

      public static final int BSPLINE4
      Quadratic bspline interpolation.
      See Also:
    • CUBIC_LAGRANGIAN

      public static final int CUBIC_LAGRANGIAN
      Cubic lagrangian interpolation.
      See Also:
    • QUINTIC_LAGRANGIAN

      public static final int QUINTIC_LAGRANGIAN
      Quintic lagrangian interpolation.
      See Also:
    • HEPTIC_LAGRANGIAN

      public static final int HEPTIC_LAGRANGIAN
      Heptic lagrangian interpolation.
      See Also:
    • WSINC

      public static final int WSINC
      Windowed sinc interpolation.
      See Also:
    • ORIG_TO_ACPC

      public static final int ORIG_TO_ACPC
      DOCUMENT ME!
      See Also:
    • ORIG_TO_TLRC

      public static final int ORIG_TO_TLRC
      DOCUMENT ME!
      See Also:
    • ACPC_TO_TLRC

      public static final int ACPC_TO_TLRC
      DOCUMENT ME!
      See Also:
    • TLRC_TO_ACPC

      public static final int TLRC_TO_ACPC
      DOCUMENT ME!
      See Also:
    • TLRC_TO_ORIG

      public static final int TLRC_TO_ORIG
      DOCUMENT ME!
      See Also:
    • ACPC_TO_ORIG

      public static final int ACPC_TO_ORIG
      DOCUMENT ME!
      See Also:
    • doClip

      boolean doClip
      DOCUMENT ME!
    • doVOI

      boolean doVOI
      DOCUMENT ME!
    • interpolation

      int interpolation
      DOCUMENT ME!
    • suffix

      String suffix
      DOCUMENT ME!
    • transformType

      int transformType
      DOCUMENT ME!
    • transformTypeName

      String transformTypeName
      DOCUMENT ME!
    • Bspline

      private AlgorithmBSpline Bspline
      DOCUMENT ME!
    • CLag

      DOCUMENT ME!
    • HLag

      DOCUMENT ME!
    • inVolExtents

      private int[] inVolExtents
      DOCUMENT ME!
    • nix

      private int nix
      DOCUMENT ME!
    • niy

      private int niy
      DOCUMENT ME!
    • niz

      private int niz
      DOCUMENT ME!
    • nrx

      private int nrx
      DOCUMENT ME!
    • nry

      private int nry
      DOCUMENT ME!
    • nrz

      private int nrz
      DOCUMENT ME!
    • QLag

      DOCUMENT ME!
    • tInfo

      private TalairachTransformInfo tInfo
      DOCUMENT ME!
    • WSinc

      private AlgorithmWSinc WSinc
      DOCUMENT ME!
  • Constructor Details

    • AlgorithmTalairachTransform

      public AlgorithmTalairachTransform(ModelImage destImage, ModelImage srcImage, TalairachTransformInfo tInfo, int transformType, int interpolation, boolean doClip, boolean doVOI)
      Creates a new AlgorithmTalairachTransform object.
      Parameters:
      destImage - DOCUMENT ME!
      srcImage - DOCUMENT ME!
      tInfo - DOCUMENT ME!
      transformType - DOCUMENT ME!
      interpolation - DOCUMENT ME!
      doClip - DOCUMENT ME!
      doVOI - DOCUMENT ME!
  • Method Details

    • disposeLocal

      public void disposeLocal()
      Dispose of local variables that may be taking up lots of room.
    • runAlgorithm

      public void runAlgorithm()
      DOCUMENT ME!
      Specified by:
      runAlgorithm in class AlgorithmBase
    • computeBSplineImage

      private void computeBSplineImage(float xi, float yi, float zi, float[] result, int xr, int yr, int zr)
      DOCUMENT ME!
      Parameters:
      xi - DOCUMENT ME!
      yi - DOCUMENT ME!
      zi - DOCUMENT ME!
      result - DOCUMENT ME!
      xr - DOCUMENT ME!
      yr - DOCUMENT ME!
      zr - DOCUMENT ME!
    • computeCubicLagrangian

      private void computeCubicLagrangian(float xi, float yi, float zi, float[] result, int xr, int yr, int zr)
      DOCUMENT ME!
      Parameters:
      xi - DOCUMENT ME!
      yi - DOCUMENT ME!
      zi - DOCUMENT ME!
      result - DOCUMENT ME!
      xr - DOCUMENT ME!
      yr - DOCUMENT ME!
      zr - DOCUMENT ME!
    • computeHepticLagrangian

      private void computeHepticLagrangian(float xi, float yi, float zi, float[] result, int xr, int yr, int zr)
      DOCUMENT ME!
      Parameters:
      xi - DOCUMENT ME!
      yi - DOCUMENT ME!
      zi - DOCUMENT ME!
      result - DOCUMENT ME!
      xr - DOCUMENT ME!
      yr - DOCUMENT ME!
      zr - DOCUMENT ME!
    • computeNearestImage

      private void computeNearestImage(double[] img, float xi, float yi, float zi, float[] result, int xr, int yr, int zr)
      Transforms and resamples volume using nearest neighbor interpolation.
      Parameters:
      img - DOCUMENT ME!
      xi - DOCUMENT ME!
      yi - DOCUMENT ME!
      zi - DOCUMENT ME!
      result - DOCUMENT ME!
      xr - DOCUMENT ME!
      yr - DOCUMENT ME!
      zr - DOCUMENT ME!
    • computeQuinticLagrangian

      private void computeQuinticLagrangian(float xi, float yi, float zi, float[] result, int xr, int yr, int zr)
      DOCUMENT ME!
      Parameters:
      xi - DOCUMENT ME!
      yi - DOCUMENT ME!
      zi - DOCUMENT ME!
      result - DOCUMENT ME!
      xr - DOCUMENT ME!
      yr - DOCUMENT ME!
      zr - DOCUMENT ME!
    • computeTrilinearImage

      private void computeTrilinearImage(double[] img, float xi, float yi, float zi, float[] result, int xr, int yr, int zr)
      Transforms and resamples volume using trilinear interpolation.
      Parameters:
      img - DOCUMENT ME!
      xi - DOCUMENT ME!
      yi - DOCUMENT ME!
      zi - DOCUMENT ME!
      result - DOCUMENT ME!
      xr - DOCUMENT ME!
      yr - DOCUMENT ME!
      zr - DOCUMENT ME!
    • computeWSincImage

      private void computeWSincImage(float xi, float yi, float zi, float[] result, int xr, int yr, int zr)
      DOCUMENT ME!
      Parameters:
      xi - DOCUMENT ME!
      yi - DOCUMENT ME!
      zi - DOCUMENT ME!
      result - DOCUMENT ME!
      xr - DOCUMENT ME!
      yr - DOCUMENT ME!
      zr - DOCUMENT ME!
    • generateVOI

      private VOI generateVOI(VOI obj, BitSet mask)
      extract a VOI from a binary mask image.
      Parameters:
      obj - DOCUMENT ME!
      mask - DOCUMENT ME!
      Returns:
      DOCUMENT ME!
    • transformTalairachVolume

      private void transformTalairachVolume(double[] img, float[] result)
      computes the selected Talairach transform.
      Parameters:
      img - the original image
      result - the transformed image