Stream
The Stream module contains functionality to work with real-time sources of data (so-called streams). Examples include image streams (“Image Stream”) such as webcams or ultrasound devices, and sources of real-time tracking data such as optical or electro-magnetic tracking systems or robots (“Tracking Stream”). This module comes with central capabilities to handle such real-time data in the ImFusion Suite and is needed as foundation in all plugins implementing interfaces to real-time data sources.
In general, the Stream module adds the following functionalities to the ImFusion Suite:
Data structures for streams, most notably ImageStream and TrackingStream
ImageStreamCache: a component that allows to visualize image streams directly in 2D and 3D views
Support for loading both cameras (standard operating system video sources) as well as video files as streams
An OpenIGTLink implementation for bi-directional image and tracking stream support
A high-level algorithm to record data received from streams into offline data structures for further processing
Fake image and tracking streams for testing purposes
On the foundation of this plugin, dedicated plugins are available to be purchased for specific hardware:
Imaging Plugins
RGB-D plugin supporting a wide range of RGB-D cameras
Cephasonics plugin: full high- and low-level support for Cephasonics Cicada ultrasound devices
Clarius plugin: Cast (only receiving) and Solum (receiving and commanding) APIs for Clarius ultrasound devices
GE AppAPI plugin: support for receiving images from all GE ultrasound devices with the data streaming option (commercially available currently only recent Vivid scanners)
BK plugin: support for receiving image from BK Medical ultrasound scanners
Epiphan plugin: support for DVI2USB frame grabbers (note: recent AV.io frame grabbers register as standard video source to the OS)
Tracking Plugins
NDI plugin: NDI Aurora (electro-magnetic) and Polaris (optical) as well as Ascension trakSTAR (electro-magnetic) tracking systems
Atracsys plugin: fusionTrack and spryTrack tracking systems (both optical)
OptiTrack plugin: any OptiTrack optical tracking system (beta stage)