【发布时间】:2012-08-08 05:12:30
【问题描述】:
在我的代码中,在某些时候我必须将 2 个矩阵相乘并将结果放入第 3 个矩阵中。我为此使用cvMatMul() 并收到断言失败错误。
进行矩阵乘法的代码部分:
CvMat* mulMatTt = cvCreateMat(EigenVector->rows,vi->cols,CV_32FC1);
cvMatMul(vi,EigenVector,mulMatTt);
这里,vi 有 1 行和 10000 列,特征向量是一个 1x1 方阵。我相信错误是在分配矩阵mulMatTt 的大小时。有人可以建议我如何让它工作吗?
错误:
OpenCV Error: Assertion failed ((D.rows == ((flags & CV_GEMM_A_T) == 0 ? A.rows : A.cols)) && (D.cols == ((flags & CV_GEMM_B_T) == 0 ? B.cols : B.rows)) && D.type() == A.type()) in cvGEMM, file C:\opencv\modules\core\src\matmul.cpp, line 29 30
【问题讨论】:
标签: c++ c opencv matrix-multiplication