edu.jhu.ece.iacl.algorithms.dti
Class EstimateTensorLLMSE

java.lang.Object
  extended by edu.jhu.ece.iacl.algorithms.dti.EstimateTensorLLMSE

public class EstimateTensorLLMSE
extends java.lang.Object


Constructor Summary
EstimateTensorLLMSE()
           
 
Method Summary
static float[][][][] estimate(float[][][][] DWdata, float[] bvalues, float[][] grads, byte[][][] mask, boolean usePartialEstimates)
          estimate Use LLMSE to estimate tensors from DW imaging data on a voxel-wise basis.
static void estimateBallAndStickCamino(float[][][][] DWdata, byte[][][] mask, BallStickInversion dtiFit, float[][][][] ballDiff, float[][][][] ballFrac, float[][][][] stickVec, float[][][][] exitcode, float[][][][] intensity)
           
static void estimateCamino(float[][][][] DWdata, byte[][][] mask, DT_Inversion dtiFit, float[][][][] tensors, float[][][][] exitcode, float[][][][] intensity)
           
static void estimateCaminoRESTORE(float[][][][] DWdata, byte[][][] mask, float[][][] noiseField, float[][][][] tensors, float[][][][] exitcode, float[][][][] intensity, Scheme DTIscheme)
           
static void estimateCaminoThreeTensor(float[][][][] DWdata, byte[][][] mask, ThreeTensorInversion dtiFit, float[][][][] mix1, float[][][][] tensors1, float[][][][] mix2, float[][][][] tensors2, float[][][][] mix3, float[][][][] tensors3, float[][][][] exitcode, float[][][][] intensity)
           
static void estimateCaminoTwoTensor(float[][][][] DWdata, byte[][][] mask, TwoTensorInversion dtiFit, float[][][][] mix1, float[][][][] tensors1, float[][][][] mix2, float[][][][] tensors2, float[][][][] exitcode, float[][][][] intensity)
           
static void main(java.lang.String[] args)
           
static boolean test()
           
static boolean test(int count)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EstimateTensorLLMSE

public EstimateTensorLLMSE()
Method Detail

estimate

public static float[][][][] estimate(float[][][][] DWdata,
                                     float[] bvalues,
                                     float[][] grads,
                                     byte[][][] mask,
                                     boolean usePartialEstimates)
estimate Use LLMSE to estimate tensors from DW imaging data on a voxel-wise basis. Inputs: DWdata - 4D matrix indexed by [x][y][z][dw] where x,y,z are spatial location and dw is diffusion sensitization. bvalues - a list [dw] of b-values indicating the diffusion sensitization for each volume in the 4th dimension of the input data >0 for DW=yes (in s/mm2) =0 for reference images <0 for volumes to ignore grads - a set of unit vectors [dw][3] indicating the diffusion weighting for each of the input volumes. Vectors corresponding to reference or ignored volumes are ignored. mask - a boolean mask [x][y][z] indicating which voxels in the volume show be used for tensor estimation. If mask is null, then all voxels are processed. usePartialEstimates - boolean true - if any DW data are infinity, NaN, negative or zero (i.e., impossible values) then these data points will be ignored and a tensor will be computed with the remaining data (provided that at least 6 valid DW values and a reference value are available) false - any voxels with any missing DW data are ignored. Output: return value - set of tensors [x][y][z][6], where the tensor coefficients are ordered by upper triangular convention, i.e., xx,xy,xz,yy,yz,zz Units are in mm2/s. Notes: Voxels for which no tensors are computer are reported as all NaN. Last updated: 8/13/2008 Bennett Landman.


estimateCamino

public static void estimateCamino(float[][][][] DWdata,
                                  byte[][][] mask,
                                  DT_Inversion dtiFit,
                                  float[][][][] tensors,
                                  float[][][][] exitcode,
                                  float[][][][] intensity)

estimateCaminoTwoTensor

public static void estimateCaminoTwoTensor(float[][][][] DWdata,
                                           byte[][][] mask,
                                           TwoTensorInversion dtiFit,
                                           float[][][][] mix1,
                                           float[][][][] tensors1,
                                           float[][][][] mix2,
                                           float[][][][] tensors2,
                                           float[][][][] exitcode,
                                           float[][][][] intensity)

estimateCaminoThreeTensor

public static void estimateCaminoThreeTensor(float[][][][] DWdata,
                                             byte[][][] mask,
                                             ThreeTensorInversion dtiFit,
                                             float[][][][] mix1,
                                             float[][][][] tensors1,
                                             float[][][][] mix2,
                                             float[][][][] tensors2,
                                             float[][][][] mix3,
                                             float[][][][] tensors3,
                                             float[][][][] exitcode,
                                             float[][][][] intensity)

estimateBallAndStickCamino

public static void estimateBallAndStickCamino(float[][][][] DWdata,
                                              byte[][][] mask,
                                              BallStickInversion dtiFit,
                                              float[][][][] ballDiff,
                                              float[][][][] ballFrac,
                                              float[][][][] stickVec,
                                              float[][][][] exitcode,
                                              float[][][][] intensity)

test

public static boolean test()

test

public static boolean test(int count)

main

public static void main(java.lang.String[] args)

estimateCaminoRESTORE

public static void estimateCaminoRESTORE(float[][][][] DWdata,
                                         byte[][][] mask,
                                         float[][][] noiseField,
                                         float[][][][] tensors,
                                         float[][][][] exitcode,
                                         float[][][][] intensity,
                                         Scheme DTIscheme)