制作opencv :: Mat零特殊块的有效方法是什么? (没有循环)
Mat freq;
// Set some frequencies to 0
for (int y=0; y<freq.rows; y++)
{
for (int x=Start; x<freq.cols; x++)
{
if (x>Start || y>Start)
freq.at<double>(y,x) = 0.0;
}
}
// Set some frequencies to 0
for (int y=Start; y<freq.rows; y++)
{
for (int x=0; x<freq.cols; x++)
{
freq.at<double>(y,x) = 0.0;
}
}
答案 0 :(得分:2)
试试以下代码
Mat src;
Mat roi = src(Rect(x,y,width,height)); // Set Roi
roi.setTo(0); // Set all pixel to 0 on both src and roi
答案 1 :(得分:0)
您可以创建零矩阵。 Here是链接。您可以将整个矩阵设为零或创建一个较小的零矩阵,并将其分配给原始矩阵的所需部分。