I wanted to thank Andras Lasso for his help during the development of an open-source ultrasound trainer (OSUT) for medical professionals learning ultrasound. The ultrasound trainer takes tracking data from many off-the-shelf hardware trackers and displays a virtual ultrasound transducer and 3D anatomical model at the exact location of the real ultrasound transducer in relation to the patient. We ran a randomized control trial on the device that showed it improved accuracy and speed of first year medical students learning ultrasound.
Full paper is available here: https://pubmed.ncbi.nlm.nih.gov/36395521/
All source files to replicate the project are here: https://mega.nz/folder/bb4jlZqK#mI52C3hrYozXgshM0mu86A
Very nice work, thanks a lot for sharing!
Did you need to write any custom software for this or you could build the system from existing components by assembly and calibrations/registrations?
How did you register the 3D model to the live patient? Using rigid registration based on anatomical landmarks?
Thank you for all your work in contributing to this amazing community!
No custom software was written. We utilized PLUS toolkit and OpenIGTLink to import the tracking data to 3DSlicer from a NDI TrakStar electromagnetic tracker.
For registration of the 3D model to the patient, we applied a linear transform (Transforms → Create New Linear Transform) to the virtual ultrasound transducer. We would place the real ultrasound transducer over an area of interest on the patient (for example the heart) and adjust the linear transform so that the virtual ultrasound transducer was correctly placed on the 3D model. While this way of registering the 3D model to the live patient wasn’t perfect, it worked well in this initial application.