Skip to content

Section G: General purpose processes

Forward model inversion

Inversion methods

Code OSIPI name Alternative names Notation Description Reference
G.MI1.001 Analytical inversion -- -- This method is used when the solution of the model inversion is well-defined and the model parameters of interest can be calculated analytically.
Input:
Forward model (M.GF1.001),
Static model parameters (Q.AI1.001),
[Data (Q.GE1.002), Data grid (Q.GE1.001)]
Output:
[Model parameters (Q.OP1.001)]
--
G.MI1.002 Optimization Model fitting -- Inversion of a forward model by iteratively adjusting the set of model parameters in order to minimize a similarity measure between the data and the model.
Input:
Optimizer (select from optimizers)
Output:
[Estimated model parameters (Q.OP1.003)]
--
G.MI1.003 Deconvolution -- -- Method which can be used when a model is given as a convolution \(h(x) = f(x) \ast g(x)\) with known \(h(x)\) and \(f(x)\) to determine \(g(x)\).
Input:
Deconvolution method (select from deconvolution methods)
Output:
[Data (Q.GE1.002), Data grid (Q.GE1.001)] = [g(x), x]
--
G.MI1.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --

Optimization

Optimizers

Code OSIPI name Alternative names Notation Description Reference
G.OP1.001 Levenberg-Marquardt -- LM An algorithm that interpolates between the Gauss-Newton algorithm and the method of gradient descent.
Input:
Cost function (select from cost functions),
Initial model parameters (Q.OP1.006)
Optional:
Model parameter lower bounds (Q.OP1.007),
Model parameter upper bounds (Q.OP1.008),
Data weights (Q.OP1.009),
Maximum number of iterations (Q.OP1.010),
Convergence threshold (Q.OP1.011)
Output:
Estimated model parameters (Q.OP1.003),
Cost value minimum (Q.OP1.005)
--
G.OP1.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --

Cost functions

Code OSIPI name Alternative names Notation Description Reference
G.OP2.001 Non-linear least squares -- NLLS \(\lVert f(\phi, \theta; x) - y(x) \rVert_{2}^{2}\) , where \(f\) is a forward model describing the data, \(x\) is the data grid, \(y(x)\) is the measured data and \(\lVert \rVert_2\) is the L2-norm. The forward model is non-linear in the model parameters.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
Forward model (M.GF1.001),
\(\phi\) (Q.OP1.001),
\(\theta\) (Q.OP1.002)
Output:
Cost value (Q.OP1.004)
--
G.OP2.002 Linear least squares -- LLS \(\lVert A\phi - y(x) \rVert_2^2\) , where \(x\) is the data grid, \(y(x)\) is the measured data and \(\lVert \rVert_2\) is the L2-norm.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
\(\phi\) (Q.OP1.001),
A (Q.OP1.012)
Output:
Cost value (Q.OP1.004)
--
G.OP2.003 Standard-Form Tikhonov -- SFT \(\lVert A\phi - y(x) \rVert_2^2 + \lambda^2 \lVert Ix \rVert_2\) , where \(x\) is the data grid, \(y(x)\) is the measured data , \(\lVert \rVert_2\) is the L2-norm and \(L\) is the identity matrix (same dimensions as \(A\)).
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
\(\phi\) (Q.OP1.001),
A (Q.OP1.012),
\(\lambda\) (Q.OP1.013)
Output:
Cost value (Q.OP1.004)
--
G.OP2.004 Generalized cross validation -- GCV \(\frac{\lVert A\phi_\lambda - y(x) \rVert_2^2}{trace\left( I-AA_\lambda^\zeta \right)^2}\),
where \(x\) is the data grid, \(y(x)\) is the measured data, \(\lVert \rVert_2\) is the L2-norm, \(I\) is the identity matrix of the same dimensions as \(A\), \(\phi_\lambda\) is the solution of the matrix equation obtained from the SVD for a certain regularization parameter \(\lambda\) and \(A^\zeta_\lambda\) is defined by the relationship \(\phi_\lambda=A_{\lambda}^{\zeta}y(x)\).
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
\(\phi\) (Q.OP1.001),
A (Q.OP1.012),
\(\lambda\) (Q.OP1.013)
Output:
Cost value (Q.OP1.004)
--
G.OP2.005 L-curve -- LC \(\frac{\hat{\rho^\prime}\hat{\eta^{\prime\prime}} - \hat{\rho^{\prime\prime}}\hat{\eta^\prime}}{\left( (\hat{\eta^\prime})^2 + (\hat{\rho^\prime})^2 \right)^{3/2}}\), where \(\phi_\lambda\) is the solution of the matrix equation obtained from the SVD for a certain regularization parameter \(\lambda\),
\(\rho(\lambda) = \lVert A\phi_\lambda - y(x) \rVert_2\) and
\(\eta(\lambda) = \lVert \phi_\lambda \rVert_2\), \(\hat{\rho} = ln(\rho)\), \(\hat{\eta} = ln(\eta)\) and \(\prime\) and \(\prime\prime\) are the derivatives with respect to \(\lambda\).
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
\(\phi\) (Q.OP1.001),
A (Q.OP1.012),
\(\lambda\) (Q.OP1.013)
Output:
Cost value (Q.OP1.004)
--
G.OP2.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --

