vbeam.core.kernels#
Function (signal_for_point()) for beamforming a single point, which is
usually repeated over all points, receivers and
transmits (or any other arbitrary dimensions).
See also
vbeam.beamformers
- vbeam.core.kernels.signal_for_point(sender: ElementGeometry, point_position: ndarray, receiver: ElementGeometry, signal: ndarray, transmitted_wavefront: TransmittedWavefront, reflected_wavefront: ReflectedWavefront, speed_of_sound: float | SpeedOfSound, wave_data: WaveData, interpolate: InterpolationSpace1D, modulation_frequency: float | None, apodization: Apodization) ndarray[source]#
The core beamforming function. Return the delayed and interpolated signal from a single transmit, for a single receiver, for a single point (pixel).
To make a full beamformer, this function should be made to run (in parallel) for a ll points in the image, all receiving elements, all transmitted waves, etc.
- Parameters:
sender – The element or array that the transmitted wave passed through at time 0. It “sends” the transmitted wave.
point_position – The point/pixel to be imaged. Is always 3D and in cartesian coordinates (x, y, z).
receiver – The element that received the reflected/backscattered signal.
signal – The recorded signal of the backscattered signal for the receiver.
transmitted_wavefront – A wavefront model for calculating the distance that the transmitted wave travels before reaching the point position.
reflected_wavefront – A wavefront model for calculating the distance that the reflected wave travels from a point position back to a receiver. Usually, this is just the euclidian distance.
speed_of_sound – The speed-of-sound of the medium. It is used to convert from distance in meters returned from the wavefront models to delay in seconds. If it is a float, then the medium has a constant speed-of-sound (it is the same everywhere). It may also be an instance of
SpeedOfSoundthat which can model a heterogeneous speed-of-sound medium.wave_data – Data about the transmitted wave, for example the position of the virtual source (if applicable).
interpolate – Return the recorded backscattered signal at the time given the calculated delay, by interpolation.
modulation_frequency – Optional value used to remodulate the delayed interpolated signal if it was a demodulated IQ signal. If the signal is not a demodulated IQ signal, then modulation_frequency can be set to 0 or None.
apodization – Apodization function that weights the returned delayed interpolated signal.
- Returns:
The delayed and interpolated signal from a single transmit, for a single receiver, for a single point (pixel).
- class vbeam.core.kernels.SignalForPointData(sender: ElementGeometry, point_position: ndarray, receiver: ElementGeometry, signal: ndarray, transmitted_wavefront: TransmittedWavefront, reflected_wavefront: ReflectedWavefront, speed_of_sound: float | SpeedOfSound, wave_data: WaveData, interpolate: InterpolationSpace1D, modulation_frequency: float | None, apodization: Apodization)[source]#
Data needed for signal_for_point.
See the docstring of signal_for_point for documentation of each field.