我想了解我是否应该更喜欢使用 OpenCV 的 cv::Mat 类定义的矩阵运算,或者它们的计算时间是否与在双精度数组上使用 for 循环迭代相同。
OpenCV cv::Mat 类使用指针以使其尽可能高效。话虽如此,如果您想进行非常具体的操作,您可能会发现自己实现更快。
下面是来自OpenCV源代码的简单cv::Mat转置代码:
void MatOp::transpose(const MatExpr& expr, MatExpr& res) const
{
Mat m;
expr.op->assign(expr, m);
MatOp_T::makeExpr(res, m, 1);
}