matlab图像小波变换-初步1
2012-09-18 15:50
253 查看
正做图像处理相关的工作,学习图像处理相关理论知识,动手实践一下就遇到问题了
%.m file
X = imread('src.bmp');
figure(1);
imshow(X);title('原始图像');
[cA,cH,cV,cD] = dwt2(X,'db1');
figure(2);
subplot(2,2,1),imshow(cA,),title('cA');
subplot(2,2,2),imshow(cH,),title('cH');
subplot(2,2,3),imshow(cV,),title('cV');
subplot(2,2,4),imshow(cD,),title('cD');
X1 = idwt2(cA,cH,cV,cD,'db1');
figure(3);
imshow(X1,[]);title('重构图像');
对图像进行单层二维离散小波变换dwt2后,显示变换后图像的低频分量cA,水平分量cH,竖直方向分量cV和对角线方向分量cD。
ch、cV、cD感觉还有点那个意思,但是低频分量cA全白,查看workspace中的数据发现cA的最小值为34.5,最大值为227.5,都没有超过255,为什么会显示全白呢?
查看matlab菜单help->product help发现imshow函数可以显示多种数据格式,它有一个显示范围,小于最小值显示black,大于最大值显示white;若为uint8型默认显示范围为0-255,若为double型则默认显示范围为0.0-1.0之间的数,现在可以解释为什么cA部分图像为全白了。
解决方式:1将小波变换结果转换成uint8类型,2指定imshow显示范围
修改后即可正常显示变换结果了
subplot(2,2,1),imshow(cA,[]),title('低频分量cA');
subplot(2,2,2),imshow(cH,[]),title('水平方向分量cH');
subplot(2,2,3),imshow(cV,[]),title('竖直方向分量cV');
subplot(2,2,4),imshow(cD,[]),title('对角方向分量cD');
%.m file
X = imread('src.bmp');
figure(1);
imshow(X);title('原始图像');
[cA,cH,cV,cD] = dwt2(X,'db1');
figure(2);
subplot(2,2,1),imshow(cA,),title('cA');
subplot(2,2,2),imshow(cH,),title('cH');
subplot(2,2,3),imshow(cV,),title('cV');
subplot(2,2,4),imshow(cD,),title('cD');
X1 = idwt2(cA,cH,cV,cD,'db1');
figure(3);
imshow(X1,[]);title('重构图像');
对图像进行单层二维离散小波变换dwt2后,显示变换后图像的低频分量cA,水平分量cH,竖直方向分量cV和对角线方向分量cD。
ch、cV、cD感觉还有点那个意思,但是低频分量cA全白,查看workspace中的数据发现cA的最小值为34.5,最大值为227.5,都没有超过255,为什么会显示全白呢?
查看matlab菜单help->product help发现imshow函数可以显示多种数据格式,它有一个显示范围,小于最小值显示black,大于最大值显示white;若为uint8型默认显示范围为0-255,若为double型则默认显示范围为0.0-1.0之间的数,现在可以解释为什么cA部分图像为全白了。
解决方式:1将小波变换结果转换成uint8类型,2指定imshow显示范围
修改后即可正常显示变换结果了
subplot(2,2,1),imshow(cA,[]),title('低频分量cA');
subplot(2,2,2),imshow(cH,[]),title('水平方向分量cH');
subplot(2,2,3),imshow(cV,[]),title('竖直方向分量cV');
subplot(2,2,4),imshow(cD,[]),title('对角方向分量cD');
相关文章推荐
- matlab图像小波变换-初步2
- 图像小波变换去噪——MATLAB实现
- 基于小波变换的多尺度图像边缘检测matlab源代码(在Matlab7.0下运行)
- matlab练习程序(图像Haar小波变换)
- matlab练习程序(图像Haar小波变换)
- 图像小波变换的matlab实现
- matlab使用小波变换进行图像融合
- 数字图像处理,小波变换一维Mallat算法的C++实现(matlab验证)
- 基于小波变换的图像去噪matlab仿真
- Matlab 图像小波变换
- 【转载】matlab练习程序(图像Haar小波变换)
- matlab小波变换图像边缘检测源代码.m
- matlab中使用小波变换进行图像去噪
- matlab练习程序(图像Haar小波变换)
- matlab练习程序(图像旋转,双线性插值)
- 图像数据类型的转换 matlab opencv
- Matlab中如何读出写入图像文件以及对图像的简单处理
- Matlab subplot 图像间距调整
- MATLAB图像保存压缩后改变像素值的问题
- matlab图像处理(二)---图片反转、剪贴、下取样