2014-01-07 32 views

回答

4

您只需在將數據複製到它之前分配輸出矩陣。您可以創建一個矩陣初始化如下Mat A(3,3,CV_32F, Scalar(255))。或者,如果您有預先聲明的矩陣A,則可以使用A.create(3,3,CV_32F)重新分配它,然後使用A = Scalar(255)以常量初始化它。

所以你的情況,你可以做到以下幾點:

// Create output matrix initialized with a constant 
Mat output(rows, cols, CV_8UC3, Scalar(255,255,255)); 

// Copy your `input` matrix into `output` through your `mask` 
input.copyTo(output, mask); 
4

見OpenCV的文件約Mat

你可以像

三通道

Mat M(cols,rows, CV_8UC3, Scalar::all(255)); 

單通道含量的不同創造墊

Mat M(cols,rows, CV_8UC1, Scalar(255));