Я работаю над проектом. У меня есть здесь vector<Mat> cache
, Почему-то я получаю странную ошибку (я уже проверил другие решения, но она все еще происходит), когда я запускаю этот модуль:
if(cache.size() == 10)
{
Mat sum_template = Mat::zeros(cache.at(1).size(), cache.at(1).type());
for(int i=0; i<cache.size(); i++)
{
sum_template += cache.at(i);
imshow("sum_template", sum_template); waitKey();
}
}
Что я хочу сделать, это добавить каждый из Mat
внутри cache
в sum_template
, Но следующая ошибка появляется на линии sum_template += cache.at(i);
:
Операция не является ни «array op array» (где массивы имеют одинаковый размер и одинаковое количество каналов), ни «array op scalar», ни «scalar op array» в функции arithm_op
Я просто добавляю Mat
s. Я проверил, cache.at(i)
правильно отображается перед сбоем, а также показывает размер кеша, равный 10. Есть идеи, что здесь не так?
РЕДАКТИРОВАТЬ кеш — это вектор матриц, аналогичный матрица результатов R как показано здесь
Задача ещё не решена.
Других решений пока нет …