how to get output image after performing IWT
Show older comments
I performed IWT on 3D image,the code is
LS = liftwave('db4','Int2Int');
X = my input image
[CA,CH,CV,CD] = lwt2(X,LS);
X1 = ilwt2(CA,CH,CV,CD,LS);
isequal(X,X1)
how to get that IWT image ,can anyone tell please
Answers (1)
Walter Roberson
on 30 Sep 2011
I do not know enough about wavelets to know what you mean by "get that IWT image" or "get output image". What kind of output were you hoping to obtain?
Looking around, it appears to me that a plausible answer for you is:
Instead of creating separate outputs, create a combined output:
liftedImage = lwt2(X,LS);
Then, you can display each pane separately:
ax1 = subplot(1,3,1);
surf(ax1, liftedImage(:,:,1));
title(ax1, 'Lifted red pane');
ax2 = subplot(1,3,2);
surf(ax2, liftedImage(:,:,2));
title(ax2, 'Lifted green pane');
ax3 = subplot(1,3,3);
surf(ax3, liftedImage(:,:,3));
title(ax3, 'Lifted blue pane');
I could, of course, be completely off-base as to what you want. Perhaps you want to use image() instead of surf() ?
5 Comments
FIR
on 30 Sep 2011
Walter Roberson
on 30 Sep 2011
There would not be any axes shown if you had used image() for all three panes, which suggests that you used surf() for the first one. I would, though, expect to get _some_ output from surf if there is more than one point in the output.
I cannot tell from the documentation whether there will _be_ three panes. Please report
size(liftedImage)
class(liftedImage)
Possibly you should image(liftedImage) . If that does not complain but does not show anything useful, try imagesc(liftedImage)
FIR
on 30 Sep 2011
Walter Roberson
on 30 Sep 2011
Okay, then use surf() to look at the data.
Please indicate min(liftedImage(:)) and max(liftedImage(:))
FIR
on 1 Oct 2011
Categories
Find more on Red 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!