MATLAB:图像的1像素水平和垂直位移的协方差



我在矩阵Mat中有一个灰度图像,并要求提取1像素水平和垂直位移的协方差。

我考虑使用circshiftcov提取协方差。

Mat = magic(5); % this represents my gray scale image
MatHs = circshift(Mat,[0 1]); % horizontal displacement
MatVs = circshift(Mat,[1 0]); % vertical displacement
covMatH = cov(Mat,MatHs)
covMatV = cov(Mat,MatVs)

然而,Covmath和covmatv的结果必须为1 x 1的大小1 x 1。我是否误入了cov函数,还是我没有正确理解该问题,并且必须完全不同?

由于您的图像是二维,因此您将收到大小2*2covariance matrix(链接)。您肯定已经解决了找到协方差的任务,但是2*2矩阵的每个元素都代表一个不同的索引。假设矩阵是[A B; C D]AD将代表输入的差异。BC代表输入之间的交叉交叉。

相关内容

  • 没有找到相关文章

最新更新