Taihú Pire, CIFASIS, French Argentine International Center for Information and
Systems Sciences (CONICET-UNR), 27 de Febrero 210 bis, S2000EZP Rosario,
Argentina

# The Rosario Dataset: Multisensor Data for Localization and Mapping in
Agricultural Environments

Taihú Pire11affiliationmark:  Martín Mujica11affiliationmark:  Javier
Civera22affiliationmark:  and Ernesto Kofman11affiliationmark:
11affiliationmark:  CIFASIS, French Argentine International Center for
Information and Systems Sciences (CONICET-UNR), Argentina
22affiliationmark:  I3A, University of Zaragoza, Spain  pire@cifasis-
conicet.gov.ar

###### Abstract

In this paper we present _The Rosario Dataset_ , a collection of sensor data
for autonomous mobile robotics in agricultural scenes. The dataset is
motivated by the lack of realistic sensor readings gathered by a mobile robot
in such environments. It consists of 6 sequences recorded in soybean fields
showing real and challenging cases: highly repetitive scenes, reflection and
burned images caused by direct sunlight and rough terrain among others. The
dataset was conceived in order to provide a benchmark and contribute to the
agricultural SLAM/odometry and sensor fusion research. It contains
synchronized readings of several sensors: wheel odometry, IMU, stereo camera
and a GPS-RTK system. The dataset is publicly available in http://www.cifasis-
conicet.gov.ar/robot/.

###### keywords:

Precision Agriculture, SLAM, Agricultural Robotics

##  1 Introduction

Agriculture is one of the oldest and one of the most relevant industries for
the human race. Its automation, with the goals of rising its productivity and
releasing people from the most arduous tasks, has been a traditional line of
research in the robotics community.

The complete automation of agriculture, however, faces several challenges of
great diversity. Among others, we can cite robot localization and environment
mapping, weed/crop/fruit recognition, grasping and manipulation or navigation.
The challenges might be different for each specific case, e.g., navigation
will be easier in a crop field than through fruit trees. On the other hand,
agricultural environments could be partially adapted to the robotic
requirements if needed. In this regard, it might bear a resemblance to
warehouse automation, and differs from service robots and automated cars, that
face the additional challenge of adapting to human spaces.

Public datasets are an essential tool for the progress of a field. Sturm et
al. (2012); Geiger et al. (2013) are two relevant examples related to visual
SLAM and odometry. In this work, our aim is to contribute with the release of
a public dataset for the tasks of localization and mapping in agricultural
environments. The number of public datasets in the field of agricultural
robotics, although it is increasing, is still insufficient.

Visual localization and mapping in agricultural environments presents a set of
specific challenges; which are the motivation for the recording of this
dataset. The most relevant ones are insufficient or repetitive texture
–particularly challenging for loop closing–, small deviations from the rigid
world assumption due to the wind, poor geometry –in many cases, just the flat
ground plane–, irregular terrains –with the associated jumpy motion–, and a
high variety of lighting conditions due to clouds passing or the direct view
of the sun. We believe that our dataset is a significant contribution to
benchmark existing algorithms for agricultural applications and develop new
ones that are more suited to the particularities of agricultural scenes.

We organize the rest of the paper as follows: in Section 2 we present the most
recent and relevant work related to datasets for agricultural robotics. In
Section 3, we present the robot used to record the dataset along with its
sensors and hardware configuration. In Section 4, we describe the sensors
calibration and the recording data methodology. Section 5 presents some
experimental results, that illustrate the challenges and particularities of
this dataset. In Section 6 we briefly describe some scripts used to record the
dataset and to post-process the recorded data. In Section 7, we summarize the
conclusion and the future work.

##  2 Related Work

The recent work Chebrolu et al. (2017) is the public dataset most related to
ours. It was recorded over 3 months on a sugar beet farm, and aims to advance
research on crop/weed classification, localization and mapping.

In the case of our dataset, we do not address long-term scene dynamics, and
each recorded sequence corresponds to a different scene. As our aim is to
evaluate localization and mapping capabilities, our data contains a wider
array of scenes, with the aim of capturing a wider extent of challenging
situations.

In the rest of this section we give an overview of several other related
datasets. The survey is limited to the most recent and relevant works, with
focus on visual data, and organized in two groups: First those works focusing
in localization and mapping, and second those targeting agricultural
applications.

### Datasets for localization and mapping

There exists a high number of datasets for localization and mapping datasets.
If we classify them by scene type, some of the most relevant are:

  * •

_Indoor scenes:_ Ruiz-Sarmiento et al. (2017), uses ground robots and with
semantic annotations. Burri et al. (2016) is recorded from quadrotors and with
geometric ground truth for the trajectory and the scene. Sturm et al. (2012)
is a classic one recorded with a RGB-D camera.

  * •

