rawlog-edit - Command-line robotic datasets (rawlogs) manipulation tool
rawlog-edit [--rename-externals] [--stereo-rectify <SENSOR_LABEL,0.5>]
[--camera-params <SENSOR_LABEL,file.ini>] [--sensors-pose
<file.ini>] [--generate-pcd] [--generate-3d-pointclouds]
[--cut] [--export-2d-scans-txt] [--export-imu-txt]
[--export-gps-txt] [--export-gps-kml] [--keep-label <label[
,label...]>] [--remove-label <label[,label...]>]
[--list-range-bearing] [--remap-timestamps <a;b>]
[--list-timestamps] [--list-images] [--info]
[--externalize] [-q] [-w] [--to-time <T1>] [--from-time
<T0>] [--to-index <N1>] [--from-index <N0>]
[--text-file-output <out.txt>] [--image-size <COLSxROWS>]
[--image-format <jpg,png,pgm,...>] [--out-dir <.>] [-o
<dataset_out.rawlog>] -i <dataset.rawlog> [--] [--version]
[-h]
Quick overview of a dataset file:
rawlog-edit --info -i in.rawlog
Cut the entries [1000,2000] into another rawlog file:
rawlog-edit --cut --from-index 1000 --to-index 2000 \
-i in.rawlog -o out.rawlog
Cut the entries from the beginning up to timestamp 1281619819:
rawlog-edit --cut --to-time 1281619819 \
-i in.rawlog -o out.rawlog
Generate a Google Earth KML file with the GPS data in a dataset:
rawlog-edit --export-gps-kml -i in.rawlog
Remove all observations named "REAR_LASER":
rawlog-edit --remove-label REAR_LASER -i in.rawlog -o out.rawlog
Remove all observations not named "REAR_LASER":
rawlog-edit --keep-label REAR_LASER -i in.rawlog -o out.rawlog
Convert all images to external storage mode:
rawlog-edit --externalize -i in.rawlog -o out.rawlog
rawlog-edit --externalize --image-format jpg -i in.rawlog \
-o out.rawlog
rawlog-edit is a command-line application to inspect and manipulate
robotic dataset files in the "rawlog" standardized format.
These are the supported arguments and operations:
--rename-externals
Op: Renames all the external storage file names within the rawlog (it
doesn't change the external files, which may even not exist).
--stereo-rectify <SENSOR_LABEL,0.5>
Op: creates a new set of external images for all
CObservationStereoImages with the given SENSOR_LABEL, using the camera
parameters stored in the observations (which must be a valid
calibration) and with the given alpha value. Alpha can be -1 for auto,
or otherwise be in the range [0,1] (see OpenCV's docs for
cvStereoRectify).
Requires: -o (or --output)
Optional: --image-format to set image format (default=jpg),
--image-size to resize output images (example: --image-size 640x480)
--camera-params <SENSOR_LABEL,file.ini>
Op: change the camera parameters of all CObservationImage's with the
given SENSOR_LABEL, with new params loaded from the given file,
section '[CAMERA_PARAMS]' for monocular cameras, or
'[CAMERA_PARAMS_LEFT]' and '[CAMERA_PARAMS_RIGHT]' for
stereo.
Requires: -o (or --output)
--sensors-pose <file.ini>
Op: batch change the poses of sensors from a rawlog-grabber-like
configuration file that specifies the pose of sensors by their
sensorLabel names.
Requires: -o (or --output)
--generate-pcd
Op: Generate a PointCloud Library (PCL) PCD file with the point cloud
for each sensor observation that can be converted into this
representation: laser scans, 3D camera images, etc.
Optional: --out-dir to change the output directory (default: "./")
--generate-3d-pointclouds
Op: (re)generate the 3D pointclouds within CObservation3DRangeScan
objects that have range data.
Requires: -o (or --output)
--cut
Op: Cut a part of the input rawlog.
Requires: -o (or --output)
Requires: At least one of --from-index, --from-time, --to-index,
--to-time. Use only one of the --from-* and --to-* at once.
If only a --from-* is given, the rawlog will be saved up to its end.
If only a --to-* is given, the rawlog will be saved from its
beginning.
--export-2d-scans-txt
Op: Export 2D scans to TXT files.
Generates two .txt files for each different sensor label of 2D scan
observations, one with the timestamps and the other with range
data.
The generated .txt files will be saved in the same path than the input
rawlog, with the same filename + each sensorLabel.
--export-imu-txt
Op: Export IMU readings to TXT files.
Generates one .txt file for each different sensor label of an IMU
observation in the dataset. The generated .txt files will be saved in
the same path than the input rawlog, with the same filename + each
sensorLabel.
--export-gps-txt
Op: Export GPS readings to TXT files.
Generates one .txt file for each different sensor label of GPS
observations in the dataset. The generated .txt files will be saved in
the same path than the input rawlog, with the same filename + each
sensorLabel.
--export-gps-kml
Op: Export GPS paths to Google Earth KML files.
Generates one .kml file with different sections for each different
sensor label of GPS observations in the dataset. The generated .kml
files will be saved in the same path than the input rawlog, with the
same filename + each sensorLabel.
--keep-label <label[,label...]>
Op: Remove all observations not matching the given sensor
label(s).Several labels can be provided separated by commas.
Requires: -o (or --output)
--remove-label <label[,label...]>
Op: Remove all observation matching the given sensor label(s).Several
labels can be provided separated by commas.
Requires: -o (or --output)
--list-range-bearing
Op: dump a list of all landmark observations of type
range-bearing.
Optionally the output text file can be changed with
--text-file-output.
--remap-timestamps <a;b>
Op: Change all timestamps t replacing it with the linear map
'a*t+b'.The parameters 'a' and 'b' must be given separated with a
semicolon.
Requires: -o (or --output)
--list-timestamps
Op: generates a list with all the observations' timestamp, sensor
label and C++ class name.
Optionally the output text file can be changed with
--text-file-output.
--list-images
Op: dump a list of all external image files in the dataset.
Optionally the output text file can be changed with
--text-file-output.
--info
Op: parse input file and dump information and statistics.
--externalize
Op: convert to external storage.
Requires: -o (or --output)
Optional: --image-format
-q, --quiet
Terse output
-w, --overwrite
Force overwrite target file without prompting.
--to-time <T1>
End time for --cut, as UNIX timestamp, optionally with fractions of
seconds.
--from-time <T0>
Starting time for --cut, as UNIX timestamp, optionally with fractions
of seconds.
--to-index <N1>
End index for --cut
--from-index <N0>
Starting index for --cut
--text-file-output <out.txt>
Output for a text file
--image-size <COLSxROWS>
Resize output images
--image-format <jpg,png,pgm,...>
External image format
--out-dir <.>
Output directory (used by some commands only)
-o <dataset_out.rawlog>, --output <dataset_out.rawlog>
Output dataset (*.rawlog)
-i <dataset.rawlog>, --input <dataset.rawlog>
(required) Input dataset (required) (*.rawlog)
--, --ignore_rest
Ignores the rest of the labeled arguments following this flag.
--version
Displays version information and exits.
-h, --help
Displays usage information and exits.
--
Please report bugs at https://github.com/MRPT/mrpt/issues
The GUI program RawLogViewer, and the application wiki pages at http://www.mrpt.org/
rawlog-edit is part of the Mobile Robot Programming Toolkit (MRPT), and was originally written by the MAPIR laboratory (University of Malaga). This manual page was written by Jose Luis Blanco <[email protected]>.
This program is free software; you can redistribute it and/or modify it under the terms of the BSD License. On Debian GNU/Linux systems, the complete text of the BSD License can be found in `/usr/share/common-licenses/BSD'.
Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.
Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.
Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.
Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.
The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.
Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.
Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.
Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.