Regularization parameter

Code OSIPI name Alternative names Notation Description Reference
G.OP3.001 Fixed -- -- A fixed value of \(\lambda\) , rather than a determined value is assumed.
Input:
\(\lambda_{fixed}\) (Q.OP1.015)
Output:
\(\lambda\) (Q.OP1.013)
--
G.OP3.002 Generalized Cross Validation -- GCV \(\lambda\) is determined by minimizing the generalized cross validation cost function with respect to \(\lambda\).
Input:
Optimizer (select from optimizers) with a GCV cost function (G.OP2.004) and \(\phi\) (Q.OP1.001) = \(\lambda\)(Q.OP1.013)
Output:
\(\lambda\)(Q.OP1.013)
--
G.OP3.003 L-Curve criterion -- LCC \(\lambda\) is determined by minimizing the L-curve cost function with respect to \(\lambda\).
Input:
Optimizer (select from optimizers) with a L-curve cost function (G.OP2.005) and \(\phi\) (Q.OP1.001) = \(\lambda\)(Q.OP1.013).
Output:
\(\lambda\)(Q.OP1.013)
--
G.OP3.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --

Deconvolution

Code OSIPI name Alternative names Notation Description Reference
G.DE1.001 Discretization method -- -- Method to transfer continuous models, functions and equations into discrete counterparts. Select from Discretization methods. --
G.DE1.002 Regularization method -- -- Method to control an excessively fluctuating function such that the coefficients do not take extreme values. This is done by adding an additional penalty term in the cost function. Select a regularized cost function from Cost functions. --
G.DE1.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --

Deconvolution methods

Code OSIPI name Alternative names Notation Description Reference
G.DE2.001 Singular Value Decomposition -- SVD Algebraic deconvolution of \(h(x) = f(x) \ast g(x)\) with \(f(x)\) and \(h(x)\) sampled at discrete points \([f(x), x]\) and \([g(x), x]\). The convolution equation is discretized according to a given discretization method and the resulting matrix equation is solved as a regularized least-squares problem with a given regularization method.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)] = [f(x), x],
[Data (Q.GE1.002), Data grid (Q.GE1.001)] = [g(x), x],
Discretization method (select from discretization methods ),
Regularization method
Output:
[Data (Q.GE1.002), Data grid (Q.GE1.001)] = [g(x), x]
--
G.DE2.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --

Discretization methods

In this group, the following notation is assumed for all functions \(f\): \(f_n = f(x_n)\), \(g_i^- = (2g_i + g_{i-1})/6\), \(g_i^+ = (2g_i + g_{i+1})/6\) and \(g_i^\pm = g_i^+ + g_i^-\).

