# JRDB: A Dataset and Benchmark of Egocentric Robot Visual Perception of Humans in Built Environments

Roberto Martín-Martín*, Mihir Patel*, Hamid Rezatofighi*, Abhijeet Shenoi, JunYoung Gwak Eric Frankel, Amir Sadeghian, Silvio Savarese

Abstract—We present JRDB, a novel egocentric dataset collected from our social mobile manipulator JackRabbit. The dataset includes 64 minutes of annotated multimodal sensor data including stereo cylindrical 360° RGB video at 15 fps, 3D point clouds from two 16 planar rays Velodyne LiDARs, line 3D point clouds from two Sick Lidars, audio signal, RGB-D video at 30 fps, 360° spherical image from a fisheye camera and encoder values from the robot's wheels. Our dataset incorporates data from traditionally underrepresented scenes such as indoor environments and pedestrian areas, all from the ego-perspective of the robot, both stationary and navigating. The dataset has been annotated with over 2.4 million bounding boxes spread over 5 individual cameras and 1.8 million associated 3D cuboids around all people in the scenes totaling over 3500 time consistent trajectories. Together with our dataset and the annotations, we launch a benchmark and metrics for 2D and 3D person detection and tracking. With this dataset, which we plan on extending with further types of annotation in the future, we hope to provide a new source of data and a test-bench for research in the areas of egocentric robot vision, autonomous navigation, and all perceptual tasks around social robotics in human environments.

Index Terms—Robot Navigation, Social Robotics, Person Detection, Person Tracking

## 1 INTRODUCTION

Autonomous robots, and other intelligent mobile agents need to operate and navigate in dynamic human environments such as homes, offices, universities and streets. In these uncontrolled and human-populated environments, egocentric perceptual solutions allow robots to perceive, comprehend, and reason about the surroundings, i.e., to extract the information required to achieve their tasks safely from an often multimodal sensor stream. In recent years, the computer vision and robotics communities have proposed several standardized benchmarks to evaluate and compare different perception solutions, many of them from an egocentric visual perspective. The tasks evaluated include, on the one hand, scene understanding problems such as object detection [^1], [^2], semantic and instance segmentation [^1], [^2], [^3], 3D reconstruction [^4], optical flow computation [^5], and stereo estimation [^6], and, on the other hand, problems related to understanding, analyzing and predicting human motion and behaviour such as pedestrian detection and tracking [^7], [^8], [^9], [^10], [^11], human pose estimation [^12] and human activity understanding [^13]. These benchmarks have enabled fair comparison between different perceptual solutions and have supported progress with new solutions in the respective research fields, often serving as training data to develop modern data-driven approaches.

However, existing benchmarks mainly focus on visual perception tasks defined on single RGB images [^1], [^2], [^14] or RGB

![Image](images/c70a535b92ce3e8ba09d572378e1752f9e14378c560e6c1947e79fcdaa531cd8.jpg)

<div style="text-align: center;">Fig. 1: JackRabbit, our social robot and data collection platform, is equipped with four LiDAR sensors, three cameras, motion encoders, an IMU sensor, and a microphone.</div>

video sequences [^3], [^9], [^12], [^13]. With the rise of popularity of 3D sensory data systems based on LiDAR, some benchmarks have begun to provide both 2D and 3D sensor data, and to define new scene understanding tasks on this geometric information.

---

Some examples of these multimodal datasets are KITTI [^7], Oxford's Robotic Car [^15], Apolloscape [^16], nuScenes [^17] and Waymo [^18]. Nonetheless, their targeted domain application is autonomous driving: the data they provide is captured exclusively from sensor suites on top of cars and the data only depicts streets, roads and highways.

In this paper, we target a unique visual domain tailored to the egocentric perceptual tasks related to navigation in human environments, both indoors and outdoors. We hope that this new domain provides the community an opportunity to develop egocentric visual perception frameworks for various types of autonomous navigation agents, not only self-driving cars but also autonomous agents such as social mobile robots $^{1}$. These agents need to perceive and understand the context of both indoor and outdoor scenes from a first-person view perspective in order to interact successfully with humans, predict their behaviour in these environments, and incorporate this behavior in agent's planning and decision processes.

With this motivation, we present the JackRabbit Dataset and Benchmark (JRDB), a novel dataset and several visual benchmarks associated to it. Our dataset contains 64 minutes of sensor data acquired from our mobile robot JackRabbit $^{2}$ comprising 54 sequences indoors and outdoors in a university campus environment. Capturing data from university campus, both indoors and outdoors and in crowded scenes, makes our dataset unique and tailored to perceptual tasks related to navigation in human environments, and different from previously collected datasets used for autonomous driving scenarios (e.g. KITTI [^7]). We hope this dataset will support and drive research in a variety of domains related to social robotics. To this end, we have used multiple visual, depth, and motion sensors to collect this dataset. The sensor data includes stereo RGB 360 $^{\circ}$ cylindrical video streams, continuous 3D point clouds from two LiDAR sensors, audio and GPS sensing. Currently, for this first phase, we provide the following ground truth annotations for our captured data $^{3}$: a) 2D bounding boxes in the images from each physical camera and the resulting cylindrical composed image for human/pedestrian class, b) occlusion attributes for each 2D bounding box, c) 3D oriented bounding boxes in the point clouds from the LiDAR sensors for human/pedestrian class, d) the association between 2D and 3D bounding boxes for corresponding humans/pedestrians, and e) time consistent trajectories (tracks) for all annotated human/pedestrian in both 2D and 3D data. The labels have been annotated manually at high frame-rate providing accurate and sharp 2D and 3D trajectories. Based on this annotations, we provide a unified and standardized benchmark for 2D-3D person detection and tracking. Our 2D-3D person detection and tracking benchmark supports the evaluation of computer vision algorithms for object detection, 3D orientation estimation, and multi-object tracking.

With the novel JRDB dataset we aim at filling a need of the robotics and computer vision communities in terms of large scale multimodal annotated indoor and outdoor egocentric data. We hope the data in JRDB and associated benchmarks will foster research and progress in first-person view perception for autonomous agents in human environments. In the rest of this manuscript, we first describe the sensor setup used to acquire the multimodal signals in our dataset (Sec. 2), the data captured and contained in the JRDB (Sec. 3), and the ground truth annotations included in JRDB (Sec. 4.3). Then, we compare to other existing datasets (Sec. 4.4). We subsequently introduce the benchmarks and metrics for evaluation on JRDB (Sec. 6) and provide our own evaluation of state-of-the-art detection and tracking algorithms on the challenging data of JRDB (Sec. 7), followed by some conclusions.

## 2 SENSOR SETUP: THE JACKRABBOT PLATFORM

To collect our multimodal dataset we used the sensor suite on-board of our mobile-manipulator JackRabbit (see Fig. 1). JackRabbit (JR) is a custom-design robot platform tailored to navigate and interact in human environments. For navigation, JR is equipped with a Segway base with two active wheels and two passive caster wheels that improve stability. For manipulation and physical interaction, the robot is equipped with a six degrees-of-freedom Kinova Mico arm with two-fingered end-effector. The head of the robot is equipped with a LCD display that renders multiple facial expressions that allow JR to engage with humans and communicate intentions. The display and the RGB-D camera mounted on it are actively controlled by two Maxon motors providing two degrees-of-freedom pan-tilt motion.

The JackRabbit platform is equipped with multiple visual, audio, depth and motion sensors, as shown in Fig. 1. In the following we list the most relevant sensor characteristics.

- $2 \times$ Velodyne 16 Puck LITE rotating 3D laser scanner at 10 Hz, with 16 beams,  $0.09^\circ$ angular resolution, 2 cm distance accuracy, collecting approx. 1.3 million points/second, with a field of view of  $360^\circ$ horizontally and  $26.8^\circ$ vertically, and a measuring range between 2 m and 100 m.

- $2 \times$ SICK LMS500-20000 rotating 3D laser scanner at 25 Hz, with a single beam,  $0.167^{\circ}$ angular resolution, 3 cm distance accuracy with a field of view of  $190^{\circ}$ horizontally, and a measuring range between 0.1 m and 80 m.

- Cylindrical stereo sensor suite by Occam composed of two rows of five RGB cameras each. Each individual camera has a resolution of  $752 \times 480$. The images of each row is composed into a cylindrical  $360^{\circ}$ panorama image.

360°fisheye RGB camera by Ricoh (Theta model) with a resolution of $1280 \times 720$ at 15 fps.

RGB-D stereo camera by ZED with a resolution of $672 \times 376$ at 15 fps.

• Digital microphone.

• 6D inertial measurement unit (IMU).

Position encoders on each of the active wheels of the base, the joints and fingers of the arm, and the motors of the pan-tilt unit of the head.

While our dataset contains information from all the aforementioned sensors, we only annotated the point clouds from the two Velodyne 16 LiDARs and the images from one of the rows of the $360^{\circ}$ stereo cylindrical camera, in this first phase of the labelling effort.

JackRabbit is also equipped with an on-board computational unit including two Nvidia GPUs. The onboard computer runs Linux 16.04 and ROS (Robot Operating System) Kinetic that we use to collect multimodal synchronized signals in the form of rosbags.

---

![Image](images/37a779dc7e5e4dc67d3bad4986cbe9c2665543d2189f1f422b3274d1e72b9cd8.jpg)

<div style="text-align: center;">(a) Stationary robot, indoor scene (bytes-cafe-2019-02-07_0)</div>

![Image](images/525415266565bd480d3727e3b38469ac7045fe4eef672f28dba1e8f2edd87374.jpg)

![Image](images/be8fa307112bd6c4cdeac4251ca903cf7219030077b1b620936a29664844354f.jpg)

<div style="text-align: center;">(b) Moving robot, indoor scene (cubberly-auditorium-2019-04-22_0)</div>

![Image](images/32f156be976e7c4c6e4ba11f758edf8131e00322848c23397818fe5ce79c2561.jpg)

<div style="text-align: center;">(c) Stationary robot, outdoor scene (huang-lane-2019-02-12_0)</div>

![Image](images/3be2ce68422f41da7b8e228de786c103a8a4cdf2ccca57e82d94e2b873c9057e.jpg)

<div style="text-align: center;">(d) Moving robot, outdoor scene (memorial-court-2019-03-16_0)</div>

<div style="text-align: center;">Fig. 2: Sample visualization of the dataset (best seen in color). For each subfigure, top: 2D stitched  $360^{\circ}$ panoarama with human-annotated 2D bounding boxes, bottom: 3D Velodyne point clouds with human-annotated 3D oriented bounding boxes. In order to demonstrate the accuracy of camera registration, we visualize 3D point clouds with color extracted from the projected 2D RGB stitched 360 panorama image. Our dataset captures a variety of pedestrian density, indoor/outdoor scenes, and moving/stationary robot. Additional visualizations for all scenes in Fig. A.3 in the Appendix.</div>

## 3 CAPTURED DATA

To generate the JRDB, we collected time synchronized data from all sensors and save it on the on-board computer. The data is recorded from 30 different locations indoors and outdoors resulting in 33 indoor and 21 outdoor sequences in a university campus environment. There are 32 sequences captured from the moving robot, and 22 from a stationary position, with varying and uncontrolled environmental conditions such as illumination and other natural and dynamical elements. For repeating locations, the data is acquired from different points of view, e.g. the foyer and a corridor in the same building, or stationary vs. moving setups, in the same time of the day. The environments in which the data is collected includes university building halls and corridors, laboratories and exits of large classrooms, pedestrian areas, plazas, food malls, sidewalks, pedestrian crossing areas, indoor patios and cafeterias (for a complete overview, see Fig. A.3). We also ensure that the recorded data captures a variation of natural human posture, behavior and social activities in different crowd densities in the indoor and outdoor environments.

The JackRabbit dataset includes 54 sensor sequences captured from the multimodal robot's sensor stream containing:

- video streams at 15 fps from stereo cylindrical $360^{\circ}$ RGB cameras (raw data acquired from two rows of five RGB cameras each),

continuous 3D point clouds from two Velodyne LiDAR signals of 16 planar rays.

• RGB-D video stream at 30 fps.

- $360^{\circ}$ spherical image from a fisheye camera.

- line 3D point clouds from two Sick LiDARs.

• audio signal.

encoder values from the robot's wheels, joint arm and motors of the head.

## 4 ANNOTATION AND LABELS IN JRDB

Our JRDB dataset includes annotations for all pedestrians in 2D stereo images and 3D point clouds with 2D and 3D bounding boxes, respectively. We also label all persons in the scene with a unique ID that is consistent across 2D and 3D annotations both within the same sequence, and along the entire sequence. Such 2D-3D time-consistent annotations allow us to train and evaluate multiple solutions as we present in Sec. 6. In the following, we will discuss the details of the annotation such as the annotation procedure, bounding box parameterization and additional metadata.

---

### 4.1 Annotation Procedure

The annotation is performed by a group of labelers specially instructed for the task. Due to the rapidly changing and irregular motion patterns of pedestrians in indoor environments, we annotate at 7.5 Hz, once for every two received LiDAR point clouds and set of synchronized images from the 2D RGB stereo cylindrical sensor suite. The annotation procedure is as follows: First, 3D bounding boxes around each pedestrian in the point cloud are annotated. Each pedestrian is annotated manually in the combined point cloud resulting from merging the signals from both Velodyne 16 LiDAR sensors. The bounding boxes are annotated with the assumed full pedestrian size, if they are not visible. The boxes have a constant height, width and length per pedestrian that fits from shoulder to shoulder and has enough front and back space to cover the arm swinging during walking. Since the point clouds are sparse, especially at longer distances, the 2D RGB images associated to the scene are shown during annotation to support the labelers. We annotate a pedestrian in all frames if it is visible in at least one frame, e.g. at least 50 points of the point cloud belong to the pedestrian. The annotations are performed per sequence such that the same ID labels are assigned to the same pedestrians over the entire sequence.

After the annotation in 3D, the bounding boxes are projected into the image plane of each of the five cameras of the top row of the stereo cylindrical camera suite (see Appendix A.1 for the details of the transformation). The projection provides a first approximation for the 2D bounding boxes of the pedestrians visible in both the point cloud and the images. The projections are then manually refined to fit accurately the pedestrian size. The 2D bounding boxes are annotated with the assumed full pedestrian size, if they are not visible, and should enclose all the human body, including legs and arms. Additional 2D bounding boxes are added to annotate pedestrians visible in the 2D RGB images but not in the point cloud. After this annotation step we obtain temporally consistent labels across the point cloud as well as the images of the five cameras.

