Enum Class NIFTIIntent
- All Implemented Interfaces:
Serializable
,Comparable<NIFTIIntent>
,Constable
This class represents the NIFTI intents.
For probability distributions, most distributions have a number of parameters, below denoted by p1, p2, and p3, and stored in:
- intent_p1, intent_p2, intent_p3 if dataset doesn't have 5th dimension
- image data array, if dataset does have 5th dimension
Formulas for and discussions of these distributions can be found in the following books. These references are abbreviated to [U, C1 and C2] in the documentation below.
- [U] Univariate Discrete Distributions, NL Johnson, S Kotz, AW Kemp.
- [C1] Continuous Univariate Distributions, vol. 1, NL Johnson, S Kotz, N Balakrishnan.
- [C2] Continuous Univariate Distributions, vol. 2, NL Johnson, S Kotz, N Balakrishnan.
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>>
-
Enum Constant Summary
Enum ConstantDescription[C2, chap 25] Beta distribution (2 params): p1=a, p2=b.[U, chap 3] Binomial distribution (2 params):
p1 = number of trials, p2 = probability per trial.
Prob(x) = (p1 choose x) * p2^x * (1-p2)^(p1-x), for x=0,1,...,p1.[C1, chap 18] Chi distribution (1 param): p1 = DOF.[C1, chap 18] Chi-squared (1 param): p1 = DOF.[C2, chap 29] Noncentral chi-squared statistic (2 params):
p1 = DOF, p2 = noncentrality parameter.[C2, chap 32] Correlation coefficient R (1 param):
p1 = degrees of freedom;
R/sqrt(1-R*R) is t-distributed with p1 DOF.To signify that the vector value at each voxel is to be taken as a displacement field or vector:
- dataset must have a 5th dimension
- intent must be DISPVECT
- dim[5] must be the dimensionality of the displacment vector (e.g., 3 for spatial displacement, 2 for in-plane).
This intent is specifically for displacements.To signify that the value at each voxel is an estimate of some parameter, set intent_code = NIFTI_INTENT_ESTIMATE.[C2, chap 22] Extreme value type I (2 params):
p1 = location, p2 = scale
cdf(x) = exp(-exp(-(x-p1)/p2)).[C2, chap 27] Fisher F statistic (2 params):
p1 = numerator DOF,
p2 = denominator DOF.[C2, chap 30] Noncentral F statistic (3 params):
p1 = numerator DOF, p2 = denominator DOF,
p3 = numerator noncentrality parameter.[C1, chap 17] Gamma distribution (2 params):
p1 = shape, p2 = scale.
Density(x) proportional to x^(p1-1) * exp(-p2*x).To store an M x N matrix at each voxel:
- dataset must have a 5th dimension (dim[0]=5 and dim[5]>1)
- intent must be GENMATRIX
- dim[5] must be M*N
- intent_p1 must be M (in float format)
- intent_p2 must be N (ditto)
- the matrix values A[i][[j] are stored in row-order:
- A[0][0] A[0][1] ...[C1, chap 15] Inverse Gaussian (2 params):
p1 = mu, p2 = lambda
Density(x) proportional to exp(-p2*(x-p1)^2/(2*p1^2*x)) / x^3 for x > 0.To signify that the value at each voxel is an index into some set of labels, set intent_code = NIFTI_INTENT_LABEL.[C2, chap 24] Laplace distribution (2 params):
p1 = location, p2 = scale.
Density(x) proportional to exp(-abs(x-p1)/p2).[C2, chap 23] Logistic distribution (2 params):
p1 = location, p2 = scale.
Density(x) proportional to sech^2((x-p1)/(2*p2)).To signify that the value at each voxel is an index into the NeuroNames labels set, set intent_code = NIFTI_INTENT_NEURONAME.The default: no intention is indicated in the header.[C1, chap 13] Normal distribution (2 params):
p1 = mean, p2 = standard deviation.To signify that the vector value at each voxel is really a spatial coordinate (e.g., the vertices or nodes of a surface mesh):
- dataset must have a 5th dimension
- intent must be POINTSET
- dim[0] = 5
- dim[1] = number of points
- dim[2] = dim[3] = dim[4] = 1
- dim[5] must be the dimensionality of space (e.g., 3 => 3D space).
- intent_name may describe the object these points come from (e.g., "pial", "gray/white" , "EEG", "MEG").[U, chap 4] Poisson distribution (1 param): p1 = mean.
Prob(x) = exp(-p1) * p1^x / x! , for x=0,1,2,....Data is a 'p-value' (no params).To signify that the vector value at each voxel is a quaternion:
- dataset must have a 5th dimension
- intent must be QUATERNION
- dim[0] = 5
- dim[5] = 4
- datatype should be a floating point type.To store an NxN symmetric matrix at each voxel:
- dataset must have a 5th dimension
- intent must be SYMMATRIX
- dim[5] must be N*(N+1)/2
- intent_p1 must be N (in float format)
- the matrix values A[i][[j] are stored in row-order:
- A[0][0]
- A[1][0] A[1][1]
- A[2][0] A[2][1] A[2][2]
- etc.: row-by-row.To signify that the vector value at each voxel is really a triple of indexes (e.g., forming a triangle) from a pointset dataset:
- dataset must have a 5th dimension
- intent must be TRIANGLE
- dim[0] = 5
- dim[1] = number of triangles
- dim[2] = dim[3] = dim[4] = 1
- dim[5] = 3
- datatype should be an integer type (preferably INT)
- the data values are indexes (0,1,...) into a pointset dataset.[C2, chap 28] Student t statistic (1 param): p1 = DOF.[C2, chap 31] Noncentral t statistic (2 params):
p1 = DOF, p2 = noncentrality parameter.[C2, chap 26] Uniform distribution: p1 = lower end, p2 = upper end.To signify that the vector value at each voxel is to be taken as a displacement field or vector:
- dataset must have a 5th dimension
- intent must be NIFTI_INTENT_DISPVECT
- dim[5] must be the dimensionality of the displacment vector (e.g., 3 for spatial displacement, 2 for in-plane).
This intent is for general vectors.[C1, chap 21] Weibull distribution (3 params):
p1 = location, p2 = scale, p3 = power.
Density(x) proportional to ((x-p1)/p2)^(p3-1) * exp(-((x-p1)/p2)^p3) for x > p1.[C1, chap 13] Standard normal (0 params): Density = N(0,1). -
Method Summary
Modifier and TypeMethodDescriptionboolean
Indicates whether this NIFTIIntent is a statistic intent.static void
Run a self-test on the NIFTIIntent class.toString()
Returns a string describing this NIFTIIntent.static NIFTIIntent
Returns the enum constant of this class with the specified name.static NIFTIIntent[]
values()
Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
NONE
The default: no intention is indicated in the header. -
CORREL
[C2, chap 32] Correlation coefficient R (1 param):
p1 = degrees of freedom;
R/sqrt(1-R*R) is t-distributed with p1 DOF. -
TTEST
[C2, chap 28] Student t statistic (1 param): p1 = DOF. -
FTEST
[C2, chap 27] Fisher F statistic (2 params):
p1 = numerator DOF,
p2 = denominator DOF. -
ZSCORE
[C1, chap 13] Standard normal (0 params): Density = N(0,1). -
CHISQ
[C1, chap 18] Chi-squared (1 param): p1 = DOF. Density(x) proportional to exp(-x/2) * x^(p1/2-1). -
BETA
[C2, chap 25] Beta distribution (2 params): p1=a, p2=b. Density(x) proportional to x^(a-1) * (1-x)^(b-1). -
BINOM
[U, chap 3] Binomial distribution (2 params):
p1 = number of trials, p2 = probability per trial.
Prob(x) = (p1 choose x) * p2^x * (1-p2)^(p1-x), for x=0,1,...,p1. -
GAMMA
[C1, chap 17] Gamma distribution (2 params):
p1 = shape, p2 = scale.
Density(x) proportional to x^(p1-1) * exp(-p2*x). -
POISSON
[U, chap 4] Poisson distribution (1 param): p1 = mean.
Prob(x) = exp(-p1) * p1^x / x! , for x=0,1,2,.... -
NORMAL
[C1, chap 13] Normal distribution (2 params):
p1 = mean, p2 = standard deviation. -
FTEST_NONC
[C2, chap 30] Noncentral F statistic (3 params):
p1 = numerator DOF, p2 = denominator DOF,
p3 = numerator noncentrality parameter. -
CHISQ_NONC
[C2, chap 29] Noncentral chi-squared statistic (2 params):
p1 = DOF, p2 = noncentrality parameter. -
LOGISTIC
[C2, chap 23] Logistic distribution (2 params):
p1 = location, p2 = scale.
Density(x) proportional to sech^2((x-p1)/(2*p2)). -
LAPLACE
[C2, chap 24] Laplace distribution (2 params):
p1 = location, p2 = scale.
Density(x) proportional to exp(-abs(x-p1)/p2). -
UNIFORM
[C2, chap 26] Uniform distribution: p1 = lower end, p2 = upper end. -
TTEST_NONC
[C2, chap 31] Noncentral t statistic (2 params):
p1 = DOF, p2 = noncentrality parameter. -
WEIBULL
[C1, chap 21] Weibull distribution (3 params):
p1 = location, p2 = scale, p3 = power.
Density(x) proportional to ((x-p1)/p2)^(p3-1) * exp(-((x-p1)/p2)^p3) for x > p1. -
CHI
[C1, chap 18] Chi distribution (1 param): p1 = DOF. Density(x) proportional to x^(p1-1) * exp(-x^2/2) for x > 0.
p1 = 1 = 'half normal' distribution
p1 = 2 = Rayleigh distribution
p1 = 3 = Maxwell-Boltzmann distribution. -
INVGAUSS
[C1, chap 15] Inverse Gaussian (2 params):
p1 = mu, p2 = lambda
Density(x) proportional to exp(-p2*(x-p1)^2/(2*p1^2*x)) / x^3 for x > 0. -
EXTVAL
[C2, chap 22] Extreme value type I (2 params):
p1 = location, p2 = scale
cdf(x) = exp(-exp(-(x-p1)/p2)). -
PVAL
Data is a 'p-value' (no params). -
ESTIMATE
To signify that the value at each voxel is an estimate of some parameter, set intent_code = NIFTI_INTENT_ESTIMATE. The name of the parameter may be stored in intent_name. -
LABEL
To signify that the value at each voxel is an index into some set of labels, set intent_code = NIFTI_INTENT_LABEL. The filename with the labels may stored in aux_file. -
NEURONAME
To signify that the value at each voxel is an index into the NeuroNames labels set, set intent_code = NIFTI_INTENT_NEURONAME. -
GENMATRIX
To store an M x N matrix at each voxel:
- dataset must have a 5th dimension (dim[0]=5 and dim[5]>1)
- intent must be GENMATRIX
- dim[5] must be M*N
- intent_p1 must be M (in float format)
- intent_p2 must be N (ditto)
- the matrix values A[i][[j] are stored in row-order:
- A[0][0] A[0][1] ... A[0][N-1]
- A[1][0] A[1][1] ... A[1][N-1]
- etc., until
- A[M-1][0] A[M-1][1] ... A[M-1][N-1]. -
SYMMATRIX
To store an NxN symmetric matrix at each voxel:
- dataset must have a 5th dimension
- intent must be SYMMATRIX
- dim[5] must be N*(N+1)/2
- intent_p1 must be N (in float format)
- the matrix values A[i][[j] are stored in row-order:
- A[0][0]
- A[1][0] A[1][1]
- A[2][0] A[2][1] A[2][2]
- etc.: row-by-row. -
DISPVECT
To signify that the vector value at each voxel is to be taken as a displacement field or vector:
- dataset must have a 5th dimension
- intent must be DISPVECT
- dim[5] must be the dimensionality of the displacment vector (e.g., 3 for spatial displacement, 2 for in-plane).
This intent is specifically for displacements. -
VECTOR
To signify that the vector value at each voxel is to be taken as a displacement field or vector:
- dataset must have a 5th dimension
- intent must be NIFTI_INTENT_DISPVECT
- dim[5] must be the dimensionality of the displacment vector (e.g., 3 for spatial displacement, 2 for in-plane).
This intent is for general vectors. -
POINTSET
To signify that the vector value at each voxel is really a spatial coordinate (e.g., the vertices or nodes of a surface mesh):
- dataset must have a 5th dimension
- intent must be POINTSET
- dim[0] = 5
- dim[1] = number of points
- dim[2] = dim[3] = dim[4] = 1
- dim[5] must be the dimensionality of space (e.g., 3 => 3D space).
- intent_name may describe the object these points come from (e.g., "pial", "gray/white" , "EEG", "MEG"). -
TRIANGLE
To signify that the vector value at each voxel is really a triple of indexes (e.g., forming a triangle) from a pointset dataset:
- dataset must have a 5th dimension
- intent must be TRIANGLE
- dim[0] = 5
- dim[1] = number of triangles
- dim[2] = dim[3] = dim[4] = 1
- dim[5] = 3
- datatype should be an integer type (preferably INT)
- the data values are indexes (0,1,...) into a pointset dataset. -
QUATERNION
To signify that the vector value at each voxel is a quaternion:
- dataset must have a 5th dimension
- intent must be QUATERNION
- dim[0] = 5
- dim[5] = 4
- datatype should be a floating point type.
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum class has no constant with the specified nameNullPointerException
- if the argument is null
-
isStatistic
public boolean isStatistic()Indicates whether this NIFTIIntent is a statistic intent.- Returns:
true
if this is a statistic intent.
-
toString
Returns a string describing this NIFTIIntent.- Overrides:
toString
in classEnum<NIFTIIntent>
- Returns:
- a string describing this NIFTIIntent.
-
main
Run a self-test on the NIFTIIntent class.- Parameters:
args
- ignored.
-