求图像的特征向量和特征值



我对特征检测的概念很陌生。我用CCD_ 1简单地计算了矩阵的特征向量和本征值。我想知道如何计算灰度图像的特征值和特征向量。非常感谢。

eig函数接受类型为double或single的方阵作为输入。首先将图像从灰度(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)

相关内容

  • 没有找到相关文章