1234567891011121314151617181920212223242526272829303132333435363738394041 |
- // This file is part of OpenCV project.
- // It is subject to the license terms in the LICENSE file found in the top-level directory
- // of this distribution and at http://opencv.org/license.html.
- /** Information Flow algorithm implementaton for alphamatting */
- #ifndef _OPENCV_ALPHAMAT_HPP_
- #define _OPENCV_ALPHAMAT_HPP_
- /**
- * @defgroup alphamat Alpha Matting
- * 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 @cite aksoy2017designing.
- *
- * This module was developed by Muskaan Kularia and Sunita Nayak as a project
- * for Google Summer of Code 2019 (GSoC 19).
- *
- */
- namespace cv { namespace alphamat {
- //! @addtogroup alphamat
- //! @{
- /**
- * @brief Compute alpha matte of an object in an image
- * @param image Input RGB image
- * @param tmap Input greyscale trimap image
- * @param result Output alpha matte 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.
- *
- */
- CV_EXPORTS_W void infoFlow(InputArray image, InputArray tmap, OutputArray result);
- //! @}
- }} // namespace
- #endif
|