This tool is designed to help collect statistics about various streams. For full data capture, you can use recorder or realsense-viewer.
Given a configuration file the tool will configure the first Realsense device recognized to the desired streams and wait for either set number of frames or a timeout.
The tool uses best-effort
to satisfy the maximum of the user-requested profiles. Configuration that are either not supported or ill-formatted will be reported.
The tools is designed as a low-latency profiler with zero frames drops, and therefore utilizes the Librealsense low-level sensor API with callbacks.
For each frame, timestamp, frame-number, time of arrival, stream profile, index and timestamp domain will be recorded into the output log. For the tracking-supported devices (D435i/T260) the motion data is recorded as well
The tool does not record the content of video frames
Flag | Description | Default |
---|---|---|
-c <filename> |
Load stream configuration from | |
-m X |
Stop the test after receiving at least X frames | 100 |
-t X |
Stop the test after X seconds | 10 |
-f <filename> |
Save results into |
For example:
rs-data-collect -c ./data_collect.cfg -f ./log.csv -t 60 -m 1000
will apply streaming configuration from ./data_collect.cfg
to, then stream and collect the data for 60 seconds or 1000 frames (whatever comes first).
The resulted data will be saved into ./log.csv
file.
STREAM1,WIDTH1,HEIGHT1,FPS1,FORMAT1,STREAM_INDEX1
STREAM2,WIDTH2,HEIGHT2,FPS2,FORMAT2,STREAM_INDEX1
...
Practical examples: D415/D435
DEPTH,640,480,30,Z16,0
INFRARED,640,480,30,Y8,1
INFRARED,640,480,30,Y8,2
COLOR,640,480,30,RGB8,0
D435i
#Video streams
DEPTH,640,480,30,Z16,0
INFRARED,640,480,30,Y8,1
INFRARED,640,480,30,Y8,2
COLOR,640,480,30,RGB8,0
#Lines starting with non-alpha character (#@!...) will be skipped
# IMU streams will produce data in m/sec^2 & rad/sec
ACCEL,1,1,63,MOTION_XYZ32F
GYRO,1,1,200,MOTION_XYZ32F