在OpenCV中指定算术运算的输出类型

时间:2015-05-22 10:45:23

标签: c++ opencv

在OpenCV中,我可以使用+运算符添加两个相同类型的矩阵,如下所示:

cv::Mat mat3 = mat1 + mat2;

当我尝试以这种方式添加两个不同类型的矩阵时,我在运行时遇到一个错误,它说“当add / subtract / multiply / divide函数中的输入数组有不同的类型时,输出数组类型必须明确指定“。

在将它们应用于不同类型的矩阵时,我应该如何为这样的操作指定输出类型?

2 个答案:

答案 0 :(得分:5)

“我该如何指定输出类型”

不幸的是,重载的c ++运算符不允许你指定它。

使用如下代码:

cv::Mat mat3;
add(mat1, mat2, mat3, Mat(), CV_32F); // the additional Mat() is an empty Mask

与往常一样,另见docs

答案 1 :(得分:0)

首先声明Mat C的大小。希望这可以帮助