To provide annotations for researchers interested on methods based on cylindrical panorama images, we merge the 2D annotations in the images of the five cameras of the top row of the cylindrical stereo sensor suite into a unified cylindrical image. We use the same mapping applied to compose the cylindrical images (see Appendix A.1) to obtain the coordinates of four corners of each 2D bounding box in the $360^{\circ}$ cylindrical image. Using the unique ID per pedestrian, we compute the tightest enclosing axis-aligned rectangle for the corners of each pedestrian. In few cases, since our cylindrical image spans the entire $360^{\circ}$, the same pedestrian appears in both the right and left borders of the image. Those cases are indicated with the $(u, v)$ coordinates of the top left corner of the box and a width that extends beyond the right edge of the image. The resulting of merging the annotations in the $360^{\circ}$ images can be observed in Fig 2. As a final step, we upsample the annotations from 7.5 Hz to 15 Hz with a linear interpolation.

### 4.2 3D Bounding Box Labels

For each pedestrian visible in the point cloud, we annotate a 3D bounding box alongside with the following metadata:

- label_id: Unique ID of the pedestrian that is consistent across 2D and 3D annotation and within the same sequence

- box: We assume axis aligned 3D bounding boxes. The 3D bounding box is parameterized by the location of the center of the cuboid, $(c_{x}, c_{y}, c_{z})$, the size of the bounding box, $(h, w, l)$, and the rotation angle around the gravity (z) axis, $r_{z}$.

- interpolated: Flag indicating whether the labels in this frame are a direct product of the human annotation (at 7.5 Hz) or generated by the interpolation of human annotated frames (interpolation to 15 Hz).

- num_points: Number of points of the point cloud within the 3D bounding box.

• distance: Distance from the sensor to the pedestrian.

no_eval: Flag that indicates if the annotation does not fulfill all the conditions to be included in the evaluation of a detector/tracker as described in Sec. 6.

- observation_angle: Angle with respect to the front facing direction of the robot. We consider the robot to be pointing in the x direction. Therefore, the observation angle for a bounding box with center at $(c_x, c_y, c_z)$ is given by $\tan^{-1}\left(\frac{-c_y}{c_x}\right)$.

### 4.3 2D Bounding Box Labels

For each pedestrian visible the 2D RGB images from the five cameras of the top row of the stereo cylindrical sensor suite, we annotate a 2D bounding box alongside with the following metadata:

- label_id: Unique ID of the person that is consistent across 2D and 3D annotation within the same sequence, and over time for the entire sequence. The IDs are consistent between the five annotated camera images.

- box: 2D bounding box parameterized by the location of the upper left corner of the bounding box, $(u, v)$, and the size of the 2D bounding box, $(w, h)$.

truncated: Flag indicating whether the object is leaving the upper or lower border of the image boundary.

- occlusion: Level of occlusion of the pedestrian in the image. We consider the following four levels: Fully_visible (no occlusion), Mostly_visible (more than 50% visible), Severely_occluded (more than 50% occluded), Fully_occluded (not visible at all).

- interpolated: lag indicating whether the labels in this frame are a direct product of the human annotation (at 7.5 Hz) or generated by the interpolation of human annotated frames (interpolation to 15 Hz).

no_eval: Flag indicating whether the annotation does not fulfill all the conditions to be included in the benchmark evaluation for detectors/trackers as described in Sec. 6.

- area: Area of the bounding box in pixel $^{2}$.

### 4.4 Data Split and Statistics

In order to provide a benchmark, we divide the 54 captured sequences into train-validation and test splits equally. We select 7 out of 27 sequences (25% of the split) as the suggested validation split. We aim to have the same number of indoor and outdoor sequences captured using stationary or moving robot in both train-validation and test splits. Moreover, we ensure that the train-validation and test splits contain very diverse scenes while having comparable annotation statistics (See Tab. 1 and Fig. 3-6).

All relevant captured data, i.e. point cloud streams, images from the individual cameras of the cylindrical stereo sensor suite as well as $360^{\circ}$ panorama composed images and additional sensor signals for both train and test split, and annotations for the train set

---

![Image](images/0f3ef1e7988117a4ec45dff8bc0c12c591169db7cef509ae6bae8d0a2f561120.jpg)

<div style="text-align: center;">(a) Train-Validation Set</div>

![Image](images/eef6b3b6d96aeada37b2ddef9ed52f5e61e8e6814ba135766ef7edaa73262fc2.jpg)

<div style="text-align: center;">(b) Test Set</div>

<div style="text-align: center;">Fig. 3: Histogram of areas of annotated 2D bounding boxes along with the Kernel Density Estimate. Train-validation and test sets show similar distributions (comparison between train and validation in Appendix, Fig. A.2). Our dataset contains a large number of frames in indoor scenes where people are closer to the robot, resulting in boxes with areas over 10000 pixel $^{2}$. However, most boxes present an area of less than 10000 pixel $^{2}$ as most annotated pedestrians are at 5 m or further.</div>

![Image](images/24bed203d701a7e3ac83794e3a769341b8b156a77797c7bfc2f7f8cd0048df49.jpg)

<div style="text-align: center;">(a) Train-Validation Set</div>

![Image](images/91ab29aa1781ba1a6c7148de89c212ed07e6cd57c391add59ace908eb6eaf255.jpg)

<div style="text-align: center;">(b) Test Set</div>

<div style="text-align: center;">Fig. 4: Histogram of distances of 3D bounding boxes to the sensor location. The distribution remains relatively unchanged between train-validation and test sets (comparison between train and validation in Appendix, Fig. A.2). Our dataset contains a large number of frames of indoor scenes where people tend to be closer to the robot, yielding a distribution with a mode at approximately 5m, which is quite different to existing datasets for autonomous cars. The long-tailed nature of the distribution is due to outdoor scenes, with some annotations as far as 80m from JackRabbit.</div>

are publicly available to download at <https://jrdb.stanford.edu>. We exclude 5.2s at the end of each sequence; this data is not released publicly in preparation for a future forecasting set of benchmarks.

## 5 JRDB: A DATASET WITH UNIQUE FEATURES

In this section, we further highlight the unique and challenging features of our JRDB dataset compared to the relevant existing datasets such as popular pedestrian tracking benchmarks from moving camera or surveillance footage, e.g. MOT17 [^9] and MOT20 [^11], and autonomous driving benchmarks, e.g. KITTI [^20], ApolloScape [^21], BDD100K [^22], NuScenes [^17] and Waymo [^18]. Table 1 provides a summary of the most relevant statistics of the

![Image](images/1ae4f57baea221bd20f2d1e60d31db7d25446358787a4fda84b5400fedea2c54.jpg)

<div style="text-align: center;">(a) Train-Validation Set</div>

![Image](images/29b7d399f4306013f12f7554574edd79bcdcc386b1c52d9612508684dba9f05d.jpg)

<div style="text-align: center;">(b) Test Set</div>

Fig. 5: Kernel Density Estimates (KDEs) of the spatial distribution of people around the robot, across the train-validation and test splits of the dataset (comparison between train and validation in Appendix, Fig. A.2). In close proximity of JackRabbit, people are evenly spread across all directions, but tend to be along the X-axis (front and back of the robot with respect to the base frame) as the distance increases. This is due to the robot being driven along straight walkways when outdoors, and along corridors when indoors. Distances are in meters.

![Image](images/745e8b2460bd295f0a487c7a999564db87a41a068cd6d8e8a4e31b12f53f1c12.jpg)

<div style="text-align: center;">(a) Train-Validation Set</div>

![Image](images/88180075d352283862028ff8cc33e4b957903e0a5002be8598259d0e037d9ddd.jpg)

<div style="text-align: center;">(b) Test Set</div>

<div style="text-align: center;">Fig. 6: Distribution of occlusion levels (or lack thereof) in train-validation and test sets (comparison between train and validation in Appendix, Fig. A.2). JRDB considers four levels of occlusion: fully occluded, severely occluded, mostly occluded and fully visible. Approximately two thirds of the total number of boxes in both the train and test sets are more than 50% visible.</div>

data in our novel dataset. Table 2 provides a comparison between JRDB and all aforementioned datasets, in respect to their most significant statistics. We observe that JRDB is the only multimodal dataset that includes indoor and outdoor data, with the largest number of annotated 2D bounding boxes around pedestrians and second largest number of annotated 3D bounding boxes.

The MOTChallenge datasets [^8], [^9], [^10], [^11], as one of the most popular benchmark datasets for pedestrian detection and tracking, provide high quality manual 2D detection and tracking annotations for all the pedestrians in videos which are mainly captured from different outdoor scenes using a moving or surveillance camera. Compared to the MOTChallenge datasets, JRDB data contains more scene diversity, higher number of sequences, frames and number of 2D bounding box annotations with competitive quality in the annotation tightness around the pedestrians. In addition, JRDB data includes 3D sensor signals, i.e. LiDAR, and 3D bounding box and tracking annotations in 3D.

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Data Split
Data Statistics</td><td colspan="5">Train-Validation Set</td><td colspan="5">Test Set</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Indoor</td><td style='text-align: center; word-wrap: break-word;'>Outdoor</td><td style='text-align: center; word-wrap: break-word;'>Stationary</td><td style='text-align: center; word-wrap: break-word;'>Moving</td><td style='text-align: center; word-wrap: break-word;'>Total</td><td style='text-align: center; word-wrap: break-word;'>Indoor</td><td style='text-align: center; word-wrap: break-word;'>Outdoor</td><td style='text-align: center; word-wrap: break-word;'>Stationary</td><td style='text-align: center; word-wrap: break-word;'>Moving</td><td style='text-align: center; word-wrap: break-word;'>Total</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Number of sequences</td><td style='text-align: center; word-wrap: break-word;'>17</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>11</td><td style='text-align: center; word-wrap: break-word;'>16</td><td style='text-align: center; word-wrap: break-word;'>27</td><td style='text-align: center; word-wrap: break-word;'>16</td><td style='text-align: center; word-wrap: break-word;'>11</td><td style='text-align: center; word-wrap: break-word;'>11</td><td style='text-align: center; word-wrap: break-word;'>16</td><td style='text-align: center; word-wrap: break-word;'>27</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Number of frames</td><td style='text-align: center; word-wrap: break-word;'>19248</td><td style='text-align: center; word-wrap: break-word;'>8699</td><td style='text-align: center; word-wrap: break-word;'>12248</td><td style='text-align: center; word-wrap: break-word;'>15699</td><td style='text-align: center; word-wrap: break-word;'>27947</td><td style='text-align: center; word-wrap: break-word;'>17408</td><td style='text-align: center; word-wrap: break-word;'>12359</td><td style='text-align: center; word-wrap: break-word;'>12217</td><td style='text-align: center; word-wrap: break-word;'>17550</td><td style='text-align: center; word-wrap: break-word;'>29767</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Number of 2D Boxes</td><td style='text-align: center; word-wrap: break-word;'>765K</td><td style='text-align: center; word-wrap: break-word;'>324K</td><td style='text-align: center; word-wrap: break-word;'>419K</td><td style='text-align: center; word-wrap: break-word;'>670K</td><td style='text-align: center; word-wrap: break-word;'>1.09M</td><td style='text-align: center; word-wrap: break-word;'>868K</td><td style='text-align: center; word-wrap: break-word;'>405K</td><td style='text-align: center; word-wrap: break-word;'>587K</td><td style='text-align: center; word-wrap: break-word;'>686K</td><td style='text-align: center; word-wrap: break-word;'>1.27M</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Number of 2D tracks</td><td style='text-align: center; word-wrap: break-word;'>1229</td><td style='text-align: center; word-wrap: break-word;'>564</td><td style='text-align: center; word-wrap: break-word;'>622</td><td style='text-align: center; word-wrap: break-word;'>1171</td><td style='text-align: center; word-wrap: break-word;'>1793</td><td style='text-align: center; word-wrap: break-word;'>1201</td><td style='text-align: center; word-wrap: break-word;'>617</td><td style='text-align: center; word-wrap: break-word;'>785</td><td style='text-align: center; word-wrap: break-word;'>1033</td><td style='text-align: center; word-wrap: break-word;'>1818</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Avg. track length in frames (2D)</td><td style='text-align: center; word-wrap: break-word;'>475.7</td><td style='text-align: center; word-wrap: break-word;'>457.8</td><td style='text-align: center; word-wrap: break-word;'>506.3</td><td style='text-align: center; word-wrap: break-word;'>450.9</td><td style='text-align: center; word-wrap: break-word;'>470.0</td><td style='text-align: center; word-wrap: break-word;'>567.9</td><td style='text-align: center; word-wrap: break-word;'>534.3</td><td style='text-align: center; word-wrap: break-word;'>600.1</td><td style='text-align: center; word-wrap: break-word;'>523.3</td><td style='text-align: center; word-wrap: break-word;'>556.5</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Number of 3D Boxes</td><td style='text-align: center; word-wrap: break-word;'>578K</td><td style='text-align: center; word-wrap: break-word;'>254K</td><td style='text-align: center; word-wrap: break-word;'>312K</td><td style='text-align: center; word-wrap: break-word;'>520K</td><td style='text-align: center; word-wrap: break-word;'>832K</td><td style='text-align: center; word-wrap: break-word;'>671K</td><td style='text-align: center; word-wrap: break-word;'>324K</td><td style='text-align: center; word-wrap: break-word;'>466K</td><td style='text-align: center; word-wrap: break-word;'>529K</td><td style='text-align: center; word-wrap: break-word;'>995K</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Number of 3D tracks</td><td style='text-align: center; word-wrap: break-word;'>1220</td><td style='text-align: center; word-wrap: break-word;'>554</td><td style='text-align: center; word-wrap: break-word;'>612</td><td style='text-align: center; word-wrap: break-word;'>1162</td><td style='text-align: center; word-wrap: break-word;'>1774</td><td style='text-align: center; word-wrap: break-word;'>1186</td><td style='text-align: center; word-wrap: break-word;'>611</td><td style='text-align: center; word-wrap: break-word;'>780</td><td style='text-align: center; word-wrap: break-word;'>1017</td><td style='text-align: center; word-wrap: break-word;'>1797</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Avg. track length in frames (3D)</td><td style='text-align: center; word-wrap: break-word;'>473.7</td><td style='text-align: center; word-wrap: break-word;'>459.3</td><td style='text-align: center; word-wrap: break-word;'>509.8</td><td style='text-align: center; word-wrap: break-word;'>447.8</td><td style='text-align: center; word-wrap: break-word;'>469.2</td><td style='text-align: center; word-wrap: break-word;'>566.1</td><td style='text-align: center; word-wrap: break-word;'>529.9</td><td style='text-align: center; word-wrap: break-word;'>597.7</td><td style='text-align: center; word-wrap: break-word;'>520.1</td><td style='text-align: center; word-wrap: break-word;'>553.8</td></tr></table>

