Комплексирование изображений методом главных компонент.
Подскажите,может кто разбирался в методу главных компонент. Занимаюсь комплексированием 2-ух изображений методом главных компонент. По порядку использую функции cov, затем получаю собственные значения и вектора при помощи eig, однако все собственные значения находятся в порядке возрастания (так и должно быть?). Кроме того по итогу изображение сильно портиться (становиться в полоску), может я что-то не так делаю? Код выглядит примерно так:
img1= double(img1); %изображения изначально в uint8
img2= double(img2);
cov1 = cov(img1);
cov2 = cov(img2);
%рассчет собственных значений и векторов W'*A = D*W'
%V - матрица собственных векторов наверно(не знаю почему одинаковые c W)
%D - диагональная матрица собственных значений (можно представить в виде вектора E = eig(cov1);)
%W - матрица собственных векторов
[V1,D1,W1] = eig(cov1);
M=max(max(D1));
[row,col] = find(D1==M);
PCA = V1(:,col) .* (img1+ img2);
PCA1 = uint8(PCA);
В посте прикреплена статья с похожей ситуацией, однако мне это не помогло -_-.
Комментарии