^{1}

^{1}

^{1}

^{1}

^{2}

^{1}

^{2}

We introduce the discrete dipole approximation (DDA) for efficiently calculating the two-dimensional electric field distribution for our microwave tomographic breast imaging system. For iterative inverse problems such as microwave tomography, the forward field computation is the time limiting step. In this paper, the two-dimensional algorithm is derived and formulated such that the iterative conjugate orthogonal conjugate gradient (COCG) method can be used for efficiently solving the forward problem. We have also optimized the matrix-vector multiplication step by formulating the problem such that the nondiagonal portion of the matrix used to compute the dipole moments is block-Toeplitz. The computation costs for multiplying the block matrices times a vector can be dramatically accelerated by expanding each Toeplitz matrix to a circulant matrix for which the convolution theorem is applied for fast computation utilizing the fast Fourier transform (FFT). The results demonstrate that this formulation is accurate and efficient. In this work, the computation times for the direct solvers, the iterative solver (COCG), and the iterative solver using the fast Fourier transform (COCG-FFT) are compared with the best performance achieved using the iterative solver (COCG-FFT) in C++. Utilizing this formulation provides a computationally efficient building block for developing a low cost and fast breast imaging system to serve under-resourced populations.

The mortality rate due to the breast cancer in women worldwide has led numerous research groups to investigate early diagnosis programs. Along with other imaging methods such as X-ray computed tomography [

In spite of the demand and interest for microwave tomography, the computational costs of various algorithms have remained a primary obstacle in translation to real applications [

2D imaging algorithms and system implementations are not new to the microwave imaging community. One notable example is the Semenov group when they were associated with the Carolinas Medical Center in Charlotte, North Carolina. In a relatively early work, they concluded that the reason their imaging technique did not work as well as desired was because of the mismatch between their 2D algorithm and the inherent 3D nature of the actual propagating fields [

Microwave tomographic imaging algorithms require solving two problems—forward and inverse problems. The forward solver is by far the more computationally expensive part of an iterative image reconstruction algorithm and requires substantial attention to reduce its impact. Additionally, the need to perform many iterations to recover accurate images further motivates the requirement for improving computation time. The most common numerical methods used to solve the forward problem are the finite-difference time-domain (FDTD) [

In this work, the two-dimensional discrete dipole approximation (2D-DDA) for calculating the electric field distribution for our microwave imaging system is proposed. The iterative solver for 2D-DDA has the potential to significantly improve the computational speed. A conjugate gradient based method, i.e., the conjugate orthogonal conjugate gradient method (COCG), is used for which the computational cost of the COCG is remarkably reduced when incorporating the fast Fourier transform (FFT). This is made possible because the coefficient matrix for the 2D-DDA is complex, symmetric, and block-Toeplitz after removal of the main diagonal and enables the possibility for employing the FFT after expansion of the block matrices to circulant form. The computation times for the direct and iterative solvers are calculated and have been investigated in this comparison using both MATLAB and C++ implementations. It is useful to compare performance both with an interpretive language such as MATLAB and a classic compiler-based code. While the interpretive code struggles computation time-wise with constructs such as loops, it contains highly optimized matrix operations which can often overcome such disadvantages. These examinations show that the computation time for the 2D-DDA is significantly decreased in the COCG-FFT approach and that the best performance is achieved in C++ using an open source C++ package, FFTW, for fast Fourier transform calculations [

In this section, we formulate the 2D-DDA and discuss possible computational efficiency for it as a forward solver of the reconstruction algorithms.

The three-dimensional discrete dipole approximation (3D-DDA) has been widely used for calculation of scattering and absorption properties caused by an external electromagnetic field [

On the macroscopic level, the total electric field is proportional to the polarization

Since our imaging system shown in Figure

Photograph of the measurement setup including the tank, antennas, and the phantom cylinders.

The governing equation for the two-dimensional discrete dipole approximation is [

Schematic imaging plane with

The task of computing the electric field distribution utilizing the DDA involves two primary steps: (a) solving the dipole moments (P) and (b) multiplying P by the matrix in (

Different iterative solvers have been suggested with most derived from the Krylov subspace methods [

Examination of (

Block-Toeplitz matrix

Toeplitz matrices are unique in that they are not necessarily symmetric, but they have regular repetition of the individual coefficients, for example:

Circulant conversion.

In this section, we discuss two different approaches to optimize the forward solver of the reconstruction algorithms. Additionally, the effects of background medium dielectric properties are investigated and its impact on the electric field distribution is presented.

As mentioned in Section

In this situation, we set the permittivity values for the grid region directly surrounding the imaging domain to

The relative error of the total solution, condition number of the matrix with

Plots of magnitude (top) and phase (bottom) distributions for

21.0

21.9

21.99

21.999

21.9999

We have implemented the 2D-DDA using both MATLAB and C++. The iterative and direct solutions for the given system of equations have also been calculated. Since the main concern on the choice of these algorithms stems from optimizing computation time to obtain vector

Computation times (s).

Direct | COCG | COCR | COCG-FFT | COCR-FFT | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|

#dipoles | MATLAB | C++ (Armadillo) | MATLAB | C++ (Armadillo) | MATLAB | C++ (Armadillo) | MATLAB | C++ | MATLAB | C++ | ||

Armadillo | FFTW | Armadillo | FFTW | |||||||||

441 | 0.0045 | 0.0540 | 0.0029 | 0.0033 | 0.0034 | 0.0037 | 0.0413 | 0.0029 | 0.0069 | 0.04123 | 0.0030 | 0.0069 |

1681 | 0.1790 | 2.1660 | 0.0790 | 0.0632 | 0.0830 | 0.0680 | 0.1869 | 0.0565 | 0.0600 | 0.1851 | 0.0589 | 0.0549 |

6561 | 5.3340 | 57.8030 | 1.5296 | 1.4693 | 1.6020 | 1.5353 | 1.4603 | 1.2336 | 0.6431 | 1.4410 | 1.3612 | 0.6512 |

In this section, the optimal number of dipoles utilized in the imaging domain is investigated. In the previous section, it was convenient to sequentially double the number of dipoles to more easily identify the optimal number of dipoles. However, there may be more convenient intermediate values which have improved efficiency, especially with respect to the FFT.

For the block-Toeplitz matrices in the case with 6561 dipoles, the square Toeplitz matrices are 81 × 81. To convert these matrices to circulant ones, the size of the matrix needs to be nearly doubled in width and height along with duplication of coefficients to that in (

The fast Fourier transformations of the first row of the matrix and the column vector also require zero-padding procedures to the next power of 2 to allow use of the FFT. In this way, a vector with the size of 160 would be converted to the one of size 256. One way to optimize these cases is to restrict our number of dipoles in a way that does not require significant zero-padding. One example of exploiting this observation is to reduce the overall grid size to

Computation times for the power of 2 optimized grid size.

Direct | COCG | COCR | COCG-FFT | COCR-FFT | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|

#dipoles | MATLAB | C++ (Armadillo) | MATLAB | C++ (Armadillo) | MATLAB | C++ (Armadillo) | MATLAB | C++ | MATLAB | C++ | ||

Armadillo | FFTW | Armadillo | FFTW | |||||||||

4225 | 1.7129 | 31.7440 | 0.6444 | 0.5555 | 0.6461 | 0.5836 | 0.7637 | 0.5689 | 0.2746 | 0.5785 | 0.5366 | 0.2758 |

Plots of magnitude (left) and phase (right) distributions for

Moreover, for the iterative algorithms such as COCG, the number of iterations is not independent of prescribed accuracy tolerance levels. To reduce the computation time, we studied the effects of the error tolerance level on the computation time as well as the overall accuracy. Table

Comparison of computation times as a function of conjugate gradient scheme accuracy tolerances.

Tolerance = 1e-5 | Tolerance = 1e-3 | |||||||
---|---|---|---|---|---|---|---|---|

COCG | COCG-FFT | COCR | COCR-FFT | COCG | COCG-FFT | COCR | COCR-FFT | |

MATLAB | 0.3351 | 0.4090 | 0.3749 | 0.4042 | 0.2061 | 0.2694 | 0.2344 | 0.2613 |

C++ | 0.3470 | 0.1655 | 0.3741 | 0.1665 | 0.3237 | 0.1073 | 0.2648 | 0.1080 |

We have implemented a version of the DDA for computing the forward solutions for a configuration used in our current 2D tomographic imaging system. 2D is intriguing in that it has already been successfully implemented for phantom and animal experiments along with considerable clinical studies. Even without the speed enhancements from the techniques presented here, the 2D approach is already considerably faster than any existing 3D inverse technique which positions it well with regard to being the foundation for a low cost and portable system that would be suitable for under-resourced settings.

We have previously demonstrated that the DDA is accurate for forward solution computation for our imaging algorithm. This study builds on that experience and formulates the problem in ways that facilitate dramatic speed optimization. Chief among these enhancements is the notion of utilizing conjugate gradient based iterative solvers in conjunction with breaking the core matrix into a simple diagonal matrix and a separate one that can be further broken into block-Toeplitz matrices. Through standard techniques, these smaller matrices can be easily expanded into circulant matrices for which the FFT can be employed to speed up the matrix/vector multiplications utilizing the convolution theorem.

Further enhancements including judicious selection of the grid size and analysis of appropriate error tolerance levels for the conjugate gradient type iterative process allow the forward solution time to decrease to the order of 0.1 second which is almost two orders of magnitude faster than a conventional COMSOL approach that is considered to be efficient. These computation time improvements along with significant reductions in memory usage because of the nature of circulant matrices make this an attractive approach for simplifying and greatly speeding up the image reconstruction process.

No data were used to support this study.

The authors declare that there are no conflicts of interest regarding the publication of this paper.

The article has been included in a thesis by the first author Samar Hosseinzadegan for the Licentiate Degree of Engineering at the Chalmers University of Technology, Göteborg, Sweden [