ウェーブレットとデジタル画像処理は初めてです..自分の顔画像のウェーブレット分解用の小さなコードを書きましたが、問題があるようです
X = imread('face.jpg');
[cA1,cH1,cV1,cD1] = dwt2(X,'db1');
i = [ cA1 cH1; cV1 cD1];
imshow(i)
ここで何が問題なのか、何か足りないのか誰か教えてください。
ウェーブレットとデジタル画像処理は初めてです..自分の顔画像のウェーブレット分解用の小さなコードを書きましたが、問題があるようです
X = imread('face.jpg');
[cA1,cH1,cV1,cD1] = dwt2(X,'db1');
i = [ cA1 cH1; cV1 cD1];
imshow(i)
ここで何が問題なのか、何か足りないのか誰か教えてください。
これが問題である可能性があると推測しています。ここに解決策があります。wcodemat
を使用して、表示用に行列を再スケーリングしてみてください(恥知らずにhttp://www.mathworks.com/help/wavelet/ref/wcodemat.htmlをリッピング):
load woman;
% Get the range of the colormap
NBCOL = size(map,1);
% Obtain the 2D dwt using the Haar wavelet
[cA1,cH1,cV1,cD1] = dwt2(X,'db1');
% Display without scaling
image(cA1);
colormap(map);
title('Unscaled Image');
figure;
% Display with scaling
image(wcodemat(cA1,NBCOL));
colormap(map);
title('Scaled Image');