Does wavedec2 and waverec2 support complex valued array inputs?
2 ビュー (過去 30 日間)
古いコメントを表示
I'm trying to use the wavedec2 and waverec2 functions on a complex valued image and I'm finding that the reconstructed image is not match the input image. Using dwt2 and idwt2 seems to work with the same complex valued array however.
%% works
[cA,cH,cV,cD] = dwt2(Image,'haar');
test = idwt2(cA,cH,cV,cD,'haar');
norm(Image - test,2) %% returns 1.27e-12
%% does not work
[c,s] = wavedec2(Image,1,'haar');
test = waverec2(c,s,'haar');
norm(Image - test,2) %% returns 6.79e+03
0 件のコメント
回答 (1 件)
Walter Roberson
2023 年 4 月 19 日
The documentation for wavedec2() does not say that the input, X, must be real-valued.
However, the output vector is defined as being real-valued, and is defined as having a particular size, and those conditions together imply that you cannot reconstruct a complex matrix
参考
カテゴリ
Help Center および File Exchange で Image Analysis についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!