Plus applications user manual  2.9.0.d0fd355
Software library for tracked ultrasound image acquisition, calibration, and processing.
Clarius ultrasound systems (CAST API)

Clarius Device vs. ClariusOEM Device

PLUS supports two different interfaces to Clarius probes. This documentation is for the CAST API based PLUS device. Using this approach, a phone/tablet is connected to the probe, and the PC running PLUS retrieves images indirectly via this phone/tablet.

In contrast, the (relatively newer) Clarius support uses the Clarius OEM API which connects directly with the probe using the Bluetooth Low Energy (BLE) and Wi-Fi interfaces of the PC running PLUS. This device also exposes US controls for the Clarius, and real-time battery / button state streaming accessible as MRML node attributes on the Image node in 3D Slicer. The primary limitation of this interface is that for now it's only available on Windows. If possible, we recommend using this device. Documentation for the OEM API based PLUS device is available at Clarius ultrasound systems (OEM API)

Supported hardware devices

Supported platforms

Connection

  • Requires a connection to the same network as the Clarius
  • Directly connecting to the Clarius's network is possible, however it can easily become congested
  • It is recommended to use a local Wi-Fi network instead:

Device configuration settings

  • attribute.png
    Type = "Clarius"
    required.png
  • attribute.png
    IpAddress
    required.png
  • attribute.png
    TcpPort
    required.png
  • attribute.png
    FrameWidth
    optional.png
    Default = "640"
  • attribute.png
    FrameHeight
    optional.png
    Default = "480"
  • attribute.png
    ImuEnabled
    optional.png
    Default = "FALSE"
  • attribute.png
    ImuOutputFileName
    optional.png
    Default = "ClariusImuData.csv"
  • attribute.png
    WriteImagesToDisk
    optional.png
    Default = ""FALSE""

Example configuration file PlusDeviceSet_Server_ClariusVideoCapture.xml

<PlusConfiguration version="2.1">
<DataCollection StartupDelaySec="1.0" >
<DeviceSet
Name="PlusServer: Clarius ultrasound device"
Description="Broadcasting acquired video through OpenIGTLink"/>
<Device Id="VideoDevice"
Type="Clarius"
IpAddress = "192.168.1.1"
TcpPort = "5828"
FrameWidth = "640"
FrameHeight = "480"
ImuEnabled = "TRUE"
ImuOutputFileName = "ImuOutput.csv"
WriteImagesToDisk = "FALSE">
<DataSources>
<DataSource Type="Video" Id="Video" PortName="B" PortUsImageOrientation="UN"/>
</DataSources>
<OutputChannels>
<OutputChannel Id="VideoStream" VideoDataSourceId="Video" />
</OutputChannels>
</Device>
<Device
Id="CaptureDevice"
Type="VirtualCapture"
BaseFilename= "ClariusRecording.igs.mha"
EnableCapturingOnStart="FALSE"
RequestedFrameRate="25"
EnableCapturing="TRUE" >
<InputChannels>
<InputChannel Id="VideoStream" />
</InputChannels>
</Device>
</DataCollection>
<CoordinateDefinitions>
<Transform From="Image" To="Reference"
Matrix="
0.2 0.0 0.0 0.0
0.0 0.2 0.0 0.0
0.0 0.0 0.2 0.0
0 0 0 1" />
</CoordinateDefinitions>
<PlusOpenIGTLinkServer
MaxNumberOfIgtlMessagesToSend="1"
MaxTimeSpentWithProcessingMs="50"
ListeningPort="18944"
SendValidTransformsOnly="false"
OutputChannelId="VideoStream" >
<DefaultClientInfo>
<MessageTypes>
<Message Type="IMAGE" />
</MessageTypes>
<ImageNames>
<Image Name="Image" EmbeddedTransformToFrame="Reference" />
</ImageNames>
</DefaultClientInfo>
</PlusOpenIGTLinkServer>
</PlusConfiguration>