_Outdoor urban scenes:_ Some are taken by sensorized cars Pandey et al.
(2011); Blanco-Claraco et al. (2014), others by small mobile robots Smith et
al. (2009); Carlevaris-Bianco et al. (2016) and others by quadrotors Majdik et
al. (2017). The recent Maddern et al. (2017) is focused on life-long mapping
from car vehicles.

  * •

_Outdoor rural scenes:_ Miller et al. (2018) releases visual-inertial
sequences taken from a canoe navigating along a river. Griffith et al. (2017)
is composed of several surveys over several years of a lake from an autonomous
surface vehicle. Leung et al. (2017) presents data of an underground mine.

  * •

_Simulated planetary scenes:_ From all the existing ones, we can name for
example Furgale et al. (2012b); Tong et al. (2013)

### Datasets for agricultural applications

The number of datasets that are specifically related to agricultural robotics
is less than those devoted to odometry and SLAM. However, recently, there is
an emergence of several relevant ones, due to the growing importance of this
application. In the next paragraph we mention several recent ones that have
very different aims, reflecting the wide array of challenges in agricultural
robotics.

Haug and Ostermann (2014) presents a dataset containing real images for
weed/crop classification. Due to the difficulty of scaling the dataset size
with manual annotation, Di Cicco et al. (2017) addresses the same problem
creating a synthetic dataset. Sa et al. (2018) addresses weed/crop
classification from multispectral images recorded by a MAV, using a deep
neural network and releasing the data used. Pezzementi et al. (2017) targets
person detection in off-road and agricultural scenes. Fentanes et al. (2018)
contains soil compaction data, with the aim of advancing on autonomous soil
compaction mapping by robots. Dias et al. (2018) addresses the automated
perception of bloom intensity –the number of flowers in an orchard–, which
should guide operations like pruning and thinning for the desired fruit
features. It releases an annotated dataset with pixelwise flower labels in HR
images. In Alencastre-Miranda et al. (2018) a dataset is collected for
classifying the damage that automated harvesting caused in sugarcane billets.

##  3 The Weed Removing Robot

In this section we describe the robot that we used to record the dataset,
along with its sensors.

### The Robot

The robot consists of a mobile platform with four wheels (see a picture in
Figure 1). It has been designed to work autonomously in large areas; and hence
its power source are four batteries that are charged by photovoltaic cells in
the top of the vehicle.

The robot has been designed to automate the weed removing tasks in large crop
fields. Our aim is that the weeds and the crops are classified using visual
data, and a tool (currently being developed) removes the weed without damaging
the crops. The robot should navigate through the field autonomously and should
keep track of the state of each land piece; hence it needs accurate
localization and mapping capabilities in this environment.

The robot motion is controlled by four brush-less motors (one per wheel) and
their drivers. For the front wheels direction, a stepper motor has been built
with the appropriate reduction and encoder.

### The Sensors

The picture in Figure 1 shows the sensors that are mounted in the robot and
their respective local frames. The main technical details of the sensors are
as follows:

  * •

Stereo Camera. We used the _ZED stereo camera_
111https://www.stereolabs.com/zed/. The camera baseline is
$12\text{\,}\mathrm{cm}$. We recorded synchronized left and right images at a
resolution of $672\times$376\text{\,}\mathrm{px}$$, and at a frame rate of
$15\text{\,}\mathrm{Hz}$.

  * •

Motors encoders We used three Hall effect sensors coupled with each wheel to
measure rotational angle increments. From this data, using a kinematic model
of our robot, we extracted its linear and angular motion.

  * •

GPS-RTK. We used two _GPS-RTK Reach_ 222https://emlid.com/reach/ modules, one
mounted on the robot and another one on the base station. The GPS-RTK
frequency is $5\text{\,}\mathrm{Hz}$. Its accuracy was characterized in our
previous work Pistarelli et al. (2017). The base station consists of a Reach
module connected to a Tallysman TW4721 antenna with IP67 protection. It is
mounted on a $322\times$247\text{\,}\mathrm{mm}$$ ground plane that far
exceeds the $100\times$100\text{\,}\mathrm{mm}$$ suggested by the manufacturer
of the GPS-RTK, giving it superior rejection of bouncing signals from nearby
structures (_multipath signals_). The connection between the two GPS-RTK
modules was made through a WiFi network using two routers. The first one, a
MikroTik Metal G-52SHPacn, was placed in a fixed base station, while the
second one, a MikroTik Groove GA-52HPacn, was placed on the robot. The routers
were chosen due to their high transmission power and receiver sensitivity. The
main difference between them is that the one placed on the robot, has a lower
power consumption.

In order to energize both systems, a module powered by four rechargeable
lithium cells with a total capacity of
$10.400\text{\,}\mathrm{mA}\text{\,}\mathrm{h}$ was chosen to integrate the
_switching_ regulated charge and output system of $5\text{\,}\mathrm{V}$
voltage in the same container.

  * •

