在OpenCV中,我可以使用+
运算符添加两个相同类型的矩阵,如下所示:
cv::Mat mat3 = mat1 + mat2;
当我尝试以这种方式添加两个不同类型的矩阵时,我在运行时遇到一个错误,它说“当add / subtract / multiply / divide函数中的输入数组有不同的类型时,输出数组类型必须明确指定“。
在将它们应用于不同类型的矩阵时,我应该如何为这样的操作指定输出类型?
答案 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的大小。希望这可以帮助