[−][src]Enum nifti::typedef::Intent
An enum type for representing a NIFTI intent code.
Variants
default: no intention is indicated in the header.
nifti1 intent codes, to describe intended meaning of dataset contents
[C2, chap 28] Student t statistic (1 param): p1 = DOF.
[C2, chap 27] Fisher F statistic (2 params): p1 = numerator DOF, p2 = denominator DOF.
[C1, chap 13] Standard normal (0 params): Density = N(0,1).
[C1, chap 18] Chi-squared (1 param): p1 = DOF.
Density(x) proportional to exp(-x/2) * x^(p1/2-1)
.
[C2, chap 25] Beta distribution (2 params): p1=a, p2=b.
Density(x) proportional to x^(a-1) * (1-x)^(b-1)
.
[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 17] Gamma distribution (2 params):
p1 = shape, p2 = scale.
Density(x) proportional to x^(p1-1) * exp(-p2*x)
.
[U, chap 4] Poisson distribution (1 param): p1 = mean.
Prob(x) = exp(-p1) * p1^x / x!
, for x=0,1,2,...
.
[C1, chap 13] Normal distribution (2 params): p1 = mean, p2 = standard deviation.
[C2, chap 30] Noncentral F statistic (3 params): p1 = numerator DOF, p2 = denominator DOF, p3 = numerator noncentrality parameter.
[C2, chap 29] Noncentral chi-squared statistic (2 params): p1 = DOF, p2 = noncentrality parameter.
[C2, chap 23] Logistic distribution (2 params):
p1 = location, p2 = scale.
Density(x) proportional to sech^2((x-p1)/(2*p2))
.
[C2, chap 24] Laplace distribution (2 params):
p1 = location, p2 = scale.
Density(x) proportional to exp(-abs(x-p1)/p2)
.
[C2, chap 26] Uniform distribution: p1 = lower end, p2 = upper end.
[C2, chap 31] Noncentral t statistic (2 params): p1 = DOF, p2 = noncentrality parameter.
[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 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.
[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
.
[C2, chap 22] Extreme value type I (2 params):
p1 = location, p2 = scale
cdf(x) = exp(-exp(-(x-p1)/p2))
.
Data is a 'p-value' (no params).
Data is ln(p-value)
(no params).
To be safe, a program should compute p = exp(-abs(this_value))
.
The nifti_stats.c library returns this_value
as positive, so that this_value = -log(p)
.
Data is log10(p-value) (no params).
To be safe, a program should compute p = pow(10.,-abs(this_value))
.
The nifti_stats.c library returns this_value
as positive, so that this_value = -log10(p)
.
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
.
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
.
To signify that the value at each voxel is an index into the
NeuroNames labels set, set intent_code
= NIFTI_INTENT_NEURONAME
.
To store an M x N matrix at each voxel:
- dataset must have a 5th dimension (
dim[0]=5
anddim[5]>1
) intent_code
must beNIFTI_INTENT_GENMATRIX
dim[5]
must beM*N
intent_p1
must beM
(in float format)intent_p2
must beN
(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]
To store an NxN
symmetric matrix at each voxel:
- dataset must have a 5th dimension
intent_code
must beNIFTI_INTENT_SYMMATRIX
dim[5]
must beN*(N+1)/2
intent_p1
must beN
(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 to be taken as a displacement field or vector:
- dataset must have a 5th dimension
intent_code
must beNIFTI_INTENT_DISPVECT
dim[5]
must be the dimensionality of the displacment vector (e.g., 3 for spatial displacement, 2 for in-plane)
(specifically for displacements)
(for any other type of vector)
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_code
must beNIFTI_INTENT_POINTSET
dim[0]
= 5dim[1]
= number of pointsdim[2]
=dim[3]
=dim[4]
= 1dim[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").
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_code
must beNIFTI_INTENT_TRIANGLE
dim[0]
= 5dim[1]
= number of trianglesdim[2]
=dim[3]
=dim[4]
= 1dim[5]
= 3datatype
should be an integer type (preferablyNiftiType::Int32
)- the data values are indexes (0,1,...) into a pointset dataset.
To signify that the vector value at each voxel is a quaternion:
- dataset must have a 5th dimension
intent_code
must beNIFTI_INTENT_QUATERNION
dim[0]
= 5dim[5]
= 4datatype
should be a floating point type
Dimensionless value - no params - although, as in _ESTIMATE
the name of the parameter may be stored in intent_name
.
To signify that the value at each location is from a time series.
To signify that the value at each location is a node index, from a complete surface dataset.
To signify that the vector value at each location is an RGB triplet, of whatever type.
- dataset must have a 5th dimension
dim[0]
= 5dim[1]
= number of nodesdim[2]
=dim[3]
=dim[4]
= 1dim[5]
= 3
To signify that the vector value at each location is a 4 valued RGBA vector, of whatever type.
- dataset must have a 5th dimension
dim[0]
= 5dim[1]
= number of nodesdim[2]
=dim[3]
=dim[4]
= 1dim[5]
= 4
To signify that the value at each location is a shape value, such as the curvature.
FSL FNIRT Displacement field.
FSL Cubic spline coefficients.
FSL Discrete cosine transform coefficients.
FSL Quadratic spline coefficients.
FSL Topup cubic spline coefficients.
FSL Topup quadratic spline coefficients.
FSL Topup field.
Implementations
impl Intent
[src]
pub fn is_statcode(self) -> bool
[src]
Check whether this intent code is used for statistics.
Trait Implementations
impl Clone for Intent
[src]
impl Copy for Intent
[src]
impl Debug for Intent
[src]
impl Eq for Intent
[src]
impl FromPrimitive for Intent
[src]
pub fn from_i64(n: i64) -> Option<Self>
[src]
pub fn from_u64(n: u64) -> Option<Self>
[src]
pub fn from_isize(n: isize) -> Option<Self>
[src]
pub fn from_i8(n: i8) -> Option<Self>
[src]
pub fn from_i16(n: i16) -> Option<Self>
[src]
pub fn from_i32(n: i32) -> Option<Self>
[src]
pub fn from_i128(n: i128) -> Option<Self>
[src]
pub fn from_usize(n: usize) -> Option<Self>
[src]
pub fn from_u8(n: u8) -> Option<Self>
[src]
pub fn from_u16(n: u16) -> Option<Self>
[src]
pub fn from_u32(n: u32) -> Option<Self>
[src]
pub fn from_u128(n: u128) -> Option<Self>
[src]
pub fn from_f32(n: f32) -> Option<Self>
[src]
pub fn from_f64(n: f64) -> Option<Self>
[src]
impl Hash for Intent
[src]
pub fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl PartialEq<Intent> for Intent
[src]
pub fn eq(&self, other: &Intent) -> bool
[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl StructuralEq for Intent
[src]
impl StructuralPartialEq for Intent
[src]
Auto Trait Implementations
impl RefUnwindSafe for Intent
[src]
impl Send for Intent
[src]
impl Sync for Intent
[src]
impl Unpin for Intent
[src]
impl UnwindSafe for Intent
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> Scalar for T where
T: PartialEq<T> + Copy + Any + Debug,
[src]
T: PartialEq<T> + Copy + Any + Debug,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
SS: SubsetOf<SP>,
pub fn to_subset(&self) -> Option<SS>
[src]
pub fn is_in_subset(&self) -> bool
[src]
pub fn to_subset_unchecked(&self) -> SS
[src]
pub fn from_subset(element: &SS) -> SP
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,