A212 File format reference#
This page explains the format of A212 data files saved from Exploration Tool using the application
or recorders in the API. A212 records are currently only stored in
HDF5 (.h5).
Tip
We recommend loading and saving records using the built in functions
in the acconeer.exptool.a2 module.
See examples/a2/load_data_with_antenna_masks_and_sub_sampling.py for an example of loading data, and examples/a2/record_data/barebones.py for saving data.
Examples of loading#
Some minimal examples of loading the session config from a data file:
Using acconeer.exptool.a2.open_record() (recommended):
from acconeer.exptool import a2
record = a2.open_record("data.h5")
print(record.session_config)
# SessionConfig(
# sensor_configs=[SensorConfig(subsweeps=[SubsweepConfig(start_point=80, num_points=3, step_length=1, profile=<Profile.PROFILE_3: 3>, prf=<PRF.PRF_20_8_MHZ: 3>, tx_antenna_mask=3, rx_antenna_mask=15
# ...
Using h5py:
import json
import h5py
with h5py.File("data.h5") as f:
print(json.loads(f["session/session_config"][()]))
# {'sensor_configs':
# [{'subsweeps': [{'start_point': 80, 'num_points': 3, 'step_length': 1, 'profile': 'PROFILE_3', 'tx_antenna_mask': 3, 'rx_antenna_mask': 15
# ...
HDF5 structure#
client_infoJSON string representation of
ClientInfo.generationString containing the sensor generation, i.e., “a2”.
lib_versionString containing the Exploration Tool version used to record.
server_infoJSON string representation of
ServerInfo.sessionA soft link to
sessions/session_0. Used for backwards-compatibility.sessions/session_XHDF5 group containing all data related to the recorded session. X is an integer starting from 0.
group_Y/HDF5 configuration group Y. Y is an integer starting from 0.
result/HDF5 group with a dataset for every field in the
Result.frame3D array with dimensions (frame, sweep, distance) of the original complex data from the session.
The data type is a structured type with fields
realandimag, both 16 bit signed integers (int16).Note
Not the same type as
frame.data_saturated1D boolean array with dimension (frame) of the
data_saturatedflags....See fields in
Result.
tick_periodInteger representing the tick period.
session_configJSON string representation of
SessionConfig.
timestampString containing an ISO 8601 formatted timestamp at the time of creating the
H5Recorder.uuidString containing a randomly generated version 4 UUID.