====== Mountain Plain ====== ^ **Contact**: | [[http://asrl.utias.utoronto.ca/~pomerlef/|Francois Pomerleau]] | ^ | f.pomerleau [at] gmail [dot] com | ^ **Date**: | Sept 1, 2011 | ^ **Place**: | Lake Cadagno, Tessin, Switzerland | ^ **Situation**: | Outdoors | ^ **Environments**: | Unstructured | ^ **Dynamics**: | None | ^ **Scanner path**: | 3D on a manifold, going down a slope while turning | ^**Re-localization**: | 0 | ^ **Number of scan**: | 31 | ^**Avg. points/scan**: | 102 000 | ^**Path bounding box**: | 18 x 6 x 2.7 m | ^**Scene bounding box**: | 36 x 40 x 8 m | This dataset was recorded at 1920 m above the sea level nearby a small lake, Lake Cadagno, which is located in a small concave basin in an alpine plain. Recordings were made while the scanner was moving down a small slope towards the lake. The majority of the outer part of the basin is 3-4 meter higher than the middle section. There is no major vertical structure in the environment and the main elements that can be found on the ground are dry vegetation (around 50 cm height) (see [[.:#Contextual Photographs| Contextual Photographs]]). The motivation for this dataset is to evaluate robustness of registration algorithms against low-constrained environment. The opposite of a low-constrained environment would be an [[:laserregistration:apartment:home|apartment]] where ceilings and walls are large enough to fix the position and orientation easily. It is also a good dataset showing a case where the hypothesis of a planar motion of the scanner does not hold. ===== Citation ===== F. Pomerleau, M. Liu, F. Colas, and R. Siegwart, //Challenging data sets for point cloud registration algorithms//, **International Journal of Robotic Research**, vol. 31, no. 14, pp. 1705–1711, Dec. 2012. [[bibtex:challenging_datasets|bibtex]], [[http://intl-ijr.sagepub.com/content/31/14/1705|Publisher Link]] ==== Environment Topology ==== Manually drew map. The photo poses number correspond to the ones used in [[laserregistration:mountain_plain:home#contextual_photographs | Contextual Photographs]]. {{ :laserregistration:mountain_plain:topo_plain_notes.png?650 |}} ===== Contextual Photographs ===== You can use right and left arrows keys to navigate once you click on a picture. Number in the photo titles correspond the those used in the [[laserregistration:mountain_plain:home&#environment_topology | Environment Topology]] section (click on the photo to see the numbers). {{gallery>:laserregistration:mountain_plain:photo?&lightbox}} ===== Screenshots ===== ==== Point Cloud Views ==== Top view of the lake basin and its vegetation: {{:laserregistration:mountain_plain:top_view_plain.png?650|}} Scan sequence: file=/datasets/data/media/laserregistration/mountain_plain/3D_map.flv&image=/datasets/data/media/laserregistration/mountain_plain/video_preview.png Side view of the lake basin - the green arrows represent the z direction of the scanner at every pose to emphasize the slope: {{:laserregistration:mountain_plain:side_view_plain.png?650|}} ==== Scanner Poses ==== {{:laserregistration:mountain_plain:poseid_distance.png?650|}} Overlap between each scan. The graph can be read as the percentage of points in Scan A that are also in Scan B. The overlap matrix can be downloaded in the section [[.:#point_clouds_in_global_frame| Download Point Clouds in Global Frame]] as a csv file. {{ :laserregistration:mountain_plain:overlap_plain.png?400 |}} ==== Scanner Orientation ==== {{:laserregistration:mountain_plain:orientation.png?650|}} ==== Magnetic North ==== {{:laserregistration:mountain_plain:compass.png?650|}} ==== Gravity ==== {{:laserregistration:mountain_plain:gravity.png?650|}} ==== Number of Detected Satellites ==== {{:laserregistration:mountain_plain:nbsats.png?650|}} ===== Downloads ===== All file contents and headers are explained on the page [[hardware:tiltinglaser#file_formats| Tilting Laser - File Formats]]. ==== Point Clouds in Base Frame ==== Point clouds of this section have their origin at the scanner center. 2D scans have been transformed using the axis encoder to produce consistent 3D point clouds. The supporting data (Gravity, Magnetic North and GPS) have been recorded while the scanner was rotating. If you do not wish to compute the statistics for the supporting data, you can go to the section [[.:#Point Clouds in Global Coordinates|Point Clouds in Global Coordinates]] were single measurements have been selected per pose. The "**ground truth**" poses can also be downloaded in the section [[.:#Point Clouds in Global Coordinates| Point Clouds in Global Coordinates]]. All csv files have a header explaining each column and consistent timestamps. **Download all** local files: [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_local/local_frame.zip | local_frame.zip]] (68 MB) [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_local/local_frame.tar.gz | local_frame.tar.gz]] (68 MB) - or - Select the specific csv file you want [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_local| here]]. **For Matlab users:** * Example of how to load and plot the point clouds: [[http://robotics.ethz.ch/~asl-datasets/matlabScripts/plotCloudCsv.m| plotCloudCsv.m]] ---- ==== Point Clouds in Global Frame ==== Point clouds of this section have been moved to a global reference frame where the pose of the first 3D scan is the origin. The supporting data (Gravity, Magnetic North and GPS) have been post-processed to have only one reading per 3D scan. All csv files have a header explaining each column and consistent timestamps. **Download all** global files: [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_global/global_frame.zip | global_frame.zip]] (55 MB) [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_global/global_frame.tar.gz | global_frame.tar.gz]] (55 MB) - or - Select the specific csv file you want [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_global | here]] or in the list below: * **"Ground truth"** poses for every point clouds: [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_global/pose_scanner_leica.csv | pose_scanner_leica.csv]] * Overlap matrix: [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_global/overlap_plain.csv | overlap_plain.csv]] * Mean of Gravity for every poses: [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_global/xsens_Gravity_mean.csv | xsens_Gravity_mean.csv]] * Mean of Magnetic North for every poses: [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_global/xsens_Compass_mean.csv | xsens_Compass_mean.csv]] * Mean of GPS for every poses: [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/csv_global/xsens_Gps_mean.csv | xsens_Gps_mean.csv]] **For Matlab users:** * Example of how to load and plot the point clouds: [[http://robotics.ethz.ch/~asl-datasets/matlabScripts/plotCloudCsv.m| plotCloudCsv.m]] * Example of how to load and plot the path: [[http://robotics.ethz.ch/~asl-datasets/matlabScripts/plotPathCsv.m| plotPathCsv.m]] ---- ==== Visualization Files ==== File type chosen for visualization is VTK legacy in ASCII format. We suggest to use Paraview to view the files because it can be freely downloaded for Windows, Mac and Ubuntu user and it's supported by Kitware. All screenshots of this page were realized using this software. You can download it here: http://www.paraview.org/ **Download all** local files: [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/vtk/vtk_global.zip | vtk_global.zip]] (56 MB) [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/vtk/vtk_global.tar.gz | vtk_global.tar.gz]] (56 MB) - or - Select the specific vtk file you want [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/vtk| here]] or in the table below: * Sequence of poses with supporting data attached to them: [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/vtk/path.vtk | path.vtk]] (7.8 KB) * Post-processed global map (scanner removed, lower density of points, shadow points removed): [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/vtk/globalMap.vtk | globalMap.vtk]] (25 MB) ---- ==== Raw Data ==== This type of data can be useful if you want to do some preprocessing on the 2D scans directly. We used ''ROS'' (www.ros.org) as middleware so the raw recordings can be downloaded and playback using ''rosbag''. One rosbag has been recored per 3D scan. The ground truth poses are not available in the ''rosbags''. For more information on how to use this format see: www.ros.org/wiki/rosbag Here is the output of ''rosbag info'' for the first scan. All scans have roughly the same number of messages path: 0-Tiltlaser.bag version: 2.0 duration: 17.8s start: Sep 01 2011 16:44:02.78 (1314888242.78) end: Sep 01 2011 16:44:20.59 (1314888260.59) size: 1.4 MB messages: 4112 compression: none [2/2 chunks] types: geometry_msgs/TwistStamped [98d34b0043a2093cf9d9345ab6eef12e] geometry_msgs/Vector3Stamped [7b324c7325e683bf02a9b14b01090ec7] sensor_msgs/Imu [6a62c6daae103f4ff57a132d6f95cec2] sensor_msgs/LaserScan [90c7ef2dc6895d81024acba2ac42f369] sensor_msgs/NavSatFix [2d3a8cd499b9b4a0249fb98fd05cfa48] tf/tfMessage [94810edda583a504dfda3829e70d7eec] xsens_mtig/GPSInfoStatus2 [b43aadd9fb237c1b978f00a668605345] xsens_mtig/Thermistor [1a7c01d7f495652f5c21d90276c66498] topics: /gravity_vector 358 msgs : geometry_msgs/Vector3Stamped /imu_data 358 msgs : sensor_msgs/Imu /info_gps 358 msgs : xsens_mtig/GPSInfoStatus2 /magnetic_vector 358 msgs : geometry_msgs/Vector3Stamped /position_gps 358 msgs : sensor_msgs/NavSatFix /scan 179 msgs : sensor_msgs/LaserScan /temperature 716 msgs : xsens_mtig/Thermistor /tf 711 msgs : tf/tfMessage /velocity 716 msgs : geometry_msgs/TwistStamped **Download all** bags files: [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/rosbags/rosbags.zip | rosbags.zip]] (10.2 MB), [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/rosbags/rosbags.tar.gz | rosbags.tar.gz]] (10.1 MB) - or - Select the specific bag you want [[http://robotics.ethz.ch/~asl-datasets/plain_01-Sep-2011-16_39_18/rosbags/ | here]]. ----