我已经声明了一个矩阵,然后计算了像这样的所有元素的平均值

        CvMat*  rgb1 = cvCreateMat(5, 5, CV_32FC1);
        // declared the elements of rgb1//
        CvScalar avg = cvAvg(rgb1); //calculated the average of all elements of rgb1 matrix


如何从rgb1矩阵的所有元素中减去平均值(avg),rgb1矩阵是如上所述的2D 5 * 5矩阵。我正在使用openCV C API。 openCV中是否有可以执行此操作的功能?

最佳答案

您可以使用cvSubS()从图像的每个元素中减去标量值:

cvSubS(rgb1, avg, rgb1);

09-25 19:59