《视频图像帧内编码》由会员分享,可在线阅读,更多相关《视频图像帧内编码(5页珍藏版)》请在金锄头文库上搜索。
1、视频图像帧内编码-国立华侨大学一 实验目的1. 了解多媒体通信中图像压缩技术2. 熟悉视频帧内压缩编码过程3. 掌握二维 DCT 变换算法二 实验原理视频帧内编码有多种模式,最基本的是基于 88 块的 DCT 顺序编码,将一帧图像分为 88 的块,然后按照从左至右、自上而下的顺序,对块进行DCT、量化和熵编码。其编、解码框图如下:图1 基于DCT的顺序编码框图DCT解码器IDCT逆量化器熵解码器量化表熵编码表压缩图像数据 重构图像图 2 基于 DCT 的顺序解压缩框图视频帧内压缩编码算法的主要步骤:1) 正向离散余弦变换(DCT)。 2) 量化(quantization)。 3) Z 字形扫描
2、(zigzag scan)。 4) 使用差分脉冲编码调制(differential pulse code DCT 熵编码器量化表 熵编码表压缩图像数据源图像数据基于DCT的编码器图像子块量化器modulation,DPCM)对直流系数(DC)进行编码。 5) 使用行程长度编码(run-length encoding,RLE)对交流系数(AC)进行编码。 6) 熵编码(entropy coding)。三 实验过程实验利用 MATLAB 仿真软件来实现程序:I=imread(D:p_large_iUNl_627c0001a3192d12.bmp)figure(1),imshow(I);title(
3、原图像)I=rgb2gray(I); %将真彩色 RGB 图像转换成灰度图像figure(11),imshow(I);title(灰度图像)I=im2double(I);% double(I)是将 I 变成 double 类型的。im2double(I) 是将图象变成 double 类型的再归一化,比如对于 8 比特图象,就是将原来像素值除以 255。fun_1=dct2;A_1=blkproc(I,8 8,fun_1);figure(2),imshow(A_1);title(离散余弦变换后的图像)T=0.3536 0.3536 0.3536 0.3536 0.3536 0.3536 0.35
4、36 0.35360.4904 0.4157 0.2778 0.0975 -0.0975 -0.2778 -0.4157 -0.49040.4619 0.1913 -0.1913 -0.4619 -0.4619 -0.1913 0.1913 0.46190.4157 -0.0975 -0.4904 -0.2778 0.2778 0.4904 0.0975 -0.41570.3536 -0.3536 -0.3536 0.3536 0.3536 -0.3536 -0.3536 0.35360.2778 -0.4904 0.0975 0.4157 -0.4157 -0.0975 0.4904 -0.
5、27780.1913 -0.4619 0.4619 -0.1913 -0.1913 0.4619 -0.4619 0.19130.0975 -0.2778 0.4157 -0.4904 0.4904 -0.4157 0.2778 -0.0975A_2=blkproc(A_1,8 8,x./P1,T);figure(3),imshow(A_2);title(量化后的图像)A_3=blkproc(A_2,8 8,x.*P1,T);figure(4),imshow(A_3);title(逆量化后的图像)fun_2=idct2;I_2=blkproc(A_3,8 8,fun_2);figure(5),
6、imshow(I_2);title(对逆量化的进行逆离散余弦变换);E=I-I_2;figure(6),imshow(E),colormap(hot);title(误差图像) B=blkproc(I,8,8,P1*x*P2,T,T) %计算二维 DCT,矩阵 T 及其转置是 DCT 函数 P1*X*P2 的参数mask=1 1 1 1 0 0 0 01 1 1 0 0 0 0 01 1 0 0 0 0 0 01 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0 %二值掩模,用来压缩 DCT 系数,
7、只留下 DCT 系数中左上角的 10 个B2=blkproc(B,8 8,P1.*x,mask) %只保留 DCT 变换的 10个系数I2=blkproc(B2,8 8,P1*x*P2,T,T) %重构图像figureimshow(I2);title(压缩图像);inf1=imfinfo(D:untitled.bmp) %显示图像信息inf=imfinfo(D:p_large_iUNl_627c0001a3192d12.bmp) %显示图像信息面的高度其仿真结果如下:1.输入图像 2. DCT 变换后的频域图像3、88 的 DCT 变换后图像4. 压缩后的图像5、误差图像四、实验小结DCT 将原始图像信息块转换成代表不同频率分量的系数集,这有两个优点:其一,信号常将其能量的大部分集中于频率域的一个小范围内,这样一来,描述不重要的分量只需要很少的比特数;其二,频率域分解映射了人类视觉系统的处理过程,并允许后继的量化过程满足其灵敏度的要求。