  Existing image inpainting methods typically fill holes by borrowing
information from surrounding pixels. They often produce unsatisfactory results
when the holes overlap with or touch foreground objects due to lack of
information about the actual extent of foreground and background regions within
the holes. These scenarios, however, are very important in practice, especially
for applications such as the removal of distracting objects. To address the
problem, we propose a foreground-aware image inpainting system that explicitly
disentangles structure inference and content completion. Specifically, our
model learns to predict the foreground contour first, and then inpaints the
missing region using the predicted contour as guidance. We show that by such
disentanglement, the contour completion model predicts reasonable contours of
objects, and further substantially improves the performance of image
inpainting. Experiments show that our method significantly outperforms existing
methods and achieves superior inpainting results on challenging cases with
complex compositions.