<div style="text-align: center;">TABLE 1: Statistical analysis of the data in JRDB. 2D statistics aggregate the five individual cameras used to construct the  $360^{\circ}$ cylindrical RGB images.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Name (year)</td><td style='text-align: center; word-wrap: break-word;'># Sequences</td><td style='text-align: center; word-wrap: break-word;'>Indoor/Outdoor</td><td style='text-align: center; word-wrap: break-word;'># Frames</td><td style='text-align: center; word-wrap: break-word;'># 2D BBx</td><td style='text-align: center; word-wrap: break-word;'># 3D BBx</td><td style='text-align: center; word-wrap: break-word;'># 2D Tracks</td><td style='text-align: center; word-wrap: break-word;'># 3D Tracks</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MOT17 (2017)</td><td style='text-align: center; word-wrap: break-word;'>14</td><td style='text-align: center; word-wrap: break-word;'>Outdoor only</td><td style='text-align: center; word-wrap: break-word;'>34K</td><td style='text-align: center; word-wrap: break-word;'>290K</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>1.3K</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MOT20 (2020)</td><td style='text-align: center; word-wrap: break-word;'>8</td><td style='text-align: center; word-wrap: break-word;'>Indoor &amp; Outdoor</td><td style='text-align: center; word-wrap: break-word;'>13K</td><td style='text-align: center; word-wrap: break-word;'>1.6M</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>3.6K</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>KITTI (2013)</td><td style='text-align: center; word-wrap: break-word;'>22</td><td style='text-align: center; word-wrap: break-word;'>Outdoor only</td><td style='text-align: center; word-wrap: break-word;'>15K</td><td style='text-align: center; word-wrap: break-word;'>6K</td><td style='text-align: center; word-wrap: break-word;'>6K</td><td style='text-align: center; word-wrap: break-word;'>900</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>ApolloScape (2018)</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>Outdoor only</td><td style='text-align: center; word-wrap: break-word;'>93K</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>16.2K</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>646</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>BDD100K (2018)</td><td style='text-align: center; word-wrap: break-word;'>1600</td><td style='text-align: center; word-wrap: break-word;'>Outdoor only</td><td style='text-align: center; word-wrap: break-word;'>318K</td><td style='text-align: center; word-wrap: break-word;'>440K</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>24K</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>NuScenes (2019)</td><td style='text-align: center; word-wrap: break-word;'>1000</td><td style='text-align: center; word-wrap: break-word;'>Outdoor only</td><td style='text-align: center; word-wrap: break-word;'>1.4M</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>232K</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>11.4K</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Waymo (2019)</td><td style='text-align: center; word-wrap: break-word;'>1150</td><td style='text-align: center; word-wrap: break-word;'>Outdoor only</td><td style='text-align: center; word-wrap: break-word;'>600K</td><td style='text-align: center; word-wrap: break-word;'>2.1M</td><td style='text-align: center; word-wrap: break-word;'>2.8M</td><td style='text-align: center; word-wrap: break-word;'>45K</td><td style='text-align: center; word-wrap: break-word;'>23K</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>JRDB (2020)</td><td style='text-align: center; word-wrap: break-word;'>54</td><td style='text-align: center; word-wrap: break-word;'>Indoor &amp; Outdoor</td><td style='text-align: center; word-wrap: break-word;'>28K</td><td style='text-align: center; word-wrap: break-word;'>2.4M</td><td style='text-align: center; word-wrap: break-word;'>1.8M</td><td style='text-align: center; word-wrap: break-word;'>3.5K</td><td style='text-align: center; word-wrap: break-word;'>3.5K</td></tr></table>

<div style="text-align: center;">TABLE 2: Comparing statistics between JRDB and similar existing datasets. Reported numbers are for annotations of pedestrians/humans in the tracking portion of these datasets. # = Number, K = Thousand, M = Million, and BBx = Bounding Box.</div>

![Image](images/39263afc1b547497899b24103461ec58d14f86deddd907ec8a267b94a9f5b42c.jpg)

![Image](images/b77e4d5d39206d94a2e667786f4c77a207edefa0584d68a352f54fefe92343d6.jpg)

![Image](images/e2b7ff808a413961721995dcf5bd6f5727a9c3b193438f331a1b077312131b3d.jpg)

<div style="text-align: center;">(a) JRDB</div>

![Image](images/0a38281124d5055ab3f21b988c840439977694537d171a31f0f5e154e3aa6d4d.jpg)

![Image](images/d4e8015f9d652ce932f52343ea4cf294120c16993cff63651a1f6ec57c26a3b6.jpg)

<div style="text-align: center;">(b) MOT17 [^9]</div>

![Image](images/83d023f8adbdc13999f96f1eaa73fc3ef2208fba6ad2307d46a708844c90b230.jpg)

![Image](images/d565139396650166bc9142796a5ad5a8868f41e28d9d298c48da6f21e240be6b.jpg)

<div style="text-align: center;">(c) MOT20 [^11]</div>

![Image](images/dd19f9f0595bf0cbc56fcd266b6077c693c0bf31635de2b6e5497a9146ebcef8.jpg)

![Image](images/b72b665c7bfee388a1c7470b5daf5d6223057b77992adcc030bd618aacf3523c.jpg)

<div style="text-align: center;">(d) KITTI [^20]</div>

![Image](images/f476ceb9e4dd38af66ce66de3555b59bacea457a05fa120a21cd55b7cb5944c4.jpg)

<div style="text-align: center;">(e) Waymo [^18]</div>

<div style="text-align: center;">Fig. 1: Comparison between JRDB and similar existing datasets and benchmarks (MOT17, MOT20, KITTI, Waymo). Top row: 2D bounding box area divided by image area in training dataset. JRDB contains images where the pedestrians occupy a larger portion due to its closer proximity to people, while keeping a greater variance in sizes than other datasets. Bottom row: Amount of continuous time tracks are fully-occluded in training datasets. JRDB has longer and more diverse lengths in occluded track periods indicating more complex occlusion patterns caused by the robot's point of view and the higher density of the crowd. Note that long tails past end of graph are not shown.</div>

providing an opportunity to study and develop methods to perceive human motion and behaviour in 3D Euclidean coordinates, a more natural space.

Compared to the recent autonomous driving datasets, JRDB data may not contain as many number of sequences, frames and tracks. However, the number of annotated 2D and 3D bounding boxes is in par or even higher than those in these datasets (see Tab. 2). This confirms that JRDB contains longer pedestrian trajectories in each sequence and has been annotated with considerably higher temporal resolution, 7.5 Hz, and interpolated to the original sensor frequency of 15 Hz, and thus, 50% of the sensor data has been annotated with ground truth 2D and 3D bounding boxes. This high frame rate annotation is essential for the perception and analysis of the fine-grain and intricate human motion, specially in indoor scenes: while human trajectories are usually more linear and regular in outdoor street environments, in indoor environments and other pedestrian areas, or when the number of pedestrians is very high, the trajectories of humans are more intricate and with more abrupt changes. Furthermore, since the JRDB sequences are captured in both indoor and outdoor environment in close proximity to human, it contains very unique scenarios and diversity compared to the self driving data-sets (for visualizations of all scenes, see Fig. A.3 in Appendix). Moreover, while the number of sequences included is not large, it is enough to split in training and test sets that represent similarly the distribution of scenes, as we support empirically in our experimental evaluation (see discussion

---

![Image](images/4f25c6ae6ea2fdcf54a53f0e374f4866ce2e92b07f8e6908dc8154519edb27c7.jpg)

<div style="text-align: center;">(a) Indoor scenes including many natural indoor occluders such as desks and chairs (bytes-cafe-2019-02-07_0 and forbes-cafe-2019-01-22_0)</div>

<div style="text-align: center;">(c) Outdoor scenes with large variation of distance from the robot (huang-lane-2019-02-12_0 and memorial-court-2019-03-16_0)</div>

<div style="text-align: center;">(d) Very crowded scenes (tressider-2019-04-26_2 and packard-poster-session-2019-03-20_2)</div>

<div style="text-align: center;">Fig. 8: Bird's-eye view of LiDAR point clouds and 3D bounding box annotations of eight different JRDB sequences, including indoors and outdoors. The green boxes indicate pedestrians. JRDB includes an extremely large number of pedestrians at different distances and orientation to the sensors, including very close proximity ( $\approx$1 m) or very distant (>50 m), with social groups and clusters related to human walking patterns and activities, and navigation patterns strongly affected by the indoor and outdoor physical constraints. Other natural complexities such as cluttered indoor objects and stairs add to its challenges.</div>

on Sec. 7.1 and Sec. 7.3).

Additionally, in comparison to high view's sensory setup in surveillance datasets or self-driving datasets that are captured from the top of a car, the JRDB sequences have been captured from a human-size robot. Consequently, the egocentric and perceptive view of its sensors, naturally introduces additional unique features such as larger size variations of 2D bounding boxes in camera view and longer partial and full occlusion of pedestrians. The occlusions become exacerbated in the indoor sequences where there exist many natural occluders. In Fig. 7, we include the results of an evaluation on the size variations and full occlusion duration in JRDB sequences compared to competitive datasets such as MOT17, MOT20, KITTI and Waymo.

Fig. 8 depicts a few examples of JRDB sequences illustrating some of its unique features and challenges, e.g. a) indoor cluttered sequences such as cafes, restaurants or classrooms, b) sequences with walking areas at different heights including some sequences with stairs, c) outdoor sequences with a large variation of pedestrian distance and orientation respect to the robot, and d) very crowded sequences with more than 200 people in the field of view. In Sec. 7, we will demonstrate how these challenges will affect the performance of the state-of-the art 2D and 3D detection and tracking methods.

## 6 BENCHMARKS AND METRICS

Based on our associated annotations in RGB images and LiDAR point clouds, we currently propose the following four benchmarks:

• 2D person detection (in images)

• 3D person detection

• 2D person tracking (in images)

• 3D person tracking

Participants are free to use any of the available sensor modalities for each of the tasks, e.g. they can use RGB images and 3D point clouds for 2D person detection or for 3D person tracking.

In the following we describe the evaluation criteria and metrics we use for detection and tracking.

### 6.1 Intersection over Union (IoU)

Intersection over Union (IoU) is the most commonly used similarity measures between two shapes, e.g. bounding boxes, and hence the defacto base-similarity measure of many detection and tracking performance criteria. We also rely on this similarity measure as our base metric to compare two bounding boxes in 2D or 3D.

Given two bounding boxes, i.e. $b_p, b_g \subset \mathbb{R}^\ell$, where $\ell = 2$ or 3 in the case of 2D or 3D respectively, IoU is attained by

 $$ I o U(b_{p},b_{g})=\frac{|b_{p}\cap b_{g}|}{|b_{p}\cup b_{g}|}=\frac{|b_{p}\cap b_{g}|}{|b_{p}|+|b_{g}|-|b_{p}\cap b_{g}|}, $$

where  $IoU(\cdot,\cdot) \in [0;1]$ and  $|\cdot|$ denotes hyper-volume.

For the 2D detection and tracking problems where the task is to compare two sets of axis aligned bounding boxes, the calculation of IoU between each pair of bounding box has a straightforward analytical solution [^23]. In this case, the intersection, i.e.  $I(b_p, b_g) = |b_p \cap b_g|$, between two axis aligned bounding boxes is also an axis aligned bounding box, which its vertices' coordinates are simply attained by comparing each vertices' coordinates of  $b_p$ and  $b_g$ using min and max functions [^23].

In the 3D case in our dataset, the predicted and truth bounding boxes, i.e. $b_{p}$ and $b_{g}$, can be generally two arbitrary size cuboids with one degree of rotation around the axis, perpendicular to the world surface plan. Therefore, any intersection between these two cuboids, $I(b_{p}, b_{g})$, would form a right prism with a base which can be any arbitrary 2D convex polygon. To calculate the volume of the right prism, i.e. $I(b_{p}, b_{g})$, we first calculate the area of the 2D polygon and then multiply the area with the minimum height between $b_{p}$ and $b_{g}$.