Inertial Measurement Unit. The IMU that we used is the LSM6DS0, that is built
in the _TARA stereo-inertial sensor_ 333https://www.e-consystems.com/. The IMU
rate was set to $140\text{\,}\mathrm{Hz}$.

Figure 1: The weed removing robot and its sensors. The right camera coordinate
frame is not shown for clarity.

Although our sensor equipment included the TARA stereo camera, its auto-
exposure setting was not appropriate for our outdoor scenes and produced
burned images. We then had to discard the images, but we kept the IMU data.

The ZED stereo camera, IMU and motors encoders were connected by USB 3.0 to
the robot’s computer. The GPS-RTK information was read through WiFi network.

### The Computer

All the sensor data we recorded was timestamped and stored in an onboard robot
computer. We used a MINI-PC Intel® NUC Kit NUC6CAYH444www.intel.com (Intel
Celeron J3455 CPU, quad-core $2.3\text{\,}\mathrm{GHz}$ and
$8\text{\,}\mathrm{GB}$ DDR3 RAM Memory) with Ubuntu 16.04. The supplied
voltage ($12\text{\,}\mathrm{V}$) came from the robot batteries. In order to
record data as soon as it arrives to the Operative System and avoid disk-
writing delays, we used a Solid State Disk (specifically a
$240\text{\,}\mathrm{GB}$ Western Digital SSD WDS 240G1G0A) as storage unit.

##  4 The Dataset

In this section we detail the calibration of the robot sensors and the format
of the recorded data.

### Calibration

The extrinsic and the intrinsic calibrations of all sensors (for each
sequence) are stored in the files calibration.txt (Table 1 shows the extrinsic
parameters). The calibration file includes the camera and IMU intrinsic
parameters; and the transformations between all the sensors.

Frame ID | Child Frame ID | $x\left[$\mathrm{m}$\right]$ | $y\left[$\mathrm{m}$\right]$ | $z\left[$\mathrm{m}$\right]$ | $q_{x}$ | $q_{y}$ | $q_{z}$ | $q_{w}$
---|---|---|---|---|---|---|---|---
rear_wheel_odometry | base_link | 0 | 0 | 0 | 0 | 0 | 0 | 1
base_link | gps | 1.8 | -0.030 | 1.593 | - | - | - | -
imu | left_camera | -0.031 | -0.077 | 0.026 | 0.058 | 0.019 | 0.703 | 0.708
imu | right_camera | -0.030 | 0.042 | 0.033 | 0.064 | 0.012 | 0.703 | 0.708
Table 1: Rigid transformations between the different coordinate frames
involved in the system. The translation is given by $x$, $y$ and $z$; and the
rotation by the quaternion $q$. The transformations are defined to convert
points from the Child Frame ID to the Frame ID. The rigid transformation
between the base_link and the imu coordinate frames changes for each sequence
and therefore is not shown in the table.

#### Intrinsic parameters

For each camera of the ZED stereo we used a standard pinhole model with
radial-tangential distortion. We calibrated the intrinsics of each camera with
Kalibr Maye et al. (2013).

We used the _Allan variance_ method Allan (1966) for estimating the IMU noise
model. The noise model is given by accelerometer noise density ($\sigma_{g}$),
accelerometer random walk bias ($\sigma_{bg}$), gyroscope noise density
($\sigma_{a}$), gyroscope random walk bias ($\sigma_{ba}$) and the sampling
rate $\left(\frac{1}{\Delta t}\right)$. The specific values for the IMU noise
model are in Table 2.

Parameter | Value | Units
---|---|---
$\dfrac{1}{\Delta t}$ | $142.0$ | $\mathrm{Hz}$
$\sigma_{g}$ | $8.2739$ | $\frac{\mathrm{rad}}{\mathrm{s}}\frac{1}{\sqrt{\mathrm{Hz}}}$
$\sigma_{bg}$ | $8.7367$ | $\frac{\mathrm{m}}{\mathrm{s}^{2}}\frac{1}{\sqrt{\mathrm{Hz}}}$
$\sigma_{a}$ | $0.0017$ | $\frac{\mathrm{rad}}{\mathrm{s}^{2}}\frac{1}{\sqrt{\mathrm{Hz}}}$
$\sigma_{ba}$ | $0.0057$ | $\frac{\mathrm{m}}{\mathrm{s}^{3}}\frac{1}{\sqrt{\mathrm{Hz}}}$
Table 2: IMU calibration parameters.

#### Extrinsic parameters

We chose the local frame of the rear_wheel_odometry as our robot base_link,
and referenced the extrinsics of all the other sensors to such frame. We used
Kalibr Furgale et al. (2012a, 2013) to calibrate the stereo extrinsics (the
relative pose between the left and right cameras) and the relative
transformation between the cameras and the IMU.

