Matting

Deep Automatic Portrait Matting

Deep Automatic Portrait Matting (ECCV 2016)
Project
img

First, pixels are classified into background, foreground and unknown labels based on fully convolutional networks with several new components. For the second part, we propose the novel matting layer with forward and backward image matting formation. These two functions are incorporated in the unified end-to-end system without user interaction.

CNN + novel matting layer (closed-form or KNN, manually pick better matting for training dataset)

data

For training, the model requires portrait image \(I\), trimap label \(F^s, B^s, U^s\) and a face feature template\(P_{template}\). During training, it generates face feature points \(P\) and compute homography transformation \(T\) with \(P\) and \(P_{template}\), for compute algined shape mask \(M\), indicate as (a) in fig 3 used for backprop.

\[\begin{split}P_{template}=T_i(P_i)\\ M_{GT}=T_i(M_i)\end{split}\]

Then backpropagate shape mask \(M_{GT}\) with 4th channel of stage one CNN output \(M\). Training with shape mask reduce matting for pixels far from the portrait region.
For inference, only the portrait image \(I\) is required.

DIM

Deep Image Matting (CVPR 2017) - Adobe
Project
Adobe Deep Image Matting Dataset: not public :(

Background Matting: The World is Your Green Screen

Background Matting: The World is Your Green Screen (CVPR 2020)
Project | pyTorch