Can PCA be applied directly on an image?

Can PCA be applied directly on an image, in contrast to a matrix(in which rows correspond to observations & columns to variables)?
When i try to apply PCA using SVD/Covariance directly on an image i get the following error:
"Error using minus
Integers can only be combined with integers of same class or scalar doubles.
Error in pca2 at 14
data=data-repmat(mn,1,N);"
Thanking you in advance

2 Kommentare

Algorithms Analyst
Algorithms Analyst am 13 Nov. 2013
Check ur image type should be double date try.
sidra
sidra am 14 Nov. 2013
Algorithms Analyst ,the image type is double.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 14 Nov. 2013

0 Stimmen

Apply it to im2double() of the image.

Weitere Antworten (1)

sidra
sidra am 18 Nov. 2013

0 Stimmen

Walter, it works fine for a single image but when i try the same on array of images i get the error :
"Array dimensions must match for binary array op.
error in pca2 at 14
data=data-repmat(mn,1,N);
error in db.pca at 18
pc=pca2(imagearray);"

Kategorien

Produkte

Gefragt:

am 13 Nov. 2013

Kommentiert:

am 21 Nov. 2013

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by