Skip to content

Working with Records

from lqs import LogQS

lqs = LogQS()

Record Auxiliary Data

First, we'll load a log, a topic from that log which is of type sensor_msgs/Image, and a single record from that topic. We'll dump the contents of the record to see what it looks like:

log = lqs.resource.Log.fetch("Demo Log")
topic = log.list_topics(type_name="sensor_msgs/Image")[0]
record = topic.list_records(limit=1)[0]

record.model_dump()
{'locked': False,
 'locked_by': None,
 'locked_at': None,
 'lock_token': None,
 'timestamp': 1655235727034130944,
 'created_at': datetime.datetime(2023, 12, 18, 22, 25, 10, 453947, tzinfo=TzInfo(UTC)),
 'updated_at': None,
 'deleted_at': None,
 'created_by': None,
 'updated_by': None,
 'deleted_by': None,
 'log_id': UUID('f94c2773-6075-44d3-9638-89489e99d0c0'),
 'topic_id': UUID('0f552dad-30b5-4d93-b6a2-67403527fa3a'),
 'ingestion_id': UUID('707e51ae-25a7-42ff-8ed5-9d8ed603b883'),
 'data_offset': 18122,
 'data_length': 1710802,
 'chunk_compression': None,
 'chunk_offset': None,
 'chunk_length': None,
 'source': None,
 'error': None,
 'query_data': None,
 'auxiliary_data': None,
 'raw_data': None,
 'context': None,
 'note': None}

In LogQS, records can be associated with "auxiliary" data which allows us to augment records with arbitrary JSON data stored in an object store. This data is not included on records by default, as loading the data incurs a performance hit per record, but it can be loaded by setting the include_auxiliary_data parameter to True when fetching or listing records.

Note: auxiliary data can be arbitrarily large, so loading a large amount of records with auxiliary data can be problematic (including errors related to payload limits). It's usually best to load records with auxiliary data one at a time, or in small batches.

record = topic.list_records(limit=1, include_auxiliary_data=True)[0]
record.model_dump()
{'locked': False,
 'locked_by': None,
 'locked_at': None,
 'lock_token': None,
 'timestamp': 1655235727034130944,
 'created_at': datetime.datetime(2023, 12, 18, 22, 25, 10, 453947, tzinfo=TzInfo(UTC)),
 'updated_at': None,
 'deleted_at': None,
 'created_by': None,
 'updated_by': None,
 'deleted_by': None,
 'log_id': UUID('f94c2773-6075-44d3-9638-89489e99d0c0'),
 'topic_id': UUID('0f552dad-30b5-4d93-b6a2-67403527fa3a'),
 'ingestion_id': UUID('707e51ae-25a7-42ff-8ed5-9d8ed603b883'),
 'data_offset': 18122,
 'data_length': 1710802,
 'chunk_compression': None,
 'chunk_offset': None,
 'chunk_length': None,
 'source': None,
 'error': None,
 'query_data': None,
 'auxiliary_data': {'image': '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',
  'max_size': 640,
  'quality': 80,
  'format': 'webp'},
 'raw_data': None,
 'context': None,
 'note': None}

You should see that the auxiliary data for this record includes an 'image' field with a base64-encoded image. In LogQS, we automatically process certain types of data, such as images, to generate this auxiliary data on-demand. Other types of data may not have auxiliary data generated automatically, in which case a user will need to manually create it.

The record model includes a helper method to display the image:

record.load_auxiliary_data_image()

png

Note that the image you'd find in the auxiliary data of a record is typically downscaled and compressed, making it unsuitable for high-quality image processing. We refer to these images as "preview" images since they're appropriate for quick reference.

If you need a full-resolution image, you'll need to fetch and deserialize the original data from the log file.

Fetching Record Data

When we want to fetch the original log data for a record, we have to jump through a few hoops to actually get it. The record provides enough information to fetch the rest of the necessary data to fetch the orginal log data from the log file in the object store, but this is quite cumbersome.

To make this process easier, we've provided a utility method for fetching the record bytes given a record. Note that this process can be slow, especially when performed on a single record at a time:

record_bytes = lqs.utils.fetch_record_bytes(record)

record_bytes[:10]
b'`\n\x00\x00\x8e\xe4\xa8b(p'

LogQS comes with deserialization utilities for different log formats. There's different ways of accessing these utilities, but if you're interested in fetching and deserializing the original log data for a record, the following method is the most straightforward:

record_data = lqs.utils.get_deserialized_record_data(record)

# we omit the "data" field since it's big and not very interesting to see
{ k: v for k, v in record_data.items() if k != "data" }
{'header': {'seq': 2656,
  'stamp': {'secs': 1655235726, 'nsecs': 999977000},
  'frame_id': 'crl_rzr/multisense_front/aux_camera_frame'},
 'height': 594,
 'width': 960,
 'encoding': 'bgr8',
 'is_bigendian': 0,
 'step': 2880}

Our deserialization utilities will return a dictionary with the deserialized data in a format closely matching the original data schema. In the case of sensor_msgs/Image topics, you'll find that the dictionary looks similar to the ROS message definition.

If we want to view this image, we'll have to do a little processing to convert the image data to a format that can be displayed in a Jupyter notebook. We'll use the PIL library to do this:

from PIL import Image as ImagePIL

mode = "RGB" # different encodings may use different modes
img = ImagePIL.frombuffer(
    mode,
    (record_data["width"], record_data["height"]),
    bytes(record_data["data"]),
    "raw",
    mode,
    0,
    1,
)

# in this case, we actually have a BGR image, not an RGB, so we need to swap the channels
b, g, r = img.split()
img = ImagePIL.merge("RGB", (r, g, b))

img

png

Of course, we also offer a utility function which can do this for you:

from lqs.common.utils import get_record_image

img = get_record_image(record_data, format="PNG")
img

png

Listing Records

If we need to work with more than one record in this kind of way, there are some approaches that can be useful to improve performance depending on the context. For example, if we're interested in getting a list of records across time, but we don't need every record within a span of time, we can use the frequency parameter to specify how many records we want to fetch per second. This can be useful for getting a representative sample of records across time without having to load every single record.

records = topic.list_records(frequency=0.1) # 0.1 record per second, or 1 record every 10 seconds

print(f"Found {len(records)} records")
Found 7 records

We can then proceed as we did above to fetch the original log data for each record, but the methods used above aren't optimized for working with a batch of records (you'll incur unnecessary overhead for each record).

Instead, you'd want to use the iter_record_data utility method which takes a list of records as input and produces an iterator which yields a tuple of the record and the record's data. This method is optimized for fetching data for multiple records at once as well as re-using lookup data and the deserialization utilities across multiple records:

for idx, (record, record_data) in enumerate(lqs.utils.iter_record_data(records, deserialize_results=True)):
    image = get_record_image(
        record_data,
        format="PNG",
    )
    image.thumbnail((200, 200)) # make them small for the sake of compactness, but the record_data is full-res
    display(image)

png

png

png

png

png

png

png