We calibrated the rigid transformation between the odometry coordinate frame
(rear_wheel_odometry) and the left camera frame (left_camera) as follows.
First, we estimated the motion of the robot referred to the left camera frame
in small straight segments of our data. We used the stereo SLAM system S-PTAM
Pire et al. (2017) for that. Then, we averaged the normalized estimated
positions to estimate the local motion vector. We calculated the rotation
matrix between such motion vector and the forward axis of the camera
$\left[0,0,1\right]$. We denote this rotation as $\mathbf{R}(\theta)$, being
$\theta$ the angle between the motion and the camera z-axis. The
$\mathbf{R}(\theta)$ rotation, composed with the
$90\text{\,}\mathrm{\SIUnitSymbolDegree}$ rotations required to align the axis
of both frames, form the rotation between the odometry and the left camera
coordinate frames, as detailed in equation 1.

$\mathbf{R}^{\mathrm{r}\mathrm{c}}=\mathbf{R}_{z}({$90\text{\,}\mathrm{\SIUnitSymbolDegree}$})\mathbf{R}_{x}({$90\text{\,}\mathrm{\SIUnitSymbolDegree}$})\mathbf{R}(\theta),$
(1)

where $\mathbf{R}^{\mathrm{r}\mathrm{c}}$ stands for the rotation matrix
between the left camera frame and the odometry frame. The rotation matrices
$\mathbf{R}_{z}({$90\text{\,}\mathrm{\SIUnitSymbolDegree}$})$ and
$\mathbf{R}_{x}({$90\text{\,}\mathrm{\SIUnitSymbolDegree}$})$ are the
$90\text{\,}\mathrm{\SIUnitSymbolDegree}$ rotations around the $z$ and $x$
axis respectively. We estimated the translation part of the rigid
transformation between both sensors by directly measuring them on the robot.

To keep the left and right camera as child frames of the IMU frame, we used
the transformation between the odometry frame and the left camera frame
($\mathbf{T}^{\mathrm{r}\mathrm{c}}$), along with the transformation between
the the left camera and the IMU ($\mathbf{T}^{\mathrm{c}\mathrm{i}}$) to
calculate the relative pose between the odometry frame and the IMU frame
$\mathbf{T}^{\mathrm{r}\mathrm{i}}$, which is the one used in the
transformations tree.

$\mathbf{T}^{\mathrm{r}\mathrm{i}}=\mathbf{T}^{\mathrm{r}\mathrm{c}}\mathbf{T}^{\mathrm{c}\mathrm{i}}.$
(2)

The relative transformation between the rest of the sensors (GPS-RTK and
odometry) was calibrated using AprilTags Olson (2011). We attached the tags to
the sensors and estimated their relative transformations from multiple views
taken by an external camera. In particular, we used the
ar_track_alvar555http://wiki.ros.org/ar_track_alvar ROS package.

### Data synchronization

As we are working with end-user sensors (ZED stereo camera, TARA visual-
inertial sensor and GPS-RTK Reach modules), all data was synchronized by
software at the level of user applications in the Operative System. The data
was straightforwardly recorded on a solid state drive in the robot on-board
computer. We use a precision of milliseconds for measurement timestamps
labeled.

### Data Collection and Summary

The data was collected in two separate days in the agriculture fields used by
the Faculty of Agricultural Science at the National University of Rosario,
Argentina. We recorded $6$ sequences, with a total trajectory length around
$2.3$ kilometers and a total time around $30$ minutes.

Sequence # | Difficulty |  Length ($\mathrm{m}$) |  Duration ($\mathrm{min}$) | Sequence ID (date_time) | Summary
---|---|---|---|---|---
1 | easy | 615.15 | 9.3 | 2017-12-26_12:25:45 |  $3\times 180^{\circ}$ turn
|  |  |  |  | Occasional backwards motion
|  |  |  |  | People (occasional)
|  |  |  |  | Partial occlusions
|  |  |  |  | Easily visible furrows
|  |  |  |  | Green crops
2 | easy | 320.16 | 4.4 | 2017-12-29_11:13:55 |  $1\times 180^{\circ}$ turn
|  |  |  |  | Dried crops
|  |  |  |  | People (occasional)
|  |  |  |  | Hardly visible furrows
3 | medium | 169.45 | 3.3 | 2017-12-29_11:23:00-part1 |  $1\times 180^{\circ}$ turn
|  |  |  |  | Occasional backwards motion
|  |  |  |  | Dried and green crops
|  |  |  |  | Easily visible furrows
4 | medium | 152.32 | 2.7 | 2017-12-29_11:23:00-part2 | No turns
|  |  |  |  | Easily visible furrows
|  |  |  |  | Green crops
5 | difficult | 330.43 | 5.2 | 2017-12-29_11:47:35 |  $1\times 180^{\circ}$ turn
|  |  |  |  | Occasional backwards motion
|  |  |  |  | Varied furrow visibility
|  |  |  |  | People (occasional)
6 | difficult | 709.42 | 9.8 | 2017-12-29_12:00:07 |  $2\times 180^{\circ}$ turn
|  |  |  |  | People (occasional)
|  |  |  |  | Road crossing
Table 3: Sequences description. Figure 2: GPS-RTK trajectories for the $6$
sequences of the dataset.

