# How to extract a single image from the output of the DiscreteWaveletTransform[]?

So, I use the following code to carry out the discrete wavelet transform on an image of Lena. I am interested in then doing some changes to a single image out of the obtained 4. How do I extract any of the images? How do I then put it back into an object which I can then carry out the inverse wavelet transform on?

img = ExampleData[{"TestImage", "Lena"}];

dwd = DiscreteWaveletTransform[img, HaarWavelet[], 2];



• Did you look at the "Properties and Relations" section of the docs for WaveletImagePlot[]? It's explained there how to obtain separate images instead of a hierarchical grid. – J. M.'s technical difficulties Oct 23 '17 at 15:41
• I must have missed it. Thank you @J.M., I have looked into now and realized that I missed it. – user3318424 Nov 21 '17 at 14:33

As I noted in the comments, the docs mention how to obtain the component images used in WaveletImagePlot[]:

img = ExampleData[{"TestImage", "Lena"}];
dwd = DiscreteWaveletTransform[img, HaarWavelet[], 2];

dwd[Automatic, "Image"]


I'm not sure how to apply ImageAdjust[] to these component images to be consistent with the result of WaveletImagePlot[], however.

Why not use ImageTake?

img = ExampleData[{"TestImage", "Lena"}];
dwd = DiscreteWaveletTransform[img, HaarWavelet[], 2];