网站公告列表

  没有公告

加入收藏
设为首页
联系本站
您现在的位置: AnalogCN安诺电子 >> 文章 >> 解决方案 >> 文章正文
  基于JPEG2000的无线图像监控系统的设计与实现           ★★★ 【字体:
基于JPEG2000的无线图像监控系统的设计与实现
作者:佚名    文章来源:Internet    点击数:    更新时间:2008-9-11    

本文图略

摘 要:无线图像监控系统是现在监控系统的研究热点之一,具有移动性强,扩容方便等很多优点,但无线传输带宽窄、不稳定等特点给系统的设计与实现带来挑战。根据无线图像监控系统的特点,设计了一种采用BlackFin 533作为主控与压缩芯片、采用JPEG2000进行视频图像压缩的无线图像监控系统,详细的阐述了JPEG2000中小波变换在BlackFin芯片上的算法设计与实现、JPEG2000中小波提升在BlackFin芯片上的缓存管理等关键技术。试验表明,系统设计合理、性能满足要求。
关键词:监控系统;无线网络;JPEG2000;小波变换;DSP;GPRS

1 引言

随着科学技术的发展,图像监控技术发展迅速,是现代管理、控制的重要手段之一。有很多监控系统需要在运动中或在远距离实现监控,如物流监控,运动中的车辆监控等,这些应用环境不适合有线图像监控系统应用,需用无线网络(如GPRS/CDMA等)实施监控。无线图像监控是现在监控系统的研究热点之一,具有广阔的应用前景。无线网络具有便于移动,组网灵活方便,扩容方便等优点,但也具有带宽窄,不稳定等不足。而JPEG2000具有如下特性能很好的适应无线网络传输:JPEG2000在低码率下具有的超级压缩特性,原始图像数据被压缩到1/32以下,采用基于离散余弦变换(DCT)的压缩会产生较大的块失真,而同样的这种低码率,而采用离散小波变换(DWT)的JPEG2000还能获得比较好的质量;JPEG2000以帧为单位进行帧内编码,没有运动估值和帧间预测编码,这样虽然浪费了一些压缩编码效率,但却大大提高了抗误码的能力,码流容易控制和编辑,并且软硬件实现简单,这些特性都很有利于在无线网络的实现,并且保证在无线网络在不稳定或受到干扰出现丢帧的情况下,不影响后续帧的传输及其传输质量;JPEG2000能实现渐进传输,它先传输图像的轮廓,然后逐步传输数据,不断提高图像质量;JPEG2000采用了算术编码,具有很强的容错性,由EBCOT生成的嵌入码也具有高容错性。因此在无线图像监控系统中,选用JPEG2000标准进行图像压缩,这种编码能很好的适应无线网络的传输。

2 系统的总体设计

无线图像监控系统的主要功能是信号处理单元对摄像机传来的视频图像信号进行压缩处理和控制,通过无线网络将压缩后的图像信号发射出去,以此对目标实现移动或远距离监控。

本系统中选用的单DSP为信号处理单元,是系统的核心器件,单个DSP要同时完成图像信号的JPEG2000标准的压缩和信号的控制,因此要选用对视频图像信号有很强处理能力的DSP芯片。同时系统的开发还要考虑DSP芯片的价格。基于性能和价格的考虑,本系统选用了一款性价比高的DSP芯片:美国模拟器件公司(ADI)最新推出的Blackfin系列芯片ADSP-BF533。Blackfin系列处理器是新一代嵌入式处理器,它在一个芯片和一个开发平台上融合了DSP信号处理、RISC的控制处理和视频处理功能,具有高度的并行处理和强大的DMA能力,具有很强的视频处理能力,除了自然支持8位数据-RGB像数处理算法公用的字长之外,还具有专用的视频指令和硬件支持,如对于霍夫曼(Huffman)编码,指令集包括一个“FIELD DEPOSIT/EXTRACT”命令。这芯片采用全新的MSA架构技术,具有600MHZ的核内时钟,300MHZ主频,具有IUT-656 PPI、RS-232等接口,很方便视频的输入输出处理等。

整个系统包括图像输入单元,JPEG2000编码单元,数据存储单元、GPRS模块等。视频输入采用ADV7183, JPEG2000编解码采用ADSP-BF533,数据存储采用SRAM CY7C104133,GPRS模块选用深圳市宏电技术开发有限公司的H7100 GPRS DTU,该GPRS模块能直接提供RS-232接口,为用户的数据设备提供透明传输通道,和ADSP-BF533实现无缝连接,其内置自动网络连接和协议处理模块,无需后台计算机支持,一开机就能自动附着到GPRS网络上,与数据中心建立通信链路,随时收发数据设备的数据。总体结构如图1所示。

