Phase-based Helmholtz EPT with automatically selected kernel

Experimental

Table of contents

  1. Theory
  2. Settings
    1. Savitzky-Golay filter
    2. Other parameters
  3. Example

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 the sizes and shapes 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 to true 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.


Copyright © 2020-2024 Alessandro Arduino, INRiM. Distributed by an MIT license.

Page last modified: Dec 5 2023 at 11:46 AM.