Figure 2 shows the GPS-RTK trajectories of the $6$ experiments. We commanded
the robot to navigate along the furrows, with $180^{\circ}$ turns at their
ends. Such trajectories are the less damaging for the crops, so we assume
robots similar to ours will follow similar ones in agricultural applications.
Due to the non-holonomic constraints of our platform and distance between
furrows, $180^{\circ}$ turns require maneuvering and short backwards motions.

Table 3 contains more technical details for each of the sequences and a
qualitative grade (from easy to difficult) and summary. The grade is based on
our visual inspection and the results offered by visual SLAM baselines (see
section 5). The data was recorded aiming to show a high variety of conditions
in the fields: From green to dried crops, and from low to high vegetation
density (that makes the furrows more or less visible). Such variations are
reported in the table.

In addition to the particularities of each sequence, the data presents the
challenges associated with agricultural applications mentioned in the
introduction. The feature density is irregular. Visual tracking is difficult,
due to texture similarities and non-rigid motions. The latest are mainly
caused by light wind, and also by people that occasionally enter the field of
view of the cameras. The robot motion is bumpy due to the uneven terrain,
which makes tracking harder. The rolling shutter of the _ZED stereo camera_
adds an extra complexity, but we believe that such cameras are the most
reasonable option for massive robot deployment due to its low cost.

Figure 3 shows several sample images from all the sequences of the dataset.
Notice the mentioned variability in the crop and field conditions, the low
texture and the repetitive patterns.

Figure 3: Sample images of all the sequences of the dataset.

### Data Formats

Figure 4 shows the dataset folder structure. We included the raw data and also
the processed rosbags containing standard ROS messages, in order to facilitate
its use. The data is, specifically, stored as follows.

Figure 4: Dataset structure. The suffix XX references to all the sequences
numbers (01..06).

#### Raw Data

  * •

ZED stereo camera: There is a folder containing both left and right images in
.png format. The image size is $672\times$376\text{\,}\mathrm{px}$$ and the
naming convention is <camera>_<timestamp>.png

  * •

IMU: The file contains the measurements of the angular velocity and linear
acceleration along the three axis as <timestamp> <gyro[x,y,z]> <acc[x,y,z]>

  * •

GPS-RTK: The data follows the NMEA standards, giving the traditional latitude-
longitude information, but also ground speed and satellites status. Each NMEA
sentence has its own timestamp.

  * •

Odometry: We record the information from the wheel motors at a frequency of
$10\text{\,}\mathrm{Hz}$, along with the current timestamp. This information
consists of the linear velocity of each motor and the current angle of the
stepper motor that drives the direction. The measurements are contained in a
file where each line is structured as <timestamp> <vel_left> <vel_right>
<angle> <direction>.

### Rosbags

In addition to the raw data, we provide a rosbag for each sequence, the data
being adapted to fit into ROS standard messages. This allows the use of the
dataset with ROS-based software with minimum overload. The type of messages
included in the .bag files are:

  * •

sensor_msgs/Image.msg. Left and right images from the ZED stereo camera.

  * •

sensor_msgs/CameraInfo.msg. Intrinsic and extrinsic parameters of both
cameras. The right camera pose is referred to the left camera coordinate
system.

  * •

sensor_msgs/Imu.msg. Raw IMU measurements.

  * •

sensor_msgs/NavSatFix.msg. We publish the “GGA” part of the NMEA sentences
provided by the GPS-RTK. The GGA sentence includes positioning and its
estimated accuracy.

  * •

nav_msgs/Odometry.msg. Linear and angular velocity derived from the wheel
encoders and the robot kinematic model. We also publish the integrated pose,
resulting from the integration of the velocities.

  * •

tf/tfMessage.msg. Extrinsic transformations between coordinate systems (see
Table 1). All the extrinsic transformations between sensors are expressed as a
rotation quaternion and a 3D translation vector. Since the rear_wheel_odometry
and the base_link coordinate systems are coincident, we publish the odometry
messages on the base_link system and remove the rear_wheel_odometry frame from
the tf message for clarity.

### Wheel odometry

We generated the robot wheel odometry using the Ackerman model Weinstein and
Moore (2010). The wheelbase of our robot is $1.6\text{\,}\mathrm{m}$, the
steering angle $\delta\in\left[-19,19\right]$ degrees and the wheel diameter
$0.57\text{\,}\mathrm{m}$. Notice that the dataset includes the post-processed
odometry and the raw one, directly read from the sensors, in case other
kinematic model is preferred.