系统的视频图像通过ADV7183完成,输入到ADSP-BF533的PPI接口上;ADSP-BF533的PPI接口在ITU-656模式下,采用DMA方式,将视频流中的一场CIF格式视频图像(352×288像素)存储到外部存储器SRAM中,当一个完整的图像帧存放在SRAM后,数据将传输到内部数据存储器中,ADSP-BF533对数据进行JPEG2000压缩处理后,通过RS-232接口发送到H7100 GPRS DTU,H7100 GPRS DTU将信号发送出去。在ITU-656模式下,图像数据编码格式采用YUV 4:2:0 的格式,即每采样4个亮度样本,对应采样1个红色差和一个蓝色差。ADSP-BF533对数据进行小波变换,基于EBCOT的内嵌编码,算术编码等处理。

3 关键技术

    本无线图像监控系统中的ADV7183是常用器件,容易实现视频图像信号的输入,而GPRS有现成的模块,用H7100 GPRS DTU实现,通过RS-232能和ADSP-BF533实现无缝连接。可见其系统实现中的关键技术是JPEG2000编码单元的实现,问题集中在如何充分发挥ADSP-BF533的性能对小波变换进行优化和如何对小波提升算法的缓存管理进行优化。

3.1 JPEG2000中小波变换在BlackFin芯片上的算法设计与实现

小波正变换FDWT最初将当前分解层次的变量初始化为1,将原始图像信号I(u,v)设置为数组a0LL(u,v),只对水平方向和垂直方向都适用低通滤波器处理的levLL子带执行二维子带系数的分解2D_SD。

2D_SD最初对a(lev-1)LL(u,v)的所有列进行垂直方向子带分解VER_SD,得到数组a (u,v);接下来,对a (u,v)的所有行进行水平方向子带分解HOR_SD。得到的系数a (u,v)接着对4各子带进行反交错处理2D_DEINTER-LEAVE。

1D_SD以一维数组x(i)和i0、i1为输入,进行必要的信号扩展处理后进行一维小波变换,将具备相同索引i0、i1所示存在范围的数组y(i)作为输出。1D_SD在信号长度为1时的情况下,i0为偶数时,作为低通输出,设置为Y(i)=X(i); i0为奇数时,作为高通输出,设置为Y(i)=2X(i)。在信号长度为大于2的情况下,首先执行1D_EXTD,超出左右的边线,获得将X扩展的信号Xext之后,按1D_FILTD对扩展信号Xext做小波处理,然后生成输出信号Y。

基于提升结构的小波正变换1D_FILTD:1D_FILTD有5/3滤波器的1D_FILTD5/3R和9/7滤波器的1D_FILTD9/7I,分别用于可逆变换和不可逆变换,它们都设周期性对称扩展后的一维信号Xext和信号索引i0、i1为输入,输出信号是Y。下面给出基于5/3可逆滤波器的正变换(1D_FILTD5/3R)。

上面陈述的算法在ADSP-BF533进行了编程实现。因为程序比较长,这里仅给出了部分核心汇编代码,程序在硬件环境是EZ-KIT Lite(ADSP-BF533)板,软件环境是VisualDSP++ Environment 4.0调试通过。

__wlift_bior_3_5_JPEG2000:   

   ……

    R2 = R0 +|+ R1,R7 = R0 -|- R1 (ASR) || R0.H = W[I0] || I0+= M0;                          

    R2.L = R0.H - R2.L (S) || R1.H = W[I0] || I0-= M0;                           

    R2 = R2 +|+ R3, R7 = R2 -|- R3 (ASR) || W[I0] = R2.L || I0+= M0;                           

    R0.L = R0.L+R2.L (S) || R7.L = W[I0--];

    R3.L = 2;

    LSETUP ($1LOOP_ST,$1LOOP_END) LC0 = P0;                           

$1LOOP_ST:

        R2 = R1 +|+ R7, R7 = R1-|-R7 (ASR) || R0.H = W[I0] || I0-= 4;

        R0.H = R0.H - R2.L (S) ||R3.H = W[I0--] ;

        R3.H = R3.H + R0.H (S) || W[I0] = R0.L || I0 += M0;

        R2.L = R3.H + R3.L (S) || W[I0] = R0.H || I0 += M0;

        R2 = R2 >>> 2 (V) || R7.L = W[I0] || I0 -= 4;

$1LOOP_END:

R0.L = R1.L + R2.L (S) || R1.L = W[I0++];

    R2.L = R1.L + R7.L (S) || R0.H = W[I0] || I0-= 4;

    R0.H = R0.H - R1.L (S) || R3.H = W[I0--] ;

    R3.H = R3.H + R0.H (S) || W[I0] = R0.L || I0+= M0;

    R2.L = R3.H + R3.L (S) || W[I0++] = R0.H;

   ……

