使用opencv mat做矩阵乘法
时间: 2023-11-10 14:07:21 浏览: 152
以下是使用OpenCV中的Mat类进行矩阵乘法的示例代码:
```c++
#include <opencv2/core.hpp>
#include <iostream>
int main()
{
// 创建两个矩阵
cv::Mat mat1 = (cv::Mat_<double>(2, 3) << 1, 2, 3, 4, 5, 6);
cv::Mat mat2 = (cv::Mat_<double>(3, 2) << 1, 2, 3, 4, 5, 6);
// 进行矩阵乘法
cv::Mat result = mat1 * mat2;
// 输出结果
std::cout << "mat1:\n" << mat1 << "\n\n";
std::cout << "mat2:\n" << mat2 << "\n\n";
std::cout << "result:\n" << result << std::endl;
return 0;
}
```
输出结果为:
```
mat1:
[1, 2, 3;
4, 5, 6]
mat2:
[1, 2;
3, 4;
5, 6]
result:
[22, 28;
49, 64]
```
其中,Mat类的构造函数可以接收一个行数和列数作为参数来创建矩阵。在示例代码中,使用了Mat类的静态方法Mat_<>()来创建一个指定数据类型的矩阵,并通过逗号分隔的方式来初始化矩阵的值。
在进行矩阵乘法时,可以直接使用Mat类的乘法运算符*。最后,通过std::cout来输出矩阵的值。
阅读全文
相关推荐


















