  For a self-driving car to operate reliably, its perceptual system must
generalize to the end-user's environment -- ideally without additional
annotation efforts. One potential solution is to leverage unlabeled data (e.g.,
unlabeled LiDAR point clouds) collected from the end-users' environments (i.e.
target domain) to adapt the system to the difference between training and
testing environments. While extensive research has been done on such an
unsupervised domain adaptation problem, one fundamental problem lingers: there
is no reliable signal in the target domain to supervise the adaptation process.
To overcome this issue we observe that it is easy to collect unsupervised data
from multiple traversals of repeated routes. While different from conventional
unsupervised domain adaptation, this assumption is extremely realistic since
many drivers share the same roads. We show that this simple additional
assumption is sufficient to obtain a potent signal that allows us to perform
iterative self-training of 3D object detectors on the target domain.
Concretely, we generate pseudo-labels with the out-of-domain detector but
reduce false positives by removing detections of supposedly mobile objects that
are persistent across traversals. Further, we reduce false negatives by
encouraging predictions in regions that are not persistent. We experiment with
our approach on two large-scale driving datasets and show remarkable
improvement in 3D object detection of cars, pedestrians, and cyclists, bringing
us a step closer to generalizable autonomous driving.
