基于TMS320C5409的图像压缩系统

发布者:Lihua1314520最新更新时间:2006-09-11 来源: 电子设计应用关键字:运算  算法  乘法  蝶形 手机看文章 扫描二维码
随时随地手机看文章

  

引言

随着多媒体和网络技术的发展,数字图像大信息量的特点对图像压缩技术的要求越来越高,因此,专用高速数字信息处理技术成为发展的方向。其中,在硬件技术中,TI推出的C5000系列DSP将数字信号处理器的处理能力提升到了一个新的高度,使信号处理系统的研究重点又回到软件算法上。在压缩算法研究方面,DCT、小波等多个算法因为其高可靠性和高效性也越来越受到青睐。

系统硬件设计

TMS320C5409作为主处理器的可行性分析


TMS320C5409时钟频率为100MHz,性价比极高。采用围绕1组程序总线、3组数据总线和4组地址总线建立的改进型哈佛结构,取址和读数可同时进行。有独立的硬件乘法器,有利于实现优化卷积、数字滤波、FFT、矩阵运算等算法中的大量重复乘法运算。具有循环寻址、位倒序等特殊指令,这些指令使FFT、卷积等运算中的寻址、排序及计算速度大大提高。有一组或多组独立的DMA总线,与CPU的程序、数据总线并行工作。

在本系统中,TMS320C5409作为主处理器,任务是实现JPEG压缩编码。

通过分析不难得到,当处理一帧大小为640×480的图像时,作JPEG压缩编码所需要的时间为:T=62×10(ns)×640×480=0.19866s,当所处理的图像分辨率更小时,则压缩每帧所花的时间更少,这对于应用在对实时性要求不是很高的场合是完全可行的。

硬件设计框图

图1是基于TMS320C5409的图像处理系统结构图。C5409为中央处理器,SRAM为DSP片外扩展数据存储器,EEPROM为脱机工作时的程序存储器,用于存储系统的引导程序和其它应用程序,A/D转换部分负责把转换为数字信号的图像存入帧存储器中。地址译码、图像采集系统控制电路产生本系统各部分的地址译码信号,使之映射到不同的地址区域,并控制ADC进行图像采集,这部分由CPLD控制;图像采集芯片的寄存器控制由51单片机完成。

存储空间的扩展方案

经过A/D转换的原始图像数据是非常大的,TMS320C5409的内部仅有32KB的RAM和16KB的ROM,不能满足需要,因此,必须扩展存储器来存放原始图像数据和应用程序。本文考虑外接64KB的RAM和512KB的Flash,RAM使用Cypress公司的CY7C1021V33,Flash采用SST公司的SST39VF512。由于C5409的数据空间仅为64KB,因此采用内存页扩展技术。C5409的扩展输出口1Q和2Q作为扩展内存的页选择信号。用C5409的A15引脚和XF引脚通过3/8译码器来控制扩展存储器片选信号的产生,当A15=0时,选择片内RAM;当A15=1,XF=0时选择片外SRAM;当A15=1,XF=1时选择片外Flash;存储器的扩展如图2所示。将外部扩展RAM的64KB中的48KB用于存放原始图像数据,16KB用于存放压缩后的图像和程序以及暂存的数据。

DSP芯片电源电路设计

电源设计中需要考虑的主要问题是功率和散热。功率要求:电流的消耗主要取决于器件的激活度,即CPU的激活度,外设功耗主要取决于正在工作的外设及其速度,与CPU相比,外设功耗是比较小的。以TMS320C5409为例,进行FFT运算时,需要的电源电流最大。因此在设计电源时,必须考虑在电源电流和实际需用电流之间留有一定裕量,因为峰值电流会更大,裕量至少是20%。

C5409采用了双电源供电机制,工作电压为3.3V和1.8V。其中,1.8V主要为DSP的内部逻辑提供电压,包括CPU和其它所有外设逻辑。外部接口引脚采用3.3V电压。本系统的电源采用了TI公司的两路输出电源芯片TPS73HD318,它是一种双输出稳压器。输出电压一路为3.3V、一路为1.8V,每路电源的最大输出电流为750mA。

JPEG图像压缩算法

JPEG算法的优化


尽管JPEG基本系统能够对图像进行低压缩比压缩,但是DCT和IDCT在软件实现的过程中,是最耗费时间的运算,而且,由于没有考虑图像本身的频谱特性,JPEG量化表对于所有图像压缩并不一定最优。采用快速DCT算法可提高软件的速度,增强软件的实时性。同时,根据图像本身的频谱特性,自适应改进JPEG推荐的量化表。

