Я хочу преобразовать vector of vectors
(вид двумерного массива) в Mat
матрицу.Вот мой код:
template<class T>
void vec2Mat(vector<vector<T>> const &myVec, Mat &myMat)
{
int H = myVec.size();
int W = myVec[0].size();
for(int i=0; i<H; i++)
{
for(int j=0; j<W; j++)
{
myMat.at<T>(i,j) = myVec[i][j];
}
}
}
Эта функция не может быть скомпилирована из-за Error: Assertion failed (data) in cv::Mat::at
.Кто-нибудь может помочь мне исправить мой код?
Кроме циклического выполнения отдельных элементов, как указано выше, есть ли более удобные (и эффективные) методы для преобразования?