Class EstimateTensorLLMSE
- java.lang.Object
-
- gov.nih.mipav.view.renderer.WildMagic.DTI_FrameWork.EstimateTensorLLMSE
-
public class EstimateTensorLLMSE extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private static booleandetailedDebugging
-
Constructor Summary
Constructors Constructor Description EstimateTensorLLMSE()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static float[][][][]estimate(float[][][][] DWdata, double[] bvalues, double[][] grads, byte[][][] mask, boolean usePartialEstimates)estimate Use LLMSE to estimate tensors from DW imaging data on a voxel-wise basis.static ModelImageestimate(ModelImage image, ModelImage maskImage, boolean usePartialEstimates)Uses LLMSE to estimate tensors from DW imaging data on a voxel-wise basis.static ModelImageestimate(ModelImage dwiImage, ModelImage mask, WildMagic.LibFoundation.Mathematics.GMatrixd matrix, boolean usePartialEstimates)static voidestimateBallAndStickCamino(float[][][][] DWdata, byte[][][] mask, inverters.BallStickInversion dtiFit, float[][][][] ballDiff, float[][][][] ballFrac, float[][][][] stickVec, float[][][][] exitcode, float[][][][] intensity)private static voidestimateCamino(float[][][][] DWdata, byte[][][] mask, int dtiType, imaging.DW_Scheme scheme, inverters.DT_Inversion dtiFit, float[][][][] tensors, float[][][][] exitcode, float[][][][] intensity)static ModelImageestimateCamino(ModelImage image, ModelImage maskImage, int dtiType, boolean bSaveExitCode, boolean bDisplayExitCode, boolean bSaveIntensity, boolean bDisplayIntensity, java.lang.String kOutpuDir)Uses Camino algorithms to estimate tensors from DW imaging data on a voxel-wise basis.static voidestimateCaminoRESTORE(float[][][][] DWdata, byte[][][] mask, float[][][] noiseField, float[][][][] tensors, float[][][][] exitcode, float[][][][] intensity, imaging.DW_Scheme DTIscheme)static voidestimateCaminoThreeTensor(float[][][][] DWdata, byte[][][] mask, inverters.ThreeTensorInversion dtiFit, float[][][][] mix1, float[][][][] tensors1, float[][][][] mix2, float[][][][] tensors2, float[][][][] mix3, float[][][][] tensors3, float[][][][] exitcode, float[][][][] intensity)static voidestimateCaminoTwoTensor(float[][][][] DWdata, byte[][][] mask, inverters.TwoTensorInversion dtiFit, float[][][][] mix1, float[][][][] tensors1, float[][][][] mix2, float[][][][] tensors2, float[][][][] exitcode, float[][][][] intensity)private static WildMagic.LibFoundation.Mathematics.GMatrixdgetMatrix(DTIParameters dtiparams)static voidmain(java.lang.String[] args)private static ModelImagemakeImage(float[][][][] values, java.lang.String name)Creates and returns a ModelImage with the tensor data.private static ModelImagemakeTensorImage(float[][][][] tensors, float[][][][] exitCode, java.lang.String name)Creates and returns a ModelImage with the tensor data.static booleantest()static booleantest(int count)
-
-
-
Method Detail
-
estimate
public static float[][][][] estimate(float[][][][] DWdata, double[] bvalues, double[][] 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.
-
estimate
public static ModelImage estimate(ModelImage dwiImage, ModelImage mask, WildMagic.LibFoundation.Mathematics.GMatrixd matrix, boolean usePartialEstimates)
-
estimate
public static ModelImage estimate(ModelImage image, ModelImage maskImage, boolean usePartialEstimates)
Uses LLMSE to estimate tensors from DW imaging data on a voxel-wise basis.- Parameters:
image- input DWI images series 4DmaskImage- input mask image (or null) 3DusePartialEstimates- when 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). When false - any voxels with any missing DW data are ignored.- Returns:
- ModelImage with tensor data.
-
estimateBallAndStickCamino
public static void estimateBallAndStickCamino(float[][][][] DWdata, byte[][][] mask, inverters.BallStickInversion dtiFit, float[][][][] ballDiff, float[][][][] ballFrac, float[][][][] stickVec, float[][][][] exitcode, float[][][][] intensity)
-
estimateCamino
private static void estimateCamino(float[][][][] DWdata, byte[][][] mask, int dtiType, imaging.DW_Scheme scheme, inverters.DT_Inversion dtiFit, float[][][][] tensors, float[][][][] exitcode, float[][][][] intensity)
-
estimateCamino
public static ModelImage estimateCamino(ModelImage image, ModelImage maskImage, int dtiType, boolean bSaveExitCode, boolean bDisplayExitCode, boolean bSaveIntensity, boolean bDisplayIntensity, java.lang.String kOutpuDir)
Uses Camino algorithms to estimate tensors from DW imaging data on a voxel-wise basis.- Parameters:
image- input DWI images series 4DmaskImage- input mask image (or null) 3DdtiType- the type of estimation (Linear, Non-Linear, Restore, Weighted-Linear).
-
estimateCaminoRESTORE
public static void estimateCaminoRESTORE(float[][][][] DWdata, byte[][][] mask, float[][][] noiseField, float[][][][] tensors, float[][][][] exitcode, float[][][][] intensity, imaging.DW_Scheme DTIscheme)
-
estimateCaminoThreeTensor
public static void estimateCaminoThreeTensor(float[][][][] DWdata, byte[][][] mask, inverters.ThreeTensorInversion dtiFit, float[][][][] mix1, float[][][][] tensors1, float[][][][] mix2, float[][][][] tensors2, float[][][][] mix3, float[][][][] tensors3, float[][][][] exitcode, float[][][][] intensity)
-
estimateCaminoTwoTensor
public static void estimateCaminoTwoTensor(float[][][][] DWdata, byte[][][] mask, inverters.TwoTensorInversion dtiFit, float[][][][] mix1, float[][][][] tensors1, float[][][][] mix2, float[][][][] tensors2, float[][][][] exitcode, float[][][][] intensity)
-
main
public static void main(java.lang.String[] args)
-
test
public static boolean test()
-
test
public static boolean test(int count)
-
makeTensorImage
private static ModelImage makeTensorImage(float[][][][] tensors, float[][][][] exitCode, java.lang.String name)
Creates and returns a ModelImage with the tensor data.- Parameters:
tensors- tensor dataname- name of the ModelImage- Returns:
- new ModelImage.
-
makeImage
private static ModelImage makeImage(float[][][][] values, java.lang.String name)
Creates and returns a ModelImage with the tensor data.- Parameters:
tensors- tensor dataname- name of the ModelImage- Returns:
- new ModelImage.
-
getMatrix
private static WildMagic.LibFoundation.Mathematics.GMatrixd getMatrix(DTIParameters dtiparams)
-
-