  Face detection is a fundamental problem in computer vision. It is still a
challenging task in unconstrained conditions due to significant variations in
scale, pose, expressions, and occlusion. In this paper, we propose a
multi-branch fully convolutional network (MB-FCN) for face detection, which
considers both efficiency and effectiveness in the design process. Our MB-FCN
detector can deal with faces at all scale ranges with only a single pass
through the backbone network. As such, our MB-FCN model saves computation and
thus is more efficient, compared to previous methods that make multiple passes.
For each branch, the specific skip connections of the convolutional feature
maps at different layers are exploited to represent faces in specific scale
ranges. Specifically, small faces can be represented with both shallow
fine-grained and deep powerful coarse features. With this representation,
superior improvement in performance is registered for the task of detecting
small faces. We test our MB-FCN detector on two public face detection
benchmarks, including FDDB and WIDER FACE. Extensive experiments show that our
detector outperforms state-of-the-art methods on all these datasets in general
and by a substantial margin on the most challenging among them (e.g. WIDER FACE
Hard subset). Also, MB-FCN runs at 15 FPS on a GPU for images of size 640 x 480
with no assumption on the minimum detectable face size.
