如何找到二维离散小波变换(dwt)真彩色图像

32视图(30天)
你好朋友,如何找到真彩色图像二维离散小波变换在matlab。请给一些代码示例
4评论

登录置评。

答案(2)

Ajith库马尔
Ajith库马尔 2017年11月22日
编辑:Ajith库马尔 2017年11月22日
如果真正的
%读取输入图像
Input_Image = imread (“D: / mytest.png”);
%红色彩形象的组件
Red_Input_Image = Input_Image (:: 1);
%绿色色彩形象的组件
Green_Input_Image = Input_Image (:: 2);
%的蓝色色彩形象的组件
Blue_Input_Image = Input_Image (:: 3);
%应用二维离散小波变换
(LLr, LHr HLr, HHr) = dwt2 (Red_Input_Image,“哈雾”);
高次谐波][LLg LHg、回龙观= dwt2 (Green_Input_Image,“哈雾”);
(法学学士、LHb HLb, HHb) = dwt2 (Blue_Input_Image,“哈雾”);
First_Level_Decomposition (:,: 1) = idwt2 (LLr、LHr、HLr HHr,“哈雾”、大小(Input_Image));
First_Level_Decomposition (:: 2) = idwt2(高次谐波,回龙观LLg,及产品,“哈雾”、大小(Input_Image));
First_Level_Decomposition (:: 3) = idwt2(法学学士、LHb HLb、HHb“哈雾”、大小(Input_Image));
First_Level_Decomposition = uint8 (First_Level_Decomposition);
%显示图象
图;
次要情节(1、2、1);imshow (Input_Image);标题(输入图像的);
次要情节(1、2、2);imshow (First_Level_Decomposition,[]);标题(重建图像的);
结束

Ankita邦萨尔
Ankita邦萨尔 2018年5月23日
逆DWT代码
嗨,我假设您使用的是同一语法系数作为计算DWT用于上面给出的答案。您可以使用idwt2函数可用MATLAB如下:
如果真正的
%的重建信号
Red_Input_Image_reconstructed = uint8 (idwt2 (LLr、LHr、HLr HHr,“哈雾”));
Green_Input_Image_reconstructed = uint8 (idwt2(高次谐波,回龙观LLg,及产品,“哈雾”));
Blue_Input_Image_reconstructed = uint8 (idwt2(法学学士、LHb HLb、HHb“哈雾”));
%检查是否重建后获得的数据是正确的
x = [Red_Input_Image_reconstructed-Red_Input_Image];
y = [Green_Input_Image_reconstructed-Green_Input_Image];
z = [Blue_Input_Image_reconstructed-Blue_Input_Image];
max (max (x))
max (max (y))
max (max (z))
%后输出图像重建
Output_Image (:,: 1) = Red_Input_Image_reconstructed;
Output_Image (:: 2) = Green_Input_Image_reconstructed;
Output_Image (:,:, 3) = Blue_Input_Image_reconstructed;
%显示图象重建
图;imshow (Output_Image[]);标题(重建图像的);
结束
而不是使用“哈尔”或任何其他组滤波器系数可用在MATLAB中,你可以用你自己的过滤系数低通和高通滤波器计算小波变换和逆小波变换。虽然计算逆小波变换必须使用系数对应系数分解的时候使用。

类别

找到更多的在离散多分辨率分析帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!