Matlab数字图像处理尝试之:[9]编码和解码

2025-10-10 09:52:53

1、 

简述原理,打印出原始图像和解压后图像,计算信噪比,估算压缩比。

2、 

1)、采用门限编码法来处理变换系数:

clear all;

I=imread('C:\Users\zjy\Desktop\test1.png');

I=im2double(I);

D=dctmtx(8);

B=blkproc(I,[8,8],'P1*x*P2',D,D');

mask=[1 1 1 1 1 1 1 1;1 1 1 1 0 0 0 0;...

1 1 0 0 0 0 1 1;1 0 0 0 1 1 1 0;...

1 0 0 1 1 0 0 1;1 0 1 1 0 0 1 0;...

1 0 1 0 0 1 0 1;1 0 1 0 1 0 1 0];

B2=blkproc(B,[8,8],'P1.*x',mask);

I2=blkproc(B2,[8,8],'P1*x*P2',D',D);

figure(1),imshow(I);

title('a)原始图像');

figure(2),imshow(I2);

title('b)压缩后图像');

Matlab数字图像处理尝试之:[9]编码和解码

Matlab数字图像处理尝试之:[9]编码和解码

3、 

以上是通过离散余弦变换编码对原始图像进行编码压缩,并采用门限编码法来处理变换系数,压缩比为9:16;从效果来看,得到的图像质量好;

4、 

2)、采用区域编码法来处理变换系数:

clear all;

I=imread('C:\Users\zjy\Desktop\test1.png');

I=im2double(I);

D=dctmtx(8);

B=blkproc(I,[8,8],'P1*x*P2',D,D');

mask=[1 1 1 1 1 0 0 0;1 1 1 1 0 0 0 0;...

1 1 1 0 0 0 0 0;1 1 0 0 0 0 0 0;...

1 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0;...

0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0];

B2=blkproc(B,[8,8],'P1.*x',mask);

I2=blkproc(B2,[8,8],'P1*x*P2',D',D);

figure(1),imshow(I);

title('a)原始图像');

figure(2),imshow(I2);

title('b)压缩后图像');

Matlab数字图像处理尝试之:[9]编码和解码

5、 

以上是通过离散余弦变换编码对原始图像进行编码压缩,并采用区域编码法来处理变换系数,压缩比为15:64;从效果来看,得到的图像质量较门限编码的质量稍差;

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