/*Former Title: Real-time Photoacoustic Imaging Using Clinical Ultrasound Systems*/
Last updated: 5/04/2015 10:00 PM
Photoacoustic (PA) imaging currently requires specialized hardware to capture and process PA signals. Though conventional ultrasound (US) systems can also capture PA signals, such systems beamform the PA signals incorrectly, resulting in distorted PA images. By developing and applying a real-time PA rebeamforming algorithm in an ultrasound platform, we hope to demonstrate a cheaper and more flexible method for PA beamforming.
/ You may want to include a picture or two here./ Here are the US Interfaces (Porta, Ulterius) built using Ultrasonix SDK. We intend to build an image display and set up the PA imaging option into the Ulterius interface by the end of the semester.
Original Ulterius Interface and Updated Interface with Image Display
A paragraph or so here. Give background of the problem. Explicitly state specific aims (numbered list is good) and explain why they are important
Photoacoustic (PA) imaging is a medical imaging modality whose uses include blood vessel visualization, cancer detection, and tracking of surgical tools in the body (e.g. brachytherapy seeds in prostate). Current PA imaging systems require specialized hardware to process PA signals. Even though conventional ultrasound (US) systems can receive PA signals, they beamform the data incorrectly as pulse-echo signals, resulting in distorted PA images. This limitation raises the overall cost of PA imaging and reduces its availability. By incorporating PA imaging into existing clinical US systems, this project hopes to reduce PA imaging costs and increase its usage in clinical settings.
Thus our specific aims are to:
As stated previously, the significance of integrating PA imaging into an US platform is that it significantly reduces the cost/hardware requirements of PA imaging, hopefully making it a more flexible and cost-efficient imaging modality.
The third deliverable has always been the least important deliverable for our system, as the other two algorithms perform the same task as our PA rebeamformer, but are slower or less accurate (they are redundant components for the real-time imaging system). We would like to spend the remaining time working on the other maximum deliverables as well as refining our system for use by other interested researchers.
here describe the technical approach in sufficient detail so someone can understand what you are trying to do
Since the project goal is to develop a real time PA imaging system, my priority is to first build the PA re-beamforming algorithm in C++ and then integrate the algorithm into an existing ultrasound interface ( Ultrasonix SDK) to allow for fast PA imaging.
Available US interfaces from the Ultrasonix SDK include Porta and Ulterius. Ulterius is an US interface that allows for access to the US machine over a network connection. This means we can run and collect results from the US machine remotely using a PC or laptop (which is very convenient for code development and testing).
The current Ulterius interface only displays options for data collection (no image display is available). However our lab does have access to an Ulterius build with image display (using additional openCV, QT modifications) that we will be establishing in our own build.
As a result our current technical approach is to:
describe dependencies and effect on milestones and deliverables if not met:
Our first dependency is the US-to-PA rebeamforming algorithm. Without this dependency, our primary milestone (implementation of rebeamforming algorithm in C++) would not be possible.
Other major dependencies are access to lab and US system (physical system + Ultrasonix SDK), which are needed for us to integrate the PA imaging algorithm into the US workflow.
All major dependencies have been acquired or are available for use (ex. PA imaging system and US system are present in lab).
Current Milestones in Progress:
* here list references and reading material
Zhang, Kai, et. al. “Synthetic Aperture Based Photoacoustic Image Re-beamforming From Ultrasound Post-beamformed RF Data”. Unpublished Manuscript (will be submitted for publication).
Park, Suhyun, et al. “Adaptive beamforming for photoacoustic imaging using linear array transducer.” Ultrasonics Symposium, 2008. IUS 2008. IEEE. IEEE, 2008.
Kuo, Nathanael, et al. “Real-time photoacoustic imaging of prostate brachytherapy seeds using a clinical ultrasound system.” Journal of biomedical optics 17.6 (2012): 0660051-0660057.
Kang, Hyun-Jae, et al. “Software framework of a real-time pre-beamformed RF data acquisition of an ultrasound research scanner.” SPIE Medical Imaging. International Society for Optics and Photonics, 2012.
Harrison, Travis, and Roger J. Zemp. “The applicability of ultrasound dynamic receive beamformers to photoacoustic imaging.” Ultrasonics, Ferroelectrics, and Frequency Control, IEEE Transactions on 58.10 (2011): 2259-2263.
Frazier, Catherine H., and William Brien. “Synthetic aperture techniques with a virtual source element.” Ultrasonics, Ferroelectrics, and Frequency Control, IEEE Transactions on 45.1 (1998): 196-207.
J. Kortbek, J. A. Jensen, K. L. Gammelmark, “Synthetic Aperture Sequential Beamforming,” Proc. in IEEE Int. Ultrasonics Symp., 966-969 (2008).
Wilson, Thaddeus, et al. “The ultrasonix 500RP: A commercial ultrasound research interface.” Ultrasonics, Ferroelectrics, and Frequency Control, IEEE Transactions on 53.10 (2006): 1772-1782.
/*Here give list of other project files (e.g., source code) associated with the project. If these are online give a link to an appropriate external repository or to uploaded media files under this name space.*/
Overall Documentation: overall_documentation_demos_ulterius_interface_.pdf
Live Ulterius Demo: ulterius_release.zip
Simulation PA Demo:pa_simulation_code.zip
Real Data PA Demo: pa_real_data_analysis_code.zip
Current Ultrasonix Ulterius Source Code: sdk607_final_version.zip
Rebeamforming Algorithm Implementation: Rebeamforming C++ Pseudocode:image_13_.jpg
Function parameters: double* pa_rebeamforming(const int ns, const int nl, double channelSpacing, double speedSound, double* rf) Function input description:
This algorithm calculates a new time delay (based on channelSpacing and speedSound parameters) and then applies another round of dynamic beamforming on data. The beamforming effectively sums together elements in the array based on this time delay (where depth is roughly 1/2 that of the original beam-forming).
Output = rebeamformed rf array (of same dimension as input array)
Ultrasonix Ulterius Documentation: Ulterius source code is provided within the Ultrasonix SDK package(sdk607)
To build Ulerius code on Windows:
/Note: Some of these programs (esp. Visual Studios 2010) are difficult to find. Updating the code to use newer dependencies may be a possible max deliverable or something I can refine after completing the main deliverables./
Implementation of Image Panel on Ulterius Interface: (Many thanks to Lei for providing a reference Ulterius build with QT visualization)
In UlteriusDemo.cpp:
Effectively, the workflow for the new Ulterius interface is: Data from system –> calls onNewData function –> calls processFrame function –> display image.
By adding our rebeamforming function into onNewData function (effectively convert RF array data to B mode array data) we can then send the data and proper image type into the processFrame function to display a a properly beamformed image for PA signals. We can also apply envelope detection and log compression to refine the image further.