Alpha Matting#

Detailed Description#

Information Flow algorithm implementaton for alphamatting

Alpha matting is used to extract a foreground object with soft boundaries from a background image.

This module is dedicated to computing alpha matte of objects in images from a given input image and a greyscale trimap image that contains information about the foreground, background and unknown pixels. The unknown pixels are assumed to be a combination of foreground and background pixels. The algorithm uses a combination of multiple carefully defined pixels affinities to estimate the opacity of the foreground pixels in the unkown region.

The implementation is based on [9].

This module was developed by Muskaan Kularia and Sunita Nayak as a project for Google Summer of Code 2019 (GSoC 19).

Function Documentation#

infoFlow()#

void cv::alphamat::infoFlow(
InputArray image,
InputArray tmap,
OutputArray result )

#include <opencv2/alphamat.hpp>

Python:

cv.alphamat.infoFlow(image, tmap[, result]) -> result

Compute alpha matte of an object in an image.

The function infoFlow performs alpha matting on a RGB image using a greyscale trimap image, and outputs a greyscale alpha matte image. The output alpha matte can be used to softly extract the foreground object from a background image. Examples can be found in the samples directory.

Parameters

  • image — Input RGB image

  • tmap — Input greyscale trimap image

  • result — Output alpha matte image