您当前的位置:首页 > 好词好句 > 正文

文章编码应用的jpeg2000压缩算法实现什么_文章编码应用的JPEG2000压缩算法实现

文章编码应用的jpeg2000压缩算法实现什么_文章编码应用的JPEG2000压缩算法实现

系统结构

整个系统主要由N个PC基站和mn个手持移动终端组成(每个PC基站负责M个手持移动终端)。PC基站以USB2.0为核心,通过蓝牙无线传输协议实现手持移动终端与基站之间的高速通信。手持移动终端以TMS320VC5402为核心实现系统控制,以TMS320C6713为处理器实现JPEG2000图像编码算法。

系统硬件设计

硬件构造

如图1所示,整个系统采用类似PC104的堆栈结构,主要由LM9267摄像头、图像处理子板和系统控制母板组成。LM9627模块设计为了提高系统的可扩展性,将摄像头设计成独立的模块,主要包括三部分:模拟部分、数据接口和控制接口。J2是数据接口,连接到图像处理子板的FPGAJ1是控制接口,连接到系统控制主板。图像处理子板图像处理子板由采集控制协处理器FPGA、C6713和两片乒乓工作的SRAM组成。两块文章采集FPGA芯片EP1C6Q240分别采集奇数帧和偶数帧(每帧包含奇数场和偶数场)。每个FPGA分析LM9627的文章流的格式,将相应的RGB分量转换成YUV分量,以4: 1: 1的格式存储在SRAM中。两块SRAM以乒乓方式工作,即一块用于同时采集文章图像,另一块作为DSP的图像缓存。两片C6713实现复杂的JPEG2000压缩算法。对于后续的扩展,C6713可以处理更大的图像。每个DSP都扩展了16MB的SDRAM,工作在100MHz,满足图像压缩过程中大量数据交换的要求。

图1系统硬件框图

系统控制主板

系统控制主板以DSP C5402为核心处理器,主要负责三项任务:控制LM9627摄像头;让多个图像处理子板协同工作,通过MailBox—FIFO读取它们的压缩结果;根据蓝牙协议将读取的压缩结果发送给PC基站。为了满足高数据交换速度,主处理器TMS320VC5402工作在100MHz,通过邮箱—FIFO读取压缩结果,并根据蓝牙协议将读取的压缩结果发送给PC基站,从而实现JPEG2000的实时压缩和解码显示。

系统软件设计

图像采集软件设计为了使系统具有实时性,可以通过LM9627的I2C控制总线工作在隔行扫描模式,然后输出分辨率为640480的图像数据。场频为:帧频(隔行扫描)和行频。本文采用Verilog HDL语言实现了LM9627的实时图像采集。JPEG2000算法在C6713上的设计本系统的JPEG2000编码算法在C6713上的开发包括两个阶段。

算法实现的第一阶段:

用C语言模拟DSP的JPEG2000算法,判断代码的正确性,验证JPEG2000算法的复杂度和可靠性,以及JPEG2000本身的压缩性能。该系统的JPEG2000编码器包括三个主要模块:小波变换、熵编码、码率控制和码率分配。LM9627的输出是RGB,转换成Y: U: V=4: 1: 1的文章数据流。对这三个分量分别进行DC移位、小波变换和熵编码,然后按照码率控制要求分层组织这三个分量的所有码块的编码码流,包括码流截断操作,编码器的输出就是打包后的分层码流。DC电平移动(预处理)的目的是在解码期间从有符号值正确地恢复和重建无符号样本。传统小波变换的运算量相当大,8位图像数据往往被转换成浮点,这就在编码中引入了量化失真,不利于图像数据的无损压缩。所以JPEG2000主要采用基于UMDFB(二选一滤波器组)的提升小波算法。其优点是速度快,计算量小,占用存储空间少,得到的小波系数与t

JPEG2000使用两种滤镜:LeGall5/3滤镜和Daubechies9/7滤镜。考虑到本系统的实时性要求和无损压缩要求,选择了5/3小波运算。当小波分解级数增加时,分解系数的能量更加集中,但编码效率会降低。对于该系统,对4CIF(704576)分辨率采样图像进行5级小波分解和对CIF(352288)图像进行4级小波分解就足够了。由于整数模式操作,所有量化步骤都被设置为1,即量化过程可以被忽略。小波变换可以实现多分辨率支持,熵编码可以解决多失真支持。

