OpenCV中的列明智标准差 [英] Column-Wise Standard Deviation in OpenCV

查看:72
本文介绍了OpenCV中的列明智标准差的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在opencv中是否有直接方法来计算矩阵的列标准差?类似于Matlab中的std.我找到了一个意思:

Is there a direct way to compute the column-wise standard deviation for a matrix in opencv? Similar to std in Matlab. I've found one for the mean:

cv::Mat col_mean;
reduce(A, col_mean, 1, CV_REDUCE_AVG);

但是我找不到标准偏差的函数.

but I cannot find such a function for the standard deviation.

推荐答案

以下是您所寻找的快速答案.我为每列都添加了标准差和均值.可以轻松地为行修改代码.

Here's a quick answer to what you're looking for. I added both the standard deviation and mean for each column. The code can easily be modified for rows.

    cv::Mat A = ...; // FILL IN THE DATA FOR YOUR INPUT MATRIX
    cv::Mat meanValue, stdValue;
    cv::Mat colSTD(1, A.cols, CV_64FC1);
    cv::Mat colMEAN(1, A.cols, CV_64FC1);       

    for (int i = 0; i < A.cols; i++){           
        cv::meanStdDev(A.col(i), meanValue, stdValue);
        colSTD.at<double>(i) = stdValue.at<double>(0);
        colMEAN.at<double>(i) = meanValue.at<double>(0);
    }

这篇关于OpenCV中的列明智标准差的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