快速DET算法

如果将一幅图像分成许多8×8的小块后直接进行2D—DCT变换,运算量将会十分巨大。因此,需要将8×8二维DCT变换转换成两次8点的一维DCT复合运算。具体做法是对每一个8×8块先做列方向上的DCT变换,得到一个中间矩阵,再对该矩阵各行进行DCT变换。可以看到,8×8矩阵的2维DCT可以转换成16次一维8点DCT。

目前,很多针对一维DCT运算的DCT快速算法已经提出。其中,Loeffler算法所需要的计算量最小。Loeffler算法将8点一维DCT运算分为4级,由于各级之间的输入/输出存在依存关系,4级操作必须串行进行,而各级内部的运算可并行处理。

流程图中有三种运算因子:蝶形因子、旋转因子和倍乘因子,分别如图3中的a,b,c所示。蝶形因子的运算关系为:

D0=I0+I1

O1=I0-I1

需要2次加法完成,倍乘因子的输入/输出关系比较简单:,只需1次乘法,旋转因子的运算关系为:

需4次乘法、2次加法完成。如果对其输入/输出关系式做以下变换:

只需要3次乘法、3次加法。其中,和差都是已知系数,可通过查表获得。

由此计算可知,一个8点DCT的Loeffler算法共需要11次乘法和29次加法。从DSP汇编语言编程的角度来看,一个代数运算应包括取操作数、运算、存操作数三个步骤。因此,该算法大约需要120条指令。C5409的运算能力很强,支持单周期加/减法和单周期乘法运算,并且能够在单周期内完成两个16位数的加/减法运算,再加上DSP中有3组数据总线,因而可以利用长操作数(32位)进行长字运算。在长字指令中,给出的地址存取的总是高16位操作数,因而只需5条长字指令即可计算2个蝶形运算。加上采取其它优化措施,大约需90条指令完成Loeffler算法。

虽然Loeffler算法运算量最小,但是运用于本文系统并不是最优。因为该算法是为高级语言设计,没有利用汇编语言的特点和DSP硬件的特点。本文提出了基于DSP乘法累加单元的DCT快速算法。

DSP的乘法累加单元能在单周期内完成一次乘法和一次累加运算。如汇编指令运用于DCT运算,将大大简化程序的复杂度并减少计算时间。具体算法如下,利用蝶形运算:

从上面表达式可以看出,y(0)-y(7)都是乘法累加运算,而s0-s7可由x(0)一x(7)经过蝶形运算得到,因此,DCT算法由原来的4级运算变成两级,即第一级蝶形运算和第二级乘法累加运算,第一级蝶形运算共要10+4=14(10次计算操作和4次辅助操作)条指令,第二级运算中,每个输出要4+1+1=6条指令(做4次乘法累加运算、1次读取操作和1次存储操作),一共48条指令,这样,计算一个8点DCT要62条指令,大大缩减了运算时间,提高了CPU的工作效率,增强系统的实时性。

量化运算优化

本文提出了基于实际情况的自适应量化方法,即量化阶段采用二次计算的方法,其算法主要分为两步:(1)对变换后的图像系数进行自适应处理;(2)构造新的量化表。具体方法如下:

首先求出亮度分量和两个色度分量在频域中所有8×8子块的63个交流系数绝对值的平均值P(u,v),其中,u,v=0…7为位置信息。接下来求出163个交流系数平均值中的最大值,Z1(u,v)=MAX[P1(u,v)],最后将63个交流系数平均值进行归一化处理,同时加入频率位置信息,分别得出亮度和色度量化表中63个交流分量的矫正系数,计算过程为:

由此可以得到量化表的矫正式Qpl(u,v)=Q1(u,v)/X1(u,v),对JPEG量化表进行矫正。

将上述矫正后的量化表作为最终的量化表,对图像进行标准JPEG压缩,形成完全符合JPEG格式的压缩文件。本算法的解码过程与标准.JPEG解码过程完全相同,可以看出它也是标准.IPEG编码过程的逆过程。

实验结果

快速DCT运算


将本文提出的算法、Loeffler的DSP优化算法和纯Loeffler算法分别进行测试。结果见表1,可以看到本文算法较Loeffler的DSP优化算法大约节省了1/4的时间,较纯Loeffler算法大约节省了一半时间,其效果是十分明显的。

