|
1 引言 随着宽带和无线网络的普及和进一步发展、人们对视频通信、视频播放等数字媒体服务的要求越来越多,而网络视频监控就是在这样的市场环境下应运而生。该系统整合了FPGA数字视频信号处理技术、CDMA网络和Internet网络的优势,无论您身在何处、任何时间,都可以迅速接入系统,随时随地的进行远程监控管理。 CDMA无线网络视频监控系统可以和其他的有线/无线网络多媒体视频监控系统兼容,便于用户在不同网络环境下的使用。2 系统整体构成 系统整体框图如图1所示。
图1 系统整体框图 本文实现的视频监控系统主要分为两部分:第一部分,利用硬件描述语言实现视频采集,视频VGA显示,视频压缩,视频缓冲存储。第二部分,在FPGA中嵌入NiosⅡ软核,通过Nios Ⅱ软核控制,将缓冲区的压缩好的视频数据通过CDMA无线模块传输到远端服务器。系统整体框图各部分功能如下: 视频采集部分;将摄像头采集进来的模拟视频数据转换为数字视频数据,并获取相应视频控制信号。视频格式转换部分;将采集模块输出的视频数据转换成需要的视频格式。视频缓存部分;将视频数据暂存在FIFO中,然后由FIFO转存在SDRAM中。CDMA模块部分;将压缩好的视频数据通过CDMA传输到远端服务器。VGA视频显示部分;将摄像头采集进来的视频通过VGA接口,在本地显示器显示。NiosⅡ控制部分;当监控系统发现异常现象时,Nios Ⅱ控制系统控制视频压缩、视频缓存和CDMA模块三部分协调工作,将压缩好的视频数据由CDMA传输给远端服务器。远端服务器将CDMA传送回来的图像数据在上位机上解压以图片方式显示,并记录事件发生时间。 用户端将CDMA传回的数据经由提供的解码记录软件,在PC机显示,并记录事件发生时间。3 系统设计与实现 本系统设计主要包括以下模块:图像采集模块,图像处理模块,VGA显示模块,CDMA无线传输模块,远端服务器。3.1 图像采集模块 采集模块是整个系统非常重要的前端,采集质量的好坏将直接影响整个系统的识别效果,同时采集的速度也是整个系统设计速度的瓶颈所在。 本设计中采用了ADV7181来完成视频处理。ADV7181对视频信号进行采样解码后,得到与CCIR656标准兼容的YCrCb 4:2:2格式的输出编码。要对YCrCb 4:2:2格式的数字图像数据进行后续处理。 彩色CCD摄像头采集到的模拟视频信号,经过ADV7181芯片的解码得到数字视频信号。ADV7181芯片通I2C总线控制,I2C控制模块是由自定义外设实现的,SOPC提供的IP核只需对其参数进行配置便可加入到该系统中。图像采集模块如图2所示。
图2 图像采集模块 2C20通过I2C来控制ADV7181B对视频信号的采样。ADV7181B芯片产生的数字视频信号、控制信号和状态信号送入控制芯片FPGA中,即把场同步信号VREF、行同步信号HREF、奇偶场标志信号RTS0、片选信号CE、垂直同步信号VS、象素时钟信号LLC2以及数字视频信号VPO等管脚连接到FPGA芯片,以获知各种采集信息。
由于摄像头输出模拟信号,需要经过视频A/D转化后,把模拟视频信号转化成数字视频信号,输入进FPGA芯片,FPGA根据状态信号SRTS0把奇偶场图像信号分别存储在SDRAM(ODD)和SDRAM(EVEN)中。3.2 图像处理模块 由图3可以清楚的看出图像处理过程,摄像头采集信号经A/D转换后送入ITU R656解码器(Decoder),经解码后分出的Y、Cr、Cb三种基色信号数据线,这三种基色信号、控制信号和时钟信号进入缓冲器(Buffer)后共同作用输出Y[7:0]、Cr[7:0]、Cb[7:0]三种基色信号线给RGB模块,通过对三种基色的混合调制便可得到彩色的图像画面。图像传输过程中需要对图像信息进行压缩。由于通常无损压缩的压缩比不高,所以在很多情况下,经过无损压缩后的数据量仍将超过实际应用所能忍受的负荷。所以实现有较高压缩比的高保真的有损图像压缩就很重要。
图3 图像处理模块 本算法的编码器包括3个步骤:第1步是对原始图像进行向量变换,第2步是动态位分配的向量量化VQ(Vector Quantization)编码,第3步是进行一种熵编码。相应的解码器也包括3个步骤:解码器由编码器的3个步骤的逆过程按逆序组成。图4所示为算法编码器和解码器的框架图。
图4 编码器和解码器的框架 图像处理部分是整个系统的核心,需要对外围的器件进行集中控制和处理。FPGA/CPLD对图像信号的采集、控制、存储数据到SRAM以及从SRAM读取数据都在这里实现。选用CycloneII EP2C20F484C7芯片,利用Verilog HDL作为硬件描述语言,实现对各小模块的连接控制。3.3 VGA显示模块 如图5 VGA显示模块所示,从摄像头过来的信号经过视频解码后到视频处理芯片,视频处理芯片输出三路的R、G、B数字信号到视频DAC,然后输出三路的模拟R、G、B信号到显示屏显示。.这其中,视频DAC的速度直接决定了输出图像的分辨率和刷新率,而其精度则决定了输出图像的质量。DAC的速度和分辨率的关系可以通过下面的关系式得到: 时钟频率=点速率=(水平分辨率)×(垂直分辨率)×(刷新率)/(回扫系数); 水平分辨率=行的像素数目; 垂直分辨率=帧的像素数目。
图5 VGA显示模块3.4 CDMA无线模块 CDMA(Code-Division Multiple Access)技术是近年来在数字移动通信进程中出现的一种先进的无线扩频通信技术,具有频谱利用率高、话音质量好、保密性强、掉话率低、电磁辐射小、容量大、覆盖广等特点。1)数据传输方式设计
模块利用DE1的配置串口与CDMA模块通信,当监视到有人走过时,NiosⅡ系统发出拍照指令,通过摄像头记录下图像,同时NiosⅡ系统通过UART串口向CDMA发送信息,CDMA模块向设定的手机发送报警信息,并向上位机发送图像信息。 NiosⅡ与CDMA的通信是采用AT指令向CDMA模块发送命令。当监视发现异常现象时, NiosⅡ系统接收到来自监控模块产生的异常信号,马上进行拍照命令,同时向CDMA发送AT指令,并利用UART的中断接收CDMA返回的信号,一旦确认CDMA模块接收到AT指令将向CDMA发送下一条指令,如果NiosⅡ系统没有收到CDMA模块返回来的OK信号,系统将不断的向CDMA发送AT指令直到CDMA响应成功。其中NiosⅡ系统接收CDMA返回信号和向CDMA发送信号采用中断方式。2)CDMA响应过程 系统向CDMA模块发送AT指令初始化CDMA模块,然后调用建立PPP连接的函数,先用AT指令ATD#777接通CDMA,然后初始化PPP连接,当PPP连接完成后设置好相应的IP参数。 然后初始化WAP相关参数,建立WAP连接,调用信息发送函数将图像信息发送到与上位机相连接的CDMA模块中,完成数据的传送后,断开PPP连接。负责接收数据的CDMA模块把数据通过串口传送到上位机中。 3)TCP/IP协议 TCP/IP(传输控制协议/网间协议)是一种网络通信协议,它规范了网络上的所有通信设备。网络传输的基本信息单元是数据包。当包经由 TCP/IP 协议栈时,每一层上的协议都会在基本头中添加或删除字段。3.5 远程服务上位机设计 该系统利用VB编写程序,将CDMA接收回来的图像数据以文本格式进行存储,并将图片在系统界面上显示,同时记录事件发生时间。远端服务器监控显示效果如图6所示。
图6 远端服务器显示 远端服务器应用程序流程图如图7所示:
图7 远端服务器应用程序流程图3.6 系统软件设计 本系统使用了Altera公司的Quartus II、SOPC Builder、Nios II IDE等软件进行FPFA内硬件逻辑和嵌入式系统软件的开发。该系统的软件流程图如图8所示。
图8 系统软件流程图4 结论 本系统充分发挥了 SOPC的特点,采用FPGA和嵌入式软核的思想来设计该系统,用FPGA硬件来采集、分析数据,实现了数据的并行处理;同时,本系统根据需求增加了UART模块,使得Nios II核能快速的进行数据的传输。数据在传输之前,通过一个硬件描述语言模块来实现视频数据的压缩。在保证视觉效果的前提下,通过一个简易的压缩算法,系统的整体性能得到了大大的提升。传输的效率提高了一倍。Nios II 中断技术的使用,与查询方式相比,中断技术大大提高CPU使用的效率。
|
|