-
Notifications
You must be signed in to change notification settings - Fork 0
home
UAC (Ultrasound Acquisition Configuration) is a description format for the configuration of the ultrasound acquisition. UAC describes how the acquisition should happen (timings, excitation pattern, number of repetition, triggers, …). UAC contains information necessary to the configuration and execution of the hardware. UAC provides a hardware-agnostic description format for the ultrasound acquisition. Hardware-specific information can be added through a generic key-value mechanism. UAC defines concepts such as Excitation, Wave, TransmitSetup, ReceiveSetup, Event, Sequence, Group, Acquisition, Probe, ProbeElement, TriggerIn, TriggerOut, ...
URX (Ultrasound Raw eXchange) is a description format for data and metadata from an ultrasound acquisition. URX and UAC share many concepts and most of their architecture. URX focuses on recording the acquisition, ie what happened. The need for URX arises from the fact that some parameters of the acquisition execution are not deterministic: number of repetitions within a group, group jumps, external trigger input, change of reveice-gain by the user during acquisition, change of probe position by the user during the acquisition, …. URX allows processing pipeline to process data without hardware-specific knowledge.
UAC and URX are both C++ libraries and file formats (.uac
, .urx
). Wrappers for Python and MATLAB are available. UAC and URX are open-source project released under MIT license.
UAC | URX |
---|---|
UAC User class diagram | URX User class diagram |
See also: UAC C++ class diagram | See also: URX C++ class diagram |
Some classes are present in UAC and/or URX, moreover the parameters in each class can be different in UAC and URX.
UAC | URX | Class Name |
---|---|---|
✓ | ✓ | acquisition |
✓ | ✓ | dataset |
✓ | destination_link | |
✓ | edge | |
✓ | ✓ | element |
✓ | ✓ | element_geometry |
✓ | ✓ | event |
✓ | ✓ | excitation |
✓ | ✓ | group |
✓ | ✓ | group.data_type |
✓ | ✓ | group.sampling_type |
✓ | group_data | |
✓ | hw_config | |
✓ | igroup | |
✓ | ✓ | impulse_response |
✓ | polarity | |
✓ | ✓ | probe |
✓ | ✓ | probe.probe_type |
✓ | ✓ | receive_setup |
✓ | super_group | |
✓ | ✓ | transform |
✓ | ✓ | transmit_setup |
✓ | trigger_in | |
✓ | trigger_out | |
✓ | ✓ | vector3d |
✓ | ✓ | version |
✓ | ✓ | wave |
✓ | ✓ | wave.wave_type |
- Tutorial 1 : UAC/URX installation
- Tutorial 2 : Open/Save an URX file
- Tutorial 3 : RF data
- Tutorial 4 : Probe
- Tutorial 5 : Transmit Setup
- Tutorial 6 : Receive Setup
- Tutorial 7 : Events
- Tutorial 8 : Create an Aquisition
The following paragraph contains more implementation details than the README in the main repository.