! Also see the new version of the package, more features supported : [ Ссылка ]
Top window - scene and TFM(Total Focussing Method) (SAFT all-to-all) Image.
Bottom window - Half-Matrix Capture data, simulated for every frame.
The blue line with blue dots is the refracting interface between two media - it can be of arbitrary shape. The image is updated on mouse move event.
the process:
1. On mouse move: Read interface parameters and reflector location
2. Simulate FMC experiment - generate FMC matrix
3. Apply TFM algorithm to the FMC Data
4. Display
5. Go to 1
The reflector is assumed to be point-like.
Clicking in the TFM image moves the reflector.
Clicking on the blue control points moves the control points of the refracting interface.
The medium in which probe is is assumed to be water (1450m/s)
The medium in which reflector is is assumed to be steel (5600m/s)
Hilbert transform (envelope detection) is applied AFTER the TFM process. This increases contrast by allowing destructive interference of the waves outside of the focal spot.
Shear wave effects are not included in the above example, but can be included in the FMC simulation stage, and do not affect the TFM stage performance.
Performance of the TFM algorithm is independent of the surface shape and is ~15.5e9 to 23e9 Paths/sec/GPU for large images. All parts of the code are written to support 3D imaging - no code change needed, no loss of performance when processing 3D case.
This ground breaking performance is possible trough original algorithms that solve the time of flight of the refracted ray in an extremely efficient way.
The demo was recorded on a single-GPU computer with NVidia GTX480 card.
To calculate the frame rate for Your imaging problem, follow the procedure:
1. Calculate how many pixels there are in your image - eg. 320x240 = 7680
2. Calculate how many paths per pixels you need. For example, for 128-element array, there is 128*128 possible paths = 16384 paths; here path is 1-way path, so for TFM imaging there have to be 2*16384 =32768 paths calculated
3. Total number of paths from pt.1 and pt.2 is 7680*32768 = ~252e6;
4. Divide performance per GPU by the Total Number of Paths : 15.5e9 paths/s / 252e6paths = 61 frames/second (high quality sampling);
5. Frame rate and/or resolution of the image can be increased by using multiple GPUs. Typically one can have up to 8 GPUs in a single PC computer chasis.
The initial purpose of this software was to estimate how does the ultrasonic image resolution (focal spot size) and contrast (sidelobes/grating lobes) change across the imaged volume, taking into account the effect of advanced imaging algorithm (TFM). As visible in this video - they do change quite a lot.
Ещё видео!