To attain the area of the 2D polygon surface, we use a combination of the Sutherland-Hodgman algorithm [^24] and the shoelace formula (surveyor's formula) to determine the area of 2D

---

polygon. The Sutherland-Hodgman algorithm is an algorithm used to clip convex polygons. Given two non-axis aligned 2D bounding boxes, $\hat{b}_{p}$ and $\hat{b}_{g}$ (considering the projection of the cuboids seen from bird-eye view), we extend each line segment of $\hat{b}_{g}$ to clip the edges of $\hat{b}_{p}$, i.e. the edges of $\hat{b}_{p}$ are restricted to fall within $\hat{b}_{g}$. The resulting clipped polygon represents the area of intersection. Given the set of vertices of this polygon, sorted in clockwise order, we apply the shoelace formula to find its area. The shoelace formula is given by:

 $$ I(\hat{b}_{p},\hat{b}_{g})=\frac{1}{2}|\sum_{i=1}^{n-1}\alpha_{i}\beta_{i+1}+\alpha_{n}\beta_{1}-\sum_{i=1}^{n-1}\alpha_{i+1}\beta_{i}-\alpha_{1}\beta_{n}|. $$

where $I(\hat{b}_{p},\hat{b}_{g})$ is the area of the intersecting polygon between $\hat{b}_{p}$ and $\hat{b}_{g}$ with n vertices $(\alpha_{1},\beta_{1}),(\alpha_{2},\beta_{2})\ldots(\alpha_{n},\beta_{n})$.

### 6.2 Evaluations for Detection Benchmarks

We evaluate 2D and 3D detection performance using two criteria : (i) Average Precision (AP), as the most widely used performance measure for object detection benchmarks [^2], [^20], [^25], (ii) a new IoU-based optimal sub-pattern assignment (OSPA $_{IoU}$) metric for calculating a distance between two set of shapes, e.g. 2D and 3D bounding boxes [^26].

Here, the aim is to find a measure (or a metric), defining the similarity (or distance) between a set of predicted bounding boxes, $B_p = \{b_p^1, ..., b_p^n\}$, and a set of the truth bounding boxes, $B_g = \{b_g^1, ..., b_g^m\}$.

Average Precision (AP): The value of AP is based on the notion of true positives of the prediction set, which are determined by matching predicted bounding boxes with truth bounding boxes such that the IoU value between them is larger than a specified threshold, $t_{r}$.

Considering the set of predicted and truth bounding boxes as $B_p = \{b_p^1, ..., b_p^n\}$, and $B_g = \{b_g^1, ..., b_g^m\}$ respectively, the true positives set is a subset of the predicted boxes, i.e. $B_{TP} \subset B_p$, which fulfills the following condition:

 $$ B_{T P}=\{b_{p}^{i}|\forall i\in\{1,\cdots,n\},I o U\left(b_{p}^{i},b_{g}^{\pi^{*}(i)}\right)\geq t r\}, $$

where $b_g^{\pi^*(i)}$ is a corresponding unique matched bounding box from the truth bounding box set $B_g$ for the predicted box $b_p^i$. All matching assignments between the prediction and truth sets are attained by $\pi^* = \arg\max_{\pi \in \Pi_n} \sum_{i=1}^n I o U(b_p^i, b_g^{\pi(i)})$. Note that if $m \geq n$ for each prediction, $b_p^i$, after solving the assignment problem, there is a match $b_g^{\pi^*(i)}$. Otherwise, some $b_p^i$ may not be matched to any truth box and thus, they are also excluded from true positive list. Similar to all the existing popular object detection benchmarks [^2], [^20], [^25], in our benchmark, the non-optimal greedy assignment strategy is used for solving the assignment problem $^4$.

Next, precision and recall are respectively calculated by  $Pr = \frac{|B_{TP}|}{n}$ and  $Rc = \frac{|B_{TP}|}{m}$, where  $|B_{TP}|$ is the cardinality of true positive sets (or simply the number of true positives).

Finally, we take average of 11-point interpolated precision to compute mean average precision, just as in Pascal VOC2008 [^25]:

 $$ AP=\frac{1}{11}\sum_{R c=0:0.1:1}\max_{\widetilde{R c}:\widetilde{R c}\geq R c}\quad Pr(\widetilde{R c}) $$

where $Pr(Rc)$ is the measured precision at recall Rc.

In our benchmark, a prediction is considered true positive if the IoU between the prediction and the ground-truth bounding box is over 0.5 for 2D and 0.3 for 3D. For 2D object detection benchmark, the bounding boxes with occlusion level lower than $Fully\_occluded$ and area greater than $500 pixel^{2}$ are considered for the benchmark. For 3D object detection benchmark, the 3D boxes that encloses more than 10 points and are within 25m of the sensor are considered for the benchmark.

In spite of popularity of AP, in [^26] it is demonstrated that AP can be an unreliable performance measure when the aim is use this measure for ranking competitive submissions in a benchmark. Moreover, the rankings can change dramatically with different choices of IoU threshold. To this end, in our benchmark, we also report $OSPA_{IoU}$ as a reliable metric for object detection as shown in [^26].

IoU-based Optimal Sub-Pattern Assignment (OSPA $_{IoU}$): In contrast to the true positive-based measures, e.g. AP, which relies on an IoU threshold between the pairs of predictions and truth to determine true positives, OSPA $_{IoU}$ is a set-based metric which can directly capture a distance, $d_O$, between two sets of bounding boxes, i.e. $B_p = \{b_p^1, ..., b_p^n\}$ and $B_g = \{b_g^1, ..., b_g^m\}$, without a thresholding parameter. If $m \geq n > 0$, $d_O$ is calculated as follows:

 $$ d_{O}(B_{p},B_{g}){=}\frac{1}{m}\left(\operatorname*{m i n}_{\pi\in\Pi_{m}}\sum_{i{=}1}^{n}d_{I o U}\left(b_{p}^{i},b_{g}^{\pi(i)}\right){+}(n-m)\right) $$

where $\Pi_m$ is the set of all permutations of $\{1,2,...,m\}$ and $d_{IoU}(b_p^i, b_g^j) = 1 - IoU(b_p^i, b_g^j) \in [0;1]$. Consequently, $d_O(B_p, B_g) \in [0;1]$. Note that if $n > m > 0$; $d_O(B_p, B_g) = d_O(B_g, B_p)$. Moreover, if one of the set is empty; $d_O(B_p, B_g) = 1$, and $d_O(\emptyset, \emptyset) = 0$.

Please note that the OSPA distance is the combination of two types of errors: i) the term $(n-m)$ representing cardinality mismatch between two sets, penalizing missed or false detections without an explicit definition for them, and ii) the term $\min_{\pi\in\Pi_m}\sum_{i=1}^n d_{IoU}\left(b_p^i,b_g^{\pi(i)}\right)$ which is an equivalent matching problem discussed in the previous section and is simply an assignment problem between the predicted and ground-truth bounding boxes based on IoU distances between each pair. However, in contrast to AP, there does not exist any notation of true positives based on an arbitrary threshold and the cost of optimal assignment is interpreted as localization error. Additionally, the optimal assignment for the OSPA distance can be attained in polynomial time complexity using a Munkres (Hungarian) algorithm [^27].

### 6.3 Evaluations for Multi-Object Tracking Benchmarks

We evaluate 2D and 3D multi-object tracking performance using two criteria: (i) the Clear-MOT measures [^28], as the most widely used performance criteria for multi-object tracking benchmarks [^9], [^20], (ii) a IoU-based OSPA $^{(2)}$ (OSPA $_{IoU}^{(2)}$) metric for calculating a distance between two set of tracks of 2D and 3D bounding boxes [^26].

---

Here, the aim is to find a measure (or a metric) defining a similarity (or a distance) between a set of n predicted tracks, $\mathcal{B}_p = \{B_p^1(t_{s:e}^1), \ldots, B_p^n(t_{s:e}^n)\}$, and a set of m truth tracks, $\mathcal{B}_g = \{B_g^1(t_{s:e}^1), \ldots, B_g^m(t_{s:e}^m)\}$, where $B^i(t_{s:e}^i)$ is an $i^{th}$ trajectory which is an ordered collection of bounding boxes in time between $t_s^i$ and $t_e^i$, i.e. $B^i(t_{s:e}^i) = (b^i(t_s^i), \cdots, b^i(t_e^i))$.

Clear-MOT measures: These measures are known as multiple object tracking accuracy (MOTA) and multiple object tracking precision (MOTP), which are attained for a sequence with T frames as follows:

i) For all the predicted and ground truth tracks having a bounding box at time t, we find the true positives set at time t, by:

 $$ \begin{align*}\mathcal{B}_{TP}(t)=\{b^{i}_{p}(t)|\forall i\in\{1,\cdots,n\},\\t^{i}_{s}\leq t\leq t^{i}_{e},IoU\left(b^{i}_{p}(t),b^{\pi^{*}(i)}_{g}(t)\right)\geq tr\},\end{align*} $$

where $b_g^{\pi^*(i)}(t)$ is a corresponding unique matched bounding box from the available truth set at time t for the predicted box $b_p^i(t)$ at the same frame. All matching assignments between the prediction and truth sets are optimally attained by $\pi^* = \arg\max_{\pi \in \Pi_m} \sum_{i=1}^n I o U(b_p^i(t), b_g^{\pi(i)}(t))$ using the Hungarian algorithm.

ii) Next, the false positive set $\mathcal{B}_{FP}(t)$ at time t is calculated by excluding true positive set from the prediction set at the same frame. Similarly, the false negative set, $\mathcal{B}_{FN}(t)$ at time t, is attained by excluding the set of the matched truth bounding boxes from the truth set at time t. ID switches $\mathcal{B}_{ID}(t)$ at time t will be the mismatch the assignments between the matching solutions at time t and $t-1$ for the same truth track.

iii) Finally, MOTA and MOTP are respectively calculated by

 $$ MOTA=1-\frac{\sum_{t=1}^{T}\left|\mathcal{B}_{FP}(t)\right|+\left|\mathcal{B}_{FN}(t)\right|+\left|\mathcal{B}_{ID}(t)\right|}{\sum_{t=1}^{T}\left|\mathcal{B}_{g}(t)\right|} $$

 $$ M O T P=\frac{\sum_{t=1}^{T}\sum_{i=1}^{n}I o U(b_{p}^{i}(t),b_{g}^{\pi^{*}(i)}(t))\geq t r}{\sum_{t=1}^{T}\left|\mathcal{B}_{g}^{\pi^{*}}(t)\right|} $$

where  $|\cdot|$ represent the cardinally and  $|\mathcal{B}_g^{\pi^*(t)}|$ is the total number of ground truth tracks, matched to the predictions at time  t.

The Clear-MOT measures are also based on the notion of true positives of the prediction set, which are determined by matching predicted bounding boxes at each frame with truth bounding boxes at the same frame such that the IoU value between them is larger than a specified threshold. In our benchmark, a prediction is considered true positive if the IoU between the prediction and the ground-truth bounding box is over 0.5 for 2D and 0.3 for 3D. We do not require matches for boxes beyond 25 meters.

Similar to AP, Clear-MOT measures are shown to be very sensitive to choices of IoU threshold and the rankings of submissions can vary noticeably depending on the choices of IoU threshold. To this end, in our benchmark, we also report OSPA $_{(IoU)}^{(2)}$ as a reliable metric for multi-object tracking as discussed in [^26].

IoU-based OSPA $^{(2)}$ ( $\text{OSPA}_{IoU}^{(2)}$): OSPA $_{IoU}^{(2)}$ is a set-based metric which can directly capture a distance, $d_O$, between two sets of trajectories, i.e. $\mathcal{B}_p = \{B_p^1(t_{s:e}^1), ..., B_p^n(t_{s:e}^n)\}$, and $\mathcal{B}_g = \{B_g^1(t_{s:e}^1), ..., B_g^m(t_{s:e}^m)\}$, without a thresholding parameter.

A meaningful distance between two sets of tracks requires a meaningful base-distance between two tracks first. In [^26], the following time-averaged OSPA distance between two tracks $B_{p}^{i}(t_{s:e}^{i})$ and $B_{g}^{j}(t_{s:e}^{j})$ are suggested:

 $$ \widetilde{\underline{d}}\big(B_{p}^{i}(t_{s:e}^{i}),B_{g}^{j}(t_{s:e}^{j})\big)=\sum_{t=t_{s}^{m}}^{t_{e}^{M}}\frac{d_{O}\left(B_{p}^{i}(t),B_{g}^{j}(t)\right)}{t_{e}^{M}-t_{s}^{m}}, $$

where $d_{O}(\cdot,\cdot)$ is OSPA distance in Eq. 2 and $t_{e}^{M}=\max(t_{e}^{i},t_{e}^{j})$ and $t_{s}^{m}=\min(t_{s}^{i},t_{s}^{j})$. Note that, in some frames, both $B_{p}^{i}(t)$ and $B_{g}^{j}(t)$ may include a bounding box, however since each track can start and end in different time, in some frames, one of them may exist only, i.e. $B_{p}^{i}(t)=\emptyset$ while $B_{g}^{j}(t)=b_{g}^{j}(t)$ or vice versa. In both scenarios $d_{O}(\cdot,\cdot)$ has a value as a set distance, i.e. measuring a distance between two singleton sets (two bonding boxes) or one singleton set and one empty set.

Having $\underline{d}$ as a base distance between two tracks, the final distance between two sets of track can be calculated with another OSPA distance (Eq. 2) when the base distance is replaced with $\underline{d}$ in Eq. 6, i.e. if $m \geq n > 0$, $d_O$ then,

 $$ \begin{align*}d_{O}(\mathcal{B}_{p},\mathcal{B}_{g})=\frac{1}{m}\Bigg(\mathop{\min}\limits_{\pi\in\Pi_{m}}\sum_{i=1}^{n}\underline{\widetilde{d}}\Big(B_{p}^{i}(\cdot),B_{g}^{\pi*(i)}(\cdot)\Big)\\+(n-m)\Bigg),\end{align*} $$

and if $n > m > 0$; $d_O(\mathcal{B}_p, \mathcal{B}_g) = d_O(\mathcal{B}_p, \mathcal{B}_g)$. Note that $d_O(\mathcal{B}_p, \mathcal{B}_g) \in [0; 1]$.

Since OSPA distance is calculated in two levels (first in Eq. 6 and next in Eq. 7), this distance is known as OSPA $^{(2)}$. Please note that the OSPA $^{(2)}$ distance is also the combination of two types of errors: i) the term $(n - m)$ representing cardinality mismatch between two sets, penalizing missed or false tracks without an explicit definition for them, and ii) the term $\min_{\pi \in \Pi_m} \sum_{i=1}^n \left( B_p^i(\cdot), B_g^{\pi*(i)}(\cdot) \right)$ representing different tracking error such as the displacement and size errors, track ID switches, track fragmentation or even track late initiation/early termination.

## 7 EVALUATION

In this section, we evaluate the performance of several state-of-the-art/popular approaches for detection and tracking on the egocentric data of the JRDB dataset. By analyzing their performance and comparing in different scenarios, we also provide further insights on the special nature of our dataset and on areas of research that should be further explored to support robotic agents that need to perceive robustly in public human environments.

### 7.1 2D Person Detection

We first analyze several popular algorithms for 2D object detection. We provide results in our challenge of three widely-adopted and top-ranking solutions: YOLOv3, RetinaNet and Faster R-CNN. These solutions include single and double stage 2D detectors.

YOLOv3 [^29] $^{5}$: is one of the most popular single stage detector. We use a publicly available implementation with weights trained on the COCO dataset [^30]. Further, we fine-tune these weights on our egocentric JRDB dataset with the default parameters until the training loss converges, i.e. the descent rate on the training loss is negligible.

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Metric\nMethod</td><td colspan="3">% $AP_{{IoU}=.5\uparrow}$</td><td colspan="5">$OSPA_{{IoU}}\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Indoor</td><td style='text-align: center; word-wrap: break-word;'>Outdoor</td><td style='text-align: center; word-wrap: break-word;'>Overall</td><td style='text-align: center; word-wrap: break-word;'>Indoor</td><td style='text-align: center; word-wrap: break-word;'>Outdoor</td><td style='text-align: center; word-wrap: break-word;'>Overall</td><td style='text-align: center; word-wrap: break-word;'>Card.</td><td style='text-align: center; word-wrap: break-word;'>Loc.</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Faster R-CNN</td><td style='text-align: center; word-wrap: break-word;'>54.1</td><td style='text-align: center; word-wrap: break-word;'>48.1646</td><td style='text-align: center; word-wrap: break-word;'>52.2</td><td style='text-align: center; word-wrap: break-word;'>0.619</td><td style='text-align: center; word-wrap: break-word;'>0.736</td><td style='text-align: center; word-wrap: break-word;'>0.668</td><td style='text-align: center; word-wrap: break-word;'>0.408</td><td style='text-align: center; word-wrap: break-word;'>0.260</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RetinaNet</td><td style='text-align: center; word-wrap: break-word;'>53.0</td><td style='text-align: center; word-wrap: break-word;'>43.1</td><td style='text-align: center; word-wrap: break-word;'>50.4</td><td style='text-align: center; word-wrap: break-word;'>0.628</td><td style='text-align: center; word-wrap: break-word;'>0.787</td><td style='text-align: center; word-wrap: break-word;'>0.694</td><td style='text-align: center; word-wrap: break-word;'>0.476</td><td style='text-align: center; word-wrap: break-word;'>0.218</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>YOLOv3</td><td style='text-align: center; word-wrap: break-word;'>40.5</td><td style='text-align: center; word-wrap: break-word;'>45.3</td><td style='text-align: center; word-wrap: break-word;'>41.7</td><td style='text-align: center; word-wrap: break-word;'>0.687</td><td style='text-align: center; word-wrap: break-word;'>0.764</td><td style='text-align: center; word-wrap: break-word;'>0.719</td><td style='text-align: center; word-wrap: break-word;'>0.558</td><td style='text-align: center; word-wrap: break-word;'>0.161</td></tr></table>

<div style="text-align: center;">TABLE 3: 2D detection results in the JRDB benchmark using average precision (AP) and OSPA $_{IoU}$. Card. = Cardinality, Loc. = Localization.</div>

![Image](images/3107c54023f21fefed63a9486edcd1b8a263159761c28d8f95bf0f808ae7b3b8.jpg)

