Exercise 3: Simulation of ultrasound signals from flowing blood
Monday, September 25, 14.30-17.00 in the
E-databar, build 341, ground floor, room 015.
Purpose:
The purpose of this exercise is to make ultrasound RF data from flowing blood
for a fixed velocity. The signals can be used later to test and validate
velocity estimators.
Preparation:
Read Chapter 3 and 4 in the book: Jørgen Arendt Jensen: Estimation
of Blood Velocities Using Ultrasound, A Signal Processing Approach, Cambridge
University Press, 1996.
Go through the different exercise points and write down suggestions for
your Matlab code.
Exercise:
-
Use the 1D convolution model described in the book for the received
RF signal. The model is given by:
y(t) = p(t) * s(t)
where y(t) is the received signal, p(t) is the ultrasound pulse and
s(t) is the white, Gaussian scattering signal from the blood.
The basic ultrasound pulse is read from a file. Start a web browser
and go to the course home page at:
https://courses.healthtech.dtu.dk/22485.
Go to exercise3 (this page at:
https://courses.healthtech.dtu.dk/22485/?exercises/exercise3/exercise3.html)
and download the ultrasound pulse data by right-clicking
here.
Place the datafile with the name pulse.mat in your directory for the course.
Load the data into Matlab and look at the variables by writing whos.
The following variables are found in the file:
Variable name |
Content |
Unit |
pulse |
Measured impulse response from a B-K Medical A/S transducer |
v |
fs |
Sampling frequency (100 MHz) |
Hz |
Read the data into Matlab and plot the pulse with the correct time
axis and plot the spectrum of the pulse. What is it's center frequency?
-
Make a single received signal from a blood vessel with a diameter of 10
mm. Assume that the scattering is random, Gaussian, and white, and that there
are only scatterers in the vessel. The angle between the ultrasound beam and
the vessel is 45 degrees. Plot the signal with the correct time
axis.
-
Make 100 received signals for fprf=5 kHz, vz=0.15 m/s, c=1500 m/s
for a plug flow. Plot the signal for one given depth as a function of time.
What is the frequency for this signal and why?
-
Download the measured RF signal from the directory:
https://courses.healthtech.dtu.dk/22485/exercises/exercise3/data/fem_rf.mat
and put them in the course directory. The data is from the femoral
artery and the measurement parameters are:
Transducer: |
2 MHz, linear array probe with 64 elements |
Pulse repetition frequency: |
5 kHz |
Angle between flow and beam: |
55 degrees |
Ultrasound pulse: |
4 cycles at 2 MHz |
Sampling frequency: |
10 MHz |
Resolution: |
16 bits samples |
Position of vessel center: |
60 mm from transducer surface |
Vessel radius: |
2 mm |
Depth of first sample point: |
54 mm from transducer surface |
Depth of last sample point: |
70 mm from transducer surface |
The Matlab variable data contains the RF data. One column contains
the received RF signal for one pulse emission. The matrix, thus, contains
5000 columns for one second of RF data. This datafile only contains 300 lines
taken at the start of the cardiac cycle. The complete data file can be found
at:
https://courses.healthtech.dtu.dk/22485/exercises/exercise3/data/fem_rf_original.mat
Make the same type of plots for this data as in point 3. Use the spectrum
to determine the frequency
and thereby velocity for different depths in the vessel. You can also make
an image of the RF data as shown on the cover of the book, and then study
the change in velocity over depth and time.
|