Many years ago I wrote a toolbox for beamforming ultrasound data in Matlab. The original access was given at my old home page at the Technical University of Denmark.
Description
This is a toolbox for Matlab written in C for beamformation of ultrasound data. It is extremely fast and supports all of the standard beamformation methods as well as monostatic, bistatic and polystatic synthetic aperture focusing. The beamformation can be either line, all lines in parallel.
Several types of focusing are supported:(a) fixed focus, (b) several focal zones, (c) dynamic focusing, (d) pixel-based focusing. The delays can be also set manually. The interface follows the widely used program Field II.
It has the ability to import transducer definitions from Field II. The program is used for the fast simulations of ultrasound images. Examples for the use of the program are given in a sub directory.
The program is accompanied by a User’s Guide in PDF.
Download
The source code of the program and some pre-compiled DLLs can be found on BitBucket:
https://bitbucket.org/svetoslav_nikolov/beamformation-toolbox
Compilation
You must have set your Matlab to compile mex files. For Windows I have used last Visual Studio 2008. It has been some time since I have compiled the program in Linux, so it may take a little bit of tweaking, but I do not know it.
I have provided a simple script in the main directory that you can call from within Matlab:
>> mex_beamform
User Guide
References
I have been asked on a number of occasions for the Beamformation Toolbox. One useful thing is the example of how to create synthetic aperture images.
The first time we ever published something using it was in 2000:
J A Jensen, S I Nikolov, Fast simulation of ultrasound images Proc. IEEE Ultrason. Symp., p. 1721-1724, 2000
hi there.. can i run it on windows platform? thank you
Yes you can
Yes,
You can run it on Windows.
Hi Svetoslav,
This is a rookie question and I am sorry for bothering you with it. For some reason I am not able to run the bft_init, as the function “bft” is not defined according to the matlab. I also cant find it on the toolbox. I appreciate if you guide me through.
Thanks in advance
To use the BFT in Matlab, there are two conditions that must be met
To compile the BFT, you can run the script mex_beamform(). If mex_beamform fails, the most probable cause is that you either do not have a C/C++ compiler, or you have not set up the mex() command in Matlab, which searches for a compiler. Consult the Matlab documentation about how to do that. I have compiled the toolbox with gcc and with microsoft’s compiler.
Hi,
can i use the software in 64-bits MATLAB?
Thank you.
I have been using it in 64 bit Matlab. The last time I did that was in version 2011.
In the last 3 years I am using exclusively Python instead of Matlab, and I do not know if the toolbox compiles to the latest versions of Matlab.
Svetoslav