<div style="text-align: center;">(a) Average Precision (AP)</div>

![Image](images/8211eec0dfea05a812dedcbeb26c4c6b31b7df2a3496e44403e1daa5db849a11.jpg)

<div style="text-align: center;">(b) OSPA $_{IoU}$</div>

<div style="text-align: center;">Fig. 9: Sensitivity to occlusion of methods in the JRDB 2D detection benchmark. We include average precision (AP) and OSPA $_{IoU}$ at 3 different occlusion (Occ.) levels. All methods get significantly worse with occlusion, but YOLOv3 is the most strongly affected.</div>

The original YOLOv3 model uses square images of $416 \times 416$ pixels. However, our RGB sensor provides $360^\circ$ cylindrical images of $3760 \times 480$ pixels, a small width-to-height ratio. To adapt to this difference, we segment each cylindrical image into subimages with width-to-height ratio close to the unit and use them both for training and inference. We finally map the detections in the segmented images to the original cylindrical image. In the intersection between two segmented images, we search for detections that correspond to the same person by finding pairs of boxes at similar height and with similar size, and merge them together. While this process may introduce very few false merged detections, we found the rate of these failures negligible and the performance and computational speed of YOLOv3 is greatly improved compared to using the entire cylindrical image.

RetinaNet [^31]⁶: is a very popular single stage detector well-known for improved performance thanks to a novel focal loss. We use the publicly available implementation with the ResNet-50 backbone. We start with pretrained weights on the COCO dataset and fine-tune to the JRDB dataset with the default parameters until the training loss converges, i.e. the descent rate on the training loss is negligible.

Faster R-CNN [^32] $^6$: is the most widely used two stage detector, which first generates several good proposals for the objects of interest in the scene independent from their category labels, then in the second stage they are accurately localized and classified to their category labels. We use the publicly available and recent implementation of this detector which uses ResNet-50 backbone, a feature pyramid network and RoI Align pooling technique. Similar to the other detectors, we start with pretrained weights from the COCO dataset and fine-tune on the JRDB dataset with the default hyper-parameters until the training loss converges, i.e. the descent rate on the training loss is negligible.

## Results & Discussion

The results of our experiments are summarized in Table 3. According to the results, all these state-of-the-art detectors perform poorly in our egocentric dataset, as indicated by AP scores ( $\approx$ %50) and very high OSPA $_{IoU}$ (the values are closer to 1 than zero). We hypothesize that their low performance is caused by the very challenging scenes included in our egocentric dataset, with up-to-hundreds of humans moving, the robot (sensors) own motion, and high-level of partial and heavy occlusions due to the first-person view setup. This further indicates that our dataset and benchmark poses challenges to existing solutions due to the novel type of data and scenes, and as a benchmark can guide research into these unsolved and necessary new areas.

When we compare the detectors against each other using the different performance measures, the best performing one according to AP and OSPA$_{IoU}$ is Faster R-CNN, although YOLOv3 has better localization error compared to Faster R-CNN and RetinaNet. We hypothesise this is because YOLOv3 is able to successfully localize well the larger pedestrians but has a high cardinality error as it struggles with smaller boxes due to sparser anchor boxes. When decreasing the confidence threshold for OSPA to decrease cardinality error and consider more detections, we observe locality error rapidly rises and surpasses the locality error for other methods. This suggests YOLOv3 gives low confidence low IoU detections for small and occluded pedestrians, giving the lower AP score. As Faster-RCNN gives the best AP scores with the current IoU threshold ($tr = 0.5$) and the best overall OSPA$_{IoU}$ score, we use the output of Faster-RCNN as public detections for our 2D tracking benchmarks.

Indoor vs. Outdoor Scenes: Based on both performance measures, AP and OSPA $_{IoU}$, all three detectors seem to perform better in indoor environments. In outdoor scenes, pedestrians are commonly further away from the robot (sensors). Therefore, it would be difficult task for all detectors to detect these small bounding boxes. In addition, YOLOv3 performs much weaker in localizing pedestrians very close to robot, i.e. for very large bounding boxes, compared to the pedestrians in medium distance from the robot. This is because its anchor boxes align poorly to the size of pedestrians as images of pedestrians are often heavily cutoff and fill the screen at short distance to the robot, making accurate localization challenging. Therefore, for a IoU threshold equal to 0.5, these bounding boxes might be considered as false positives resulting in lower AP in indoor environments.

Sensitivity to Occlusion Level: As expected, the performance of all three methods decreases with increased level of occlusions, as shown in Table 3. Interestingly, YOLOv3 performs drastically worse even with partial occlusions indicating a strong sensitivity to occlusions. This significantly hurts overall performance as our dataset has nearly twice the number of partially occluded pedestrians as unoccluded pedestrians due to large crowds and the egocentric human-height view point. The significant drop of performance of all algorithms due to occlusion highlights the need for new detectors with more robust performance that can support

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="3">Metric Method</td><td colspan="7">Clear-MOT $_{{IoU}}=0.5$</td><td colspan="5">OSPA $_{{IoU}}^{{(2)}}$</td></tr><tr><td colspan="3">%MOTA $\uparrow$</td><td rowspan="2">%MOTP $\uparrow$</td><td rowspan="2">$\vert B_{{ID}}\vert \downarrow$</td><td rowspan="2">$\vert B_{{FP}}\vert \downarrow$</td><td rowspan="2">$\vert B_{{FN}}\vert \downarrow$</td><td rowspan="2">Indoor</td><td rowspan="2">Outdoor</td><td rowspan="2">Overall</td><td rowspan="2">Card.</td><td rowspan="2">Loc.</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Indoor</td><td style='text-align: center; word-wrap: break-word;'>Outdoor</td><td style='text-align: center; word-wrap: break-word;'>Overall</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DeepSORT</td><td style='text-align: center; word-wrap: break-word;'>25.5</td><td style='text-align: center; word-wrap: break-word;'>18.5</td><td style='text-align: center; word-wrap: break-word;'>23.2</td><td style='text-align: center; word-wrap: break-word;'>24.6</td><td style='text-align: center; word-wrap: break-word;'>5296</td><td style='text-align: center; word-wrap: break-word;'>78947</td><td style='text-align: center; word-wrap: break-word;'>650478</td><td style='text-align: center; word-wrap: break-word;'>0.947</td><td style='text-align: center; word-wrap: break-word;'>0.956</td><td style='text-align: center; word-wrap: break-word;'>0.951</td><td style='text-align: center; word-wrap: break-word;'>0.536</td><td style='text-align: center; word-wrap: break-word;'>0.415</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>JRMOT</td><td style='text-align: center; word-wrap: break-word;'>24.3</td><td style='text-align: center; word-wrap: break-word;'>19.0</td><td style='text-align: center; word-wrap: break-word;'>22.5</td><td style='text-align: center; word-wrap: break-word;'>23.6</td><td style='text-align: center; word-wrap: break-word;'>7719</td><td style='text-align: center; word-wrap: break-word;'>65550</td><td style='text-align: center; word-wrap: break-word;'>667783</td><td style='text-align: center; word-wrap: break-word;'>0.973</td><td style='text-align: center; word-wrap: break-word;'>0.980</td><td style='text-align: center; word-wrap: break-word;'>0.977</td><td style='text-align: center; word-wrap: break-word;'>0.748</td><td style='text-align: center; word-wrap: break-word;'>0.229</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Tracktor</td><td style='text-align: center; word-wrap: break-word;'>19.9</td><td style='text-align: center; word-wrap: break-word;'>14.2</td><td style='text-align: center; word-wrap: break-word;'>18.1</td><td style='text-align: center; word-wrap: break-word;'>29.2</td><td style='text-align: center; word-wrap: break-word;'>7564</td><td style='text-align: center; word-wrap: break-word;'>88480</td><td style='text-align: center; word-wrap: break-word;'>687842</td><td style='text-align: center; word-wrap: break-word;'>0.971</td><td style='text-align: center; word-wrap: break-word;'>0.985</td><td style='text-align: center; word-wrap: break-word;'>0.978</td><td style='text-align: center; word-wrap: break-word;'>0.759</td><td style='text-align: center; word-wrap: break-word;'>0.219</td></tr></table>

<div style="text-align: center;">TABLE 4: 2D tracking results in the JRDB benchmark using Clear-MOT metrics and OSPA $_{IoU}^{(2)}$. IDS = ID Switches, FP = False Positives, FN = False Negatives, Card. = Cardinality, Loc. = Localization.</div>

![Image](images/bd1283a712d89cf9f4938e8a9ed2c5074b1f2328a1d73aa2710d804df57cf078.jpg)

![Image](images/1cfde577bc71f0c02ef59bd529bec04c862042e8c1564ee2a608bba143ef3c24.jpg)

<div style="text-align: center;">(a) Average Precision (AP)</div>

<div style="text-align: center;">(b) OSPA $_{IoU}$</div>

<div style="text-align: center;">Fig. 10: Sensitivity to training set size of methods in the JRDB 2D detection benchmark. We include average precision (AP) and OSPA $_{IoU}$ at 3 different levels. Method performance marginally decreases with less data.</div>

egocentric artificial perception for autonomous navigating agents in public human environments.

Effect of the Size of JRDB on the Results: A possible reason for the poor performance observed from the state-of-the-art 2D detectors on the JRDB data could be the small size of the training data compared to other datasets, with only 27 different scenes. This may cause that the distribution of the training and test splits be different. To analyze the possible effect of the size and diversity of the training split, we create a new training split by combining JRDB's train and test splits (approximately 90% of the entire dataset) and train Faster-RCNN and RetinaNet on different fractions of this new training split. In this experiment, we use the original evaluation split as test split, approximately 10% of the entire dataset. If JRDB's small number of sequences in the original training set is not enough to correctly cover the diversity of scenes in the dataset (and the original test set) causing the observed poor 2D detector performance, using more data from the test split should drastically improve the results. The results of this experiment are summarized in Fig 10. We observer an almost negligible improvement from using 50% to 90% of the entire dataset for training. While these results can be explained by several possible causes, e.g. limited network capacity in evaluated models and/or partial mismatch between the distribution of the new training split (full training+test data) and the distribution of the selected validation set, we believe this experiment shows strong evidence that the number of sequence in our originally suggested training set is large and diverse enough to cover most of the distribution and allow for generalization.

The models in the previous experiment have been pretrained in a generic image datasets, MS COCO. To isolate the possible effect of this pretraining step, we compared the performance of i) a model pretrained in MS COCO and trained in JRDB original train split, ii) a model not pretrained and only training in JRDB, and iii) a model only pretrained in MS COCO. The results are summarized in Fig 11. Models only pretrained on MS COCO

![Image](images/e3dc6c1f9bb6aa2529bb6dc09bbbb6063a9520019c61f9eb8c4636d1033ad2ed.jpg)

<div style="text-align: center;">(a) Average Precision (AP)</div>

<div style="text-align: center;">(b) OSPA $_{IoU}$</div>

![Image](images/ba8fb64a17ca08f5e012e2ca521026e87ce7ccc2985ba5048d7c1d8a3616ef2c.jpg)

<div style="text-align: center;">Fig. 11: Effect of training procedure in the JRDB 2D detection benchmark. We include average precision (AP) and OSPA $_{IoU}$ for 1) both pretraining on MS COCO and training on JRDB 2) Only training on JRDB 3) Only pretraining on MS COCO. Training on JRDB gives substantive improvement over pretrained weights.</div>

performed substantially worse than the models pretrained in MS COCO and further trained on JRDB. This indicates that training on JRDB provides a substantial benefit over generic pretraining, supporting the idea that 1) the data in JRDB is original and different to what is generically observed in image datasets, and 2) the original training set covers these special data distribution. Additionally, we observe that, as would be expected, if we do not pretrained the models on MS COCO, the performance drops. However, the drop between pretrained and not pretrained models is not significantly large, indicating that the proposed training set in JRDB is general and large enough to enable training of large detectors.

### 7.2 2D Person Tracking

We now analyze the performance of various popular and state-of-the-art methods for our 2D person tracking benchmark in JRDB: DeepSort and Tractor. We also run our own baseline developed on the JRDB dataset, JRMOT. All these methods use the public detections generated by Faster-RCNN 2D to render fair the comparison of the tracking results.

DeepSort [^33] $^{7}$: DeepSORT is a popular, online 2D tracking algorithm which follows the tracking-by-detection paradigm. It uses Kalman filtering for motion modelling, the Hungarian algorithm for the assignment problem, and a deep neural network to generate features of objects/pedestrians for re-identification and data association. In our experiments, we use the hyperparameters of the original publication with the exception of setting nn_budget to 100 which limits the maximum size of appearance descriptors stored.

JRMOT [^34] $^{8}$: JRMOT is our provided baseline which performs both 2D and 3D tracking using the tracking-by-detection paradigm.

---

JRMOT uses a multimodal (2D-3D) Kalman filter that updates the state based on measurements from both 2D RGB images and 3D point clouds. It applies m-best joint probabilistic data association (JPDA) [^35] for probabilistic assignments, and 2D and 3D feature descriptor fusion for re-identification and data association. The feature descriptors are learned using the JRDB dataset. While it is primarily a 3D tracker, we project the resulting 3D tracks into 2D space to obtain 2D results that we can use to compare to the existing algorithms. We use the same set of hyperparameters described in the JRMOT manuscript.

Tracktor [^36] $^9$: Tractor is a state-of-the-art algorithm extensively used in the MOTChallenge dataset. This learning-based method uses an object detector that regresses the bounding boxes in consecutive frames and decides to preserve or terminate a track depending on the detector confidence scores. We use the provided implementation and approach for the detector and re-identification network and fine-tune it on JRDB. Specifically, the detector is fine-tuned for 27 epochs and the re-identification module for 25000 iterations, as prescribed by the authors.

#### 7.2.1 Results & Discussion

Table 4 summarizes the results of the three methods in the JRDB benchmark. According to the results, all these state-of-the-art online multi-object trackers perform poorly in our egocentric dataset, as indicated by low MOTA compared to the other tracking datasets and benchmarks and very high OSPA $_{IoU}^{(2)}$ (the values are very close to 1). All three methods are online trackers and use heuristics to handle occlusion or track termination. These heuristics have been proven to perform well for short occlusion periods in the tracks. However, JRDB contains considerably longer occluded trajectories compared to the other benchmark and datasets. We hypothesize this contributes to the low performance of these three state-of-the-art online trackers.