### Ground Truth

We provide a positional GPS-RTK ground truth in order to assess the VO and
SLAM accuracies. Since the IMU does not have a magnetometer, no global
orientation is provided.

As having the ground-truth data in the the robot frame (base_link) is
necessary for comparing the trajectories, we computed the rotation between the
robot trajectory and the GPS-RTK positions in small data subsets (less than
$10\text{\,}\mathrm{m}$) of each sequence, where the robot is approximately
moving in a straight line. We obtained the trajectory performed by the robot
using the visual SLAM system S-PTAM Pire et al. (2015, 2017) which provides a
highly accurate pose in highly textured environments. Observe that S-PTAM has
been run offline in order to guarantee the best performance.

The rotation transformation between both trajectories is computed using the
Horn method provided in Sturm et al. (2012) and applied to the original GPS
data to obtain the ground-truth presented in the dataset.

##  5 Baselines

We run two state-of-the-art baselines for stereo SLAM, ORB-SLAM2 Mur-Artal and
Tardós (2017) and S-PTAM Pire et al. (2017), in order to illustrate the
characteristics and challenges of our dataset. Both systems were run with
their default configuration. Table 4 shows the absolute trajectory error (ATE,
as defined in Sturm et al. (2012)) and, in brackets, the ratio of such error
over the trajectory length. For comparison, we also show the same metrics for
both system in three sequences of KITTI dataset Geiger et al. (2013),
comparable in length to ours.

Sequence | ORB-SLAM2 | S-PTAM
---|---|---
Rosario 01 | 1.41 (0.23%) | 3.85 (0.63%)
Rosario 02 | 2.24 (0.70%) | 1.80 (0.56%)
Rosario 03 | 3.50 (2.06%) | 2.37 (1.40%)
Rosario 04 | 2.21 (1.45%) | 1.49 (0.98%)
Rosario 05 | 2.23 (0.68%) | X
Rosario 06 | 5.19 (0.73%) | X
KITTI 03 | 0.60 (0.11%) | 1.66 (0.30%)
KITTI 05 | 0.80 (0.04%) | 2.85 (0.13%)
KITTI 06 | 0.80 (0.06%) | 2.99 (0.24%)
Table 4: Absolute trajectory error (ATE) [m] (ratio ATE over trajectory
length, in %), for ORB-SLAM2 and S-PTAM in the sequences of the Rosario
dataset and a selection of KITTI (X stands for tracking failure).

Notice how the error ratios for the Rosario dataset are significantly higher
than the ones using the KITTI sequences. The challenges mentioned in the
introduction (insufficient and repetitive texture, non-rigid motion of the
plants, lighting changes and jumpy motion) cause the rapid loss of the feature
tracks. As a consequence, among others, of the small length of the feature
tracks, the drift grows quickly and failures are most likely.

Figure 5 shows a cumulative histogram of the length of features tracked by
S-PTAM in two representative sequences, $06$ from the Rosario dataset and $03$
from KITTI. Notice the higher amount of small-length tracks in the Rosario
sequence, illustrating the challenges in having high-quality and long feature
tracks in agricultural scenes.

Figure 5: Cumulative histogram of the length of S-PTAM feature tracks, for a
representative sequence of the Rosario and KITTI datasets.

Finally, Figure 6 shows a representative frame of our dataset where we can see
the tracked features. Notice, first, in blue, the high number of map points
that cannot be matched in this particular frame. Observe also that the number
of features tracked (matches in red, map point projections in yellow) is
moderate. As mentioned, this small number of tracks and its small duration
causes drift.

Figure 6: Feature tracks example. In yellow, reprojection of map points
tracked in this frame. In red, point correspondences. In blue, map points that
cannot be tracked. Notice the high number of these latest ones.

##  6 Development Tools

In order to access the robot sensors and collect the raw data, we developed
several tools that capture the frames from the ZED stereo camera and the data
from the IMU, the GPS-RTK and the motor encoders. In the camera recording
software we decoupled the image recording and writing processes, to avoid
losing frames. We implemented an application using a producer-consumer multi-
thread architecture. This is, one thread is in charge of reading the images
captured by the camera and pushing them in a FIFO queue. A second thread pulls
the images from the queue, in the order they were stored, and saves them on
the disk.

We developed a set of python scripts to generate the ROS messages from the raw
data and to parse the calibration parameters from one format to another. We
summarize here two of the script most relevant for the processing of the data:

  * •

create_bagfile.py generates a rosbag from the raw data recorded by all of our
sensors. It also consider the intrinsics and extrinsics calibration parameters
to generate the CameraInfo messages for each camera.

  * •

