какой эффективный способ сделать специальный блок opencv :: Mat zero? (без цикла)
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;
}
}
Просто попробуйте ниже код
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
Вы можете создать нулевую матрицу. Вот ссылка. Вы можете сделать всю свою матрицу нулевой или создать меньшую нулевую матрицу и присвоить ее желаемой части исходной матрицы.