我对特征检测的概念很陌生。我用lambda=eig(Matrix)计算了矩阵的特征向量和特征向量。我想知道如何计算灰度图像的特征值和特征向量。谢谢。
发布于 2013-12-03 07:46:18
eig函数接受双或单类型的方阵作为输入。首先将图像从灰度(uint8或uint16)转换为双倍,然后将其变为正方形。请参见以下代码示例:
在某些灰度图像中读取的%:
Matrix = imread('lena_gray.jpg');%将图像转换为双精度以使用eig功能:
imtype = class(Matrix);
Matrix = double(Matrix);%找到适合eig操作的图像的方阵:
sz = size(Matrix);
m = max(sz);
mx = zeros(m, m);
mx(1:sz(1),1:sz(2)) = Matrix;%找到特征向量和特征值:
[V, D] = eig(mx);%检查该矩阵是否使用矩阵因式分解生成A并将其转换回原始图像:
eval(['A = ',imtype,'(abs(V*D*V^(-1)));']);
figure
imshow(A)https://stackoverflow.com/questions/20342636
复制相似问题