zea.probes

Module containing parameters and classes for different ultrasound probes.

All probes are based on the base Probe class.

Supported probes

Example usage

We can initialize a generic probe with the following code:

>>> from zea import Probe

>>> probe = Probe.from_name("generic")
>>> print(probe.get_parameters())
{'probe_geometry': None, 'center_frequency': None, 'sampling_frequency': None, 'xlims': None, 'zlims': None, 'n_el': None}

Functions

create_probe_geometry(n_el, pitch)

Create probe geometry based on number of elements and pitch.

Classes

Esaote_sll1543()

Esaote SLL1543 linear ultrasound transducer.

Probe([probe_geometry, center_frequency, ...])

Probe base class.

Verasonics_l11_4v()

Verasonics L11-4V linear ultrasound transducer.

Verasonics_l11_5v()

Verasonics L11-5V linear ultrasound transducer.

class zea.probes.Esaote_sll1543[source]

Bases: Probe

Esaote SLL1543 linear ultrasound transducer.

https://lysis.cc/products/esaote-sl1543

Set probe parameters

class zea.probes.Probe(probe_geometry=None, center_frequency=None, sampling_frequency=None, xlims=None, zlims=None, bandwidth_MHz=None, probe_type='linear')[source]

Bases: Object

Probe base class. All probes should inherit from this class.

Initialize probe.

Parameters:
  • probe_geometry (np.ndarray, optional) – (n_el, 3) array with element positions in meters. Defaults to None.

  • center_frequency (float, optional) – Center frequency of the probe in Hz.

  • sampling_frequency (float, optional) – Sampling frequency of the probe in Hz.

  • xlims (tuple, optional) – Tuple with the limits of the probe in the x direction in meters. Defaults to None.

  • zlims (tuple, optional) – Tuple with the limits of the probe in the z direction in meters (depth). Defaults to None.

  • bandwidth_MHz (float, optional) – Bandwidth of the probe in MHz. Defaults to None.

  • probe_type (str, optional) – Type of probe. Currently only linear and phased probes are supported. Defaults to ‘linear’.

classmethod from_name(probe_name, fallback=False, **kwargs)[source]

Create a probe from its name.

Parameters:

probe_name (str) – Name of the probe.

Returns:

Probe object.

Return type:

Probe

classmethod from_parameters(probe_name, parameters)[source]

Instantiate a probe by name, overriding with parameters from dict.

Return type:

Probe

get_parameters()[source]

Returns a dictionary with default parameters.

to_tensor(keep_as_is=None)[source]

Convert the attributes in the object to tensors.

class zea.probes.Verasonics_l11_4v[source]

Bases: Probe

Verasonics L11-4V linear ultrasound transducer.

Verasonics L11-4V linear ultrasound transducer.

class zea.probes.Verasonics_l11_5v[source]

Bases: Probe

Verasonics L11-5V linear ultrasound transducer.

Verasonics L11-5V linear ultrasound transducer.

zea.probes.create_probe_geometry(n_el, pitch)[source]

Create probe geometry based on number of elements and pitch.

Parameters:
  • n_el (int) – Number of elements in the probe.

  • pitch (float) – Pitch of the elements in the probe.

Returns:

Probe geometry with shape (n_el, 3).

Return type:

np.ndarray