  Commercial retrospective video analytics platforms have increasingly adopted
general interfaces to support the custom queries and convolutional neural
networks (CNNs) that different applications require. However, existing
optimizations were designed for settings where CNNs were platform- (not user-)
determined, and fail to meet at least one of the following key platform goals
when that condition is violated: reliable accuracy, low latency, and minimal
wasted work.
  We present Boggart, a system that simultaneously meets all three goals while
supporting the generality that today's platforms seek. Prior to queries being
issued, Boggart carefully employs traditional computer vision algorithms to
generate indices that are imprecise, but are fundamentally comprehensive across
different CNNs/queries. For each issued query, Boggart employs new techniques
to quickly characterize the imprecision of its index, and sparingly run CNNs
(and propagate the results to other frames) in a way that bounds accuracy
drops. Our results highlight that Boggart's improved generality comes at low
cost, with speedups that match (and most often, exceed) prior, model-specific
approaches.