imu_convertion.py processes the IMU data in order to have the acceleration
expressed in $\frac{\mathrm{m}}{\mathrm{s}^{2}}$ and the angular velocity in
$\frac{\mathrm{rad}}{\mathrm{s}}$. This script also removes the offsets
estimated by the Kalibr tool calibration.

We use the _Allan Tools_ software666https://github.com/GAVLab/allan_variance
to obtain the IMU noise model through the _Allan variance_.

All the tools described are provided, along with the dataset. The aim is to
allow and facilitate the manipulation of the raw data to replicate our
results, to obtain new ones and to help in the recording of new datasets with
the sensors we used.

##  7 Conclusions and Future Work

The aim of this work is the public release of a dataset, as a tool for other
researchers to evaluate and improve their algorithms. We target the SLAM and
odometry communities working with visual sensors (the dataset contains
calibrated stereo data) and with fusion of odometric, inertial and visual
information.

The sequences were recorded in large agricultural environments, a non-
traditional scenario for localization and mapping where few datasets exist.
The monotony of the surroundings of a robot and the lack of texture are
challenges for its visual positioning, that are present in our dataset. We
believe that our dataset will contribute to the development of methodologies
and algorithms suitable for such an important area of work as agriculture.

This work is part of the Development of a weed remotion mobile robot project
at CIFASIS (CONICET-UNR). It was also partially supported by the Spanish
government (project DPI2015-67275) and the Aragón regional government (Grupo
DGA-T45_17R/FSE).

