Import 3DUS Stradwin Files

Hi everyone,
I have been collecting freehand 3DUS data using StradWin (http://mi.eng.cam.ac.uk/Main/StradWin) but I would like to perform the segmentation in 3D slicer, however, the file format of the recorded data is .sw (2D image slices) and .sxi (information about the acquisition and the orientation of the slices). I am trying now to figure out how can I merge/convert this information into a single file (nifti or NRRD) but I do not know how to combine properly the information.
Has anyone already performed such a conversion?

Thank you for your help

If you figure out a solution (e.g., how to export reconstructed volume in a standard file format) then it would be nice if you could share it with the community. Thank you!

Unlucky, it is not perfect yet in terms of absolute length. So, before sharing something that I am not 100% that is correct about, I’d rather wait.

Paolo Tecchio

You may also consider using 3D Slicer and SlicerIGT and related extensions. SlicerIGT offers much of the same feature set regarding ultrasound image acquisition and volume reconstruction, but it has much more features, they are free, restriction-free open-source software that you can customize and extend, it is actively maintained (while Stradwin development stopped several years ago), and it supports modern workflows (e.g., AI-based real-time processing and live volume reconstruction).

Thank you for the information, I’ve started considering it. The only doubt is about the frame rate acquisition. Currently with Stradwin and Telemed+OptiTrack I can reach 130fps. Is it possible to use these two systems together as well in IGT slicer ?

Paolo Tecchio

Do you really mean 130 fps? Typical ultrasound imaging frame rate is in the low tens. What probe and imaging settings allow you to have this high frame rate? What is the clinical application?

We typically aim for acquiring images at 15-30fps, as we move the probe on the patient skin slowly and we don’t want to collect and process much of the same images. At this speed we can do acquisition, recording, processing, volume reconstruction, 3D visualization in real-time on an stronger laptop or average desktop computer without issues. Depending on the computer, doing all these operations at higher frame rates may start to become challenging. For use cases that require high frames, we record on server-side (PlusServer has a remote control interface, so the application can start/stop recording), do real-time processing and visualization at the rate that the computer can keep up with, and do full-quality processing from the recorded data offline.

Yes, in less than 10s I can have a full complete scan of a shank for example with a high-quality image. Mostly it depends on the computer (Alienware m51r2), as I looked for specific hardware that was also compatible with stradwin. However, my aim is to do the recording of muscle-tendon unit in controlled conditions (e.g. fixed-end contractions). The segmentation is will be post-process. But thanks for the information! Really helpful! In fact, I would like to try recording via 3D slicer to skip the problem of converting stradwin files in nifti.
However, I read and quickly tried this morning IGT link and Plus server. I had no issue running Plus server and streaming to the 3D slicer the US data (artUs by Telemed). However, when I tried to connect to optitrack it didn’t work, despite it did connect for like a moment (attached the txt with the error). I saw from the web pages there is a version of Plus with optitrack and telemed configuration and to contact you for requesting this version.
Can you please share it with me? That would be great! So also I can compare the performance with stradwin.

(Attachment Plus_Issue.txt is missing)

Yes, in less than 10s I can have a full complete scan of a shank for example with a high-quality image. Mostly it depends on the computer (Alienware m51r2), as I looked for specific hardware that was also compatible with stradwin. However, my aim is to do the recording of muscle-tendon unit in controlled conditions (e.g. fixed-end contractions). The segmentation is will be post-process. But thanks for the information! Really helpful! In fact, I would like to try recording via 3D slicer to skip the problem of converting stradwin files in nifti.
However, I read and quickly tried this morning IGT link and Plus server. I had no problem in streaming US data or connecting to optitrack. However I am not sure how to do the 3Dus. I saw from the web page there is a version of Plus with optitrack and telemed configuration and to contact you for requesting this version.
Can you please share it with me? That would be great! So also I can compare the performance with stradwin

That should be no problem. See this example of reconstructing vertebrae with AI segmentation and volume reconstruction, all working in real-time:

You can record the sequence and post-proces and reconstruct again later, but real-time 3D visualization is useful because it allows you to continuously monitor the quality of the scan.

There is also a simpler example here (no AI processing, just direct volume visualization, which may be suitable for images where the bone surface is well visible without any enhancement):

@Sunderlandkyl Can you help with this?

The regular Plus Telemed package should have support for OptiTrack through Motive 1.10.3. If you would rather have a 64-bit version with Telemed and Motive 2.2.0, then I can get that for you.

Okay thanks to both of you!!
So, to calibrate and stream to 3D slicer, I have to create a configuration xml using the VirtualMixer to stream both Telemed US data and Optitrack data, correct?

Yes, exactly. This config file shows an example of using a VirtualMixer with Ascension and Ultrasonix: Plus applications user manual: Virtual Mixer. You should be able to just replace the devices with the OptiTrack+Telemed.

Let me know if you have any questions.

Okay perfect! So till now everything works fine! The main point now is all the parameters in the file like “PhantomDefinition”, "Segmentation, “Rendering”. I guess they mainly come from fCal. So do I have to perform a calibration using fCal to retrieve them?
And then the data streamed by PLUS to 3Dslicer is already “2D ultrasound slices oriented in the 3D space” or the 3DSlicer is performing the operation?

Sorry, that config file was for fCal, this one is the same for streaming with Plus: PlusLibData/PlusDeviceSet_Server_Ultrasonix_C5-2_Ascension3DG_calibrated.xml at master · PlusToolkit/PlusLibData · GitHub.

To perform the calibration, you can use fCal, or you can use fiducial registration in 3D Slicer. See the “Tracked Ultrasound Calibration” tutorial here: User tutorial | SlicerIGT.

1 Like

If you have time, could you please update the download page? It says that 32-bit telemed+optitrack package is available on request, I guess that is just needed for the 64-bit package now.

Sure, I’ve removed the mention to the 32-bit OptiTrack package.

1 Like