Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image Matlab:图像1像素水平和垂直位移的协方差_Image_Matlab_Covariance_Grayscale - Fatal编程技术网

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

Image Matlab:图像1像素水平和垂直位移的协方差,image,matlab,covariance,grayscale,Image,Matlab,Covariance,Grayscale,我有一个灰度图像存储在矩阵Mat中,我被要求提取1像素水平和垂直位移的协方差 我想用circshift和cov来提取协方差 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

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

我想用
circshift
cov
来提取协方差

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乘1的大小,其中我的结果是2乘2。
我是否误用了
cov
函数,或者我没有正确理解问题,因此必须完全不同地解决此任务?

由于您的图像是二维的,您将收到大小为
2*2
协方差矩阵。您肯定已经解决了查找协方差的任务,但是
2*2
矩阵的每个元素表示不同的索引。假设矩阵是
[ab;cd]
A和
D将表示输入的方差
B
C
将表示输入之间的交叉协方差。

谢谢,因此以使用covMatH(1,2)的B或C元素为例,答案是正确的!