Displaying the image of wavedec2
5 views (last 30 days)
Show older comments
I have code
X=imread('cameraman.tif')
[C,S] = wavedec2(X,2,'haar');
for 2 level decomposition please tell how to display image in a single window,subplot must not be used
0 Comments
Answers (4)
Walter Roberson
on 24 Dec 2012
Have you read the documentation for image() recently ?
2 Comments
Walter Roberson
on 24 Dec 2012
You indicated that you must display the images in a single window and that subplot must not be used. There is a way to position images in an axes; examine the possible input arguments for image() for details.
Wayne King
on 24 Dec 2012
Edited: Wayne King
on 24 Dec 2012
You have to select the particular coefficients you want from the wavedec2 output vector. You can use detcoef2 for that.
For example, to view the diagonal details, HH, at level two
X = imread('cameraman.tif');
[C,S] = wavedec2(X,2,'haar');
[H,V,D] = detcoef2('all',C,S,2);
imagesc(D); colormap gray
appcoef2() gives you the scaling coefficients
Wayne King
on 24 Dec 2012
Then you can simply do:
X = imread('cameraman.tif');
[C,S] = wavedec2(X,2,'haar');
A2 = appcoef2(C,S,'haar',2);
[H1,V1,D1] = detcoef2('all',C,S,1);
[H2,V2,D2] = detcoef2('all',C,S,2);
Now you have all the images in your plot.
imagesc(A2); colormap gray;
gives you the image in the upper left corner and you have the 6 detail images. H1,V1,and D1 for level 1 and H2,V2, and D2 for level 2.
0 Comments
D.Regan
on 30 Jan 2014
Hi Sir,
I want to see the four bands LL, LH, HL and HH separately after wavedec2(), How can i do this?
0 Comments
See Also
Categories
Find more on 3-D Volumetric Image Processing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!