传统的霍夫曼编码对每个系数依次采用熵编码;JPEG2000编码系统将小波变换后的子带分成小的码块,将码块中的小波系数组织成若干个位平面进行编码。以“位平面”作为编码元素有两个优点:可以更好地利用图像的局部统计特性,为随机获取图像的压缩比特流提供支持;有助于提高压缩码流的抗误码能力。在块编码中,JPEG2000强调支持多个截断点。截断点越多,图像提供的质量选择就越多。如果对每个码块只进行位平面编码,那么对于数据位数n最高的块,最多可以得到n个截断点。很多时候这种截断是粗糙的,截断点的数量太少。为了获得更多的截断点,EBCOT引入了“编码通道”的概念,并将每个位平面进一步划分为子位平面(编码通道)。JPEG2000编码系统中使用了三个编码通道:有效性通道、幅度细化通道和清晰通道。这样,对于码块Bi,可能有3N个可能的截断点。在编码位平面时,JPEG2000采用快速自适应二进制算术编码。

算法实现的第二阶段:

编写JPEG2000汇编代码,提取对性能影响较大的代码段做进一步优化。TMS320C67l3基于TI的VLIW技术。采用VLIW结构设计程序,可以充分利用DSP多个功能单元并行工作的特点。DSP的每个通道有四个功能单元(L、S、M、D),每个功能单元负责执行一定的逻辑或算术运算。此外,两个通道A和B之间的互访可以通过交叉单元1x和2x来完成。TM320C6713的大部分指令可以在单个周期内完成,可以直接对8/16/32位数据进行操作。同时,它可以并行执行多达8条指令;所有指令都可以有条件地执行。

以上特点都提高了指令的执行效率,减少了代码长度,提高了编码效率。在C6713中,只有两个D单元负责数据访问,一个时钟周期内最多并行执行两条数据访问指令,从存储区取数据的LDB/LDH/LDW指令有4个时钟周期的延迟,严重影响了CPU的效率。因此,编码时应该尽量减少从存储区取数据的次数。比如在小波变换中,我们可以充分利用C6713的32位寄存器,将SRAM中4个地址相邻的8位一次性取到存储区(使用32位操作指令LDW),然后分别执行操作,这样就充分利用了CPU资源,减少了4次数据访问。流水线操作是DSP实现高速高效的关键技术之一。当指令的处理准备好进入流水线的下一阶段,但是该阶段没有准备好接收新的输入时,流水线冲突是不可避免的。

流水线冲突可以分为三类:跳转冲突、寄存器冲突和内存冲突。为了解决流水线冲突的问题,在使用汇编语言时需要特别注意C6000指令的延迟,有些指令并不能马上得到结果。另外,为了保证代码效率,需要提前知道每条指令的运行周期数,提前安排指令或者重新调整指令顺序。只有当这些指令前后的指令在它们需要的延迟间隙内并行执行时,才能减少等待时间,提高程序效率。通过对C语言模拟算法的优化来进行全汇编,进而对汇编代码进行优化,大大提高了系统的性能。

基站设计

PC基站主要由蓝牙接收和JPEG2000解码两部分组成。其原理如图2所示。上位机解压软件主要包括LM9627传感器设置和图像采集控制。前者主要是向终端发送从机地址和设置值,终端设置LM 9627。后者控制系统的图像采集分辨率和压缩比。

图2基站设计

测试结果主观图像质量对比由于采用了上述技术,JPEG2000理论上应该能提供更好的性能和更多的功能,并通过几组对比数据进行了验证。作为参考的JPEG算法是目前业界硬件平台上应用最广泛的压缩算法,测试图片为24位真彩色lenna图。

实验中使用的压缩性能度量是峰值信噪比(PSNR): PSNR反映了图像信噪比变化的统计平均值,是目前广泛使用的衡量图像主观质量的方法。从表1的数据可以得出以下结论:在高压缩比的情况下,JPEG2000的信噪比比JPEG高6 ~ 9db;在高分辨率的情况下,JPEG2000的信噪比低于码率下降,也就是说分辨率越高,JPEG2000的压缩比越好。当信噪比低于26dB时,由于严重的马赛克效应,JPEG重构图难以分辨。此时,虽然JPEG2000重建图像的细节已经丢失,但图像轮廓仍然陈旧清晰。表中的“-”表示此时图像质量已经很低,计算出的PSNR值不再具有实际意义。系统处理速度在系统控制主板DSP-VC 5402的控制下,系统允许两个图像处理子板并行稳定可靠地工作。具体测试结果见表2。

标签

该系统以较低的成本实现了高质量的图像压缩功能,具有广泛的应用价值。主要应用领域大致可以分为两部分:一部分是传统的JPEG市场,如打印机、扫描仪、数码相机等,另一部分是新兴的应用领域,如网络传输、无线通信、医学图像等。由于之前的Motion JPEG不提供无损模式,所以在文章编码领域没有得到广泛应用。本系统采用的JPEG2000算法,结合DSP系统的高效处理性能,可以很好地将静态图像压缩技术引入文章编码领域。


声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,谢谢。

上一篇: 企业所得税汇算清缴申报表电子版在哪里下载(企业所得税汇算清缴申报表电子版)

下一篇: g1g2s期(G1 G2,S,M在生物学中分别代表什么期)



推荐阅读