__wlift_bior_3_5_JPEG2000.end:

可以看出,在快速小波变换算法中只有加减操作和移位操作,没有大量占用硬件资源的乘除操作。对16 X 16图像数据块的JPEG2000可逆整数5/3一维小波变换只需784个指令周期。

3.2 JPEG2000中小波提升在BlackFin芯片上的缓存管理

为缩短执行时间,对小波变换编码进行了优化。缓存失败问题在一个内存有限的DSP系统中变得较为突出。为解决这一问题,本文采取了一种新的方法与BlackFin芯片ADSP-BF533相匹配。图2是该方法的内存结构图。它由一个有两个64字节块联合的16KB数据缓冲存储器L1、直接映射到SRAM上的数据存储器L2、直接映射到DRAM上的外部存储器和一个DMA控制器组成。

图2 小波变换提升算法的输入图像内存处理图

为执行提升方案,图像的行先在垂直方向滤波,然后经垂直滤波的图像再进行水平滤波。该新方法采用一个改进的按块执行的提升方案,块大小与L1缓存中的块大小相同。图2描述了该方法。在小波提升变换开始前,在输入图像内存中块1的数据已通过DMA传输到L2,然后L2中块1的第一行被取到L1缓存中在垂直方向提升。以相同方式对块1下面的行进行处理。在块1的最后一行滤波后,L1缓存中包含输入图像内存中块1的数据;其次,块1的水平方向的滤波在L1缓存中完成。这样,水平提升就不需要取数据,因为L1缓存包含块1的数据。因此,块1在垂直和水平方向的滤波只在CPU需要下一垂直行时才可能有缓存失败。这就是该方法有显著性能的原因所在。

块1完成滤波后,块2被取到L1缓存的1路中;然后,块2的滤波完成后,块3被从L2取到L1的0路中。同时,0路中滤波过的块1一行一行移到L2。每个子带分别称为LL、LH、HL和垂直,已经由小波提升算法形成。每个子带中的数据从L2通过DMA传送到输出图像内存中的恰当位置。

L2与外部存储器之间的数据传递是独立于L1与L2间的数据传递进行的。这意味着通过DMA的块复制不影响CPU的运转。因此,通过小波提升序列的重新排序和控制DMA,在没有额外CPU负载的情况下增大了缓存成功率。

4 结论

目前,系统核心部分在硬件环境是EZ-KIT Lite(ADSP-BF533)板,软件环境是VisualDSP++ Environment 4.0上进行调试开发的。采用CIF格式(352×288)视频图像进行测试,视频的帧率为25fps, ADSP-BF533压缩效率为6-10帧/秒,而目前GPRS的速率为 0. 5 - 2 帧/秒,可见系统的设计和ADSP-BF533芯片性能是完全可以满足要求的。从中可得出结论,用ADSP-BF533实现JPEG2000编码,应用于无线图像监控系统的方案是可行的。下一步着重进行产品化工作。;无线SOC开发平台499元 S3C44B0 ARM7开发板378元 S3C2410 ARM9开发板780元 AT91SAM7S64 ARM7 单片机开发板之王——ELITE-I单片机学习开发系统1200元 S3C2410 ARM9开发板(II) 950元 EPM1270T144C CPLD开发板 480元

参考文献

[1]New work item proposal:JPEG2000 image coding system.Technical Report N390,ISO/IEC ITC1/SC29/WG1,June 1996.

[2]Analog Devices,Inc. Visual DSP++ 4.0 C/C++ Compiler and Library Manual for Blackfin Processors[DB/OL].

[3] [美]David S.Taubman,Michael W.Marcellin著,魏江力等译,JPEG2000图像压缩基础、标准和实践。电子工业出版社。2004.4。

[4]杨兴裕,吴海彬等,GPRS无线传输在远程图像监控系统中的应用[J],微计算机信息,2005.3:21。

[5]陈 峰,Blackfin系列DSP原理与系统设计。电子工业出版社。2004.1。

[6]小野定康等著,强增福译,JPEG2000技术。科学出版社。2004.4。

文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    对比ADI两代TD-SCDMA射频IC得
    [结尾篇]ADSP-TS20XS系列DSP
    一种基于DDS的幅值可调信号发
    基于ADSP2181的CAN总线通讯设
    一种采用单片机控制AD9854为
    在vs2008下使用ffmpeg(5):
    在vs2008下使用ffmpeg(4):
    在vs2008下使用ffmpeg(3):
    ADI AD8275电平转换16位ADC驱
    Boot在ADSP-BF533上的移植
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    版权所有:AnalogCN安诺电子 湘ICP备06016315号