Comparing the trackers against each other, DeepSORT outperforms the two other trackers based on both MOT-Clear and OSPA $_{(I_{O}U)}^{(2)}$ performance measures. Although JRMOT incorporate similar filtering strategy with more sensor information and has more reliable data-association technique compared to DeepSORT (i.e. JPDA vs. Hungarian), the process of projecting 3D bounding boxes into the 2D image space to render JRMOT a 2D tracker introduces inaccuracies and leads to lower performance compared to Deepsort for 2D tracking. Rather surprisingly, we see worse performance for Tractor, which is the state-of-the-art in the MOTChallenge benchmarks. However, Tractor is a two-frame detector (based on the Faster R-CNN architecture) rather than a tracking algorithm. This might provide an advantage for this tracker in the benchmarks where the duration for object's occlusion is not very long and the performance improvement heavily depends on a better detection. However, due to its incapacity to maintain temporal information beyond two frames leads to this inferior performance in JRDB, caused by the unique features in the data (longer occlusions). As expected, Tractor, a two frame detector, has the best localization error in OSPA $_{(I_{O}U)}^{(2)}$ and similarly best MOTP value due to the best localization performance in MOT-clear.

Indoor vs Outdoor scenes: We see all methods perform better in indoor environments and have a similar drop in performance when running in outdoor environments. This indicates that outdoor environments are significantly more challenging. We hypothesize this is again caused by higher number of visible pedestrians and larger outdoor crowds at further away distances. However, neither in indoor nor in outdoor environments the evaluated solutions exhibit great performance, indicating the need to improve 2D tracking methods to support robot navigation in these types of environments underrepresented in existing datasets and challenges.

#### 7.2.2 Re-identification after Long Occlusions

Motivated by the prior analysis suggesting long occlusion windows are a driving force in tracking failure, specifically with ID switches, we propose a simple baseline method for re-identification after long occlusions (RALO). This method can be used with several of the existing state of the art baselines evaluated. Once tracks are terminated by a tracking solution, we propose to store them in a pool for an extended period of time, T. When new tracks are detected and initialized, we first compare them to the tracks in the pool. To that end, we use their appearance similarity measured based on the similarity of their AlignReID [^37] feature embeddings, and their similarity in position using GIoU [^38]. If a new track obtains a sufficiently high similarity score (threshold adapted experimentally on the training data), we retrieve the matching track from the pool and the two are merge together. This decreases ID switches while not affecting false negatives and false positives.

As Table 5 shows, we observe a significant decrease in ID switches thanks to our suggested baseline for re-identification after long occlusions. These results point out a necessary area where existing algorithms need to improve their performance in order to support robots in human crowded environments: handling correctly frequent and long occlusions. Methods that improve their performance under these conditions are likely to obtain better results in JRDB. For example, the integration of better forward and predictive models into tracking solutions and the exploitation of those to guide the detectors may improve further the re-identification and decrease further false negatives, the largest source of error for existing methods.

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>DeepSORT</td><td style='text-align: center; word-wrap: break-word;'>JRMOT (2D)</td><td style='text-align: center; word-wrap: break-word;'>Tracktor</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Without RALO</td><td style='text-align: center; word-wrap: break-word;'>5296</td><td style='text-align: center; word-wrap: break-word;'>7719</td><td style='text-align: center; word-wrap: break-word;'>7026</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>With RALO</td><td style='text-align: center; word-wrap: break-word;'>5022</td><td style='text-align: center; word-wrap: break-word;'>6612</td><td style='text-align: center; word-wrap: break-word;'>6084</td></tr></table>

<div style="text-align: center;">TABLE 5: Number of ID switches in 2D trackers with/without re-identification after long occlusions (RALO). RALO leaves other MOTA components, e.g. FP, FN, unaffected.</div>

### 7.3 3D Person Detection

We now turn to evaluate 3d person detectors in the JRDB benchmark. We compare two state-of-the-art solutions from the community, Frustum PointNet and TANet, in our benchmark.

F-PointNet [^39] $^{10}$: Frustum PointNet is a conditional 3D detector that uses RGB data. It first uses a 2D detector in the RGB images to segment out the point cloud data inside the frustrum (rectangular pyramid) projected from the sensor through the corners of the bounding boxes. The segmented point cloud per detection is then fed into a PointNet neural network structure that predicts the oriented bounding box around the object of interest, pedestrians in our case. Our implementation uses the pretrained weights from the KITTI dataset [^20] and we fine-tune them on the JRDB dataset. We follow the same procedure as the original manuscript to prepare the JRDB dataset. Specifically, we generate training data by extracting

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Metric\nMethod</td><td colspan="3">% $AP_{{IoU}=.3\uparrow}$</td><td colspan="5">$OSPA_{{IoU}\downarrow}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Indoor</td><td style='text-align: center; word-wrap: break-word;'>Outdoor</td><td style='text-align: center; word-wrap: break-word;'>Overall</td><td style='text-align: center; word-wrap: break-word;'>Indoor</td><td style='text-align: center; word-wrap: break-word;'>Outdoor</td><td style='text-align: center; word-wrap: break-word;'>Overall</td><td style='text-align: center; word-wrap: break-word;'>Card.</td><td style='text-align: center; word-wrap: break-word;'>Loc.</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>TANet</td><td style='text-align: center; word-wrap: break-word;'>52.16</td><td style='text-align: center; word-wrap: break-word;'>59.15</td><td style='text-align: center; word-wrap: break-word;'>53.87</td><td style='text-align: center; word-wrap: break-word;'>0.758</td><td style='text-align: center; word-wrap: break-word;'>0.801</td><td style='text-align: center; word-wrap: break-word;'>0.771</td><td style='text-align: center; word-wrap: break-word;'>0.391</td><td style='text-align: center; word-wrap: break-word;'>0.380</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>F-PointNet</td><td style='text-align: center; word-wrap: break-word;'>35.5</td><td style='text-align: center; word-wrap: break-word;'>44.1</td><td style='text-align: center; word-wrap: break-word;'>38.2</td><td style='text-align: center; word-wrap: break-word;'>0.765</td><td style='text-align: center; word-wrap: break-word;'>0.844</td><td style='text-align: center; word-wrap: break-word;'>0.798</td><td style='text-align: center; word-wrap: break-word;'>0.564</td><td style='text-align: center; word-wrap: break-word;'>0.234</td></tr></table>

<div style="text-align: center;">TABLE 6: 3D detection results in the JRDB benchmark using average precision (AP) and OSPA $_{IoU}$. Card. = Cardinality, Loc. = Localization.</div>

![Image](images/f8e849dfb019c050d35eaf2b0e94c509ee389582ff0d3a6959af21bd088f731e.jpg)

<div style="text-align: center;">(a) Average Precision (AP)</div>

![Image](images/5b4b1fe0aec6b26ccc7246257e229426a780817a3d342c271f1b6f560c90402d.jpg)

<div style="text-align: center;">(b) OSPA $_{IoU}$</div>

<div style="text-align: center;">Fig. 12: Sensitivity to occlusion of methods in the JRDB 3D detection benchmark. We include average precision (AP) and OSPA $_{IoU}$ at 3 different occlusion (Occ.) levels. Both methods get significantly worse with occlusion, but TANet is slightly more robust to it.</div>

the frustum of perturbed ground-truth 2D bounding boxes. We filter the ones that are too far away or has no enclosed points in its corresponding 3D bounding box. Then, we train the model on the processed JRDB dataset for 200 epochs using the default parameters.

TANet [^40] $^{11}$: TANet is a 3D detector that only uses point cloud data without RGB information. It relies on voxelizing the point cloud and applying a triple attention mechanism to obtain a feature representation for each voxel. These voxel feature representations are then arranged according to their original layout and fed into a regression module to produce 3D bounding boxes around objects of interest. We train TANet for pedestrian detection on JRDB, filtering boxes that are too far away or have less than 10 enclosed points, and train for 500,000 steps using the default parameters in the original manuscript.

#### 7.3.1 Results & Discussion

We present overall results for the 3D detection methods in Table 6. Similar to 2D cases, these state-of-the-art 3D detectors perform poorly in our dataset in both AP score as well OSPA $_{IoU}^{(2)}$. The high value of cardinality error in OSPA $_{IoU}^{(2)}$ is an indicator of many missing detections in both detectors. The challenges posed by the JRDB unique data such as high level of partial and full occlusions due to very crowded scene and indoor natural occlusions, high sparsity of point clouds for smaller size object like human (compared to vehicles), high distance range of pedestrians from the senors and pedestrians above (or below) the ground plane due to stairs, cause these state-of-the-art 3D detectors to perform rather poorly in the JRDB benchmark while performing well on the self-driving benchmarks datasets such as KITTI or Waymo.

Compared to TANet, F-PointNet performs very poorly in our dataset. F-PointNet assumes only one object of interest is contained in the 3D data of each frustrum but this may not hold true in JRDB.

![Image](images/1fd8ce689a331e96853893ac9ef27c1b75041e8cb745ebb82218e02f9b6e7477.jpg)

<div style="text-align: center;">(a) Average Precision (AP)</div>

![Image](images/03a7baa89a04c5c3d5dc25f6f0ce123635e1b1b6ddf5ca1dad83d6f51bcf8fce.jpg)

<div style="text-align: center;">(b) OSPA $_{IoU}$</div>

<div style="text-align: center;">Fig. 13: Results in the JRDB 3D detection benchmark by distance. We report both performance measures, AP (higher better) and OSPA $_{IoU}$ (lower better), at intervals of 5 m from 0 m to 25 m. Both methods, F-PointNet and TANet, show a considerable drop in performance with increasing distance to the sensor, with a slightly more robust performance by TANet. Beyond 15 m the results from both detectors are extremely noisy.</div>

especially in crowded scenes. Moreover, both detectors perform weakly in the estimation of person orientation which contributes to the low values in both performance metrics. To examine this hypothesis, we conducted additional experiments increasing the value of IoU threshold for AP from 0.3 to 0.5. The results of both F-PointNet and TANet noticeably dropped from 38.21 and 53.87 to 6.38 and 4.17 respectively. Since the value of IoU is very sensitive to an error in orientation, a significant drop in AP with a small decrease in the value of IoU can be a reflective of their good localization but poor orientation estimation. Based on these results, where TANet exhibited overall better performance than F-PointNet, we decided to use TANet as a public detector for our 3D tracking benchmark.

Indoor vs Outdoor Scenes: Considering AP (with a low IoU threshold, i.e. 0.3) as performance measure, we surprisingly see a better performance for the 3D detectors in the outdoor scenario. We hypothesize that people cluster more tightly in indoor environments, and indoor scene includes significantly more occluders in the point cloud data, rendering 3D detection in indoor environment harder. This situation becomes worse for F-PointNet, which assumes one object per frustum and thus does not perform well in scenes with crowds or partial occlusions. However, considering a threshold-free metric like OSPA $_{IoU}$, both indoor and outdoor scenes seem to be almost equally challenging for these detectors.

Performance against Occlusion Level: As expected, we see a similarly rapid decay in performance with increasing level of occlusion in both AP and OSPA $_{IoU}^{(2)}$ performance measures. In particular, when there is no occlusion, the performance is far better than the overall AP and OSPA $_{IoU}^{(2)}$, but even under small occlusions, the performance rapidly decays. This shows that our JRDB dataset presents challenging scenes for existing 3D detectors, and that novel research needs to be carried out in this type of scenarios to develop new detectors that are more robust to the frequent levels

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="3">Method</td><td rowspan="3">Metric</td><td colspan="6">Clear-MOT $_{{IoU=.3}}$</td><td colspan="5">OSPA $_{{IoU\downarrow}}^{{(2)}}$</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td colspan="3">%MOTA $\uparrow$</td><td rowspan="2">%MOTP $\uparrow$</td><td rowspan="2">$|B_{{ID}}|\downarrow$</td><td rowspan="2">$|B_{{FP}}|\downarrow$</td><td rowspan="2">$|B_{{FN}}|\downarrow$</td><td rowspan="2">Indoor</td><td rowspan="2">Outdoor</td><td rowspan="2">Overall</td><td rowspan="2">Card.</td><td rowspan="2">Loc.</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Indoor</td><td style='text-align: center; word-wrap: break-word;'>Outdoor</td><td style='text-align: center; word-wrap: break-word;'>Overall</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>JRMOT</td><td style='text-align: center; word-wrap: break-word;'>20.9</td><td style='text-align: center; word-wrap: break-word;'>18.6</td><td style='text-align: center; word-wrap: break-word;'>20.2</td><td style='text-align: center; word-wrap: break-word;'>42.5</td><td style='text-align: center; word-wrap: break-word;'>4207</td><td style='text-align: center; word-wrap: break-word;'>19711</td><td style='text-align: center; word-wrap: break-word;'>765907</td><td style='text-align: center; word-wrap: break-word;'>0.976</td><td style='text-align: center; word-wrap: break-word;'>0.976</td><td style='text-align: center; word-wrap: break-word;'>0.979</td><td style='text-align: center; word-wrap: break-word;'>0.979</td><td style='text-align: center; word-wrap: break-word;'>0.644</td><td style='text-align: center; word-wrap: break-word;'>0.335</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>AB3DMOT (F-PointNet)</td><td style='text-align: center; word-wrap: break-word;'>19.9</td><td style='text-align: center; word-wrap: break-word;'>18.3</td><td style='text-align: center; word-wrap: break-word;'>19.4</td><td style='text-align: center; word-wrap: break-word;'>42.0</td><td style='text-align: center; word-wrap: break-word;'>6177</td><td style='text-align: center; word-wrap: break-word;'>13664</td><td style='text-align: center; word-wrap: break-word;'>777946</td><td style='text-align: center; word-wrap: break-word;'>0.976</td><td style='text-align: center; word-wrap: break-word;'>0.984</td><td style='text-align: center; word-wrap: break-word;'>0.984</td><td style='text-align: center; word-wrap: break-word;'>0.983</td><td style='text-align: center; word-wrap: break-word;'>0.756</td><td style='text-align: center; word-wrap: break-word;'>0.227</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>AB3DMOT (TANet)</td><td style='text-align: center; word-wrap: break-word;'>25.7</td><td style='text-align: center; word-wrap: break-word;'>27.1</td><td style='text-align: center; word-wrap: break-word;'>26.2</td><td style='text-align: center; word-wrap: break-word;'>38.0</td><td style='text-align: center; word-wrap: break-word;'>10081</td><td style='text-align: center; word-wrap: break-word;'>61417</td><td style='text-align: center; word-wrap: break-word;'>658986</td><td style='text-align: center; word-wrap: break-word;'>0.983</td><td style='text-align: center; word-wrap: break-word;'>0.989</td><td style='text-align: center; word-wrap: break-word;'>0.987</td><td style='text-align: center; word-wrap: break-word;'>0.987</td><td style='text-align: center; word-wrap: break-word;'>0.782</td><td style='text-align: center; word-wrap: break-word;'>0.206</td></tr></table>

<div style="text-align: center;">TABLE 7: Results in the JRDB 3D tracking benchmark. We include Clear-MOT metrics and OSPA $_{IoU}^{(2)}$. IDS = ID Switches, FP = False Positives, FN = False Negatives, Card. = Cardinality, Loc. = Localization.</div>

of occlusions observed by human-sized robots in public human spaces.

