Ulterius

Overview
Ulterius is a tool that allows users to control the system without having to physically be using the console, or even be in the same room. It will allow full control to all the imaging parameters, the ability to perform system functions such as switch probes, freeze/unfreeze and change imaging modes, as well as capture any data that the research software offers. What makes Ulterius different is the fact that all this is done through the network by creating a connection to the research software. Although applications built using Ulterius can run directly on the ultrasound systems, it is also appropriate to run them on a PC connected to the same network that the system resides. Some advantages of the Ulterius SDK include:
 * Applications can be programmed to do automated tasks, either on the machine or through a network, so the user or researcher does not have to physically be using the Sonix RP
 * Data can be collected in real-time, whereas data collected using the research interface can only be collected after the image is frozen
 * Devices can be synchronized through software interrupts
 * Data processing can be distributed to multiple PC’s

The demo program created from the Ulterius SDK takes advantage of all of the SDK’s functionality which include:
 * Connecting and disconnecting to an ultrasound research system
 * Transducer selection
 * Imaging mode selection
 * Preset selection
 * Freeze / unfreeze ability
 * Parameter retrieval
 * Parameter set / increment / decrement
 * Data acquisition
 * Image injection

Imaging Parameters
All imaging parameters are available in the Ulterius SDK. The functions which are provided for parameter controls include:
 * Retrieval of the imaging parameters that can be modified as well as its current value.
 * Setting a parameter to the specific value.
 * Incrementing/decrementing a parameter by a fixed amount.

This value depends on the parameter type and is fixed in the software. The parameters cannot go over or under the specified range that is provided. The imaging parameters can be altered in the demo program via the parameters dialog. Clicking on any of the parameters in the list will display the chosen parameter's current value, and its attributes such as the ID and units. Parameters may be altered manually using the value field. If unsure of the parameter value to choose, use the increment and decrement buttons instead to avoid going beyond the parameter range.

Data Acquisition
The Ulterius SDK provides the following functions for data acquisition:
 * Retrieval of a frame of data of a specific type from the server.
 * Obtain the data descriptor which holds key information about the data including the width, height, sample size, and region of interest.
 * Retrieval of the frame count of a specific data type when the image is frozen as well as the maximum number of frames that can be stored in the cine buffer.
 * Data compression for sending data through networks with limited bandwidth. Data can be compressed by calling the function setCompressionStatus(int status) which uses the Huffman data compression technique.

Using the demo application, data can be acquired from the ultrasound machine using the acquisition dialog. The type of data available for acquisition is dependent on the imaging mode. When the system is imaging, data can be captured from the cine memory in real-time; the frame tag that is updated shows the current acquired frame. Since not every image is processed in the cine, the frame tag can be used to associate pre-processed data with post-processed images. When the ultrasound imaging is frozen, the display will show the number of frames captured during the session and data can be saved onto the PC.

Image Injection
Image injection onto the server side can be useful for reviewing captured data from a session or for viewing images after it has undergone some image processing techniques. When injection mode is turned on, the ultrasound B-mode image display is stopped on the Sonix RP software and prescan images can be injected onto the main screen using the injectImage function.

Pre scan-converted data can be captured and injected onto the Sonix imaging display using the demo program. To utilize this feature, click on the acquisition button as well as the injection buttons to open the corresponding dialogs. Ensure that ultrasound imaging is not frozen. Start capturing pre-scan B data using the data acquisition dialog. Enable data injection using the injection dialog. To inject an image on the screen, check the inject acquired prescan box.

The data injection feature can be especially useful when imaging in the Dual B mode to compare ultrasound images captured at different times. In Dual B mode, images are injected onto the display that is not currently active.