- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字图像处理第五专题报告0
数字图像处理上机实习报告
第五专题
学生姓名:
班 级:
学 号:
指导老师: 傅华明
题目:
7, 对图象p04-01实施预测编码和解码,并将原图象与解码图象进行方差计算,考察解码后图象的视觉效果。预测模型为:
原理:
预测就是根据过去时刻的样本序列,运用一种模型,预测当前的样本值。预测编码是易于实现的,如差分脉冲编码调制(DPCM)方法。这种方法中,对每一个像素灰度值,都用先前扫描过的像素灰度值去减,求出它们的差值,此差值称为预测误差,预测误差被量化和编码与传送。接收端再将此差值与预测值相加,重建原始图像像素信号。由于量化和传送的仅是误差信号,根据一般扫描图像信号在空间及时间邻域内各像素的相关性,预测误差分布更加集中,即熵值比原来图像小,可用较少的单位像素比特率进行编码,使得图像数据得以压缩。DPCM系统的基本系统框图如下图所示。
在该系统中,为时刻的亮度取样值。预测器根据时刻之前的样本,,……,对作预测,得到预测值。与之间的误差为:
量化器对进行量化得到。编码器对进行编码发送。接收端解码时的预测过程与发送端相同,所用预测器亦相同。接收端恢复的输出信号是的近似值,两者的误差是 当输入图像信号是模拟信号时,“量化”过程中的信息损失是不可避免的。当足够小时,输入信号和DPCM系统的输出信号几乎一致。
其它预测方法还有以下几种:
前值预测:用同一行中临近的前一像素预测,即
一维预测:用同一行中前面若干像素预测。
二维预测:用几行内像素预测。
三维预测:利用相邻两帧图像信号的相关性预测。
程序为(一):
clc;
I=imread(lena512.bmp);
I2=I;
I=double(I);
fid = fopen( mydata.dat ,w);
[m,n]=size(I) ;
J=ones(m,n);
J(1:m,1)=I(1:m,1);
J(1,1:n)=I(1,1:n);
J(1:m,n)=I(1:m,n);
J(m,1:n)=I(m,1:n);
for k=2:m-1
for L=2:n-1
J(k,L)=I(k,L)-(I(k,L-1)/2+I(k-1,L)/2);
end
end
J=round(J) ;
cont=fwrite(fid,J,int8);
cc=fclose(fid);
fid=fopen(mydata.dat,r);
I1=fread(fid,cont,int8);
tt=1;
for L=1:n
for k=1:m
I(k,L)=I1(tt);
tt=tt+1;
end
end
I=double(I);
J=ones(m,n);
J(1:m,1)=I(1:m,1);
J(1,1:n)=I(1,1:n);
J(1:m,n)=I(1:m,n);
J(m,1:n)=I(m,1:n);
for k=2:m-1
for L=2:n-1
J(k,L)=I(k,L)+((J(k,L-1))/2+(J(k-1,L))/2);
end
end
cc=fclose(fid);
J=uint8(J);
subplot(1,2,1),imshow(I2);title(原图);
subplot(1,2,2),imshow(J);title(解码图像);
for k=1:m
for l=1:n
A(k,l)=J(k,l)-I2(k,l);
end
end
for k=1:m
for l=1:n
A(k,l)=A(k,l)*A(k,l);
end
end
b=sum(A(:));
s=b/(m*n) %两幅图的方差
运行结果为:
程序为(二):
clc;
i1=imread(lena512.bmp);
i=double(i1);
[m,n]=size(i);
p=zeros(m,n);
y=zeros(m,n);
y(1:m,1)=i(1:m,1);
p(1:m,1)=i(1:m,1);
y(1,1:n)=i(1,1:n);
p(1,1:n)=i(1,1:n);
y(1:m,n)=i(1:m,n);
p(1:m,n)=i(1:m,n);
p(m,1:n)=i(m,1:n);
y(m,1:n)=i(
文档评论(0)