数字电视实验报告
实验一、预测编码
一、实验目的
1. 掌握预测编码的原理。
2. 编程实现预测编码算法,用此算法对灰白图像进行压缩,并实现解压算法。
3. 分析算法和实验数据,得出此算法的压缩比。 二、实验原理
1. 根据离散信号之间存在一定相关性的特点,利用前面的一个或多个信号对下一个信号进行预测,然后对实际值和预测值的差(预测误差)进行编码。 如果预测比较准确,那么误差信号就会很小,就可以用较少的码位进行编码,以达到数据压缩的目的。
2. 利用以往的样本值对新样本值进行预测,将新样本值的实际值与其预测值相减,得到误差值
3. 对该误差值进行编码,传送此编码即可 三、实验步骤
1.使用MATLAB 软件,对“Cameraman.tif ”进行二位(帧内)预测编码。
2. 利用公式通过相邻的值对点X (m,n )进行预测,具体的公式为X (m,n )=X(m,n-1)+X(m-1,n)+X(m-1,n-1)+X(m-1,n+1)。
3. 预测误差为e(m,n)=X(m,n)-X (m,n),对e(m,n)进行量化。 4. 将第一行、第一列和最后一列数据直接传送,编码即可完成。
^
^
1
2141818
四、实验流程图
五、实验程序
I2=imread('cameraman.tif'); I=double(I2); [m,n]=size(I); J=0;
J=zeros(m,n); for i1=1:n, J(1,i1)=I(1,i1); end for i1=1:m, J(i1,1)=I(i1,1); J(i1,n)=I(i1,n); end
for i1=2:m-1, for j1=2:n-1,
J(i1,j1)=I(i1,j1)-(I(i1,j1-1)/2+I(i1-1,j1)/4+ I(i1-1,j1-1)/8+I(i1-1,j1+1)/8); end end J=round(J); J1=J; for i1=2:m-1;
for j1=2:n-1;
J1(i1,j1)=J1(i1,j1)+J1(i1,j1-1)/2+J1(i1-1,j1)/4+ J1(i1-1,j1-1)/8+J1(i1-1,j1+1)/8; end end J2=I-J1;
subplot(2,2,1),imshow(I2); subplot(2,2,2),imshow(J); subplot(2,2,3),imshow(J1/255);
subplot(2,2,4),imshow(J2);
六、实验结果
实验二、16QAM 调制
一、实验目的
(1) 掌握QAM 调制与解调原理。 (2) 掌握systemview 仿真软件使用方法
(3) 设计16QAM 调制与解调仿真电路,观察QAM 星座图和眼图。 二、实验原理
16QAM 信号采取正交相干解调的方法解调,解调器首先对收到的16QAM 信号进行正交相干解调,一路与tc ωcos 相乘,一路与tc ωsin 相乘。然后经过低通滤波器,低通滤波器LPF 滤除乘法器产生的高频分量,获得有用信号,低通滤波器LPF 输出经抽样判决可恢复出电平信号。 三、实验流程图
A=magic(4)-1; b=0;
[m,n]=size(A); for i=1:m for j=1:n
b(n*(i-1)+j)=A(i,j); end end
a=dec2bin(b); [m,n]=size(a); bb=0; for i=1:m for j=1:n
bb(n*(i-1)+j)=a(i,j); end
end dd=bb-48; m=length(dd)/4; for i=1:m for j=1:4
ee(i,j)=dd(4*(i-1)+j); end end for i=1:m
if ee(i,1)==0&ee(i,2)==0; I(i)=-3;
elseif ee(i,1)==0&ee(i,2)==1; I(i)=-1;
elseif ee(i,1)==1&ee(i,2)==0; I(i)=1; else I(i)=3; end end for i=1:m
if ee(i,3)==0&ee(i,4)==0; Q(i)=-3;
elseif ee(i,3)==0&ee(i,4)==1;
Q(i)=-1;
elseif ee(i,3)==1&ee(i,4)==0; Q(i)=1; else Q(i)=3; endend plot(I,Q,'*') t=0:0.01:2; f=1; y=0;
y=I(1)*cos(2*pi*f*t)+Q(1)*sin(2*pi*f*t); for i=2:length(I)
s=I(i)*cos(2*pi*f*t)+Q(i)*sin(2*pi*f*t); y=[y,s];end plot(y)
五.实验结果
眼图
QAM 星座图