How do I apply SVD (Singular Value Decomposition) to an image?
59 ビュー (過去 30 日間)
古いコメントを表示
The syntax given for singular value decomposition is svd(x).
I tried it with my image, but it didn't work. Can you tell me how to work with svd for images please?
2 件のコメント
David Young
2011 年 3 月 2 日
Please could you say what the error message was, and also show any other parts of your code that might be relevant.
Andreas Goser
2011 年 3 月 2 日
While I agree with David on the need for specifics, my crystal ball tells my this is about data types and will craft an answer for that...
採用された回答
Andreas Goser
2011 年 3 月 2 日
This sounds like it is about data types or sizes. Example
pout = imread('pout.tif');
svd(pout) % does not work
??? Undefined function or method 'svd' for input arguments of type 'uint8'.
svd(double(pout)) % works
I can however not comment on the mathematical sense of this. I you have another image format like here, you need to think about what you actually like to achieve
I = imread('board.tif');
svd(double(I))
??? Undefined function or method 'svd' for input arguments of type 'double' and
attributes 'full 3d real'.
その他の回答 (5 件)
meenakshi
2011 年 9 月 6 日
HELLO GOSER
i=imread('pout.tif');
i=im2double(i)
[u s v]=svd(i);
you can try like this.
k.meenakshi
1 件のコメント
Walter Roberson
2011 年 9 月 6 日
That would not have any more success than svd(double(I)) if I is a truecolor (3D) image. Remember, images can be stored as pseudocolor (2D arrays in which the values indicate which index to use out of a color map), or as truecolor (3D arrays in which the values directly indicate the color information for each pixel without any map.) The problem is that svd() of a pseudocolor image is not meaningful, and svd() of a 3D array is not allowed. The only choice available to get anything useful out is to convert the image to grayscale and svd() the grayscale image.
slama najla
2012 年 4 月 21 日
Hello, can some body help me with the code of SVD decomposition in 3d medical data in matlab please.
1 件のコメント
slama najla
2012 年 4 月 28 日
But many approaches use it us decomposition for 3d data in watermarking,this is why i reask this question.thanks
2 件のコメント
Walter Roberson
2012 年 4 月 28 日
SVD is *defined* in terms of rectangular matrices. There is no method to apply SVD to a 3D matrix. I looked at some of the articles about color image watermarking using svd, and of the ones I could access, not one of them attempted to apply SVD to a 3D matrix.
Ayesha Iftikhar
2018 年 9 月 19 日
Hello can any one help me how to use SVD for feature extraction
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Eigenvalues についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!