## References

  * Alencastre-Miranda et al. (2018) Alencastre-Miranda M, Davidson JR, Johnson RM, Waguespack H and Krebs HI (2018) Robotics for sugarcane cultivation: Analysis of billet quality using computer vision.  _IEEE Robotics and Automation Letters_ 3(4): 3828–3835.
  * Allan (1966) Allan DW (1966) Statistics of atomic frequency standards.  _Proceedings of the IEEE_ 54(2): 221–230.
  * Blanco-Claraco et al. (2014) Blanco-Claraco JL, Moreno-Dueñas FÁ and González-Jiménez J (2014) The málaga urban dataset: High-rate stereo and lidar in a realistic urban scenario.  _The International Journal of Robotics Research_ 33(2): 207–214.
  * Burri et al. (2016) Burri M, Nikolic J, Gohl P, Schneider T, Rehder J, Omari S, Achtelik MW and Siegwart R (2016) The EuRoC micro aerial vehicle datasets.  _The International Journal of Robotics Research_ 35(10): 1157–1163.
  * Carlevaris-Bianco et al. (2016) Carlevaris-Bianco N, Ushani AK and Eustice RM (2016) University of michigan north campus long-term vision and lidar dataset.  _The International Journal of Robotics Research_ 35(9): 1023–1035.
  * Chebrolu et al. (2017) Chebrolu N, Lottes P, Schaefer A, Winterhalter W, Burgard W and Stachniss C (2017) Agricultural robot dataset for plant classification, localization and mapping on sugar beet fields.  _The International Journal of Robotics Research_ 36(10): 1045–1052.
  * Di Cicco et al. (2017) Di Cicco M, Potena C, Grisetti G and Pretto A (2017) Automatic model based dataset generation for fast and accurate crop and weeds detection.  In: _Proc. of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)_.
  * Dias et al. (2018) Dias PA, Tabb A and Medeiros H (2018) Multispecies fruit flower detection using a refined semantic segmentation network.  _IEEE Robotics and Automation Letters_ 3(4): 3003–3010.
  * Fentanes et al. (2018) Fentanes JP, Gould I, Duckett T, Pearson S and Cielniak G (2018) 3d soil compaction mapping through kriging-based exploration with a mobile robot.  _arXiv preprint arXiv:1803.08069_ .
  * Furgale et al. (2012a) Furgale P, Barfoot TD and Sibley G (2012a) Continuous-time batch estimation using temporal basis functions.  In: _Proceedings of the IEEE International Conference on Robotics and Automation (ICRA)_. IEEE, pp. 2088–2095.
  * Furgale et al. (2012b) Furgale P, Carle P, Enright J and Barfoot TD (2012b) The devon island rover navigation dataset.  _The International Journal of Robotics Research_ 31(6): 707–713.
  * Furgale et al. (2013) Furgale P, Rehder J and Siegwart R (2013) Unified temporal and spatial calibration for multi-sensor systems.  In: _Proceedings of the 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)_. IEEE, pp. 1280–1286.
  * Geiger et al. (2013) Geiger A, Lenz P, Stiller C and Urtasun R (2013) Vision meets robotics: The kitti dataset.  _The International Journal of Robotics Research_ 32(11): 1231–1237.
  * Griffith et al. (2017) Griffith S, Chahine G and Pradalier C (2017) Symphony lake dataset.  _The International Journal of Robotics Research_ 36(11): 1151–1158.
  * Haug and Ostermann (2014) Haug S and Ostermann J (2014) A crop/weed field image dataset for the evaluation of computer vision based precision agriculture tasks.  In: _Proceedings of the European Conference on Computer Vision (ECCV)_. Springer, pp. 105–116.
  * Leung et al. (2017) Leung K, Lühr D, Houshiar H, Inostroza F, Borrmann D, Adams M, Nüchter A and Ruiz del Solar J (2017) Chilean underground mine dataset.  _The International Journal of Robotics Research_ 36(1): 16–23.
  * Maddern et al. (2017) Maddern W, Pascoe G, Linegar C and Newman P (2017) 1 year, 1000 km: The oxford RobotCar dataset.  _The International Journal of Robotics Research_ 36(1): 3–15.
  * Majdik et al. (2017) Majdik AL, Till C and Scaramuzza D (2017) The zurich urban micro aerial vehicle dataset.  _The International Journal of Robotics Research_ 36(3): 269–273.
  * Maye et al. (2013) Maye J, Furgale P and Siegwart R (2013) Self-supervised calibration for robotic systems.  In: _Proceedings of the 2013 IEEE Intelligent Vehicles Symposium (IV)_. IEEE, pp. 473–480.
  * Miller et al. (2018) Miller M, Chung SJ and Hutchinson S (2018) The visual–inertial canoe dataset.  _The International Journal of Robotics Research_ 37(1): 13–20.
  * Mur-Artal and Tardós (2017) Mur-Artal R and Tardós JD (2017) Orb-slam2: An open-source slam system for monocular, stereo, and rgb-d cameras.  _IEEE Transactions on Robotics_ 33(5): 1255–1262.
  * Olson (2011) Olson E (2011) AprilTag: A robust and flexible visual fiducial system.  In: _Proceedings of the 2011 IEEE International Conference on Robotics and Automation (ICRA)_. IEEE, pp. 3400–3407.
  * Pandey et al. (2011) Pandey G, McBride JR and Eustice RM (2011) Ford campus vision and lidar data set.  _International Journal of Robotics Research_ 30(13): 1543–1552.
  * Pezzementi et al. (2017) Pezzementi Z, Tabor T, Hu P, Chang JK, Ramanan D, Wellington C, Babu W, Benzun P and Herman H (2017) Comparing apples and oranges: Off-road pedestrian detection on the national robotics engineering center agricultural person-detection dataset.  _Journal of Field Robotics_ .
  * Pire et al. (2017) Pire T, Fischer T, Castro G, De Cristóforis P, Civera J and Jacobo Berlles J (2017) S-PTAM: Stereo Parallel Tracking and Mapping.  _Robotics and Autonomous Systems (RAS)_ 93: 27 – 42.
  * Pire et al. (2015) Pire T, Fischer T, Civera J, De Cristóforis P and Berlles JJ (2015) Stereo parallel tracking and mapping for robot localization.  In: _Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)_. pp. 1373–1378.
  * Pistarelli et al. (2017) Pistarelli M, Pire T and Kofman E (2017) Caracterización de un sistema GPS RTK de bajo costo.  In: _Actas de las IX Jornadas Argentinas de Robótica._ Córdoba, Argentina: Facultad Regional Córdoba de la Universidad Tecnológica Nacional, pp. 11–16.
  * Ruiz-Sarmiento et al. (2017) Ruiz-Sarmiento J, Galindo C and González-Jiménez J (2017) Robot@ home, a robotic dataset for semantic mapping of home environments.  _The International Journal of Robotics Research_ 36(2): 131–141.
  * Sa et al. (2018) Sa I, Chen Z, Popović M, Khanna R, Liebisch F, Nieto J and Siegwart R (2018) weednet: Dense semantic weed classification using multispectral images and mav for smart farming.  _IEEE Robotics and Automation Letters_ 3(1): 588–595.
  * Smith et al. (2009) Smith M, Baldwin I, Churchill W, Paul R and Newman P (2009) The new college vision and laser data set.  _The International Journal of Robotics Research_ 28(5): 595–599.
  * Sturm et al. (2012) Sturm J, Engelhard N, Endres F, Burgard W and Cremers D (2012) A benchmark for the evaluation of RGB-D SLAM systems.  In: _Proceedings of the 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)_. IEEE, pp. 573–580.
  * Tong et al. (2013) Tong CH, Gingras D, Larose K, Barfoot TD and Dupuis É (2013) The canadian planetary emulation terrain 3D mapping dataset.  _The International Journal of Robotics Research_ 32(4): 389–395.
  * Weinstein and Moore (2010) Weinstein AJ and Moore KL (2010) Pose estimation of Ackerman steering vehicles for outdoors autonomous navigation.  In: _Proceedings of the 2010 IEEE International Conference on Industrial Technology_. pp. 579–584.