/CurvilinearAngularSpectrumMethod

Angular Spectrum Method and Fourier Beamforming Technique for Curvilinear Arrays

Primary LanguagePython

CurvilinearAngularSpectrumMethod

Angular Spectrum Method and Fourier Beamforming Technique for Curvilinear Arrays

We previously demonstrated a Fourier beamforming technnique that could be used to reconstruct ultrasound images from any arbitrary sequence of transmissions using the angular spectrum method: https://github.com/rehmanali1994/FourierDomainBeamformer. The main limitation of this and other Fourier beamforming approaches is that they are primarily limited to linear/planar arrays. Here we provide the implementation of the angular spectrum method in a polar coordinate system that enables the application of the Fourier beamforming technique in curvilinear arrays.

We provide sample data and algorithms presented in

Rehman Ali and Jeremy Dahl , "Angular spectrum method for curvilinear arrays: Theory and application to Fourier beamforming", JASA Express Letters 2, 052001 (2022) https://doi.org/10.1121/10.0010536

for the reconstruction ultrasound images using the Fourier beamforming technique. If you use the code/algorithm for research, please cite the above paper.

You can reference a static version of this code by its DOI number: DOI

Code and Sample Datasets

The angular spectrum method for the downward propagation of transmit and receive wavefields is implemented in both MATLAB (propagate_polar.m) and Python (propagate_polar.py). The following example scripts/tutorials are provided:

  1. A multistatic synthetic aperture image reconstruction using a Field II-simulated dataset (FreqDomShotGatherMig_Curvilinear_FieldII.m and FreqDomShotGatherMig_Curvilinear_FieldII.py).
  2. The equivalent time-domain reconstruction process shown using a single-element transmission (TimeDomShotGatherMig_FieldII.m and TimeDomShotGatherMig_FieldII.py).
  3. A focused synthetic aperture image reconstruction for an abdominal imaging example (FreqDomShotGatherMig_Curvilinear_5C1.m and FreqDomShotGatherMig_Curvilinear_5C1.py). Special thanks to Rick Loftman, Ismayil Guracar, and Vasant Salgaonkar at Siemens Healthineers for enabling in-vivo demonstration of this work using channel data captured on a clinical scanner.
  4. The equivalent time-domain reconstruction process shown using a single focused-transmit beam (TimeDomShotGatherMig_FieldII.m and TimeDomShotGatherMig_FieldII.py).

Please download the sample data (FieldII_AnechoicLesionFullSynthData.mat and SiemensData5C1_Kidney2.mat) under the releases tab for this repository, and place that data in the main directory (CurvilinearAngularSpectrumMethod).

Sample Results

We show the following multistatic synthetic aperture image reconstruction using the Fourier beamforming technique with the polar form of the angular spectrum method:

The Fourier beamforming technique provided is equivalent to the time-domain cross-correlation process shown below (only a single-element transmission is shown here):

We also acquired channel data in-vivo using focused transmit beams on a clinical scanner to obtain the following synthetic aperture image reconstruction:

We show the same time-domain cross-correlation process in-vivo with a single focused transmit beam: