Record & Replay
Overview
SENSR-I supports recording feature that saves raw input streams of the sensors into a file. This file can be used to replay the recorded data at a later time.
Purpose
This is useful for following purpose:
- To check the data and perform parameter tuning in a separate space without physical sensor connections
- To store the data for archiving
- To provide the data as a reference to get technical support from Seoul Robotics
Saved location
The recorded file will be saved in /opt/seoulrobotics/rosbags
folder of each Algo node machine.
For example, if you record the data in the setup of Algo node A and B in Machine 1 and Algo node C in Machine 2, the recorded files will be saved as below:
- Data of Algo node A and B under
/opt/seoulrobotics/rosbags
of Machine 1 - Data of Algo node C under
/opt/seoulrobotics/rosbags
of Machine 2
How to Record
There're three features to record the data:
- Rosbag Recording
- Advanced Recording
- Anomaly Recording
You can find those features at Recording
menu in menu bar, or you can click the Record
icon(this is shortcut to use Rosbag Recording
) on the header.
1. Rosbag Recording
This feature can be supported only with live sensors. Rosbag Recording
is disabled if you use recorded data to run SENSR-I.
Steps to use this is as below:
Click
Record
icon on the header orRecording > Rosbag Recording
on the menu barSet configuration of recording.
File name
: The name will be used for distinguishing the recorded file. The folder with input name will be created under/opt/seoulrobotics/rosbags
folder of each Algo node machine.- filename has the following restrictions:
- Filename must not contain spaces.
- Special characters cannot be used in filename. (except "_")
- Filename must start with an alphabet.
- filename has the following restrictions:
Max Recording Time
: This is an optional field. So if you want limit the maximum recording time, you can set the value by ticking the checkbox. Once SENSR has been recording for this amount of time, it automatically stops the recording and saves it. The recording can be manually stopped at any point before that, but this parameter is intended to limit the recording time in case there is limited space of storages or if the user wants to record the data of a specific amount of time.
Click
Start Recording
button to start recording. The recording window will show information about the recording and percentage of recorded time in comparison with Max Recording Time, if it's set.Press the
Stop Recording button
at any time will stop the recording and save to file. The recording system also keeps track of the available disk space and automatically turns off the recording if there is not enough space remaining.
info
Advanced Recording and Anomaly Recording don't output file format as .bag
. Users can not use recorded data of those two feature in SENSR-I. These features would be used only for customer support, since it saves more information which enables Seoul Robotics to investigate further. Please use them when requested by Seoul Robotics' Support Engineer.
2. Advanced Recording
Advanced Recording is almost the same as Rosbag Recording
. The differences are that it saves the data in a different format and Circular recording
is supported in Advanced Recording
.
- It saves data frame by frame as
.bin
files. - If
Circular recording
is ticked on, it saves data from the frame which is process certain amount of time ago to when the recording is stopped. In other words, it doesn't save all data from the beginning of recording to give us only useful data and to save the storage space.
Step to use this is as below:
Click
Recording > Advanced Recording
on the menu barSet configuration of recording.
Folder name
: The name will be used for distinguishing the recorded file. The folder with input name will be created under/opt/seoulrobotics/rosbags
folder of each Algo node machine.Select Target Algo Node(s)
: Select the Algo node(s) to record.Master Node Record
: Whether to save the exact output of Master node. If it's enabled, it can be used for Master Node Replay.Rosbag Record
: Whether to save with rosbag format.Output Merger Record
: Whether to record how Algo node outputs are merged.
Circular recording
: If this is ticked on, it saves data from the frame which is process certain amount of time ago to when the recording is stopped as described above.Circular Recording time(s)
: The amount of time to save data. If it is 60 seconds and clickStop Recording
at timestamp A, then data will be saved from A - 60 seconds to A. This is only available whenCircular recording
is ticked on.
Transfer Recordings
: If ticked, recording files from remote Algo node will be transferred to the Master node machine.
Click
Start Recording
button to start recording.(Optional) Click
Make a Snapshot
if you want to snapshot for the specific frame.Click
Stop Recording
button when you want to stop recording.
3. Anomaly Recording
Anomaly Recording can be used when you want to record the data from a certain point forward or backward of a specific event (ex. when noise occurs in object recognition, when an event to be observed, such as vehicle entry) occurs. In the case of Rosbag Recording
and Advanced Recording
, users need to start recording in advance and continues to wait for the corresponding event to occur. After that, users need to manually Stop Recording
after checking the occurrence of the event through the GUI. However, the Anomaly Recording
function keeps the frame in the background and when a user discovers an event, presses the Trigger
button to automatically save the data before and after that point.
Steps to use this is as below:
Tick on
Enable Anomaly Data-Collector
inSettings > General > Data Collection > Anomaly Collector
to enable SENSR to save frames in the background. And adjust values ofNum Look-Back Frames
andNum Look-Forward Frames
.Num Look-Back Frames
: The number of frames to save before the trigger. SENSR mostly saves 10 frames per second, so if you set 10, it will save 1 second of data before the trigger.Num Look-Forward Frames
: The number of frames to save after the trigger.
Click
Apply
, then Algo nodes will be restarted and SENSR will keeps the frame in the background.Click
Recording > Anomaly Recording
on the menu bar.Set configuration of recording.
Folder name
: The name will be used for distinguishing the recorded file. The folder with input name will be created under/opt/seoulrobotics/rosbags
folder of each Algo node machine.Select Target Algo Node(s)
: Select the Algo node(s) to record.Master Node Record
: Whether to save the exact output of Master node. If it's enabled, it can be used for Master Node Replay.Rosbag Record
: Whether to save with rosbag format.Output Merger Record
: Whether to record how Algo node outputs are merged.
Num look back frames
: It will be the same value asNum Look-Back Frames
inSettings > General > Data Collection > Anomaly Collector
.Num look forward frames
: It will be the same value asNum Look-Forward Frames
inSettings > General > Data Collection > Anomaly Collector
.
Replaying
Replaying recorded data saved through Rosbag Recording
is not supported as a separate function. When setting Algo node in Project Setup, replay is possible by loading .bag
file.
While replaying rosbags, you can focus on specific part if needed:
In Runtime mode navigate to
Settings > Advanced features > Customize Rosbag Playback
,Click and drag the cursors on the left and right to define which portion of the rosbag to play,
Click on
Apply
.
Note: If you want to reset the playing range, in Settings > Advanced features > Customize Rosbag Playback
, select Reset
.
Master Node Replay
If a rosbag file has been saved using Advanced Recording
or Anomaly Recording
with the Master Node Record
option enabled, you can use Master Node Replay
. This feature allows you to recreate the same output that was present in Live Runtime mode.
How to use
- Navigate
Tool > Master Node Replay
inProject Setup
mode. - Select the rosbag file which is saved using
Advanced Recording
orAnomaly Recording
with theMaster Node Record
option enabled. The file will be located under/opt/seoulrobotics/recording/<recording-name>/master_data
folder of the Master node machine. - Click
Start
to begin the replay. This mode operates similarly to theRuntime
mode, where you can retrieve output data.
Transfering the recorded data
SENSR's recording features save the recorded data in the machine where each Algo node is running. To enable the user to easily transfer the recorded data, SENSR provides Transfer Recordings
option.
But if there's any issue in transferring the recorded data, you can continue it in Settings > Advanced Features > Recording Transfer
by clicking failed transfer item.