How can I perform a PCA analysis over 3D data?

15 visualizzazioni (ultimi 30 giorni)
Hello everyone. I have a 100*50*20 matrix which contains measurements over an area of space. 100 is the number of latitudes, 50 is the number of longitudes and 20 is the number of times each measurement has been performed. I want to perform PCA over this data, but I would like to obtain eigensurfaces instead of eigenvectors, the regular PCA works just fine over a belt of constant latitude or longitude with all the 20 times; however, if I try to use it over the 3D matrix, I get an error. My next attempt has been to use reshape to merge latitude and longitude in a vector. The obtained coeff matrix obtained has a size of 20*20, not something I can plot over a map.
Can anyone please tell me if I can plot the eigensurfaces to see a 2D image for each time? Thanks.

Risposta accettata

Image Analyst
Image Analyst il 16 Lug 2018
See my attached 3-D PCA demo. My 3-D array is an RGB image.
  6 Commenti
Image Analyst
Image Analyst il 13 Nov 2018
I have not worked in the compression field. The existing tried and true methods built into other functions are fine with me and I have no desire or need to improve upon those. They meet my needs so I don't need to research better ones.
Sanchay Mukherjee
Sanchay Mukherjee il 31 Gen 2022
I am trying to do a similar thing. I have a matrix of 200*500*3, where 200*500 is the data for corresponding 3 features (like a 3D plot). I want to find out the relative importance of the 3 features. Do you have any suggestions how should I proceed?
Thanks

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Dimensionality Reduction and Feature Extraction in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by