Capturing Data
Good data capture can make or break a calibration. This section of the tutorial will walk you through the steps required to design and record a motion sequence that will give you the best shot at a successful calibration.
Step 1 — Prepare your Sensors for Recording
To start with, you need to make sure that you have a way to record data from your sensors into a format that MetriCal can understand. We highly, highly recommend capturing to an MCAP file if possible, but you can view our full list of supported formats on the data formats page.
On top of the output format, you need to ensure that your data meets the following criteria:
- Your sensors' clocks should be synced as tightly as possible to enable MetriCal to properly correlate observations between them. You can read more about our timing and temporal constraints here.
- For MCAP and ROS1 bag files, timestamps need to be written to the message headers of each topic that requires calibration, not just the bag file timestamps themselves. If message timestamps are not populated, MetriCal will not be able to calibrate.
- Pointcloud messages require certain fields to be populated — namely the intensity (or reflectivity) fields.
- Folder datasets have specific layout and naming requirements as described in these docs.
Step 2 — Plan and Rehearse your Motion Path
It's much easier to plan for where you're going to stand, how long you'll pause at each position, how you'll articulate the sensor / target, etc. before hitting record, rather than recording a subpar dataset and then realizing you need to do it all over again. Good data capture is essential to getting a good calibration result. MetriCal is a powerful piece of software, but it can't do its job without enough data.
We highly recommend watching the following videos before capturing data. Different modalities and calibration problems have different concerns, so be sure to watch the videos that are relevant to your specific use case.
Data Dos and Don'ts
Single Camera
Multiple Camera
Camera-Lidar
Camera-IMU
Step 3 — Reviewing and Processing the Data
Once you've got a dataset captured, it may be worth rewatching it to ensure that it's worth processing through MetriCal. Be on the lookout for things like sensor coverage, whether or not target markers are clearly visible, whether or not multiple sensors at once can see a target, etc.
When you're satisfied with your data capture, move on to the next and final part of the tutorial.