自适应量化

对自适应量化器进行仿真。本文采用中等复杂度的标准图像作为测试图,与基本JPEG系统进行性能比较(基于峰值信噪比(PSNR))。只将JPEG标准方法中的量化表更改为修正的量化表,就可以在同等压缩比下,提高恢复图像的质量。表2为不同压缩比下,采用JPEG量化表和自适应量化表两种方法的峰值信噪比。从压缩比和峰值信噪比的对比结果可看出,自适应量化JPEG方法的压缩比略高于标准JPEG方法。

结语

本文以TI的TMS320C5409作为开发平台,实现了一种新的JPEG图像压缩系统。该系统的优点是提高了JPEG的运行速度,增强了图像的压缩率和质量,并且易于硬件实现。这一方案可应用于需要对视频图像进行实时采集、压缩及存储的绝大部分场合。

?

关键字:运算  算法  乘法  蝶形 引用地址:基于TMS320C5409的图像压缩系统

上一篇:基于联合频率分析的数字信号自动调制识别
下一篇:基于DSP和DDS的商品防窃监视器扫频信号源

推荐阅读最新更新时间:2024-05-13 18:14

音频处理算法助升小型扬声器的音质
现代智能手机机身灵巧且功能强大,虽然手机尺寸随机型而有所不同,但总体而言,一款业界一流的器件可将诸多特性封装到一个大约110x60x15mm的封装中。 如果将显示屏和电路板考虑在内的话,那么留给扬声器的空间就不多了。现在,让我们想象一下家庭影院中一个低音炮扬声器所占的空间大小,也许大多数人会觉得这完全是两码事甚至不具备任何可比性。从某种程度上来讲,的确可以这么理解。然而事实上,即便他们确实是两种截然不同的应用,但它们运行的内容却日趋相似。移动通信的高速技术(3G、3.5G、4G)及其支撑网络实现了手机音频和视频的下载功能和回放功能。手机用户在希望更高带宽的同时,也希望能有更好的音频和视频质量享受。 问题是提升音频
[嵌入式]
音频处理<font color='red'>算法</font>助升小型扬声器的音质
ADSL模拟前端中低噪声高速运算放大器的应用简介
随着上网的人数的迅速增长,传统调制解调器、ISDN提供的低速和易断线的窄带上网方式开始逐渐遭到用户的摈弃。在各种各样的宽带连网方案中,ADSL受到了广大网民的青睐。但是,如何选择理想的ADSL调制解调器解决方案,是设计工程师所面临的新挑战。 针对这种现状,本文介绍采用LMH6643满摆幅输出芯片、LMH6672线路驱动器及LMH6622低噪声运算放大器 组合实现的方案,该方案具有能充分发挥ADSL基带数字信号处理器性能的优点。结构框图参见图1所示。 图中数字模拟转换器的输出端可采用在LMH6643芯片中的一对放大器作为差分缓冲放大器,提供LMH6643与LMH6672之间的低通滤波器的阻抗匹配、绝缘及驱动。图 2 的
[模拟电子]
ADSL模拟前端中低噪声高速<font color='red'>运算</font>放大器的应用简介
研究人员开发了改善Murab任务算法 使机器人能做出更小更精确的手术
Murab项目(通过MRI和超声机器人辅助活组织检查),一只手臂的机器人,准确地放置针头进行活检,同时其系统实时识别肿瘤。约翰介绍这台机器大卫·穆尼奥斯,在哥伦比亚国立大学(UN)和博士生在汉诺威(德国)大学机电工程师,谁解释说,机器人执行 - 没有更有效的评估和快速独自乳腺癌但是肌肉疾病 - 从磁共振的扫描技术和超声波的结合。 算法 在他的硕士项目中,研究人员开发了改善Murab任务的算法,这使他能够做出更小更精确的切割,避免组织受伤,从而减少疼痛,并使手术更加可忍受。 您还可以转换医生的运动,使机器人手臂仅移动毫米,这是一个巨大的优势,因为它在执行手术时不会随时疲劳。 研究人员评论说,“结合了两种类型扫描
[机器人]
引入了标准运算管芯,谷歌AI芯片更加多样化
自从谷歌公司的AlphaGo机器人战胜人类围棋之后,人工智能便一直活跃在人们的视野之中,与各种人工智能方法对应的是AI芯片。而在18年的Next云计算大会上,谷歌披露了自家抢攻IoT终端运算的战略武器,其中最引人关注的就是Edge TPU芯片的发布。 据悉,谷歌不仅为在自己的数据中心开发人工智能芯片,还打算在将其设计的Edge TPU用在其他公司生产的产品中。这种人工智能芯片在物联网应用以及智能终端设备中具有巨大的使用空间。 在AI芯片设计方面,随着神经网络的使用在人工智能计算领域中迅速增长,专用集成电路(ASIC)的专用计算机的使用已经被用于处理神经网络,虽然这些方法可以用于设计AI芯片,但是随着神经网络的普及和针对其使用神经网
[手机便携]
引入了标准<font color='red'>运算</font>管芯,谷歌AI芯片更加多样化
高清电视音频解码的定点DSP实现
  数字技术的高速发展使广播电视进入了由彩色电视向高清晰度电视( HDTV) 跨越的过渡时代,音/ 视频产品数字化、高清晰度化已成为未来家电视听产品的趋势. 高清电视音频解码方案有欧洲数字视频广播(DVB) 标准采用的MPEG22 ( layer I ,layer II) 和美国A TSC 标准使用的Dolby AC23 两种. 其中DVB 标准被大多数国家接受,中国正在制定的数字电视标准同样是基于DVB 标准. 目前国内外许多公司都在从事高清电视及机顶盒芯片的研究,低成本高性能的芯片具有一定的竞争优势.音频解码是解码芯片的一部分. 作者通过对MPEG-2 多通道音频解码算法介绍及其优化,C 程序定点化,高性能媒体处理器DM642