Performance Against Distance from the Robot: As Figure 13 shows, the performance of the 3D detectors quickly drops off as we go farther out from the robot. F-PointNet presents slightly better OSPA $_{IoU}^{(2)}$ than TANet for detections at far distances. A possible reason is the better cardinality score of F-PointNet, although both algorithms present poor localization capabilities. At the range between 5 m to 10 m, the performance has already dropped below 0.1 AP and the detections provided from both algorithms are extremely noisy. This indicates a clear opportunity for the development of new 3D detectors that can provide reliable hypotheses even with few points for further away objects.

Effect of the Size of JRDB on the Results: Similar to the evaluation of 2D Person Detection, we would like to rule out the effect of the size of JRDB's training set in the poor performance observed in the evaluated state-of-the-art 3D detectors. Therefore, we perform an analogous analysis, training F-PointNet on different fractions of the combination of JRDB's original training and test sets, and testing on JRDB's original evaluation set. Training on approximately 50% of the dataset, F-PointNet reaches 46.07 AP and 0.766 OSPA $_{IoU}$. In comparison, using 90% of the dataset for training F-PointNet leads to 48.67 AP and 0.751 OSPA $_{IoU}$, a negligible difference. F-PointNet was not pretrained on any large generic dataset and therefore, we do not need to evaluate the effect of pretraining on these results. The results support the idea that the original training set split is large and diverse enough to cover the distribution of the test set, and its size is not the cause of the observed performance of 3D detectors, but rather the challenging special type of data included in JRDB.

### 7.4 3D Person Tracking

Finally, we evaluate 3D person tracking solutions in our new JRDB benchmark. We compare the performance of two state-of-the-art tracking solutions with available open-source implementations, AB3DMOT and JRMOT. This problem is significantly less studied than 2D tracking, and, while several works have been tackling 3D tracking in recent years, most of them come from autonomous vehicle companies that do not release open-source code. To assure a fair comparison between both 3D trackers, both methods use the same F-PointNet 3D detections. F-PointNet 3D detections are conditioned on 2D detections; we use the Faster R-CNN 2D detections provided with the dataset to query F-PointNet for 3D detections. For AB3MOT, we also present results using TANet 3D detections. However, JRMOT results are only obtained with F-PointNet as that specific detection method is required for the system to obtain a one-to-one mapping between 2D and 3D detections.

AB3DMOT [^41] $^{12}$: AB3DMOT is a light weight, online 3D tracker. This approach uses a simple 3D Kalman filter and the

![Image](images/89fe9d806cea279de023c7510285412193f1f79096cf980de06d5502977f9d22.jpg)

<div style="text-align: center;">(a) MOTA Results</div>

![Image](images/059ab44d72db92ae34008c4eba79d3f263c81162fddcfc7fac3ecbb091d14bc6.jpg)

<div style="text-align: center;">(b) OSPA Results</div>

<div style="text-align: center;">Fig. 14: Results in the JRDB 3D tracking benchmark by distance. We report both performance measures, MOTA (higher better) and OSPA $^{(2)}$ to  $I_{IoU}$ (lower better), at intervals of 5 m from 0 m to 25 m. JMOT and the both variants of AB3DMOT, with F-PointNet and TANet detections, perform best at closer distances, under 10 m. Beyond 15 m the tracking results are extremely noisy. AB3DMOT with TANet shows significantly better MOTA values than the other baselines at larger distances due to the less noisy input detections.</div>

Hungarian algorithm for matching and data association. Similarity scores for the Hungarian algorithm are based on intersection over union of 3D boxes. We use the publicly available implementation.

JRMOT [^34] $^{8}$: JRMOT is our provided baseline, as introduced in Section 7.2. JRMOT is based internally in a F-PointNet like procedure that provides linked 2D and 3D detections to use in a multimodal Kalman update step. Therefore, we use JRMOT with Faster R-CNN 2D and F-PointNet associated 3D detections. Different to the version of Section 7.2, to benchmark 3D tracking on the JRDB benchmark, we use the full 3D tracking capabilities of JRMOT. We use the exact system as described in the JRMOT publication [^34].

#### 7.4.1 Results & Discussion

In Table 7, we present the overall results of both tracking methods for both Clear-MOT and OSPA $_{IoU}^{(2)}$ performance measures. We see low overall scores in MOTA and and very high overall errors OSPA $_{IoU}^{(2)}$ for all methods primarily driven by the high rate of false negatives, indicating the challenging nature of this dataset. Based on the OSPA $_{IoU}^{(2)}$ measure we observe that AB3DMOT using TANet detections presents worse localization than AB3DMOT with F-PointNet detections. This is surprising, since TANet presented better localization than F-PointNet in the 3D detection JRDB benchmark, based on OSPA $_{IoU}^{(2)}$. This indicates that AB3DMOT is the culprit of this worse localization and that there is room for better tracking based on the given detections. We hypothesize this is due to poor and unstable Kalman filtering on extremely noisy angles from the detector which ultimately make performance worse.

---

Indoor vs Outdoor Scenes: We see a small gain in both MOTA and OSPA $^{2}$ in indoor scenes compared to outdoor scenes. This is consistent across all methods. Similar to the observed performance in the JRDB benchmark for 2D tracking, we hypothesize this is the effect of challenging tracking cases in the JRDB: the existing algorithms cannot cope with the longer occlusion patterns in more crowded outdoor scenes observed in our novel dataset (see Fig.6). Additionally, the more crowded scenes lead to poor detection performance (see Section 7.3), which affects directly the performance of the 3D trackers.

Performance Against Distance from the Robot: In Fig. 14, we observe a rapid and remarkable degradation in performances across both methods as distance increases, indicating existing methods are still not very effective beyond 10 m. We also observe that JRMOT performs slightly better than both variants of AB3DMOT at shorter distances, in the range between 0 m to 5 m, based on both MOTA and OSPA $^{2}$. As detections and measurements are noisier at these distances (see Section 7.3), the low quality of the detections is the most probable reason for the low performance of the trackers. Interestingly, we observe a significant difference in MOTP at larger distances between both approaches. We hypothesize that, by using information from the 2D bounding boxes, JRMOT obtains a more accurate estimation of the 3D bounding boxes and better fine-grained estimation of the object position, which leads to the observed higher MOTP. These limited performance of state-of-the-art solutions in our JRDB 3D tracking benchmark provide insights about future research areas to explore by the community. We believe that the low performance of the 3D trackers, both at large but also at short distances, is a handicap to develop autonomous navigating robots in human public spaces.

#### 7.4.2 Re-identification through Long Occlusions

To alleviate some of the special difficulties in JRDB, namely, the more frequent and temporally extended occlusions, we adapt and integrate into the 3D trackers the re-identification method introduced in Section 7.2.2. As Table 8 depicts, we observe a substantial decrease in the number of ID switches, indicating that an extended memory for tracks is a simple but effective way to reduce the effects of long occlusions. Future research in 3D tracking could dive deeper into extended memory methods to improve further the tracking capabilities in the presence of large occlusions. We plan to further improve tracking performance under long occlusions by incorporating more accurate predictive models based on egocentric motion and social cues [^42], [^43], [^44].

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>JRMOT (3D)</td><td style='text-align: center; word-wrap: break-word;'>Ab3DMOT</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Without RALO</td><td style='text-align: center; word-wrap: break-word;'>4207</td><td style='text-align: center; word-wrap: break-word;'>8278</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>With RALO</td><td style='text-align: center; word-wrap: break-word;'>2673</td><td style='text-align: center; word-wrap: break-word;'>3868</td></tr></table>

<div style="text-align: center;">TABLE 8: Number of ID switches in 3D trackers with/without re-identification after long occlusions (RALO). RALO leaves other MOTA components, e.g. FP, FN, unaffected.</div>

We presented JRDB, a novel dataset containing multimodal streams acquired in human environments: university indoor buildings and pedestrian areas on campus. The dataset of temporally synchronized and calibrated data includes images from $360^{\circ}$ stereo cylindrical cameras, LiDAR 3D point clouds, audio signals, IMU values and encoder readings from the robot's base. The data includes scenes

## 8 CONCLUSION AND FUTURE WORK

where the robot navigates among humans. The dataset has been annotated with ground truth 2D bounding boxes and associated 3D cuboids around all persons in the scenes. We show that it is a challenging dataset for person detection and training, in both 2D and 3D for existing methods. Hence, we expect this dataset to support research in perception for autonomous agents in human and social contexts. Our future plans are to continue annotating ground truth values for individual and group activities, social grouping, and human posture.

## ACKNOWLEDGMENT

This work was supported by the ONR, MURI award W911NF-151-0479.

## REFERENCES

[^1]: M. Everingham, L. Van Gool, C. Williams, J. Winn, and A. Zisserman, “The pascal visual object classes challenge 2012 (voc2012) results (2012),” in URL <http://www.pascal-network.org/challenges/VOC/voc2011/workshop/index.html>, 2011.

[^2]: T.-Y. Lin, M. Maire, S. Belongie, J. Hays, P. Perona, D. Ramanan, P. Dollar, and C. L. Zitnick, “Microsoft coco: Common objects in context,” ECCV, 2014.

[^3]: M. Cordts, M. Omran, S. Ramos, T. Rehfeld, M. Enzweiler, R. Benenson, U. Franke, S. Roth, and B. Schiele, “The cityscapes dataset for semantic urban scene understanding,” in CVPR, 2016, pp. 3213–3223.

[^4]: S. M. Seitz, B. Curless, J. Diebel, D. Scharstein, and R. Szeliski, “A comparison and evaluation of multi-view stereo reconstruction algorithms,” in CVPR 2006, 2006, pp. 519–528.

[^5]: S. Baker, D. Scharstein, J. P. Lewis, S. Roth, M. J. Black, and R. Szeliski, "A database and evaluation methodology for optical flow," Int. J. Comput. Vision, vol. 92, no. 1, pp. 1–31, Mar. 2011.

[^6]: D. Scharstein and R. Szeliski, “A taxonomy and evaluation of dense two-frame stereo correspondence algorithms,” Int. J. Comput. Vision, vol. 47, no. 1-3, pp. 7–42, Apr. 2002.

[^7]: A. Geiger, P. Lenz, and R. Urtasun, “Are we ready for autonomous driving? The KITTI Vision Benchmark Suite,” in CVPR 2012, 2012.

[^8]: L. Leal-Taixé, A. Milan, I. Reid, S. Roth, and K. Schindler, "MOTChallenge 2015: Towards a benchmark for multi-target tracking," arXiv:1504.01942, 2015.

[^9]: A. Milan, L. Leal-Taixé, I. Reid, S. Roth, and K. Schindler, “MOTChallenge 2016: Annotation and evaluation,” arXiv:1603.00831, 2016.

[^10]: P. Dendorfer, H. Rezatofighi, A. Milan, J. Shi, D. Cremers, I. Reid, S. Roth, K. Schindler, and L. Leal-Taixe, “Cvpr19 tracking and detection challenge: How crowded can it get?” arXiv preprint arXiv:1906.04567, 2019.

[^11]: P. Dendorfer, H. Rezatofighi, A. Milan, J. Shi, D. Cremers, I. Reid, S. Roth, K. Schindler, and L. Leal-Taixé, “Mot20: A benchmark for multi object tracking in crowded scenes,” arXiv preprint arXiv:2003.09003, 2020.

[^12]: M. Andriluka, U. Iqbal, E. Insafutdinov, L. Pishchulin, A. Milan, J. Gall, and B. Schiele, “Posetrack: A benchmark for human pose estimation and tracking,” in CVPR, 2018, pp. 5167–5176.

[^13]: F. Caba Heilbron, V. Escorcia, B. Ghanem, and J. Carlos Niebles, “Activity-tynet: A large-scale video benchmark for human activity understanding,” in CVPR, 2015, pp. 961–970.

[^14]: O. Russakovsky, J. Deng, H. Su, J. Krause, S. Satheesh, S. Ma, Z. Huang, A. Karpathy, A. Khosla, M. Bernstein, A. C. Berg, and L. Fei-Fei., "Imagenet large scale visual recognition challenge," IJCV, 2015.

[^15]: W. Maddern, G. Pascoe, C. Linegar, and P. Newman, “1 Year, 1000km: The Oxford RobotCar Dataset,” The International Journal of Robotics Research (IJRR), vol. 36, no. 1, pp. 3–15, 2017.

[^16]: Y. Ma, X. Zhu, S. Zhang, R. Yang, W. Wang, and D. Manocha, “Trafficpredict: Trajectory prediction for heterogeneous traffic-agents,” in Proceedings of the AAAI Conference on Artificial Intelligence, vol. 33, 2019, pp. 6120–6127.

[^17]: H. Caesar, V. Bankiti, A. H. Lang, S. Vora, V. E. Liong, Q. Xu, A. Krishnan, Y. Pan, G. Baldan, and O. Beijbom, “nuscenes: A multimodal dataset for autonomous driving,” arXiv preprint arXiv:1903.11027, 2019.

[^18]: P. Sun, H. Kretzschmar, X. Dotiwalla, A. Chouard, V. Patnaik, P. Tsui, J. Guo, Y. Zhou, Y. Chai, B. Caine et al., “Scalability in perception for autonomous driving: Waymo open dataset,” arXiv, pp. arXiv–1912, 2019.

[^19]: J. Manyika, S. Lund, M. Chui, J. Bughin, J. Woetzel, P. Batra, R. Ko, and S. Sanghvi, "Jobs lost, jobs gained: Workforce transitions in a time of automation," McKinsey Global Institute, 2017.

---

[^20]: A. Geiger, P. Lenz, and R. Urtasun, "Are we ready for autonomous driving? the kitti vision benchmark suite," in Conference on Computer Vision and Pattern Recognition (CVPR), 2012.

[^21]: P. Wang, X. Huang, X. Cheng, D. Zhou, Q. Geng, and R. Yang, "The apolloscape open dataset for autonomous driving and its application," IEEE transactions on pattern analysis and machine intelligence, 2019.

[^22]: F. Yu, W. Xian, Y. Chen, F. Liu, M. Liao, V. Madhavan, and T. Darrell, “Bdd100k: A diverse driving video database with scalable annotation tooling,” arXiv preprint arXiv:1805.04687, 2018.

[^23]: H. Rezatofighi, N. Tsoi, J. Gwak, A. Sadeghian, I. Reid, and S. Savarese, “Generalized intersection over union: A metric and a loss for bounding box regression,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2019, pp. 658–666.

[^24]: I. E. Sutherland and G. W. Hodgman, “Reentrant polygon clipping,” Communications of the ACM, vol. 17, no. 1, pp. 32–42, 1974.

[^25]: M. Everingham, L. Van Gool, C. K. I. Williams, J. Winn, and A. Zisserman, “The PASCAL Visual Object Classes Challenge 2008 (VOC2008) Results,” <http://www.pascal-network.org/challenges/VOC/voc2008/workshop/index.html>.

[^26]: H. Rezatofighi, T. T. Dat Nguyen, B.-N. Vo, B.-T. Vo, S. Savarese, and I. Reid, “How trustworthy are the existing performance evaluations for basic vision tasks?” arXiv preprint arXiv:2008.03533, 2020.

