Is it possible to implement principle component analysis on the function imageDatastore?
显示 更早的评论
Hi everyone.
I am new user of MATLAB. I am implementing CNN on the data set that I have and I use the bulid function
imds = imageDatastore(fullfile(pwd,'data'),...
'IncludeSubfolders',true,'FileExtensions','.dcm',...
'LabelSource','foldernames');
and I am trying to apply PCA on imds ( dimentinalty reduction ). I notice that there is a function that preformed pca called coeff = pca(imds). However, I recive the following error
Error using pca (line 168)
The value of X must be a numeric array.
Error in cnn (line 34)
coeff = pca(imds)
which means that imds must be numeric array. Please, If someone can help me to solve this problem??.
Many thanks
1 个评论
Prakash Shyam Karuppiah
2020-5-29
Had you solved the problem, I am also struck with the same
回答(1 个)
Walter Roberson
2019-10-4
0 个投票
No, you can only apply pca to an image that you have read in from the datastore, not to the whole datastore. You will need a loop.
2 个评论
Prakash Shyam Karuppiah
2020-5-29
Can you please elaborate, I am new user to Matlab ans I need a work around here
Walter Roberson
2020-5-29
https://www.mathworks.com/help/matlab/import_export/read-and-analyze-image-files.html shows an example. Notice in particular the loop, and the readimage() call.
类别
在 帮助中心 和 File Exchange 中查找有关 Dimensionality Reduction and Feature Extraction 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!