Code OSIPI name Alternative names Notation Description Reference
G.DI1.001 Numerical convolution (first order) -- -- Convolutions
\(f(x)=g(x) \ast h(x)\)
are calculated as
\(f_n = \Delta x\cdot \sum_{i=0}^{n} (g_i\cdot h_{n-i})\)
--
G.DI1.002 Block-circulant -- -- Convolutions
\(f(x)=g(x) \ast h(x)\)
are calculated as
\(f_n = \Delta x\cdot(g_0h_n+g_1h_{n-1}+...+g_Nh_{n-N})\) .
This requires \(h_i\) to be pre-padded with N zeros such that \(h_{i < 0} = 0\).
Wu 2004
G.DI1.003 Volterra linear -- -- Convolutions
\(f(x)=g(x) \ast h(x)\)
are calculated as
\(f_n = \Delta x\cdot (h_0g_n^+ +\sum_{i=1}^{n-1}h_{n-i}g_i^{\pm}+h_ng_0^+)\)
Sourbron 2003
G.DI1.004 Singular -- -- Convolutions
\(f(x)=g(x) \ast h(x)\)
are calculated as
\(f_n = \Delta x\cdot(\sum_{i=-\infty }^{+\infty }h_{n-i}g_i^\pm )\).
It is assumed that \(g_i^\pm = 0\) for \(i < 0\) and there is an index \(k\) such that \(h_n = 0\) for \(n <- k\).
Ostergaard 1996
G.DI1.005 Hybrid -- -- Convolutions
\(f(x)=g(x) \ast h(x)\)
are calculated as
\(f_n = \frac{\Delta x}{2}\cdot(\sum_{i=-\infty }^{+\infty}h_{n-i}(g_{i-1}+g_i))\).
Willats 2006
G.DI1.006 Exponential convolution -- -- Convolutions
\(f(x)=g(x) \ast h(x)\)
are calculated as
\(f_{i+1}=e^{-x_i}f_i+g_iE_0(x_i)+a_i^\prime TE_1(x_i)\)
with \(x_i=\frac{t_{i+1}-t_i}{T}; a'_i=\frac{a_{i+1}-a}{t_{i+1}-t_i};\ E_0(x) = 1-e^{-x};\ E_1(x)=x-E_0(x)\).
Flouri 2016
G.DI1.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --

Curve descriptive processes

General processes applied to a given data set, e.g. processes to derive descriptive quantities are defined in this group.

Code OSIPI name Alternative names Notation Description Reference
G.CD1.001 Calculate value at data grid point -- Calc \(f(x_i)\) This process returns the data value \(f(x_i)\) at the data grid point \(x_i\).
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
i (Q.GE1.003)
Output:
\(f(x_i)\) (Q.CD1.001)
--
G.CD1.002 Calculate maximum of data -- Calc \(f_{max}\) This process returns the maximum data value \(f_{max}\) .
Input:
Data (Q.GE1.002)
Output:
\(f_{max}\) (Q.CD1.002)
--
G.CD1.003 Calculate data grid point of maximum data value -- Calc \(x_{max}\) This process returns the data grid point at which the maximum of a given data set occurs.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)]
Output:
\(x_{max}\) (Q.CD1.003)
--
G.CD1.004 Calculate minimum of data -- Calc \(f_{min}\) This process returns the minimum data value \(f_{min}\) .
Input:
Data (Q.GE1.002)
Output:
\(f_{min}\) (Q.CD1.004)
--
G.CD1.005 Calculate data grid point of minimum data value -- Calc \(x_{min}\) This process returns the data grid point at which the minimum of a given data set occurs.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)]
Output:
\(x_{min}\) (Q.CD1.005)
--
G.CD1.006 Calculate value of final data point -- Calc \(f_{fin}\) This process returns the value of the data at the final data grid point.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)]
Output:
\(f_{fin}\) (Q.CD1.006)
--
G.CD1.007 Calculate final data grid point -- Calc \(x_{fin}\) This process returns the last data grid point of a given data grid.
Input:
Data grid (Q.GE1.001)
Output:
\(x_{fin}\) (Q.CD1.007)
--
G.CD1.008 Calculate maximum deviation from baseline -- Calc \(\Delta f_{BL,max}\) This process returns the maximum absolute deviation of a given data set and baseline.
Input:
Data (Q.GE1.002),
Baseline value (Q.BL1.001)
Output:
\(\Delta f_{BL,max}\) (Q.CD1.008)
--
G.CD1.009 Derivative at data grid point -- Calc \(\frac{df(x_i)}{dx}\) This process returns the value of the derivative of a given data set at the data grid point xi.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
i (Q.GE1.003)
Output:
\(\frac{df(x_i)}{dx}\) (Q.CD1.009)
--
G.CD1.010 Calculate time to peak -- Calc \(TTP\) This process returns the time to peak for a given bolus arrival time and data grid point of maximum value.
Input:
\(x_{max}\) (Q.CD1.003),
\(BAT\) (Q.BA1.001)
Output:
\(TTP\) (Q.CD1.010)
--
G.CD1.011 Calculate wash-in slope -- Calc \(WIS\) This process returns the wash-in-slope for a given baseline, maximum value and time to peak of a data set.
Input:
\(f_{max}\) (Q.CD1.002),
\(f_BL\) (Q.BL1.001),
\(TTP\) (Q.CD1.010)
Output :
\(WIS\) (Q.CD1.011)
--
G.CD1.012 Calculate wash-out slope -- Calc \(WOS\) This process returns the wash-out-slope for a given maximum value, final data value and the data grid points of the maximum and final data value of a data set.
Input:
\(f_{max}\) (Q.CD1.002),
\(f_{fin}\) (Q.CD1.006),
\(x_{max}\) (Q.CD1.003),
\(x_{fin}\) (Q.CD1.007)
Output:
\(WOS\) (Q.CD1.012)
--
G.CD1.013 Calculate area under curve -- Calc \(AUC_{x_{start}, x_{end}}\) This process returns the integral of data on a data grid in between a range of data grid points \(x_{start}\) and \(x_{end}\).
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
[\(x_{start}\) (Q.GE1.013), \(x_{end}\) (Q.GE1.014)]
Output:
\(AUC_{x_{start}, x_{end}}\) (Q.CD1.013)
--
G.CD1.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --

Segmentation

Processes related to segmentation are listed in this section.

Code OSIPI name Alternative names Notation Description Reference
G.SE1.001 Create binary mask -- -- This process creates a binary segmentation mask on a given data set using a specified segmentation method.
Input:
Data (Q.GE1.002),
Segmentation method (select from segmentation methods)
Output:
Binary mask (Q.SE1.001)
--
G.SE1.002 Apply binary mask -- -- This process masks a given data set with a given mask.
Input:
Data (Q.GE1.002),
Binary mask (Q.SE1.001)
Output:
Data (Q.GE1.002)
--
G.SE1.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --

Segmentation methods

Code OSIPI name Alternative names Notation Description Reference
G.SE2.001 Freehand -- -- Manual freehand drawing of contours.
Input:
Data (Q.GE1.002)
Output:
Binary mask (Q.SE1.001)
--
G.SE2.002 Threshold -- -- This method selects all input data with values in a specified range between lower and upper threshold.
Input:
Data (Q.GE1.002),
Lower threshold (Q.GE1.010),
Upper threshold (Q.GE1.011)
Output:
Binary mask (Q.SE1.001)
--
G.SE2.003 Region growing -- -- This method grows a region from selected seeds with values between the lower and upper value threshold in the neighborhood of the seeds.
Input:
Data (Q.GE1.002),
Seeds (Q.SE1.004),
Lower threshold (Q.GE1.010),
Upper threshold (Q.GE1.011)
Output:
Binary mask (Q.SE1.001)
--
G.SE2.004 K-means clustering -- -- This method partitions the input data in a number of clusters using the K-means clustering algorithm and selects the cluster with the ith index as binary mask.
Input:
Data (Q.GE1.002),
Number of K-Means clusters (Q.SE1.005),
i (Q.GE1.003)
Output:
Binary mask (Q.SE1.001)
--
G.SE2.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --

Uncertainty estimation

This section is currently work in progress

Uncertainty estimation and statistics processes

Code OSIPI name Alternative names Notation Description Reference
G.US1.001 Calculate arithmetic mean (sample) -- Calc \(\bar{x}\) This process returns the arithmetic mean from a given data sample.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
\(n\) (Q.GE1.015)
Output
\(\bar{x}\) (Q.US1.001)
--
G.US1.002 Calculate geometric mean (sample) -- Calc \(\bar{x}_{geom}\) This process returns the geometric mean from a given data sample.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
\(n\) (Q.GE1.015)
Output
\(\bar{x}_{geom}\) (Q.US1.002)
--
G.US1.003 Calculate variance (sample) -- Calc \(s^2\) This process returns the variance from a given data sample.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
\(n\) (Q.GE1.015)
Output
\(s^2\) (Q.US1.003)
--
G.US1.004 Calculate standard deviation (sample) -- Calc \(s\) This process returns the standard deviation from a given data sample.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
\(n\) (Q.GE1.015)
Output
\(s\) (Q.US1.004)
--
G.US1.005 Calculate median value (sample) -- Calc \(x_{median}\) This process returns the median from a given data sample.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
Output
\(x_{median}\) (Q.US1.005)
--
G.US1.006 Calculate coefficient of variation (sample) -- Calc \(CV\) This process returns the coefficient of variation from a given data sample.
Input:
\(s\) (Q.US1.004),
\(\bar{x}\) (Q.US1.001)
Output
CV (Q.US1.006)
--
G.US1.007 Calculate standard error -- Calc \(SEM\) This process returns the standard error of the mean value (sample) from a given data sample.
Input:
\(\bar{x}\) (Q.US1.001),
\(n\) (Q.GE1.015)
Output
SEM (Q.US1.008)
--
G.US1.008 Calculate range -- Calc \(r\) This process returns the range from a given data sample.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)]
Output
\(r\) (Q.US1.013)
--
G.US1.009 Calculate interquartile range -- Calc \(IQR\) This process returns the interquartile range from a given data sample.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)]
Output
\(IQR\) (Q.US1.014)
--
G.US1.010 Calculate \(\gamma\)-quantile -- Calc \(f_\gamma\) This process returns the gamma-quantile from a given data sample and a given gamma-quantile value.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
\(\gamma\) (Q.US1.015)
Output
\(f_\gamma\) (Q.US1.016)
--
G.US1.011 Calculate percentile range -- Calc \(PR\) This process returns the percentile range from a given data sample and two given gamma-quantile values.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
\(\gamma_1\) (Q.US1.015)
\(\gamma_2\) (Q.US1.015)
Output
\(PR\) (Q.US1.017)
--
G.US1.012 Calculate confidence interval -- Calc \(CI\) This process returns the confidence interval from a given data sample for a given confidence interval probability.
Input:
[Data (Q.GE1.002), Data grid (Q.GE1.001)],
SEM (Q.US1.008)
\(df\) (Q.US1.025)
\(\alpha\) (Q.US1.018)
Output
\(CI\) (Q.US1.019)
--
G.US1.013 Calculate signal to noise ratio -- Calc \(SNR\) This process returns the signal to noise ratio.
Input:
\(s\) (Q.US1.004),
\(\bar{x}\) (Q.US1.001)
Output
\(SNR\) (Q.US1.020)
--
G.US1.014 Calculate contrast to noise ratio -- Calc \(SNR\) This process returns the contrast to noise ratio. --
-- -- -- -- The lexicon needs to be updated on google docs! --
G.US.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state the doi of a literature reference and request the item to be added to the lexicon for future usage. --

Averaging

Code OSIPI name Alternative names Notation Description Reference
G.AV1.001 Calculate Average -- CalcAverage This process returns the average of input data according to a specified averaging method.
Input:
Data (Q.GE1.002), Averaging method (select from uncertainty estimation and statistics processes) e.g. Calc \(\bar{x}\) (G.US1.001)
Output:
Data (Q.GE1.002)
--
G.AV1.999 Method not listed -- -- This is a custom free-text item, which can be used if a method of interest is not listed. Please state a literature reference and request the item to be added to the lexicon for future usage. --