Matlab I';我试图找到灰度图像的特征值和向量,并得到错误;矩阵尺寸必须一致”;
代码给出错误“矩阵尺寸必须一致”。那么我应该做些什么改变呢Matlab I';我试图找到灰度图像的特征值和向量,并得到错误;矩阵尺寸必须一致”;,matlab,Matlab,代码给出错误“矩阵尺寸必须一致”。那么我应该做些什么改变呢 %reading a image I =imread('C:\Program Files\MATLAB\R2013a\New folder\fac.jpg'); m = mean(I,2); I = double(I)- double(repmat(m,10,1)); %calculating covariance matrix c=cov(I); %calculating eigenvalues and eigenvecto
%reading a image
I =imread('C:\Program Files\MATLAB\R2013a\New folder\fac.jpg');
m = mean(I,2);
I = double(I)- double(repmat(m,10,1));
%calculating covariance matrix
c=cov(I);
%calculating eigenvalues and eigenvectors
[eigenvalue,eigenvector]=eig(c);
首先,确保
I
是2D矩阵。这是cov
工作所必需的。其次,使用repmat(m,n,p)
,其中n
和p
使得size(repmat(m,n,p))==size(I)
示例
I =imread('myImg.jpg'); % 63x83x3 matrix containing 3D RGB information.
I = rgb2gray(I); % 3D RGB to 2D gray scale. Now I is a 63x83 matrix.
m = mean(I,2);
I = double(I)- double(repmat(m,1,83));
c=cov(I);
[eigenvalue,eigenvector]=eig(c);
问题似乎是
I
和repmat(m,10,1)
的维度不同。你的形象有多大尺寸?