OpenCV 实现简易抠图

    把segTarget拷贝到sebBackGround并去除绿色。

bool Segmentation(cv::Mat& segBackGround, cv::Mat& segTarget, const int& HeightPos, const int& WidthPos)
{
    const cv::Vec3b Green = { 0, 255, 0 };
    bool re(false);
    if ((segBackGround.size().height > segTarget.size().height + HeightPos) &&
        (segBackGround.size().width > segTarget.size().width + WidthPos))
    {
        for (int i(0); i < segTarget.size().height; ++i)
        {
            for (int j(0); j < segTarget.size().width; ++j)
            {
                Green == segTarget.at<cv::Vec3b>(i, j) ?
                    segBackGround.at<cv::Vec3b>(i + HeightPos, j + WidthPos) :
                    segBackGround.at<cv::Vec3b>(i + HeightPos, j + WidthPos) = segTarget.at<cv::Vec3b>(i, j);
            }
        }
        re = true;
    }
    return re;
}