[嵌入式]
基于RSSI测距和距离几何约束的节点定位算法
   无线传感器网络 是一种全新的信息获取和处理方式,是由部署在感兴趣区域的大量低成本、低功耗的微型 无线传感器网络 节点组成。作为 无线传感器网络 的基本组成部分,节点的位置信息对整个 无线传感器网络 是非常重要的。节点收集感知数据时,如果不知道其感知对象位置,所感知的信息往往是毫无意义的 。目前定位算法主要分两大类,基于测距算法(range-based)和无需测距算法(range-free)。基于测距算法通过测量节点间的距离和角度信息,使用三边测量、三角测量或最大似然估计等定位算法。常用的测距技术有 RSSI (接收信号的强度指示)、TOA、TDOA和AOA等。无需测距定位算法则不需要距离和角度信息,算法根据网络连通性等信息来
[嵌入式]
基于仿真的自动驾驶可靠性分析算法
随着自动驾驶技术的加速发展与应用落地,如何检验和验证自动驾驶车辆及系统的可靠性变得至关重要。自动驾驶系统存在的风险可以通过该系统发生事故即失效的概率衡量,因此,验证自动驾驶系统失效的概率是否低至可以接受水平是自动驾驶验证的一个重要目标。为了验证或估计这个极低的概率,需要高昂的时间及安全成本完成实车路测——根据相关分析,为了得到失效概率的一个可靠置信区间(95%置信度,相对误差20%)需要超过五千万英里的道路测试。故高成本效益的仿真模拟测试成为验证自动驾驶系统可靠性的重要手段。 本文简要阐述和分析蒙特卡罗方法面对小概率事件时的困难,如何通过可靠性分析算法估计自动驾驶系统在逻辑场景中的失效概率,并将基于场景的测试结果转化为整体失效
[嵌入式]
基于仿真的自动驾驶可靠性分析<font color='red'>算法</font>
利用可编程逻辑器件设计有限冲激响应滤波器
  1 引 言 一个模拟集成运算放大器可实现一个二阶 滤波器,高阶滤波器可由二阶滤波器串联而成。然而,无源元器件 实现滤波器的误差值为1.5%或更高,这需要提高元器件的性能。滤波器的典型的调试方法是不断的更换元器件值。而且,运算放大器要获得高的增益带宽,需要相位漂移保持最小或要保持闭环系统的稳定,这必然增加工程中实现滤波器的难度。 随着数字信号处理的发展,数字滤波器比传统的模拟滤波器在设计的选择中更有吸引力。因为数字系统的信号是数字量,他相对于模拟滤波器更容易进行滤波代数运算。而且,数字滤波器没有模拟滤波器随时间、温度、电压漂移的优点。他能很容易地实现过滤低频信号的设计目的。还有,数字滤波器能实现近似的理想响应
[应用]
小广播
最新应用文章

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved