Super-resolution imaging of Moving Microbubbles
Monday, May 27, 10.00-12.00 on the top floor in build 349, room 205.
Purpose:
Through this exercise, students will learn how to generate a super-resolution image from amplitude-modulated data containing a series of diffraction-limited images of moving microbubbles. Students will apply various techniques such as data preparation, noise reduction, microbubble detection and localization, and tracking, and incorporate these results into a high-resolution image.
Preparation:
Read the section on super-resolution imaging in the course notes.
Go through the different exercise points and write down suggestions for your Matlab code.
Data and parameters:
Data location in SharePoint: /exercises/exercise_5/SRI_phantom/
The variables stored in the env_bf.mat file has following descriptions:
- env: envelope of beamformed data in uint8 format (0~255)
- [Nz, Nx, Nt] = size(env); % Nz: number of pixels in z-dir,
% Nx: number of pixels in x-dir,
% Nt: number of frames
- metadata
- metadata.x_axis: x values of the beamforming grid (m) - [Nx, 1] vector
- metadata.z_axis: z values of the beamforming grid (m) - [1, Nz] vector
- metadata.frame_rate: frame rate of the imaging system (Hz)
- metadata.f0: center frequency (MHz)
- metadata.dynamic_range: actual dynamic range of env
% If your system has a low memory try the batch compressed data and load a fraction of frames
Exercise:
- Preparation of the Data, Noise Reduction by Filtering and Smoothing
Using the provided dataset, perform the following steps:
- Import the dataset and visualize the initial raw data.
- Apply a noise reduction technique of your choice (e.g., a median filter or Gaussian smoothing). Compare the images before and after noise reduction.
- How do you incorporate the wavelength of the system for noise reduction?
- Detection of the Microbubbles
- Determine an appropriate threshold for detecting the microbubbles in the filtered data. Justify your choice of threshold.
- Apply the threshold to the data and visualize the detected microbubbles.
- Localizing Microbubbles
- Choose a method for localizing the microbubbles - either peak detection or centroid. Explain why you chose this method.
- Implement the localization technique and visualize the localized microbubbles.
- Insertion of Localized Positions into a High-Resolution Image
- Generate a high-resolution image based on the localized positions of the microbubbles. Consider a pixel size of at least 25 um for the final image.
- Discuss any challenges you encountered in this step and how you addressed them.
- Performing a Simple Tracking of the Detected and Localized Positions (optional)
- Implement a basic tracking algorithm for the detected and localized positions (You can use the publicly available code: SimpleTracker)
- Visualize the tracking of the microbubbles. Discuss the effectiveness of your tracking algorithm.
- Insertion of the Tracks into a High-Resolution Image (optional)
- Insert the tracks from part 5 into a high-resolution image.
- Discuss the final output and any improvements that could be made to your approach.
|