资料介绍
现今的图像编码标准,一般采用纹理编码方式对图像进行压缩。这种方式极大的利用了图像数据的空间相关性,使图像数据的压缩能够达到很高的比率。它主要是利用数学变换的方法,使用极少量的离散信号来表示大量的时域连续信号[1]。常用的数学变换有很多种,比如离散傅立叶变换DFT、沃尔什变换、哈尔变换、斜变换、离散余弦变换DCT、离散正弦变换DST 、K-L变换等。其中,K-L变换为理想状态下的最佳变换方法,但是,由于K-L变换没有快速的变换算法,而DCT、DFT和DST都具有与K-L变换近似的良好性质,尤其是当一阶马尔可夫过程相邻元素相关系数ρ逼近1时,DCT的近似性能远远优于其它两者,并且DCT变换有具体的快速算法。因此,图像压缩标准中,使用DCT变换来实现纹理编码。
由于DCT变换在各种编码标准中要被反复调用,因此,其代码执行效率对实时视频压缩起着至关重要的作用。实际应用中,如何实现DCT变换的编码及如何用硬件电路实现这种编码变换是使用者关心的问题[。本文将利用DSP实现图像的二维DCT变换并对其实行优化。
2 DCT 变换
1974年Ahmed和Rao首先给出二维DCT 变换的数学表达式。该表达式适用于N点的DCT定义,但是,由于MPEG编码一般是把视频图像帧或图片分为场、片、宏块的结构,一帧图像一般包括1-2场,每场包括若干片,每片包括若干宏块,为了方便处理,把每个宏快分成8×8的子块,即DCT处理的基本单元是8×8的子块。因此,直接定义实用8点二维DCT变换:
其反变换为:
其中 ,i,j,u,v=0,1…7.
在(1)式中,把变换核分离可得两次一维DCT变换:
因此,可以使用2次一维DCT变换来实现二维DCT变换。
在该定义被提出以后,很多优秀的算法也被提了出来。如Chen,Lee的快速DCT算法等,Loeffler 在1989年提出的实用快速DCT算法共使用11次乘法和29次加法,该算法比起Chen的算法快而且不会发生Lee算法中的上溢问题,并且该算法被证明已经达到了算法极限,是最优秀的算法[4]。该算法如图1,它把整个DCT过程分成了四级,第一级只有8次加法,第二级分为上下两块,上面是偶块,下面是奇块,偶块有4次加法,奇块有6次乘法和6次加法,第三级上面有5次加法3次乘法,下面有4次加法,第四级仅奇块有2次乘法和2次加法。由图1可见,奇数部分的第四级与第二级的计算构成了连续的乘法,这种运算实现的时间将增加实际的计算时间。故Loeffler 提出了无乘法串行的并行计算方法,该方法使用了12次乘法和32次加法,这在具有并行的MAC处理器的运算中,并不增加实际的计算时间[1]。本文即采用这种DCT算法实现图像的压缩与处理。
由于DCT变换在各种编码标准中要被反复调用,因此,其代码执行效率对实时视频压缩起着至关重要的作用。实际应用中,如何实现DCT变换的编码及如何用硬件电路实现这种编码变换是使用者关心的问题[。本文将利用DSP实现图像的二维DCT变换并对其实行优化。
2 DCT 变换
1974年Ahmed和Rao首先给出二维DCT 变换的数学表达式。该表达式适用于N点的DCT定义,但是,由于MPEG编码一般是把视频图像帧或图片分为场、片、宏块的结构,一帧图像一般包括1-2场,每场包括若干片,每片包括若干宏块,为了方便处理,把每个宏快分成8×8的子块,即DCT处理的基本单元是8×8的子块。因此,直接定义实用8点二维DCT变换:
其反变换为:
其中 ,i,j,u,v=0,1…7.
在(1)式中,把变换核分离可得两次一维DCT变换:
因此,可以使用2次一维DCT变换来实现二维DCT变换。
在该定义被提出以后,很多优秀的算法也被提了出来。如Chen,Lee的快速DCT算法等,Loeffler 在1989年提出的实用快速DCT算法共使用11次乘法和29次加法,该算法比起Chen的算法快而且不会发生Lee算法中的上溢问题,并且该算法被证明已经达到了算法极限,是最优秀的算法[4]。该算法如图1,它把整个DCT过程分成了四级,第一级只有8次加法,第二级分为上下两块,上面是偶块,下面是奇块,偶块有4次加法,奇块有6次乘法和6次加法,第三级上面有5次加法3次乘法,下面有4次加法,第四级仅奇块有2次乘法和2次加法。由图1可见,奇数部分的第四级与第二级的计算构成了连续的乘法,这种运算实现的时间将增加实际的计算时间。故Loeffler 提出了无乘法串行的并行计算方法,该方法使用了12次乘法和32次加法,这在具有并行的MAC处理器的运算中,并不增加实际的计算时间[1]。本文即采用这种DCT算法实现图像的压缩与处理。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- DCT的图像压缩编码算法的MATLAB实现
- 部分和分解的二维DCT变换快速算法研究
- 离散余弦变换(DCT)的DSP仿真实现
- 基于LABVIEW的二维码视觉技术模板 57次下载
- 基于深度神经网络模型的二维主成分卷积自编码器 19次下载
- 多级二维整数小波变换的FPGA实现资料详细说明 9次下载
- 如何使用神经网络进行残缺二维码的识别算法详细资料介绍 25次下载
- C语言程序设计教程之二维数组如何应用二维数组的资料概述 3次下载
- QR二维码生成程序下载 56次下载
- 二维码技术的编译规则分析 29次下载
- 一种基于FPGA的二维DCT和IDCT的新算法 59次下载
- 二维条码的编解码及系统实现 0次下载
- 二维DCT图像处理器的低功耗实现 27次下载
- 二维DCT编码的DSP实现与优化
- 基于时空二维混沌的数字水印算法
- 首次实现GHz频率的二维半导体环形振荡器电路 745次阅读
- 制造二维TMD晶体管面临的挑战 1079次阅读
- 鸿蒙上生成专属“二维码” 1290次阅读
- 二维半导体晶体管实际沟道长度的极限 2519次阅读
- 二维冰的形成机制 1072次阅读
- QR二维码解码流程与使用方法 9797次阅读
- 鸿蒙 java 版本二维码识别扫描演示 3625次阅读
- 详解二维码的安全与隐私保护机制 6475次阅读
- 二维码门禁系统是怎样的工作原理 5742次阅读
- 二维材料从新出发 2689次阅读
- 立功科技嵌入式平台“软”实力——二维码算法篇 1499次阅读
- 如何将视频转换生成二维码扫码观看 1.2w次阅读
- MyQR一个简单又好玩的Python库快来制作专属你动态二维码吧! 2.1w次阅读
- 一维卷积、二维卷积、三维卷积具体应用 4532次阅读
- NFC与二维码的优劣与应用分析 7799次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1489次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 91次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 9次下载 | 免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
- 7基于单片机和 SG3525的程控开关电源设计
- 0.23 MB | 3次下载 | 免费
- 8基于单片机的红外风扇遥控
- 0.23 MB | 3次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30319次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537791次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233045次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多