基于DSP的JPEG视频压缩系统的实现

发布者:疯狂小马最新更新时间:2011-05-30 关键字:JPEG  视频压缩  多媒体 手机看文章 扫描二维码
随时随地手机看文章
     1 引言

  随着网络和多媒体技术的发展,视觉通信的重要性和需求急剧增加,如桌面视频会议、移动终端、基于因特网的视频通信等。这些视觉信息内涵丰富,但数据量大,必须压缩数据。但采用多种方法压缩图像数据,其数据量仍然巨大,这就对计算机处理速度、传输介质、传输方法和存储介质提出较高要求。因此,数据压缩作为数据图像处理的关键技术之一,对研究图像压缩编码技术具有重要价值。

  嵌入式微处理器中,DSP具有灵活、高速、便于嵌入式应用等优点,特别适合复杂算法处理的应用。数字视频图像压缩系统利用DSP作为其嵌入式平台,充分发挥其性能优势,较好地提高编码效率,满足图像实时处理需要。因此,这里介绍一种基于TMS320VC5509A型DSP的视频压缩系统。

  2 静止图像的压缩编码标准JPEG

  JPEG(Joint Photographic Experts Group)是由国际标准化组织(ISO)提出面向静止图像编码的标准,其处理方法依次使用离散余弦变换、量化、Z行扫描、游程编码和不变字长编码。JPEG算法定义了以下4种运行模式:

  (1)基于DCT顺序型模式按照从左到右、从上到下的顺序对图像进行扫描和编码,称为基本系统。

  (2)基于DCT递增模式 按照从粗到细的顺序对一幅图像进行编码,适用于传输时间长、用户喜欢图像从粗糙到清晰的场合。

  (3)无失真编码模式保证重建图像与原始图像完全相同。

  (4)分层编码 采用各种分辨率对图像进行编码。

  该系统采用基本系统模式。图1是JPEG的编码框图。

JPEG的编码框图

  3 硬件系统设计

  该视频压缩系统直接与PAL制摄像头的输出端相连,来采集、预处理和压缩现场图像,再以USB或RS232方式将处理后的图像数据传给上位机。图2为视频压缩系统硬件结构图。

视频压缩系统硬件结构图

  该系统硬件设计以TI公司的TMS320VC5509A型数字信号处理器为核心,包括视频采集电路、FPGA预处理电路、存储器扩展、系统电源和看门狗电路等。系统中TMS320VC5509A为中央处理器;SDRAM为DSP外扩数据存储器;Flash为程序存储器,用于系统上电自举;模拟摄像头与视频 A/D转换器负责视频图像采集;FPGA用于地址译码、隔行运算,控制两片SRAM用于缓存视频A/D转换器转换后的数字图像。从系统设计成本考虑,这里选用Altera公司的可编程逻辑器件EPIC6Q240C8型FPGA。该器件是Cyclone系列器件中一款非BGA封装的可用I/O引脚最多的 FPGA。

  3.1 视频采集电路

  该系统选用的视频解码器为Philip公司的高性能视频A/D转换器SAA7111。该器件是一款广泛应用于桌面视频、多媒体、数字电视、图像处理、视频电话的高性能视频输入处理器件。该器件采用3.3 V的CMOS电路,高度集成模拟前端和数字视频编码器;包括2路模拟视频处理通道,1个时钟产生电路,1个自动箝位和自动增益控制电路,1个多制式数字解码器,1个亮度/对比度/饱和度控制电路,以及色彩空间矩阵。SAA7111输出为16位VPO总线,支持不同位宽的数据输出格式。SAA7111支持的输出格式包括:12位YUV411,16位YUV4:2:2,8位CCIR-656、16位565RGB以及24位的888RGB。图3为视频采集电路。

视频采集电路

  3.2 存储器选型

  选择存储器应从以下方面考虑:首先图像压缩算法中间数据量大,要求处理器的片上内存尽可能大,尽量避免对外部存储器读写操作。VC5509A的片上存储器包括32 Kx16位DARAM,96 Kx16位SARAM,共128 K位的存储空间。其中DARAM为双地址,在每个周期内可以对其进行两次操作(2次读,两次写,一次读和一次写),这样大大增加片上存储器的利用率;其次,VC5509A片上资源丰富,包括I2C总线(多主从接口),3个McBSPs(1个与多媒体卡/数字加密卡MMC/SD串行接口复用引脚)。利用 FC总线对SAA7111的片内控制寄存器进行读写操作,非常方便实时控制SAA711 1的工作状态;利用McBSP配合DMA,软件编程实现UART功能,无需专门的硬件UART,从而节省电路板空间:VC5509A采用144引脚 LQFP封装,便于安装、调试;VC5509A功耗小,工作在200 MHz主频下,功耗仅100 mW,非常适合嵌入式应用。

  3.3 DSP供电电源电路

  DSP基本系统由独立的电源系统供电,而硬件平台的其他器件共用另一套电源供电系统。为了降低系统功耗,DSP一般采用低电压供电.并且采用I/O和 CPU内核分开供电方式。VC5509A不同的工作频率要求不同的核电压,200 MHz为1.6 V,144 MHz为1.35 V,108 MHz为1.2 V。DSP的I/O电压为3.3 V。

[page]

  DSP供电电源电路如图4所示。选用TI公司的两款LDO电源器件TPS76801和TPS75833分别为DSP提供内核电压和I/O电压。

DSP供电电源电路

  TPS76801能给CPU内核提供最大1 A的电流,电压在1.2~3 V范围内可调。

  调整TPS76801的输入电阻值得到1.6 V,1.35 V,1.2 V的核电压,DSP相应工作在200 MHz,144 MHz,108 MHz的频率下。而TPS75833能提供最高3 A的I/O电流,对于低功耗的TMS320VC5509A,这已足够保证其工作在最大负荷状态。

  4 系统软件设计

  该系统软件设计的主要功能是实时采样现场的视频信号,然后对网像数据编码压缩并通过USB总线或RS232串口将图像数据传送给主机。系统主程序流程如图5所示,该系统软件设计可分为系统初始化、图像采集、压缩编码和数据传输4个主要模块。

系统主程序流程

  系统上电后,DSP首先初始化,初始化主要包括:通过I2C总线初始化SAA7111,设置其工作模式;空间分配,EMIF的配置以保证外部存储器的正常访问;配置USB模块;设定DMA通道以及设定外部中断。然后DSP等待FPGA的中断。当DSP接收到FPGA的中断后,DSP设定标志寄存器,启动 DMA读取数据,并进行编码。当编码结束后,DSP把数据交付USB模块,通过USB总线传送至上位机,同时DSP向FPGA发送空闲信号,通知FPGA 继续发送下一帧。

  5 JPEG优化

  JPEG算法在DSP上实现需要解决编码速度问题。片上内存资源的有限性使得大部分的程序代码和数据不得不放在片外,大量的图像数据在慢速的SDRAM存储器中,对其访问和算术运算是影响系统性能的关键因素之一。因此,应从内存分配和代码优化两个方面来优化程序,提高编码效率。

  5.1 数据内存优化

  由于VC5509A的片上存储器包括32 Kx16位DARAM,96 Kx16位SARAM,共128 K位的存储空间。其中DARAM为双访问内存,即在一个周期内可完成两次数据访问,SARAM为单访问内存,即在一个周期内只能完成一次数据访问,片外内存为扩展的SDRAM,访问其需要额外的等待时间,执行效率比较低。因此在算法设计中应合理安排内存分配,尽量将访问频繁的程序代码和数据放在片内内存中,特别是DARAM中,可以提高编码效率。

  5.2 C代码优化

  在JPEG的编码中,根据VC5509A结构特点及结合图像数据量大的特点,提高编码效率,考虑程序编写和优化如下:

  (1)利用编译器优化,开启编译器的优化选项,包括基本优化、文件级优化和程序级优化。

  (2)使用本征(intrinsics)函数,C55x提供了一种特殊函数一本征函数,可迅速优化C代码。本征甬数前有个下划线“一”,调用方法和普通函数相同。

  (3)使用图像库,TI提供基于C55x的图像库IMGLIB,库中都是图像处理常用的函数,而且可以用C语言调用,汇编优化好,执行效率高,因此尽量用库函数。在JPEG编码中比较关键的是DCT变换可调用库函数中的IMG_sw_fdct_8x8(short*fdct_data,short, *inter_buffer),该函数完成一次DCT变换需用1 078个时钟周期。大大提高JPEG的编码效率。

  (4)高效使用MAC硬件,C55x有专门的硬件高效执行MAC运算。一个周期中可以执行一个单乘加或一个双乘加(dual-MAC)运算。

  (5)使用特殊数据类型(register类型、volatile类型、const类型),对于需要多次重复访问的变量,如for循环中的变量值,一般可设置为register型变量。声明变量为register型能提高效率,但必须小心使用。在某些编译器中,优化器会自动分配一些变量为register 型。

  (6)减少判断循环,在使用判断方式选取控制语句时应尽量减少判断转移。DSP多采用流水线结构。由于TMS320C55X采用7级流水线结构,频繁的转移指令使得流水线难以发挥作用。

  另外。DSP的大多数指令为单周期指令,但转移类指令却通常要耗费较多的机器周期。因此,应尽可能减少程序中的转移分支,以提高程序的效率。

  6 实验结果

  6.1 压缩效果实验结果

  通过改变量化因子Q,改变图像的压缩比。压缩比越大,压缩过程中的视觉损失越大,压缩后的图片越不清晰。图6为采用不同的量化因子Q的压缩前后效果比较图。其中,图6a为未压缩,大小57.4 KB的原始BMP图像,图6b为压缩后大小为5.18 KB的图像,图6c为压缩后大小5.18 KB的图像。由图知,压缩后的图像与原始图像在视觉效果上相差不大。当Q=50时,压缩后图像所需存储空间仅为原图像的1/14。

 

采用不同的量化因子Q的压缩前后效果比较图

  6.2 压缩耗时实验结果

  对于一个8x8数据块,各步耗时如下:分块:1.335μs;DCT变换:5. 39μs;量化:1.355μs;哈夫曼编码:3.375μs。说明一个8x8数据块总耗时为11.455μs,一帧720x576灰度图像的压缩总耗时为90x72x11.455=74 228.4μs,再加上其他辅助操作,实际耗时约75 ms。根据上述结果,在1 s内向上位机发送13帧720x576的灰度图像,基本满足系统要求。

  7 结束语

  介绍基于TMS320VC5509A DSP的JPEG视频压缩系统的设计和实现方案,该系统硬件设计采用DSP+FPGA的方案,充分发挥了各自优势;而软件设计针对C55x的结构进行程序结构和算法优化,经过验证达到较好的实时效果。由于该系统体积小、功耗低,适用于一些野外图像采集、远程视频监控等需要连续传输图像的场合。

关键字:JPEG  视频压缩  多媒体 引用地址:基于DSP的JPEG视频压缩系统的实现

上一篇:基于TMS320DM642电子稳像算法的实现
下一篇:餐厅顾客服务终端

推荐阅读最新更新时间:2024-05-02 21:25

基于TMS320DM355的四路视频多媒体监控器
   1 引言   数字视频是利用诸如摄像机的视频捕捉设备采集外界影像信息并将影像信息数字化,然后将其记录到储存介质(如录像带、硬盘、光盘)或通过网络传输。而视频监控在安全防范系统中具有重要意义。这里提出基于TMS320DM355型达芬奇(DaVinci)数字媒体片上系统(DMSoC)的便携式多媒体视频监控器。    2 DaVinci技术简介   DaVinci技术是TI公司针对数字视频图像处理及应用而提供的一套完整的解决方案,包括处理器、开发工具、软件以及系统专业技术。DaVinci技术可利用数字信号处理与集成电路技术提供高度集成的片上系统(SoC),优化和处理数字视频。该片上系统具有高效的处理能力、存储器、I/O带宽。
[嵌入式]
便携式多媒体系统如何实现高质量音频
  在当前功能集中的便携式多媒体设备中,有越来越多的功能正被集成到越来越小的系统中。音频是市场上任何具有多媒体功能的系统中最基本的功能,但系统设计师通常更关注‘吸引人眼球’的特性,如无线连接、视频处理、图像捕获和显示等。其结果是,在众多的重要元器件之间,哪里有一点空间,就把音频电路挤身到哪里,从而导致音频质量非常一般乃至低劣。然而,只要稍加注意,良好的音频质量就能与用户要求的众多其它性能一起被无缝集成到系统中。本文提供了一些与包含有音频回放和/或记录功能的任何便携式系统设计相关的优秀系统设计和PCB版图设计的各种建议。   在便携式音频系统中存在许多引起劣质音频的源,不过本文主要关注模拟音频信号上影响音质的噪声源。不管是平坦(
[嵌入式]
如何实现多媒体手机处理器节能最大化
  随着高数据率基础设施在全球范围的不断扩张,以及多媒体设备的日益普及,多功能手机像以语音为主的手机一样几乎一直处于使用状态,但需要依赖于电池的容量。试设想当前用户可以在各自设备上进行的所有功能操作,例如下载/共享/收听音乐、下载/共享照片、玩游戏以及通过互联网进行影视观赏和餐馆订位等等,而这些正逐渐成为一种全天候的生活方式,因此需要设备具备更长的运行时间来支持。   用户体验对终端用户而言十分重要,而且网络运营商和内容提供商同样依赖这些新的多媒体功能及其扩展业务进行创收,故电池寿命受限意味着赢收受限。   目前的功率转换效率已超过90%,效率的进一步提升对整体的影响将很小。因此,有必要采用新技术进行系统级能量管理。如果处
[电源管理]
如何实现<font color='red'>多媒体</font>手机处理器节能最大化
机车视频监控系统的基本开发方案
1. 引言 随着我国铁路事业的不断发展,机车行驶的速度越来越快,确保机车行驶的平稳安全已经成为铁路运输部门工作的重中之重,帮助司机和地面管理部门实时监控机车运行状况已经成为当务之急。特别是在机车驾驶由正、副司机操作改革为单司机值乘后,一个司机在操作机车的同时还必须监控动力间、辅助间、电器间等设备间的运行情。在这样的背景下,研制一套机车视频监控系统来帮助司机在驾驶室内对整个机车实施监控,辅助地面管理部门远程实时掌握机车运行状况,就显得十分重要了 .本文从网络选择和系统结构方面论述了机车视频监控系统的基本开发方案。 2. 无线网络的选择 要使地面管理部门能够实时监控机车运行状况,该系统就必须选用无线网络来传输数据。目前,在我国,
[嵌入式]
大容量NAND Flash在多媒体手机中的应用
1引言 随着手机市场竞争的日趋激烈,多媒体手机逐渐成为市场的宠儿。因为有大量的多媒体数据,因此大容量存储是多媒体手机所要解决的首要问题。 NOR和NAND是现在市场上两种主要的非易失闪存技术。NOR的特点是芯片内执行(XIP,eXecuteInPlace),这样应用程序可以直接在flash闪存内运行,不必再把代码读到系统RAM中。NOR的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快,是大数据量存储的最佳选择。在选择存储方案的时候,设计师必须综合考虑以下因素: (1)NOR的读速度比NAND稍快一
[嵌入式]
英特尔面向汽车、多媒体电话的凌动处理器
      2009 年 3 月 2 日,美国加利福尼亚州圣克拉拉市为开辟更多行业市场,英特尔公司围绕英特尔® 凌动™ 处理器展开了一系列创新,并于今天宣布推出四款独具特色的凌动™ 处理器和两款全新的系统控制器 (SCH),进一步丰富了嵌入式业务部门的产品线。英特尔公司专为英特尔® 凌动™ Z5xx 系列处理器开发的全新产品有工业温度选项并提供不同封装尺寸选择,更适合车载信息娱乐设备、多媒体电话、生态技术及其它工业级应用使用。      低功耗英特尔® 凌动™ 处理器是英特尔拓展几大新兴计算领域市场份额的背后功臣,正是在该系列处理器的帮助下,英特尔才得以将广泛使用的英特尔® 架构扩展到车载信息娱乐系统(IVI)、工业控制与自动
[电源管理]
适宜于嵌入式多媒体应用的Flash文件系统
摘要:嵌入式多媒体应用中大量数据存储在Flash上,本文以文件系统的方案解决数据存储的管理问题。对嵌入式多媒体应用中Flash文件系统的应用特点与关键设计进行了分析,设计实现了一个功能完整的文件代号管理、文件指针存取以及对应用透明的自动坏损管理的文件系统。针对嵌入式系统应用的需要,改进了本Flash文件系统的应用可靠性,降低了其系统资源开销。针对多媒体应用的数据特点,提出了存储内容自适应的环境管理策略。仿真与实用的效果表明,本Flash文件系统适宜于嵌入式多媒体应用。 关键词:嵌入式系统 多媒体Flash存储器 文件系统 随着电子技术的不断发展,嵌入式系统越来越多地在控制类、消费类、通讯类等电子产品广泛应用,并且随着数字信号处
[缓冲存储]
多媒体手机的电源管理方案
手机电视、手机游戏以及音频播放等多媒体应用向手机中的电源管理设计提出了巨大的挑战。手机设计人员需要在加入新的多媒体功能的同时,保持手机小巧的外形并维持电池的长寿命。新应用处理器提供了出色的新功能,但代价是功耗更高。新的AV功能意味着音乐回放时间更长,由此音频放大的效率必需更高,从而延长回放时间。而且,当手机上的AV功能变得更成熟时,音频质量和输出功率的要求也会更高。在本文中,我们讨论了一些解决方案,可以帮助设计人员应对这些与新型多媒体手机电源和音频放大有关的挑战。 新应用处理器的电源 为了使手机外形小巧,使用集成电源管理单元(PMU)是非常普遍的。PMU的优点是简化了电源设计,而且与使用几个分立元件电源解决方案相比,减小了解决
[应用]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

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