Synthetic Aperture Beamformer

Imaging with a DMUA presents unique challenges when compared to a conventional diagnostic probe. The elements of the DMUA are typically large and spaced coarsely along a concave shell. The frequencies used are also in the low MHz range to allow for efficient HIFU penetration. As way of comparison, the diagnostic probe we typically use in our lab has 128, 0.28 mm by 4 mm rectangular elements spaced 0.3 mm along a linear track, with a center frequency of 9 MHz and a bandwidth of 65%. Compare this with one of our DMUAs which has 64, 1.5 mm by 50 mm rectangular elements spaced 2 mm along a spheroidal section, with a center frequency of 1 MHz and a bandwidth of 50%. To overcome these limitations and ensure the highest quality image from the DMUA, we rely on a form of imaging called Synthetic Aperture (SA) imaging.

SA imaging creates a high resolution image by coherently combining many low resolution images. The low resolution images are created by transmitting an acoustic pulse from a single element, while recording the resulting echoes on all elements. These echoes are then backprojected based on a time of flight calculation to create a low resolution image for each transmit and receive pair. A 64 element array will create 64 low resolution images for each transmission. The transmit element can be varied to allow the medium to be insonified from many different angles. A 64 element array allows for 64 unique transmissions, resulting in 4096 separate low resolution images. This image formation process can be described by the formula below.

Synthetic Aperture Equations

In the first equation above, P represents the amplitude value of the pixel in the beamformed image at row i, column j. The variable Alines represents the voltage value of the received echo at time Tf, on receive element rx, from transmit element tx. The variable Dir represents an amplitude scaling factor that incorporates the directivity of the array elements.

The second equation above describes how the time of flight is calculated and provides some insight into the SA imaging process. The variable Dis represents the distance between the current pixel and the transmit and receive elements respectively. A scatterer located at pixel i,j will produce a corresponding echo at time Tf. However, the location represented by pixel i,j is not the only location at which a scatter could produce an echo at time Tf. For a given transmit/receive pair, there are an infinite number of points which could produce an echo at time Tf. These points lie along so-called iso-chronal lines. The roundtrip distance from transmit element to receive element is constant for all points along an iso-chronal line. If the elements are assumed to be point sources, the iso-chronal lines form ellipses with the foci located at each element. The images below show representative iso-chronal lines for a 64 element array. The first graphic shows the iso-chronal lines arising from transmitting on element 16 and receiving on element 50. The second graphic shows the iso-chronal lines from transmitting on element 4 and receiving on element 32.

Synthetic Aperture Isochronal Lines

Iso-Chronal Lines Tx: 16 Rx: 50

Synthetic Aperture Isochronal Lines

Iso-Chronal Lines Tx: 4 Rx: 32

The important thing to note about the graphics above is the difference in the path of the iso-chronal lines between the two images. This difference is what gives SA imaging its resolving power. The coherent summing of the backprojections builds signal at the points where the iso-chronal lines overlap on a real scatterer. At other locations, the individual images either don’t add, or add incoherently resulting in a much lower signal level.

By way of illustration, consider the following SA data set which was collected with a 64 element array arranged in two rows of 32 elements each. The target was a wire phantom which held thin wires spaced 5 mm’s apart, perpendicular to the imaging plane. These wires mimic point scatterers and allow for easy quantification of the overall imaging performance. For this data set, the elements in a single column were connected together to form a 32 element array. The echo data collected simultaneously on all 32 elements from a transmit pulse on element 16 is shown below.

Synthetic Aperture Receive Frame

The data shows multiple temporally separated echoes corresponding to different wires. The two dominant echoes are from wires near the geometric focus of the array. There are smaller amplitude echoes which arrive later and with their phase front at more of an angle. These echoes are from wires which lie away from the geometric focus.

The aline corresponding to element 14 is shown below. It is this aline data which is backprojected to form the low resolution images.

Ultrasound Aline Synthetic Aperture

The following shows the backprojections of the echo received from element 1 while transmitting on element 1, and the echo received from element 32 while transmitting on element 32. These graphics illustrate how the different element pairs backproject the data along different iso-chronal lines.

Ultrasound Aline Backprojected

Ultrasound Aline Backprojected

Each backprojection alone gives no information about where along the iso-chronal line the scatterer lies. It is only by combining multiple backprojections that the scatterers can be localized. Even with just the two backprojections shown above, the location of the two dominant scatterers can be estimated.

