Computational Ultrasound Imaging Toolbox

Versione 0.1 (431 KB) da mschiffn
Develop and evaluate computational image formation methods for freely programmable ultrasound imaging systems with only a few lines of code.
76 download
Aggiornato 24 feb 2023

Computational Ultrasound Imaging Toolbox for MATLAB

GitHub GitHub repository size GitHub language count GitHub stargazers GitHub forks View on File Exchange ko-fi

Develop and evaluate computational image formation methods for freely programmable ultrasound imaging systems with only a few lines of code.

Motivation

Advances in electronic miniaturization and processing power have recently led to freely programmable ultrasound imaging (UI) systems and software-based "ultrafast" imaging modes, such as

  • coherent plane-wave compounding,
  • synthetic aperture imaging, or
  • limited-diffraction beam imaging.

These imaging modes capture large fields of view (FOVs) at rates in the kilohertz range.

Standard image formation algorithms, such as delay-and-sum (DAS) or Fourier methods, however, increase the frame rate at the expense of the image quality. They rely on relatively simple physical models that do not support complex imaging sequences and, thus, neglect the special abilities of these systems.

🔍 What Does This Toolbox Accomplish?

Computational UI methods leverage the available processing power for realistic physical models that reflect the abilities of freely programmable UI systems. They recover acoustic material parameter fluctuations in a specified FOV from a relatively short sequence of arbitrarily complex pulse-echo scattering experiments.

Each experiment comprises

  1. the synthesis of an arbitrary incident wave,
  2. the subsequent recording of the resulting echoes via a fully-sampled transducer array, and
  3. the optional mixing of the recorded echoes into compound signals.

The toolbox, considering soft tissue structures as lossy heterogeneous fluids, provides numerical solutions to these inverse problems based on discretized scattering operators and their adjoints. These operators map the material parameter fluctuations to the mixed radio frequency voltage signals.

The toolbox excels in the repetitive application of identical scattering operators in iterative image formation methods and, thus, complements popular simulation tools, e.g. Field II and FOCUS. It compensates the relatively costly initialization of a scattering operator by a fast evaluation.

Typical applications include

  • regularized structured insonification,
  • coded excitation,
  • compressed sensing / sparse recovery,
  • statistical (Bayesian) methods,
  • machine learning, and
  • physical model in plug-and-play methods.

Usability and simplicity were design paradigms. The toolbox enables the solution of complex inverse scattering problems with only a few lines of code.

⭐ Main Features

  • d-dimensional Euclidean space (d = 2, 3)
  • one type of heterogeneous acoustic material parameter: compressibility
  • modular object-oriented design
  • arbitrary dispersion relations describing the combination of frequency-dependent absorption and dispersion, such as the time-causal model
  • arbitrary types of incident waves, including
    • steered quasi-plane waves,
    • quasi-(d-1)-spherical waves with virtual sources,
    • steered and focused beams,
    • random waves, and
    • coded waves
  • regularization based on lq-minimization (convex and nonconvex)
  • efficient implementations using hierarchical matrix factorizations
  • GPU support via mex / CUDA API

Current Limitations

  • Born approximation
  • linear systems (wave propagation, scattering, transducer behavior)
  • pulse-echo mode (i.e., no transmission measurements)
  • half-space with rigid (Neumann) boundary
  • symmetric grids
  • developed and tested in MATLAB R2018b, R2019a, R2020a / CUDA Toolkit v10.1.168 on Ubuntu 12.04/16.04/18.04

⚙️ Installation

📓 References

The physical models underlying this toolbox and exemplary images were published in:

  1. M. F. Schiffner, "Random Incident Waves for Fast Compressed Pulse-Echo Ultrasound Imaging", physics.med-ph:arXiv:1801.00205
  2. M. F. Schiffner and G. Schmitz, "Compensating the Combined Effects of Absorption and Dispersion in Plane Wave Pulse-Echo Ultrasound Imaging Using Sparse Recovery", 2013 IEEE Int. Ultrasonics Symp. (IUS), pp. 573--576, DOI:10.1109/ULTSYM.2013.0148
  3. M. F. Schiffner and G. Schmitz, "The Separate Recovery of Spatial Fluctuations in Compressibility and Mass Density in Plane Wave Pulse-Echo Ultrasound Imaging", 2013 IEEE Int. Ultrasonics Symp. (IUS), pp. 577--580, DOI:10.1109/ULTSYM.2013.0149

Cita come

mschiffn (2024). Computational Ultrasound Imaging Toolbox (https://github.com/mschiffn/comp_ui_toolbox/releases/tag/v0.1), GitHub. Recuperato .

Compatibilità della release di MATLAB
Creato con R2020a
Compatibile con qualsiasi release
Compatibilità della piattaforma
Windows macOS Linux
Tag Aggiungi tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

+auxiliary

+calibration

+calibration/+options

+illustration

+linear_transforms

+linear_transforms/+attributes

+linear_transforms/+concatenations

+linear_transforms/+convolutions

+linear_transforms/+wave_atoms

+linear_transforms/+wavelets

+math

+physical_values

+processing

+processing/+metrics

+processing/+metrics/+contrast

+processing/+metrics/+region

+regularization/+algorithms

+regularization/+algorithms/+convex

+regularization/+algorithms/+greedy

+regularization/+dictionaries

+regularization/+normalizations

+regularization/+options

+regularization/+tgc

+regularization/+tgc/+curves

+scattering

+scattering/+anti_aliasing_filters

+scattering/+options

+scattering/+sequences

+scattering/+sequences/+settings

+scattering/+sequences/+settings/+controls

+scattering/+sequences/+settings/+discretizations

+scattering/+sequences/+setups

+scattering/+sequences/+setups/+discretizations

+scattering/+sequences/+setups/+discretizations/+methods

+scattering/+sequences/+setups/+fields_of_view

+scattering/+sequences/+setups/+geometry

+scattering/+sequences/+setups/+materials

+scattering/+sequences/+setups/+materials/+absorption_models

+scattering/+sequences/+setups/+transducers

+scattering/+sequences/+setups/+transducers/+apodization

+scattering/+sequences/+setups/+transducers/+thickness

+scattering/+sequences/+syntheses

+scattering/+sequences/+syntheses/+deterministic

+scattering/+sequences/+syntheses/+random

Versione Pubblicato Note della release
0.1

Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.
Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.