Phase-based Helmholtz EPT with automatically selected kernel
Experimental
Table of contents
Theory
The implemented method is based on the phase-based approximation of Helmholtz EPT, that retrieves the electric conductivity from the transceive phase input according to the relation $$ \sigma = \frac{\nabla^2 \varphi^{\pm} }{2 \omega \mu_0}\,. $$ In this case, besides a constant multiplicative coefficient, the estimation of the electric conductivity \(\sigma\) consists in the evaluation of the Laplacian of the transceive phase \(\varphi^\pm\).
The Laplacian of the noisy acquisition of \(\varphi^\pm\) is estimated numerically with a Savitzky-Golay filter [1]. It approximates the phase map around the voxel of interest with a paraboloid (or a higher order polynomial), of which computes the derivatives. In this way, the Savitzky-Golay filter reduces the impact of noise in the Laplacian computation.
The polynomial fitting on which the Savitzky-Golay filter is based depends on the definition of a kernel of voxels around the voxel of interest. The kernel should be large enough to reduce the noise propagation, but not too large to include voxels from adjacent tissues. In the latter case, the assumption of local homogeneity on which Helmholtz EPT relies would not hold and, therefore, large systematic errors would appear. This implementation of the phase-based Helmholtz EPT looks automatically for the optimal kernel given a set of options.
In each voxel, the kernel is selected assuring that the estimated conductivity is physically admissible (i.e., non-negative) and that the uncertainty associated with the estimated conductivity is minimum. The uncertainty is evaluated by propagating it through the fitting under the assumption of independent and identically distributed noise in each voxel of the acquired phase map.
References
[1] A. Savitzky and M.J.E. Golay, “Smoothing and differentiation of data by simplified least squares procedures,” Analytical Chemistry, 36(8):1627-39, 1964. DOI: 10.1021/ac60214a047
Settings
Being a phase-based method, the input address trx-phase
must be set.
Moreover, tx-channel
and rx-channel
must be equal to 1.
The following specific settings must be configured.
Savitzky-Golay filter
A list of kernels (characterised by the size and the shape) on which the Savitzky-Golay filter can be applied must be provided.
[parameter.savitzky-golay]
sizes = [[2, 2, 1], [3, 3, 1], [3, 3, 1]]
shapes = [1, 1, 2]
degree = 2
output-index = "example.h5:/index"
sizes
is the list of the sizes of the kernels. The size defines the number of voxels along each semi-axis of the kernel. This setting is mandatory.shapes
is the list of the shapes of the kernels. The shape is defined according to the following table. This setting is mandatory.degree
is the degree of the interpolating polynomial. It is the same for all the kernels. It must be at least 2 (default:2
).output-index
is the address where the map of the selected kernels will be written. It must be a dataset in an .h5 file. The map contains in each voxel the index of the selected kernel ordered as in thesizes
andshapes
lists starting from the index 0. If omitted, the map will not be stored.
Code | Shape | Example with size = [2,2,1] |
---|---|---|
0 | Cross | |
1 | Ellipsoid | |
2 | Cuboid |
Other parameters
[parameter]
unphysical-values = false
output-variance = "example.h5:/var"
unphysical-values
is equal totrue
if unphysical values (i.e., negative values) of the electric conductivity are admitted. (default:false
).output-variance
is the address where the variance evaluated for the electric conductivity will be written. It must be a group in an .h5 file. The variance will be written in the group as/electric-conductivity
. If omitted, the variance will not be stored.
Example
The following configuration file is used to perform the phase-based Helmholtz EPT with automatically selected kernel of a heterogeneous phantom. The input transceive phase has been obtained by simulating the phantom in a birdcage body coil at 64 MHz, that is the Larmor frequency of a 1.5 T scanner.
The configuration file can be downloaded here. The input .h5 file containing the data can be downloaded here.
title = "Example of phase-based Helmholtz EPT with automatically selected kernel"
description = "Heterogeneous phantom imaged at 1.5 T."
method = 100
[mesh]
size = [200, 200, 11]
step = [1e-3, 1e-3, 1e-3]
[input]
frequency = 64e6
tx-channels = 1
rx-channels = 1
trx-phase = 'heterogeneous-phantom-15t.h5:trx_phase'
[output]
electric-conductivity = 'heterogeneous-phantom-15t-ept-helmholtz-chi2.h5:sigma'
[parameter.savitzky-golay]
sizes = [[2, 2, 2], [3, 3, 3], [4, 4, 4]]
shapes = [1, 1, 1]
output-index = 'heterogeneous-phantom-15t-ept-helmholtz-chi2.h5:index'
[parameter]
unphysical-values = true
output-variance = "heterogeneous-phantom-15t-ept-helmholtz-chi2.h5:var"
The retrieved distribution of the electric conductivity is pictured in the following image, together with the expected distribution, the input transceive phase, the selected kernel index and the pixel-wise uncertainty (square root of the electric conductivity pixel-wise variance). Because of the hypothesis of local homogeneity of the electric properties that is at the basis of the Helmholtz EPT method, large errors occur at the boundary of the phantom inclusions. The evaluated variance recognises this error and the automatic system selects smaller kernels near to the boundaries.