-1
我想掩蓋彩色圖像,但結果我得到的是一個全黑的圖片,我的代碼是:opencv的 - 掩蓋了黑色圖像的圖像效果
Mat maskOriginal(Mat src, Mat original, Mat mask) {
original.copyTo(src, mask);
return src;
}
我的面具是一個通道(CV_8U)黑色/白色圖像。 我的面具:
我想掩蓋彩色圖像,但結果我得到的是一個全黑的圖片,我的代碼是:opencv的 - 掩蓋了黑色圖像的圖像效果
Mat maskOriginal(Mat src, Mat original, Mat mask) {
original.copyTo(src, mask);
return src;
}
我的面具是一個通道(CV_8U)黑色/白色圖像。 我的面具:
請注意,如何使用maskOriginal並注意面罩元素的類型。 對於給定的圖像,下面的代碼將在輸入圖像的中間保留一個圓圈,而其餘部分用黑色填充。
cv::Mat img = cv::imread("image.png");
cv::Mat mask = cv::Mat::zeros(img.rows, img.cols, CV_8UC1);
cv::circle(mask, cv::Point(img.cols/2, img.rows/2),
std::min(img.rows, img.cols)/2, cv::Scalar(255), -1);
cv::Mat result;
result = maskOriginal(result, img, mask);
cv::namedWindow("result");
cv::imshow("result", result);
cv::waitKey();
請上傳掩碼? – ZdaR
@Zdar - 編輯。 –
你可以顯示你使用maskOriginal函數的地方嗎? – Sunreef