有没有简单的方法来繁殖Mat和Vec_? (只要它们具有适当的尺寸,例如:
Mat_<double> M = Mat(3,3,CV_32F);
Vec3f V=(1,2,3);
result = M*V //?
也许有一些基于Vec3创建行(或col)Mat的简单方法?
答案 0 :(得分:6)
您不能将Mat
和Vec
(或更常见的是Matx_
)元素相乘。 将Vec
对象投射到Mat
:
Mat_<float> M = Mat::eye(3,3,CV_32F);
Vec3f V=(1,2,3);
Mat result = M*Mat(V);
另外,我发现代码中存在错误:构建M
时,类型CV_32F
对应float
个元素,而不是double
。这在我的代码示例中也得到了纠正。
希望它有所帮助。