由于操作过于频繁,请点击下方按钮进行验证!

基于DM642的网络视觉监控系统的研究与实现

        视觉监控系统的发展经历了从专线监控到现在的开始利用计算机网络进行监控,这是一个很大的飞跃。

       传统的专线布局限制了传输的距离,而通过网络进行监控。弥补了传统监控系统的不足。TI公司推出的DM642是一款针对数字视频应用的DSP(Digital Signal Processor,数字信号处理器)芯片。该芯片具有支持网络功能的10/100 Mb/s自适应以太网MAC(Ethernet Media AccessControl,EMAC),国内基于该芯片成熟的网络视觉监控终端产品不多,因此对基于该芯片的网络视觉监控系统进行研究具有较高的实际应用价值。本文详细分析和研究了基于DM642的网络视觉监控系统,并在DM642开发评估板(EVM)上实现了JPEG实时视频的压缩编码、解码以及网络传输功能。

       1 网络视觉监控系统的组成结构

       1.1 总体结构

       该网络视觉监控系统的硬件总体结构如图1所示。

       图1中,视频采集设备选用Sony公司的EVI-100P型CCD摄像机。视频编码、解码芯片采用 Philips公司的SAA7105和SAA7115H。SDRAM使用的是Hynix公司容量为128 MB的两片HY57V283220T系列芯片。FLASH选用AMD公司的AM29LV系列芯片,容量为8 MB。以太网PHY(物理层)控制器为Intel公司的LXT971。RJ-45是一个以太网连接器。核心处理芯片是TI公司的DM642,他丰富的外围接口和完全可编程性,使得他在数字视频处理领域具备了广泛应用的条件。

       DM642的视频端门通过视频解码芯片SAA7115H能方便地实现和CCD摄像机的无缝连接。CCD摄像机输出的模拟视频信号经SAA7115H模数转换后,形成BT.656格式的数字视频信号,从DM642的视频端口0输入;在DM642中,视频数据经JPEG陶像压缩算法压缩处理,编码压缩生成的视频码流数据,经DM642芯片EMAC的MII接口到片外PHY(LXT971)芯片后,通过RJ-45 口经以太网传送到目的地的PC机网卡接口,通过PC机的IE浏览器接收视频数据,完成网络视觉监控和通信。在网络传输的同时,视频信号可由视频端口2经视频编码芯片SAA7105数模转换后输出PAL制式模拟视频信号到监视器进行本地回显。通过DM642的EMIF接口,连接SDRAM和FLASH存储器。

         SDRAM扩展了系统的可用存储空间,系统的初始化代码和配置信息则存储在FLASH中。

       1.2 视频采集接口电路

       从模拟视频输入口输入的模拟视频信号在SAA7115H内部经过钳位、抗混叠滤波、A/D转换、YUV分离电路之后,转换成BT.656视频数据流,输入到压缩核心单元DM642中进行视频数据的压缩处理。DM642的3个视频口,VP0,VP1,VP2与视频编解码芯片相接。在本系统中,只有一路视频输入和一路视频输出,故VP1端口未用,VP0通道配置为8位BT.656视频输人口。视频数据的行/场同步信号包含往BT.656数字视频数据流的EAV(End of Active Video)和SAV(Start of Active Video)时基信号中,视频口只需视频采样时钟和采样使能信号即可。SAA7115H内部寄存器参数的配置和状态的读出通过I2C总线进行。视频采集接口的电路如图2所示。

       1.3 网络接口电路

       DM642的以太网控制器(EMAC)属于OSI七层模型的数据链路层,只有接上物理芯片(以太网收发器)才能进行网络迎信。本系统采用Intel公司的LXT971作为快速以太网物理层自适应收发器,即可实现10/100 Mb/s以太网接口。由于LXT971支持IEEE 802.3标准,提供MII(Media Independent Interface)接口,可以支持MAC,而DM642内部网络功能模块正好集成有EMAC,所以LXT971可以和DM642实现无缝接口。从DM642传输过来的数据通过LXT971转换为以太网物理层接收的数据后,迎过RJ-45接头传输到网络。网络接口电路如图3所示。其中T1是一个1:1的隔离变压器。

       1.4 DM642的网络功能模块

       DM642的网络功能由3个主要功能模块组成:EMAC控制模块、EMAC模块、MDIO模块。EMAC控制模块是DSP核与 EMAC模块和MDIO模块之间的接口,他控制网络模块的复位、中断和仔储器接口的优先权。EMAC模块提供DSP核与网络之间的高效接口,支持10 Mb/s或100 Mb/s模式。MDIO模块通过双总线,采用满足802.3规范的串行接口控制器对以太网的物理层逃行监视和控制。

       2 JPEG图像压缩算法

       JPEG是静态图像的压缩编码标准,和相同图像质量的其他常用文件格式相比,JPEG是目前静态图像中压缩比最高的。正是由于JPEG的高压缩比,使得他广泛地应用于多媒体和网络程序中。JPEG另外一个优秀特征是压缩比可调,可以根据设计者的实际需要选择合适的压缩比。

       JPEG有几种模式,本系统所用的是基于DCT(离散余弦变换)变换的的顺序型模式,又称为基线系统(Baseline)。其算法描述如下:8×8的图像经过DCT变换后,其低频分量都集中在左上角,高频分量分布在右下角(DCT变换实际上是空间域的低通滤波器)。由于该低频分量包含了图像的主要信息(如亮度),而高频与之相比,就不那么重要了,所以可以忽略高频分量,从而达到压缩的目的。如何将高频分量去掉,就需要对DCT系数作量化处理。量化的作用是在保持一定质量的前提下,丢失图像中对视觉效果影响不大的信息。为了进一步提高压缩比,需要对其再进行熵编码,当熵编码过程结束后,就完成了图像数据的压缩编码,输出压缩后的图像数据。图像解码的过程和编码相反,是编码的逆过程。

       3 系统软件设计

       3.1 DM642数据流程分析

       数据流程框图如图 4所示。

       SAA7115H提供的一帧图像被采集到输入缓存,由YUV 4:2:2格式进行色差信号最采样变为YUV 4:2:0格式。然后,通过SCOM 序列,图像被发送到处理任务模块。在处理任务模块,JPEG编码库程序产生定制压缩质量的JPEG图像。通过一个SCOM序列,生成的图像被发送到网络任务模块。同时,JPEG文件被发送到JPEG解码器,解码器产生一个YUV 4:2:0的图像。该图像通过SCOM序列发送的到输出任务模块。输出任务模块转换YUV 4:2:0格式的图像成YUV 4:2:2格式的图像送SAA7105并显示。

       3.2 DM642程序流程分析

       程序采用RF-5框架来整合JPFG的编码、解码库。在进入DSP/BIOS的调度程序之前,程序需要初始化多个要使用的模块。包括:

       (1)DM642和系统板的初始化:系统执行BIOS和CSL的初始化,将二级缓存模式没定为128 kB,EMIF的CE0和CE1空间设定为允许高速缓存,设定DMA优先权队列长度为最大值,L2请求的优先权设定为最高,DMA管理器初始化时将其内部和外部的堆栈进行分配。

       (2)RF-5模块初始化:系统的通道模块设定为RF-5,初始化RF-5中的ICC和SCOM模块必需的内部单元通信和信息传递,通道设定按照内部和外部的堆栈缓冲执行。

       (3)建立捕获和回放通道:建立和启动一个捕获通道,建立和启动一个回放通道。

       在完成初始化工作之后,系统进入DSP/BIOS调度程序管理下的6个任务模块。6个任务模块通过RF-5的SCOM模块互相发送消息,在图4中显示了 4个任务模块。第5个任务是控制任务模块,他使用一个邮箱发送消息给处理仃务模块,处理任务模块从邮箱接收消息,并根据消息中指定的图像质量调节图像帧率。第6个是网络初始化模块,他由CDB文件定义处理网络环境的初始化。这6个任务模块的具体功能为:

       输入任务模块 使用驱动程序提供的FVID ex-change调用从SAA7115H获得一帧最新视频图像。获得的图像是YUV 4:2:2格式的,他被重采样成YUV 4:2:0。输入任务模块接着发送SCOM消息到处理任务,消息中包含了帧的指针。接着等待发送的消息返回以继续处理。

       处理任务模块 包含JPEG编码单元和JPEG解码单元。JPEG编码单元接受YUV 4:2:0格式的图像,产生定制压缩质量的JPEG图像,处理任务模块发送附带JPEG文件的SCOM消息给网络任务模块,同时,JPEG解码单元接收JPEG压缩图像并生成解压缩图像,解码的图像格式是YUV 4:2:0的。在解码完成后,处理任务等待发送给网络任务模块的SCOM消息返回,然后发送消息给输出任务模块,通知新的输出文件已经就绪。

       输出任务模块 将图像回放在显示设备上。他使用输出驱动程序提供的FVID exchange调用实现图像的显示,得到的图像的格式是YUV 4:2:0的,需要重新采样成YUV 4:2:2格式,然后等待处理任务发来的消息以继续运行。

       控制任务模块 用来设定传输过程中的一些控制参数,包括图像帧率和压缩质最。控制任务模块检测参数的改变,这些参数定义在一个全局结构“External Control”中,同时将更新的参数复制到任务自定义的结构“External Controlprev”中,并向处理任务模块的邮箱中发送消息。处理任务模块定时检测这些消息并调用相应单元的控制函数。

       网络初始化任务模块 启动网络环境,当网络准备备好后,建立网络任务。

       网络任务模块 用于支持系统中的网络功能调用。当他初始化完成后,开始进入等待处理任务模块发送的SCOM消息的状态。本系统中网络任务模块取得处理任务模块发送来的JPEG图像,建立一个存在RAM上的图像文件IMAGE1.JPG,这个同像可以由HTTP服务器识别并发送给HTTP客户端,接着回发一个SCOM消息给处理模块,通知他已经准备好处理下一个JPEG文件。

       4 系统功能测试

       在正确配置和连接DM642开发评估板(EVM)后,运行CCS,编译、连接、下裁并运行程序。若CCS的“sdout”窗口最后显示“Link Status:100 Mb/s Full Duplex”,说明网络连接被正常初始化。读取“sdout”窗口中的“NetworkAdded:”项中的IP地址:192.168.1.77。打开IE浏览器,在地址栏输入此IP地址,运行。可以看到IE浏览器显示的是经DM642压缩处理,通过网络传送给PC机的视频图像,同时,此视频图像也在本地经监视器回显。测试结果显示,两者几乎是同步的。通过修改压缩质量数据(取值为1~100,1压缩率最大,质量最差,100压缩率最小,质量最好),设计者可以得到定制的压缩质量的视频。系统测试结果见图5,图6,压缩质量分别取1,50。

       5 结 语

       本文对基于DM642 DSP芯片和JPEG图像压缩算法的网络视觉监控系统进行了分析研究并实现了实时视频的压缩编码、解码以及网络传输功能。该系统可广泛用于智能交通、金融、公共安全等领域的远程视频监控中,具有一定的实用性。下一步将在本文工作的基础上,结合新一代网络流媒体H.264视频压缩算法,研究实现基于DM642的双通道网络视觉监控系统。


声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,不为其版权负责。如果您发现网站上所用视频、图片、文字如涉及作品版权问题,请第一时间告知,我们将根据您提供的证明材料确认版权并按国家标准支付稿酬或立即删除内容,以保证您的权益!联系电话:010-58612588 或 Email:editor@mmsonline.com.cn。

网友评论 匿名:

分享到

相关主题