edu.jhu.ece.iacl.algorithms.dti
Class EstimateTensorLLMSE
java.lang.Object
edu.jhu.ece.iacl.algorithms.dti.EstimateTensorLLMSE
public class EstimateTensorLLMSE
- extends java.lang.Object
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 |
EstimateTensorLLMSE
public EstimateTensorLLMSE()
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)