[^27]: H. W. Kuhn, “The Hungarian method for the assignment problem,” Naval research logistics quarterly, vol. 2, no. 1-2, pp. 83–97, 1955.

[^28]: K. Bernardin and R. Stiefelhagen, “Evaluating multiple object tracking performance: the clear mot metrics,” Journal on Image and Video Processing, vol. 2008, p. 1, 2008.

[^29]: J. Redmon and A. Farhadi, “Yolov3: An incremental improvement,” CoRR, vol. abs/1804.02767, 2018.

[^30]: T. Lin, M. Maire, S. J. Belongie, L. D. Bourdev, R. B. Girshick, J. Hays, P. Perona, D. Ramanan, P. Dollár, and C. L. Zitnick, "Microsoft COCO: common objects in context," CoRR, vol. abs/1405.0312, 2014.

[^31]: T. Lin, P. Goyal, R. Girshick, K. He, and P. Dollár, “Focal loss for dense object detection,” in 2017 IEEE International Conference on Computer Vision (ICCV), Oct 2017, pp. 2999–3007.

[^32]: S. Ren, K. He, R. Girshick, and J. Sun, “Faster r-cnn: Towards real-time object detection with region proposal networks,” in Advances in Neural Information Processing Systems 28, C. Cortes, N. D. Lawrence, D. D. Lee, M. Sugiyama, and R. Garnett, Eds. Curran Associates, Inc., 2015, pp. 91–99.

[^33]: N. Wojke, A. Bewley, and D. Paulus, “Simple online and realtime tracking with a deep association metric,” CoRR, vol. abs/1703.07402, 2017.

[^34]: A. Shenoi, M. Patel, J. Gwak, P. Goebel, A. Sadeghian, H. Rezatofighi, R. Martin-Martín, and S. Savarese, “Jrmot: A real-time 3d multi-object tracker and a new large-scale dataset,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2020, p. accepted.

[^35]: H. Rezatofighi, A. Milan, Z. Zhang, Q. Shi, and I. R. A. Dick, “Joint probabilistic data association revisited,” ICCV, 2015.

[^36]: P. Bergmann, T. Meinhardt, and L. Leal-Taixé, “Tracking without bells and whistles,” CoRR, vol. abs/1903.05625, 2019.

[^37]: X. Zhang, H. Luo, X. Fan, W. Xiang, Y. Sun, Q. Xiao, W. Jiang, C. Zhang, and J. Sun, “Alignedreid: Surpassing human-level performance in person re-identification,” arXiv preprint arXiv:1711.08184, 2017.

[^38]: H. Rezatofighi, N. Tsoi, J. Gwak, A. Sadeghian, I. Reid, and S. Savarese, “Generalized intersection over union,” June 2019.

[^39]: C. R. Qi, W. Liu, C. Wu, H. Su, and L. J. Guibas, “Frustum pointnets for 3d object detection from rgb-d data,” in 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, June 2018, pp. 918–927.

[^40]: Z. Liu, X. Zhao, T. Huang, R. Hu, Y. Zhou, and X. Bai, “Tanet: Robust 3d object detection from point clouds with triple attention,” AAAI, 2020.

[^41]: X. Weng and K. Kitani, “A baseline for 3d multi-object tracking,” CoRR, vol. abs/1907.03961, 2019.

[^42]: A. Gupta, J. Johnson, L. Fei-Fei, S. Savarese, and A. Alahi, “Social gain: Socially acceptable trajectories with generative adversarial networks,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018, pp. 2255–2264.

[^43]: V. Kosaraju, A. Sadeghian, R. Martín-Martín, I. Reid, H. Rezatofighi, and S. Savarese, “Social-bigat: Multimodal trajectory forecasting using bicycle-gan and graph attention networks,” in Advances in Neural Information Processing Systems, 2019, pp. 137–146.

[^44]: M. Swofford, J. Peruzzi, N. Tsoi, S. Thompson, R. Martín-Martín, S. Savarese, and M. Vázquez, “Improving social awareness through dante: Deep affinity network for clustering conversational interactants,” Proceedings of the ACM on Human-Computer Interaction, vol. 4, no. CSCW1, pp. 1–23, 2020.

![Image](images/4db6a5af748a6a7900443139fce85641cde172f7e7f3a5e741a29d5a932e77d4.jpg)

Roberto Martin-Martin Roberto Martin-Martin is a postdoctoral scholar at the Stanford Vision and Learning Lab with Prof. Silvio Savarese and Prof. Fei-Fei Li. He coordinates research projects in two groups: the JackRabbit team, which works on mobile manipulation in human environments, and the People, AI & Robots (PAIR) team, which works on visuo-motor learning skills for manipulation and planning. He obtained his PhD in Robotics at the Technische Universität Berlin at the RBO group from Prof. Oliver Brock.

![Image](images/e3562eb66ed449a7ff4c41f49f0bf9d86eb15168596d903da25ad2f1137c8ccc.jpg)

Mihir Patel Mihir Patel is pursuing a Bachelor's degree in the Mathematics department and a simultaneous Master's degree in the Computer Science department at Stanford University. He currently works at the Stanford Vision and Learning Lab with Prof. Silvio Savarese and Prof. Fei Fei Li and is part of the JackRabbit team. His interests are in vision and generative modeling.

![Image](images/d6dbc8501408468986e4716c1aa758399b6a34920d3e9e2951ceb7c3b38d345c.jpg)

Hamid Rezatofighi Hamid Rezatofighi is a lecturer at Faculty of Information Technology, Monash University, Australia. Before that, he was an Endeavour Research Fellow at the Stanford Vision Lab (SVL), Stanford University and a Senior Research Fellow at the Australian Institute for Machine Learning (AIML), the University of Adelaide. His main research interest focuses on computer vision and vision-based perception for robotics, including object detection, multi-object tracking, human trajectory and pose forecasting

and human collective activity recognition. He has also research expertise in Bayesian filtering, estimation and learning using point process and finite set statistics.

![Image](images/b79724dc7cb9d33a6b142fd6fd2d5d410a6e200141c314320234f13cffc15d7d.jpg)

Abhijeet Shenoi Abhijeet Shenoi is an algorithm engineer at AiBee US Corporation. He earned his Master's degree in the Computer Science department at Stanford University in 2019, while working under the supervision of Prof. Silvio Savarese in the Stanford Vision and Learning Lab. His research interests include semantic understanding, 3D tracking and 3D computer vision.

![Image](images/5a3a02982a2765cf7e833a2c4e3260f94d2ae53e8694d3067d493d22d7421506.jpg)

JunYoung Gwak JunYoung Gwak is a PhD student at the Stanford Vision and Learning Lab with Prof. Silvio Savarese. His current research focus is on 3D vision and scene understanding.

---

![Image](images/d684e5a3bf5244dab3cd50bd0899588461354b34038441f8dc572813875f268e.jpg)

Eric Frankel Eric Frankel is a research assistant in the JackRabbit Laboratory under Prof. Silvio Savarese on the JackRabbit project, which studies and improves autonomous agent activity in dynamic environments. He is studying mathematics and computer science at Stanford University under Prof. Emmanuel Candès. His research interests include computer vision and representation learning.

![Image](images/82e79b099fa9aa4a6d1c100fb5add7bf7381488567bce9af122c3ae0b9ebd790.jpg)

Silvio Savarese Silvio Savarese is an Associate Professor of Computer Science at Stanford University and the inaugural Mindtree Faculty Scholar. He earned his Ph.D. in Electrical Engineering from the California Institute of Technology in 2005 and was a Beckman Institute Fellow at the University of Illinois at Urbana-Champaign from 2005-2008. He joined Stanford in 2013 after being Assistant and then Associate Professor of Electrical and Computer Engineering at the University of Michigan, Ann Arbor, from 2008 to

[^2013]: His research interests include computer vision, robotic perception and machine learning. He is a recipient of several awards including a Best Student Paper Award at CVPR 2016, the James R. Croes Medal in 2013, a TRW Automotive Endowed Research Award in 2012, an NSF Career Award in 2011 and Google Research Award in 2010. In 2002 he was awarded the Walker von Brimer Award for outstanding research initiative.

![Image](images/cadeae9ab5a4311e9eaa0ae8af12e52b742f5083d3cd1f04b3ca8af54f3731d5.jpg)

Amir Sadeghian Amir Sadeghian is an Algorithm Scientist and founding member at Aibee US Corporation, where he leads the shopping mall team. His team works on building systems to digitalize the shopping malls, enabling better management and opening new ways to monetize off-line traffic. He received his PhD from Stanford University in Jan 2019, where he worked in Stanford Vision and Learning Lab with Prof. Silvio Savarese. His research interests primarily focus on computer vision and perception for robotics.

During his PhD, he was leading the JackRabbit team that has been featured in several major news outlets including CBS, ABC, and BBC.

---

### I. 1 360 Cylindrical Image Composition

The raw data in our dataset is obtained from two parallel rows of five RGB cameras each. The synchronized images from each row can be used to compose a $360^{\circ}$ image, as shown in our visualizations (e.g. Fig. 2 and Fig. A.3). We assume that the individual cameras of each row (5 in total) can be modeled as pinhole cameras, each providing images of resolution $752 \times 480$ pixels. To compose a single $360^{\circ}$ cylindrical RGB image from them, we adopt the following procedure.

First, we construct the function that will map pixels in the cylindrical image to pixels in the five individual images, $c_i$. To do so, we assume that every pixel in the cylindrical image, $(u_{cyl}, v_{cyl})$, is at a constant distance r from the camera center. Assuming a Cartesian frame with the axis y pointing upwards, x pointing to the front and z pointing to the right, the 3D location of the pixel in the image cylinder would have the coordinates $(r \cos \theta, v_{cyl}, r \sin \theta)$, where $\theta$ is the angle between the line connecting the origin and the pixel, and the positive x axis of the reference frame. We then project this pixel onto each of the five individual cameras based on their extrinsic parameters $R_i$ and $T_i$, intrinsic parameters, $K_i$, and distortion coefficients, $D_i$. The projected point $(\hat{u}_i, \hat{v}_i)$ is given by:

 $$ \begin{pmatrix}\hat{u}_{i}\\\hat{v}_{i}\end{pmatrix}=K_{i}f_{D_{i}}\left(\begin{bmatrix}R_{i}&T_{i}\end{bmatrix}\begin{pmatrix}r\cos\theta\\v_{cyl}\\r\sin\theta\\1\end{pmatrix}\right) $$

where $f_{D}$ is the distortion function parameterized by the distortion coefficients, D. To eliminate cases where the point is behind the camera onto which we are projecting, we first transform the 3D location of the pixel in the cylindrical image to each of the camera reference frames

 $$ \begin{pmatrix}x_{i}\\y_{i}\\z_{i}\end{pmatrix}=\begin{bmatrix}R_{i}&T_{i}\end{bmatrix}\begin{pmatrix}r\cos\theta\\v_{cyl}\\r\sin\theta\\1\end{pmatrix} $$

Since the pointing direction of the camera is aligned with the positive z axis, $z_i < 0$ indicates that the 3D location of the pixel in the cylindrical image corresponds to a point behind camera $c_i$ and we do not consider its projection. We also eliminate correspondences beyond the limits of the individual images, i.e. when $\hat{u}_i$ or $\hat{v}_i$ lie outside the boundaries of the image from $c_i$. The result of this process is the mapping between $(u_{cyl}, v_{cyl})$ and $(\hat{u}_i, \hat{v}_i)$ for each of the individual cameras, $c_i$.

Given these mappings, we can transform the pixels from the original five images into the corresponding pixels in the cylindrical image, followed by smoothing of the individual images onto a cylindrical surface, resulting in the $360^{\circ}$ RGB cylindrical image.

### 1.2 JRDB Data Structure

JRDB

![Image](images/07340fc324c85d656805fa04db0280a31b3b7d798ad6f96ed5470e36ebc5d5db.jpg)

<div style="text-align: center;">Fig. A.1: The dataset contains image and point cloud data, along with labels, sample detections, timestamps and calibration information. Further detail is in text.</div>

---

### 1.3 Validation Split

![Image](images/b61748aa387c168d290c311cd6eee3735cce69dbcc8e2cf6eb3b8d030936dc92.jpg)

<div style="text-align: center;">(a) Train Set</div>

![Image](images/47d448f1baf8356a66a01f62a9d442f6e0be3b75ed6b56447396150eb447ec82.jpg)

<div style="text-align: center;">(b) Validation Set</div>

<div style="text-align: center;">Histogram of areas of 2D bounding boxes</div>

![Image](images/32af21960825dd7afad436519c710f2e408bf70d96b6e5fa18f9d50746601cdb.jpg)

<div style="text-align: center;">(c) Train Set</div>

![Image](images/e2251f7387612f272989fe59bc3b3ee201f4f31772c7826d88483ab09648f022.jpg)

<div style="text-align: center;">(d) Validation Set</div>

<div style="text-align: center;">Histogram of distances between 3D bounding box centers and sensor origin</div>

![Image](images/8234c4f2c6e3d4f1dc13a4d1caf0e35cef59c1839a4237ae04f4b0a942b84546.jpg)

<div style="text-align: center;">(e) Train Set</div>

![Image](images/b47b1e77f9c99d97636825425a694644d5157c880c0f0ef260fc85b64266bcce.jpg)

<div style="text-align: center;">(f) Validation Set</div>

<div style="text-align: center;">Kernel Density Estimates of the spatial distribution of people around the robot</div>

![Image](images/68e025540c28112de6d99bb3cb5d923cf3c3ef19078b8cfe0f56bbef7fcaa900.jpg)

![Image](images/76deb975e5ba597e3a1727ca3c12ede04bd84257f3067c6cfec2361dd1dd07a2.jpg)

<div style="text-align: center;">(g) Train Set (h) Validation Set Distribution of occlusion levels (four levels)</div>

<div style="text-align: center;">Fig. A.2: Comparison of data in train and validation sets. The data distribution is very similar on the observed metrics.</div>

![Image](images/eb391d4a2977213303725c31f42bbd7661486ea9c5b6beb90fcf787c4da02869.jpg)

<div style="text-align: center;">Fig. A.3: Visualization of the 54 sequences in the JRDB. The scenes include indoor and outdoor areas in a university campus, with different lighting conditions, motion, number of pedestrians, and activities. These include locations similar to roads, strip malls, sidewalks, restaurants, plazas, parks, halls, classrooms, laboratories, and office buildings. This scenes span a large degree of variability and cover scenarios that a social robot will encounter during operation (crowds, walking groups, queues, talking formations, and more).</div>

---

![Image](images/ebc9ea8a3dc7927fdf2dbdf9d1cfd393785a8d95fe3dddc89ef7aab59ca1b439.jpg)

<div style="text-align: center;">Fig. A.3: Visualization of the 54 sequences in the JRDB (cont.)</div>
