Computational Ultrasound Imaging Toolbox

Version 0.1 (431 ko) par mschiffn
Develop and evaluate computational image formation methods for freely programmable ultrasound imaging systems with only a few lines of code.
77 téléchargements
Mise à jour 24 fév. 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

Citation pour cette source

mschiffn (2024). Computational Ultrasound Imaging Toolbox (https://github.com/mschiffn/comp_ui_toolbox/releases/tag/v0.1), GitHub. Récupéré le .

Compatibilité avec les versions de MATLAB
Créé avec R2020a
Compatible avec toutes les versions
Plateformes compatibles
Windows macOS Linux
Tags Ajouter des tags

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

Version Publié le Notes de version
0.1

Pour consulter ou signaler des problèmes liés à ce module complémentaire GitHub, accédez au dépôt GitHub.
Pour consulter ou signaler des problèmes liés à ce module complémentaire GitHub, accédez au dépôt GitHub.