The backprojections shown above were synthesized without consideration of the element directivity term shown in the initial SA equation above. This directivity term accounts for non-isotropic radiation pattern of the array elements. The elements in this array radiate acoustic energy preferentially along their prinicipal axis. Points which lie further from this axis, in general, receive a lower amplitude excitation than points closer to the axis. Accounting for this directivity creates a spatial matched filter and can be used, among other things, to suppress grating lobes. The transmit/receive directivity pattern for element 1 is shown below.

Transmit and Receive Directivity from Element 1

The backprojection which takes into account the directivity of the elements is shown below. Notice how the amplitude of the backprojection is no longer uniform along the iso-chronal line.

Aline Back Projection Directivity

Aline Back Projection Directivity

The remaining step in the beamforming process is to coherently sum all the backprojected low resolution images. With this 32 element array, there are 1024 individual images which must be summed together. Below I’ve included snapshots of this process showing the image as more and more low resolution images are added. Each image is log compressed with a dynamic range of 45 dB.

Backprojection Incorporating only 1 Transmit Element

The first image incorporates only the first transmission. You can begin to see some axial differentiation of the wires, but the image is still spread significantly in the lateral direction.

Backprojection Incorporating Transmit Elements 1 through 8
Even with just four transmit elements located on one side of the array, the wires are already fairly distinguishable. The wires off the bottom left in the image are quite clear.

Backprojection Incorporating Transmit Elements 1 through 16


Backprojection Incorporating Transmit Elements 1 through 24

The above image incorporates three quarters of the elements and provides fairly nice localization of the wire targets.

Synthetic Aperture Beamformed Ultrasound Image

The final graphic shows the complete SA image using all transmit elements. There was some damage to the wire phantom which shifted the spacing of the wires from their original 5 mm increments. These shifts can be seen on the image, where not each wire lies exactly 5 mm apart.

It’s worth noting that it is not strictly necessary to use all elements in the SA beamforming process. Using a subset of the transmit elements is referred to as sparse synthetic aperture imaging, and it is a common technique to increase imaging frame rates.

SA imaging is a very elegant imaging technique, but it is not without its limitations. Perhaps the most serious limitation is the huge computational burden imposed on the image formation process. Instead of projecting the echo along a line perpendicular to the face of the transducer, as is the case in B-Mode imaging, we are instead projecting the echo along a series of ellipses, a much more computationally demanding task. In addition, this must be done for each transmit and receive pair, which for an even moderately size array results is processing and storing thousands of backprojected images.

The 512×256 pixel images above were processed with a vectorized Matlab script and required nearly 40 seconds to filter and beamform on a moderately powerful desktop computer. A similar C++ implementation required 4 seconds to filter and beamform these images. This speed is far too slow for a real-time implementation. To bring the processing time down to real-time I moved the beamformer onto a graphical processing unit (GPU).

GPUs allow for massively parallel computing on a small affordable platform. Nvidea has an extension to C called CUDA which allows very easy access to the GPU. I typically use a GTX285 for data processing that requires visualization. The GTX285 has 240 cores with a GB of on board memory. I sometimes use a Tesla C1060 for applications which require more memory. The Tesla is specifically made for scientific computing with 4 GB of on board memory. The one drawback of the Tesla is that there is no video output. This prevents you from rendering to a screen directly from the GPU. For time sensitive applications, this could be a problem.

The SA beamforming process is very suitable to parallelization. The steps required to process one pixel in one low resolution image do not require any data from a previous or subsequent image. To process the data I wrote a CUDA kernel to beamform at one pixel on one transmit and receive pair. I then invoke this kernel over all the pixels in all the transmit and receive pairs, before summing the low resolution images to form the final high quality SA image.

The speed up provided by the GPU was fairly remarkable. I am currently able to filter and beamform a full SA image from a 32 element array in under 16 ms. We typically collect data at frame rates of 1K, so a full SA image takes 32 ms, so we are processing data at 2x real-time. The processing burden increases by the square of the number of array elements, but the parallelization can be increased by adding additional GPUs.

Overall, synthetic aperture imaging allows the DMUA to produce usable images that aid in the safe and accurate delivery of HIFU therapies. The computational demands imposed by the beamforming process were handled by a GPU which allowed for the implementation of a real-time software based ultrasound system.

Leave a Comment

NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>