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

4
在OpenCV中,我可以使用+运算符将两个相同类型的矩阵相加,例如: cv::Mat mat3 = mat1 + mat2; 但是,当我尝试以这种方式添加两个不同类型的矩阵时,我会在运行时收到错误消息,指出“当add/subtract/multiply/divide函数中的输入数组具有不同类型时,必须显式指定输出数组类型”。
那么,当对不同类型的矩阵应用此类操作时,我该如何指定输出类型呢?
2个回答

6

我应该如何指定输出类型?

不幸的是,C++中的重载运算符无法让你指定输出类型。

可以使用以下代码:

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

一如既往,也请参见文档


0

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接