是否有MAT ARITHMETIC 运算符替代UMAT

Is there a Mat arithmetic + operator alternative for UMat?

本文关键字:UMAT 运算符 ARITHMETIC MAT 是否      更新时间:2023-10-16

我试图将同构滤波器应用于我的视频播放器程序。

当我使用UMAT编写代码时,我发现了使用现有垫子与代码不兼容的东西。

在垫子代码中

cv::Mat temp;
someImage.convertTo(temp,CV_32FC1)
temp = temp + 0.01 

temp = temp 0.01这是什么意思?我该如何在UMAT中使用此选项?

openCV的 operator+(const Mat& a, const Scalar& s)向矩阵的每个元素添加标量值。这实际上与调用void add(InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), int dtype=-1)相同。

InputArray接口接受Mat S和UMat S以及Scalar s,因此您可以致电

cv::UMat temp(3, 3, CV_32FC1, cv::Scalar(0));
cv::add(temp, 0.01, temp);